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:
| Passed |
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 | Current directory: |
|---|---|
| 2 | /var/drydock/workingcopy-112/repo/libre-busto |
| 3 | Calculating sha256sum of: |
| 4 | ./app/build/outputs/apk/gitpull/app-gitpull-signed.apk |
| 5 | File info |
| 6 | -rw-r--r-- 1 phabricator-android-builder phabricator-android-builder 8541082 Nov 13 23:22 ./app/build/outputs/apk/gitpull/app-gitpull-signed.apk |
| 7 | Cleaning old builds |
| 8 | Update checksums |
| 9 | Published here: |
| 10 | https://lab.reyboz.it/builds/libre-busto/HEAD-libre-busto.apk |
| 11 | Cleaning |
| 12 | Done |
| 13 |
| Passed |
| 1192 | 7050701 res/x1.xml (OK - compressed) |
|---|---|
| 1193 | 7050984 res/x5.9.png (OK) |
| 1194 | 7051372 res/xB.png (OK) |
| 1195 | 7052668 res/xC.png (OK) |
| 1196 | 7052824 res/xD.png (OK) |
| 1197 | 7053487 res/xF.xml (OK - compressed) |
| 1198 | 7053824 res/xH.png (OK) |
| 1199 | 7070188 res/xM.png (OK) |
| 1200 | 7074056 res/xR.png (OK) |
| 1201 | 7074919 res/xT.xml (OK - compressed) |
| 1202 | 7075496 res/xW.png (OK) |
| 1203 | 7075920 res/xc.xml (OK - compressed) |
| 1204 | 7076513 res/xd.xml (OK - compressed) |
| 1205 | 7076808 res/xp.png (OK) |
| 1206 | 7083503 res/xs.xml (OK - compressed) |
| 1207 | 7083932 res/xw.xml (OK - compressed) |
| 1208 | 7084354 res/xy.xml (OK - compressed) |
| 1209 | 7084904 res/yC.xml (OK - compressed) |
| 1210 | 7085972 res/yO.9.png (OK) |
| 1211 | 7086233 res/yP.xml (OK - compressed) |
| 1212 | 7086824 res/yR.xml (OK - compressed) |
| 1213 | 7087824 res/yX.png (OK) |
| 1214 | 7092174 res/ya.xml (OK - compressed) |
| 1215 | 7093249 res/yf.xml (OK - compressed) |
| 1216 | 7093584 res/yg.webp (OK) |
| 1217 | 7134924 res/yq.png (OK) |
| 1218 | 7136136 res/yw.png (OK) |
| 1219 | 7137940 res/yx.xml (OK - compressed) |
| 1220 | 7138460 res/z1.xml (OK - compressed) |
| 1221 | 7138701 res/z11.xml (OK - compressed) |
| 1222 | 7139056 res/z12.xml (OK - compressed) |
| 1223 | 7139383 res/z3.xml (OK - compressed) |
| 1224 | 7139652 res/z6.png (OK) |
| 1225 | 7140556 res/z61.png (OK) |
| 1226 | 7141740 res/zB.xml (OK - compressed) |
| 1227 | 7142102 res/zH.xml (OK - compressed) |
| 1228 | 7142666 res/zL.xml (OK - compressed) |
| 1229 | 7142989 res/zN.xml (OK - compressed) |
| 1230 | 7143344 res/zZ.png (OK) |
| 1231 | 7143701 res/z_.xml (OK - compressed) |
| 1232 | 7143952 res/zq.xml (OK - compressed) |
| 1233 | 7144415 res/zs.ttf (OK - compressed) |
| 1234 | 7192816 res/zt.png (OK) |
| 1235 | 7197292 res/zw.png (OK) |
| 1236 | 7197800 res/zy.png (OK) |
| 1237 | 7198044 resources.arsc (OK) |
| 1238 | Verification succesful |
| 1239 | Signing APK |
| 1240 | Sign concluded with exit status 0 |
| 1241 |
| 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.
| 114 | at org.gradle.internal.classloader.ClassLoaderUtils.executeInClassloader(ClassLoaderUtils.java:100) |
|---|---|
| 115 | at org.gradle.workers.internal.NoIsolationWorkerFactory$1.lambda$execute$0(NoIsolationWorkerFactory.java:62) |
| 116 | at org.gradle.workers.internal.AbstractWorker$1.call(AbstractWorker.java:44) |
| 117 | at org.gradle.workers.internal.AbstractWorker$1.call(AbstractWorker.java:41) |
| 118 | at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204) |
| 119 | at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:199) |
| 120 | at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66) |
| 121 | at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59) |
| 122 | at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:157) |
| 123 | at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59) |
| 124 | at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53) |
| 125 | at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:73) |
| 126 | at org.gradle.workers.internal.AbstractWorker.executeWrappedInBuildOperation(AbstractWorker.java:41) |
| 127 | at org.gradle.workers.internal.NoIsolationWorkerFactory$1.execute(NoIsolationWorkerFactory.java:59) |
| 128 | at org.gradle.workers.internal.DefaultWorkerExecutor.lambda$submitWork$2(DefaultWorkerExecutor.java:212) |
| 129 | at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) |
| 130 | at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.runExecution(DefaultConditionalExecutionQueue.java:187) |
| 131 | at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.access$700(DefaultConditionalExecutionQueue.java:120) |
| 132 | at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner$1.run(DefaultConditionalExecutionQueue.java:162) |
| 133 | at org.gradle.internal.Factories$1.create(Factories.java:31) |
| 134 | at org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:249) |
| 135 | at org.gradle.internal.work.DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:109) |
| 136 | at org.gradle.internal.work.DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:114) |
| 137 | at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.runBatch(DefaultConditionalExecutionQueue.java:157) |
| 138 | at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.run(DefaultConditionalExecutionQueue.java:126) |
| 139 | at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) |
| 140 | at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) |
| 141 | at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64) |
| 142 | at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:49) |
| 143 | at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) |
| 144 | at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) |
| 145 | at java.base/java.lang.Thread.run(Thread.java:829) |
| 146 | /var/drydock/workingcopy-112/repo/libre-busto/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] |
| 147 | <uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION"/> |
| 148 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 149 | |
| 150 | Explanation for issues of type "MockLocation": |
| 151 | Using a mock location provider (by requiring the permission |
| 152 | android.permission.ACCESS_MOCK_LOCATION) should only be done in debug |
| 153 | builds (or from tests). In Gradle projects, that means you should only |
| 154 | request this permission in a test or debug source set specific manifest |
| 155 | file. |
| 156 | |
| 157 | To fix this, create a new manifest file in the debug folder and move the |
| 158 | <uses-permission> element there. A typical path to a debug manifest |
| 159 | override file in a Gradle project is src/debug/AndroidManifest.xml. |
| 160 | |
| 161 | 1 errors, 0 warnings |
| 162 | |
| 163 |
| 54 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/adapters/RouteOnlyLineAdapter.kt:34:33 Parameter 'showOnlyEmpty' is never used |
|---|---|
| 55 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/backend/mato/MQTTMatoClient.kt:199:62 No cast needed |
| 56 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/backend/mato/MQTTMatoClient.kt:239:17 Variable 'valid' is assigned but never accessed |
| 57 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/data/MatoPatternsDownloadWorker.kt:58:13 Variable 'notificationManager' is never used |
| 58 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/data/MatoTripsDownloadWorker.kt:96:13 Variable 'notificationManager' is never used |
| 59 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/IntroFragment.kt:114:66 Parameter 'maxDpToScale' is never used |
| 60 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/LinesDetailFragment.kt:129:16 Condition 'fragmentListener == null' is always 'false' |
| 61 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/LinesDetailFragment.kt:149:63 Parameter 'stopName' is never used, could be renamed to _ |
| 62 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/LinesDetailFragment.kt:269:23 Unnecessary safe call on a non-null receiver of type MapView |
| 63 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/LinesDetailFragment.kt:506:36 Condition 'map == null' is always 'false' |
| 64 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/LinesDetailFragment.kt:574:66 Parameter 'polyline' is never used, could be renamed to _ |
| 65 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/LinesDetailFragment.kt:574:76 Parameter 'mapView' is never used, could be renamed to _ |
| 66 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/LinesDetailFragment.kt:574:85 Parameter 'eventPos' is never used, could be renamed to _ |
| 67 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/LinesDetailFragment.kt:596:13 Variable 'numStops' is never used |
| 68 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/LinesDetailFragment.kt:658:35 Variable 'marker' initializer is redundant |
| 69 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/LinesDetailFragment.kt:707:21 Condition 'busPositionsOverlay != null' is always 'true' |
| 70 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/LinesDetailFragment.kt:762:46 'getter for zoomLevel: Int' is deprecated. Deprecated in Java |
| 71 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/LinesGridShowingFragment.kt:203:13 Variable 'durArrow' is never used |
| 72 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/TestRealtimeGtfsFragment.kt:84:27 Parameter 'cont' is never used, could be renamed to _ |
| 73 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/map/BusInfoWindow.kt:45:36 Parameter 'view' is never used, could be renamed to _ |
| 74 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/map/BusInfoWindow.kt:45:42 Parameter 'motionEvent' is never used, could be renamed to _ |
| 75 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/map/BusInfoWindow.kt:88:17 Variable 'layPars' is never used |
| 76 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:182:27 'LocationProvider' is deprecated. Deprecated in Java |
| 77 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:182:44 'OUT_OF_SERVICE: Int' is deprecated. Deprecated in Java |
| 78 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:182:72 'LocationProvider' is deprecated. Deprecated in Java |
| 79 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:182:89 'TEMPORARILY_UNAVAILABLE: Int' is deprecated. Deprecated in Java |
| 80 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:184:34 'LocationProvider' is deprecated. Deprecated in Java |
| 81 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:184:51 'AVAILABLE: Int' is deprecated. Deprecated in Java |
| 82 | |
| 83 | > Task :app:compileGitpullJavaWithJavac |
| 84 | |
| 85 | > Task :app:lintVitalAnalyzeGitpull |
| 86 | |
| 87 | > Task :app:dexBuilderGitpull |
| 88 | > Task :app:mergeGitpullJavaResource |
| 89 | > Task :app:mergeDexGitpull |
| 90 | > Task :app:compileGitpullArtProfile |
| 91 | > Task :app:packageGitpull |
| 92 | > Task :app:createGitpullApkListingFileRedirect |
| 93 | Daemon will be stopped at the end of the build after running out of JVM memory |
| 94 | |
| 95 | > Task :app:lintVitalReportGitpull |
| 96 | |
| 97 | > Task :app:lintVitalGitpull |
| 98 | |
| 99 | > Task :app:assembleGitpull |
| 100 | |
| 101 | BUILD SUCCESSFUL in 2m 8s |
| 102 | 40 actionable tasks: 40 executed |
| 103 |
| Passed |
| 1 | Found 7.6 via distributionUrl |
|---|---|
| 2 | Running /home/phabricator-android-builder/versions/7.6/bin/gradle clean |
| 3 | Starting a Gradle Daemon (subsequent builds will be faster) |
| 4 | > Task :app:clean |
| 5 | |
| 6 | BUILD SUCCESSFUL in 13s |
| 7 | 1 actionable task: 1 executed |
| 8 |
| Passed |
| Passed |