Source code:
https://gitpull.it/source/libre-busto-ci-cd/browse/master/bin/publish-latest-branch-build.sh
(ex P23)
This step will copy the built .apk to an indexed HTTP directory exposed by Apache, signing them:
| Failed |
Source code:
https://gitpull.it/source/libre-busto-ci-cd/browse/master/bin/publish-latest-branch-build.sh
(ex P23)
This step will copy the built .apk to an indexed HTTP directory exposed by Apache, signing them:
| 1 | [2026-04-30 09:20:41] EXCEPTION: (Exception) Invalid Differential numeric ID: 0 at [/opt/libre-busto-ci-cd/bin/publish-latest-branch-build.php:52] |
|---|---|
| 2 | arcanist(head=master, ref.master=8fd7a39d741b) |
| 3 |
| Passed |
This step will build an .apk using Gradle using this fantastic Docker image:
https://gitlab.com/fabmazz/android-fdroid-build-container/-/tree/ubuntu
Source code of this build step:
https://gitpull.it/source/libre-busto-ci-cd/browse/master/bin/fdroid-docker-builder.sh
TODO: Use the official image by Fabio Mazza, when the "DESIRED_UID" / "DESIRED_GID" features will be merged.
| 1 | + docker run -e DESIRED_UID=1004 -e DESIRED_GID=1004 --rm -v /var/drydock/workingcopy-112/repo/libre-busto:/home/vagrant/appbuild:Z fdroid-asder launch_build_local -Dorg.gradle.jvmargs=-Xmx2g --stacktrace assembleGitpull |
|---|---|
| 2 | Note: Some input files use or override a deprecated API. |
| 3 | Note: Recompile with -Xlint:deprecation for details. |
| 4 | /home/vagrant/appbuild/app/src/gitpull/AndroidManifest.xml:4: Error: Mock locations should only be requested in a test or debug-specific manifest file (typically src/debug/AndroidManifest.xml) [MockLocation] |
| 5 | <uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION"/> |
| 6 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 7 | |
| 8 | Explanation for issues of type "MockLocation": |
| 9 | Using a mock location provider (by requiring the permission |
| 10 | android.permission.ACCESS_MOCK_LOCATION) should only be done in debug |
| 11 | builds (or from tests). In Gradle projects, that means you should only |
| 12 | request this permission in a test or debug source set specific manifest |
| 13 | file. |
| 14 | |
| 15 | To fix this, create a new manifest file in the debug folder and move the |
| 16 | <uses-permission> element there. A typical path to a debug manifest |
| 17 | override file in a Gradle project is src/debug/AndroidManifest.xml. |
| 18 | |
| 19 | 1 error |
| 20 | |
| 21 |
| 1 | [INFO] User info: uid=1004(phabricator-android-builder) gid=1004(phabricator-android-builder) groups=1004(phabricator-android-builder),128(docker),1005(drydock) |
|---|---|
| 2 | [INFO] UID=1004 |
| 3 | [INFO] GID=1004 |
| 4 | [INFO] IMAGE_NAME=fdroid-asder |
| 5 | [INFO] SOURCE_DIR=/var/drydock/workingcopy-112/repo/libre-busto |
| 6 | [ENTRYPOINT] RECEIVED MY_UID=1004 |
| 7 | [ENTRYPOINT] RECEIVED MY_GID=1004 |
| 8 | Executing command as vagrant with args |
| 9 | ls /home/vagrant/source |
| 10 | CACHEDIR set to /home/vagrant/.cache/gradlew-fdroid |
| 11 | Update checksum from gradle-transparency-log |
| 12 | Found 8.13 via distributionUrl |
| 13 | Downloading missing gradle version 8.13 |
| 14 | Using cache directory /home/vagrant/.cache/gradlew-fdroid |
| 15 | Running /home/vagrant/.cache/gradlew-fdroid/versions/8.13/bin/gradle --project-cache-dir /tmp/gradle-project-cache -Dorg.gradle.jvmargs=-Xmx2g --stacktrace assembleGitpull |
| 16 | |
| 17 | Welcome to Gradle 8.13! |
| 18 | |
| 19 | Here are the highlights of this release: |
| 20 | - Daemon JVM auto-provisioning |
| 21 | - Enhancements for Scala plugin and JUnit testing |
| 22 | - Improvements for build authors and plugin developers |
| 23 | |
| 24 | For more details see https://docs.gradle.org/8.13/release-notes.html |
| 25 | |
| 26 | To honour the JVM settings for this build a single-use Daemon process will be forked. For more on this, please refer to https://docs.gradle.org/8.13/userguide/gradle_daemon.html#sec:disabling_the_daemon in the Gradle documentation. |
| 27 | Daemon will be stopped at the end of the build |
| 28 | Checking the license for package Android SDK Build-Tools 36 in /opt/android-sdk/licenses |
| 29 | License for package Android SDK Build-Tools 36 accepted. |
| 30 | Preparing "Install Android SDK Build-Tools 36 v.36.0.0". |
| 31 | "Install Android SDK Build-Tools 36 v.36.0.0" ready. |
| 32 | Installing Android SDK Build-Tools 36 in /opt/android-sdk/build-tools/36.0.0 |
| 33 | "Install Android SDK Build-Tools 36 v.36.0.0" complete. |
| 34 | "Install Android SDK Build-Tools 36 v.36.0.0" finished. |
| 35 | Checking the license for package Android SDK Platform 36 in /opt/android-sdk/licenses |
| 36 | License for package Android SDK Platform 36 accepted. |
| 37 | Preparing "Install Android SDK Platform 36 (revision 2)". |
| 38 | "Install Android SDK Platform 36 (revision 2)" ready. |
| 39 | Installing Android SDK Platform 36 in /opt/android-sdk/platforms/android-36 |
| 40 | "Install Android SDK Platform 36 (revision 2)" complete. |
| 41 | "Install Android SDK Platform 36 (revision 2)" finished. |
| 42 | [========= ] 25% |
| 43 | Checking the license for package Android SDK Platform-Tools in /opt/android-sdk/licenses |
| 44 | License for package Android SDK Platform-Tools accepted. |
| 45 | Preparing "Install Android SDK Platform-Tools v.37.0.0". |
| 46 | "Install Android SDK Platform-Tools v.37.0.0" ready. |
| 47 | Installing Android SDK Platform-Tools in /opt/android-sdk/platform-tools |
| 48 | "Install Android SDK Platform-Tools v.37.0.0" complete. |
| 49 | "Install Android SDK Platform-Tools v.37.0.0" finished. |
| 50 | > Task :app:preBuild UP-TO-DATE |
| 51 | > Task :app:preGitpullBuild UP-TO-DATE |
| 52 | > Task :app:mergeGitpullJniLibFolders |
| 53 | > Task :app:mergeGitpullArtProfile |
| 54 | > Task :app:mergeGitpullNativeLibs |
| 55 | > Task :app:checkGitpullDuplicateClasses |
| 56 | |
| 57 | > Task :app:stripGitpullDebugSymbols |
| 58 | Unable to strip the following libraries, packaging them as they are: libmaplibre.so. Run with --info option to learn more. |
| 59 | |
| 60 | > Task :app:extractGitpullNativeSymbolTables |
| 61 | > Task :app:buildKotlinToolingMetadata |
| 62 | > Task :app:mergeGitpullNativeDebugMetadata NO-SOURCE |
| 63 | > Task :app:checkKotlinGradlePluginConfigurationErrors SKIPPED |
| 64 | > Task :app:expandGitpullL8ArtProfileWildcards |
| 65 | > Task :app:generateGitpullBuildConfig |
| 66 | > Task :app:protobufDummy UP-TO-DATE |
| 67 | > Task :app:extractGitpullProto |
| 68 | > Task :app:extractIncludeGitpullProto |
| 69 | > Task :app:extractProto |
| 70 | > Task :app:generateGitpullProto |
| 71 | > Task :app:checkGitpullAarMetadata |
| 72 | > Task :app:processGitpullNavigationResources |
| 73 | > Task :app:generateGitpullResValues |
| 74 | > Task :app:compileGitpullNavigationResources |
| 75 | > Task :app:mapGitpullSourceSetPaths |
| 76 | > Task :app:extractGitpullSupportedLocales |
| 77 | > Task :app:generateGitpullResources |
| 78 | > Task :app:createGitpullCompatibleScreenManifests |
| 79 | > Task :app:extractDeepLinksGitpull |
| 80 | > Task :app:generateGitpullLocaleConfig |
| 81 | |
| 82 | > Task :app:processGitpullMainManifest |
| 83 | /home/vagrant/appbuild/app/src/gitpull/AndroidManifest.xml Warning: |
| 84 | service#info.mqtt.android.service.MqttService was tagged at AndroidManifest.xml:0 to replace another declaration but no other declaration present |
| 85 | /home/vagrant/appbuild/app/src/gitpull/AndroidManifest.xml Warning: |
| 86 | provider#org.acra.attachment.AcraContentProvider@android:authorities was tagged at AndroidManifest.xml:0 to replace other declarations but no other declaration present |
| 87 | |
| 88 | > Task :app:processGitpullManifest |
| 89 | > Task :app:mergeGitpullResources |
| 90 | > Task :app:javaPreCompileGitpull |
| 91 | > Task :app:desugarGitpullFileDependencies |
| 92 | > Task :app:mergeGitpullStartupProfile |
| 93 | > Task :app:processGitpullManifestForPackage |
| 94 | > Task :app:mergeExtDexGitpull |
| 95 | > Task :app:mergeGitpullShaders |
| 96 | > Task :app:compileGitpullShaders NO-SOURCE |
| 97 | > Task :app:generateGitpullAssets UP-TO-DATE |
| 98 | > Task :app:mergeGitpullAssets |
| 99 | > Task :app:compressGitpullAssets |
| 100 | > Task :app:extractGitpullVersionControlInfo |
| 101 | > Task :app:extractProguardFiles |
| 102 | > Task :app:collectGitpullDependencies |
| 103 | > Task :app:sdkGitpullDependencyData |
| 104 | > Task :app:writeGitpullAppMetadata |
| 105 | > Task :app:writeGitpullSigningConfigVersions |
| 106 | > Task :app:processGitpullResources |
| 107 | > Task :app:optimizeGitpullResources |
| 108 | > Task :app:kspGitpullKotlin |
| 109 | w: [ksp] /home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/data/gtfs/GtfsAgency.kt:21: Primary key constraint on gtfsId is ignored when being merged into it.reyboz.bustorino.data.gtfs.GtfsAgency |
| 110 | |
| 111 | > Task :app:compileGitpullKotlin |
| 112 | w: file:///home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/ActivityAbout.kt:132:13 'fun onBackPressed(): Unit' is deprecated. This method has been deprecated in favor of using the |
| 113 | {@link OnBackPressedDispatcher} via {@link #getOnBackPressedDispatcher()}. |
| 114 | The OnBackPressedDispatcher controls how back button events are dispatched |
| 115 | to one or more {@link OnBackPressedCallback} objects. |
| 116 | w: file:///home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:142:21 'val loaderManager: LoaderManager' is deprecated. Deprecated in Java. |
| 117 | w: file:///home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:147:30 'val loaderManager: LoaderManager' is deprecated. Deprecated in Java. |
| 118 | w: file:///home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:374:29 'val loaderManager: LoaderManager' is deprecated. Deprecated in Java. |
| 119 | w: file:///home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:427:29 'val loaderManager: LoaderManager' is deprecated. Deprecated in Java. |
| 120 | w: file:///home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:582:20 Condition is always 'true'. |
| 121 | w: file:///home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:697:66 'fun execute(vararg p0: Stop!): AsyncTask<Stop!, Void!, Boolean!>!' is deprecated. Deprecated in Java. |
| 122 | w: file:///home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/fragments/IntroFragment.kt:172:43 'fun setColorFilter(p0: Int, p1: PorterDuff.Mode): Unit' is deprecated. Deprecated in Java. |
| 123 | w: file:///home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/fragments/IntroFragment.kt:213:24 'fun setColorFilter(p0: Int, p1: PorterDuff.Mode): Unit' is deprecated. Deprecated in Java. |
| 124 | w: file:///home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/fragments/LinesDetailFragment.kt:186:21 Condition is always 'false'. |
| 125 | w: file:///home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/fragments/MapLibreFragment.kt:650:25 'fun requestSingleUpdate(p0: String, p1: LocationListener, p2: Looper?): Unit' is deprecated. Deprecated in Java. |
| 126 | w: file:///home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/fragments/MapLibreFragment.kt:671:26 This declaration overrides a deprecated member but is not marked as deprecated itself. Add the '@Deprecated' annotation or suppress the diagnostic. |
| 127 | w: file:///home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/fragments/TestRealtimeGtfsFragment.kt:55:39 The corresponding parameter in the supertype 'MQTTMatoListener' is named 'posUpdates'. This may cause problems when calling this function with named arguments. |
| 128 | w: file:///home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:186:27 'class LocationProvider : Any' is deprecated. Deprecated in Java. |
| 129 | w: file:///home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:186:44 'static field OUT_OF_SERVICE: Int' is deprecated. Deprecated in Java. |
| 130 | w: file:///home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:186:72 'class LocationProvider : Any' is deprecated. Deprecated in Java. |
| 131 | w: file:///home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:186:89 'static field TEMPORARILY_UNAVAILABLE: Int' is deprecated. Deprecated in Java. |
| 132 | w: file:///home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:188:34 'class LocationProvider : Any' is deprecated. Deprecated in Java. |
| 133 | w: file:///home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:188:51 'static field AVAILABLE: Int' is deprecated. Deprecated in Java. |
| 134 | w: file:///home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:216:48 'class Criteria : Any, Parcelable' is deprecated. Deprecated in Java. |
| 135 | w: file:///home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/util/ImportExport.kt:53:40 Unchecked cast of 'Any!' to 'Map<String?, Any>?'. |
| 136 | w: file:///home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/util/ImportExport.kt:83:56 Unchecked cast of 'Set<*>' to 'Set<String?>'. |
| 137 | w: file:///home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/viewmodels/ArrivalsViewModel.kt:224:17 Expression under 'when' is never equal to null. |
| 138 | w: file:///home/vagrant/appbuild/app/src/main/java/it/reyboz/bustorino/viewmodels/LivePositionsViewModel.kt:145:39 The corresponding parameter in the supertype 'MQTTMatoListener' is named 'posUpdates'. This may cause problems when calling this function with named arguments. |
| 139 | |
| 140 | > Task :app:compileGitpullJavaWithJavac |
| 141 | |
| 142 | > Task :app:dexBuilderGitpull |
| 143 | > Task :app:mergeGitpullGlobalSynthetics |
| 144 | > Task :app:generateGitpullLintVitalReportModel |
| 145 | > Task :app:mergeDexGitpull |
| 146 | > Task :app:processGitpullJavaRes |
| 147 | > Task :app:mergeGitpullJavaResource |
| 148 | > Task :app:l8DexDesugarLibGitpull |
| 149 | > Task :app:lintVitalAnalyzeGitpull |
| 150 | > Task :app:compileGitpullArtProfile |
| 151 | > Task :app:lintVitalReportGitpull |
| 152 | |
| 153 | > Task :app:lintVitalGitpull |
| 154 | |
| 155 | > Task :app:packageGitpull |
| 156 | > Task :app:createGitpullApkListingFileRedirect |
| 157 | > Task :app:assembleGitpull |
| 158 | |
| 159 | [Incubating] Problems report is available at: file:///home/vagrant/appbuild/build/reports/problems/problems-report.html |
| 160 | |
| 161 | Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0. |
| 162 | |
| 163 | You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins. |
| 164 | |
| 165 | For more on this, please refer to https://docs.gradle.org/8.13/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation. |
| 166 | |
| 167 | BUILD SUCCESSFUL in 4m 42s |
| 168 | 58 actionable tasks: 58 executed |
| 169 | ==> Build completed |
| 170 |
| Passed |
| Passed |