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 | PHP Warning: unlink(./app/build/outputs/apk/gitpull/app-gitpull-signed.apk): No such file or directory in /opt/reyboz/android/bin/publish-latest-branch-build.php on line 177 |
|---|---|
| 2 |
| 1 | [INFO] including /home/phabricator-android-builder/.phorge_bot_telegram_config file |
|---|---|
| 2 | Current directory: |
| 3 | /var/drydock/workingcopy-112/repo/libre-busto |
| 4 | Calculating sha256sum of: |
| 5 | ./app/build/outputs/apk/gitpull/app-gitpull-signed.apk |
| 6 | File info |
| 7 | -rw-r--r-- 1 phabricator-android-builder phabricator-android-builder 25177957 May 14 00:00 ./app/build/outputs/apk/gitpull/app-gitpull-signed.apk |
| 8 | Cleaning old builds |
| 9 | Published here: |
| 10 | https://lab.reyboz.it/builds/libre-busto/586~2-libre-busto.apk |
| 11 | DEBUG TELEGRAM CONTENT |
| 12 | 🌚 New commit: *'Put changed text in LinesDetailFragment too'* |
| 13 | https://gitpull.it/R4:4ba4872a0cf09db8de562b61940e7418081d0e23 |
| 14 | |
| 15 | Try this fresh test APK: |
| 16 | [Download '586~2-libre-busto.apk']('https://lab.reyboz.it/builds/libre-busto/586~2-libre-busto.apk') |
| 17 | |
| 18 | APK fingerprint sha256: |
| 19 | `0d28250c9ff751955e4c52a3674b373336f0e11de124a379bb0ef17b38076a40` |
| 20 | Cleaning |
| 21 | |
| 22 | Warning: unlink(./app/build/outputs/apk/gitpull/app-gitpull-signed.apk): No such file or directory in /opt/reyboz/android/bin/publish-latest-branch-build.php on line 177 |
| 23 | Done |
| 24 |
| Passed |
| 1118 | 23580888 res/tU.9.png (OK) |
|---|---|
| 1119 | 23581140 res/tZ.9.png (OK) |
| 1120 | 23581380 res/te.png (OK) |
| 1121 | 23581698 res/te.xml (OK - compressed) |
| 1122 | 23581945 res/tf.xml (OK - compressed) |
| 1123 | 23582326 res/ti.xml (OK - compressed) |
| 1124 | 23583496 res/tk.xml (OK - compressed) |
| 1125 | 23583755 res/tp.xml (OK - compressed) |
| 1126 | 23584050 res/tt.xml (OK - compressed) |
| 1127 | 23584477 res/tv.xml (OK - compressed) |
| 1128 | 23585476 res/u0.xml (OK - compressed) |
| 1129 | 23586129 res/u01.xml (OK - compressed) |
| 1130 | 23586568 res/u3.png (OK) |
| 1131 | 23587124 res/uE.webp (OK) |
| 1132 | 23601444 res/uI.xml (OK - compressed) |
| 1133 | 23602503 res/uJ.xml (OK - compressed) |
| 1134 | 23602984 res/uL.9.png (OK) |
| 1135 | 23603990 res/uR.xml (OK - compressed) |
| 1136 | 23604551 res/ua.xml (OK - compressed) |
| 1137 | 23604892 res/uj.9.png (OK) |
| 1138 | 23605132 res/ut.9.png (OK) |
| 1139 | 23605928 res/uu.9.png (OK) |
| 1140 | 23606172 res/uy.xml (OK - compressed) |
| 1141 | 23608451 res/v-.xml (OK - compressed) |
| 1142 | 23608968 res/v4.9.png (OK) |
| 1143 | 23609216 res/v5.xml (OK - compressed) |
| 1144 | 23609540 res/vF.xml (OK - compressed) |
| 1145 | 23609797 res/vG.xml (OK - compressed) |
| 1146 | 23610434 res/vH.xml (OK - compressed) |
| 1147 | 23610770 res/vJ.xml (OK - compressed) |
| 1148 | 23611100 res/vL.9.png (OK) |
| 1149 | 23611363 res/vR.xml (OK - compressed) |
| 1150 | 23611628 res/vT.xml (OK - compressed) |
| 1151 | 23611856 res/vZ.xml (OK - compressed) |
| 1152 | 23612113 res/vf.xml (OK - compressed) |
| 1153 | 23612441 res/vl.xml (OK - compressed) |
| 1154 | 23613013 res/vq.xml (OK - compressed) |
| 1155 | 23613589 res/vy.xml (OK - compressed) |
| 1156 | 23614076 res/vz.9.png (OK) |
| 1157 | 23614297 res/vz.xml (OK - compressed) |
| 1158 | 23614545 res/w7.xml (OK - compressed) |
| 1159 | 23615274 res/w9.xml (OK - compressed) |
| 1160 | 23615548 res/wL.9.png (OK) |
| 1161 | 23616028 res/wN.9.png (OK) |
| 1162 | 23616293 res/wP.xml (OK - compressed) |
| 1163 | 23616648 res/w_.png (OK) |
| 1164 | 23616904 res/wb.png (OK) |
| 1165 | 23622833 res/wi.xml (OK - compressed) |
| 1166 | 23623208 res/wy.png (OK) |
| 1167 | 23623676 res/x3.9.png (OK) |
| 1168 | 23623928 res/x4.xml (OK - compressed) |
| 1169 | 23624704 res/xH.png (OK) |
| 1170 | 23624930 res/xI.xml (OK - compressed) |
| 1171 | 23625633 res/xM.ttf (OK - compressed) |
| 1172 | 23685323 res/xN.xml (OK - compressed) |
| 1173 | 23686158 res/xQ.xml (OK - compressed) |
| 1174 | 23686648 res/xR.9.png (OK) |
| 1175 | 23686884 res/xa.9.png (OK) |
| 1176 | 23687145 res/xa.xml (OK - compressed) |
| 1177 | 23687707 res/xd.xml (OK - compressed) |
| 1178 | 23688422 res/xj.xml (OK - compressed) |
| 1179 | 23688714 res/xo.xml (OK - compressed) |
| 1180 | 23689001 res/xq.xml (OK - compressed) |
| 1181 | 23689388 res/xz.xml (OK - compressed) |
| 1182 | 23690578 res/y-.xml (OK - compressed) |
| 1183 | 23690846 res/y4.xml (OK - compressed) |
| 1184 | 23691102 res/y9.xml (OK - compressed) |
| 1185 | 23691370 res/yE.xml (OK - compressed) |
| 1186 | 23691624 res/yH.9.png (OK) |
| 1187 | 23691848 res/yO.xml (OK - compressed) |
| 1188 | 23692098 res/yT.xml (OK - compressed) |
| 1189 | 23692419 res/yV.xml (OK - compressed) |
| 1190 | 23692760 res/yY.9.png (OK) |
| 1191 | 23692986 res/yY.xml (OK - compressed) |
| 1192 | 23693272 res/ya.xml (OK - compressed) |
| 1193 | 23693632 res/yd.png (OK) |
| 1194 | 23705568 res/yg.9.png (OK) |
| 1195 | 23706003 res/yj.xml (OK - compressed) |
| 1196 | 23706400 res/yn.png (OK) |
| 1197 | 23708884 res/z-.9.png (OK) |
| 1198 | 23709148 res/z9.9.png (OK) |
| 1199 | 23709608 res/zE.png (OK) |
| 1200 | 23709972 res/zG.xml (OK - compressed) |
| 1201 | 23710292 res/zR.png (OK) |
| 1202 | 23713093 res/zR.xml (OK - compressed) |
| 1203 | 23713584 res/zV.9.png (OK) |
| 1204 | 23716087 res/zc.xml (OK - compressed) |
| 1205 | 23716536 res/ze.png (OK) |
| 1206 | 23724891 res/zp.xml (OK - compressed) |
| 1207 | 23725148 res/zq.xml (OK - compressed) |
| 1208 | 23725460 res/zr.png (OK) |
| 1209 | 23728279 res/zs.xml (OK - compressed) |
| 1210 | 23728551 res/zu.xml (OK - compressed) |
| 1211 | 23729582 res/zv.xml (OK - compressed) |
| 1212 | 23730859 res/zz.xml (OK - compressed) |
| 1213 | 23731052 resources.arsc (OK) |
| 1214 | Verification succesful |
| 1215 | Signing APK |
| 1216 | Sign concluded with exit status 0 |
| 1217 |
| 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 | Note: Some input files use or override a deprecated API. |
|---|---|
| 2 | Note: Recompile with -Xlint:deprecation for details. |
| 3 | /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] |
| 4 | <uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION"/> |
| 5 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 6 | |
| 7 | Explanation for issues of type "MockLocation": |
| 8 | Using a mock location provider (by requiring the permission |
| 9 | android.permission.ACCESS_MOCK_LOCATION) should only be done in debug |
| 10 | builds (or from tests). In Gradle projects, that means you should only |
| 11 | request this permission in a test or debug source set specific manifest |
| 12 | file. |
| 13 | |
| 14 | To fix this, create a new manifest file in the debug folder and move the |
| 15 | <uses-permission> element there. A typical path to a debug manifest |
| 16 | override file in a Gradle project is src/debug/AndroidManifest.xml. |
| 17 | |
| 18 | /var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/viewmodels/ArrivalsViewModel.kt:132: Error: Expected non-nullable value [NullSafeMutableLiveData from androidx.lifecycle] |
| 19 | palinaLiveData.postValue(palina) |
| 20 | ~~~~~~ |
| 21 | |
| 22 | Explanation for issues of type "NullSafeMutableLiveData": |
| 23 | This check ensures that LiveData values are not null when explicitly |
| 24 | declared as non-nullable. |
| 25 | |
| 26 | Kotlin interoperability does not support enforcing explicit |
| 27 | null-safety when using generic Java type parameters. Since |
| 28 | LiveData is a Java class its value can always be null even |
| 29 | when its type is explicitly declared as non-nullable. This can lead |
| 30 | to runtime exceptions from reading a null LiveData value that is |
| 31 | assumed to be non-nullable. |
| 32 | |
| 33 | Vendor: Android Open Source Project |
| 34 | Identifier: androidx.lifecycle |
| 35 | Feedback: https://issuetracker.google.com/issues/new?component=413132 |
| 36 | |
| 37 | 2 errors, 0 warnings |
| 38 | |
| 39 |
| 17 | > Task :app:mapGitpullSourceSetPaths |
|---|---|
| 18 | > Task :app:extractGitpullSupportedLocales |
| 19 | > Task :app:generateGitpullResources |
| 20 | > Task :app:generateGitpullLocaleConfig |
| 21 | > Task :app:createGitpullCompatibleScreenManifests |
| 22 | > Task :app:extractDeepLinksGitpull |
| 23 | |
| 24 | > Task :app:processGitpullMainManifest |
| 25 | /var/drydock/workingcopy-112/repo/libre-busto/app/src/gitpull/AndroidManifest.xml Warning: |
| 26 | provider#org.acra.attachment.AcraContentProvider@android:authorities was tagged at AndroidManifest.xml:0 to replace other declarations but no other declaration present |
| 27 | |
| 28 | > Task :app:mergeGitpullResources |
| 29 | > Task :app:processGitpullManifest |
| 30 | > Task :app:buildKotlinToolingMetadata |
| 31 | > Task :app:extractProguardFiles |
| 32 | > Task :app:javaPreCompileGitpull |
| 33 | > Task :app:mergeGitpullJniLibFolders |
| 34 | > Task :app:processGitpullManifestForPackage |
| 35 | > Task :app:mergeGitpullNativeLibs |
| 36 | |
| 37 | > Task :app:stripGitpullDebugSymbols |
| 38 | Unable to strip the following libraries, packaging them as they are: libmaplibre.so. |
| 39 | |
| 40 | > Task :app:desugarGitpullFileDependencies |
| 41 | > Task :app:checkGitpullDuplicateClasses |
| 42 | > Task :app:mergeGitpullStartupProfile |
| 43 | > Task :app:extractGitpullNativeSymbolTables |
| 44 | > Task :app:mergeGitpullNativeDebugMetadata NO-SOURCE |
| 45 | > Task :app:mergeGitpullShaders |
| 46 | > Task :app:mergeGitpullArtProfile |
| 47 | > Task :app:compileGitpullShaders NO-SOURCE |
| 48 | > Task :app:generateGitpullAssets UP-TO-DATE |
| 49 | > Task :app:mergeGitpullAssets |
| 50 | > Task :app:compressGitpullAssets |
| 51 | > Task :app:extractGitpullVersionControlInfo |
| 52 | > Task :app:collectGitpullDependencies |
| 53 | > Task :app:sdkGitpullDependencyData |
| 54 | > Task :app:writeGitpullAppMetadata |
| 55 | > Task :app:writeGitpullSigningConfigVersions |
| 56 | > Task :app:processGitpullResources |
| 57 | > Task :app:optimizeGitpullResources |
| 58 | > Task :app:mergeExtDexGitpull |
| 59 | > Task :app:kaptGenerateStubsGitpullKotlin |
| 60 | w: Support for language version 2.0+ in kapt is in Alpha and must be enabled explicitly. Falling back to 1.9. |
| 61 | |
| 62 | > Task :app:kaptGitpullKotlin |
| 63 | /var/drydock/workingcopy-112/repo/libre-busto/app/build/tmp/kapt3/stubs/gitpull/it/reyboz/bustorino/data/gtfs/GtfsAgency.java:24: warning: Primary key constraint on gtfsId is ignored when being merged into it.reyboz.bustorino.data.gtfs.GtfsAgency |
| 64 | private it.reyboz.bustorino.data.gtfs.GtfsFeed feed; |
| 65 | ^ |
| 66 | |
| 67 | > Task :app:compileGitpullKotlin |
| 68 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/ActivityAbout.kt:100:13 'fun onBackPressed(): Unit' is deprecated. Deprecated in Java. |
| 69 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:147:21 'val loaderManager: LoaderManager' is deprecated. Deprecated in Java. |
| 70 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:152:30 'val loaderManager: LoaderManager' is deprecated. Deprecated in Java. |
| 71 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:324:29 'val loaderManager: LoaderManager' is deprecated. Deprecated in Java. |
| 72 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:383:29 'val loaderManager: LoaderManager' is deprecated. Deprecated in Java. |
| 73 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:473:21 Condition is always 'true'. |
| 74 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:538:33 Condition is always 'true'. |
| 75 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:540:20 Condition is always 'true'. |
| 76 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:603:21 'val loaderManager: LoaderManager' is deprecated. Deprecated in Java. |
| 77 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:652:66 'fun execute(vararg p0: Stop!): AsyncTask<Stop!, Void!, Boolean!>!' is deprecated. Deprecated in Java. |
| 78 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/ArrivalsFragment.kt:693:13 Condition is always 'false'. |
| 79 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/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. |
| 80 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/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. |
| 81 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/LinesDetailFragment.kt:176:16 Condition is always 'false'. |
| 82 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/fragments/MapLibreFragment.kt:1011:25 'fun requestSingleUpdate(p0: String, p1: LocationListener, p2: Looper?): Unit' is deprecated. Deprecated in Java. |
| 83 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:186:27 'class LocationProvider : Any' is deprecated. Deprecated in Java. |
| 84 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:186:44 'static field OUT_OF_SERVICE: Int' is deprecated. Deprecated in Java. |
| 85 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:186:72 'class LocationProvider : Any' is deprecated. Deprecated in Java. |
| 86 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:186:89 'static field TEMPORARILY_UNAVAILABLE: Int' is deprecated. Deprecated in Java. |
| 87 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:188:34 'class LocationProvider : Any' is deprecated. Deprecated in Java. |
| 88 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:188:51 'static field AVAILABLE: Int' is deprecated. Deprecated in Java. |
| 89 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/middleware/AppLocationManager.kt:216:48 'class Criteria : Any, Parcelable' is deprecated. Deprecated in Java. |
| 90 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/util/ImportExport.kt:53:40 Unchecked cast of 'kotlin.Any!' to 'kotlin.collections.Map<kotlin.String?, kotlin.Any>?'. |
| 91 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/util/ImportExport.kt:83:56 Unchecked cast of 'kotlin.collections.Set<*>' to 'kotlin.collections.Set<kotlin.String?>'. |
| 92 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/viewmodels/ArrivalsViewModel.kt:124:17 Condition is always 'false'. |
| 93 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/viewmodels/ArrivalsViewModel.kt:143:13 Condition is always 'true'. |
| 94 | w: file:///var/drydock/workingcopy-112/repo/libre-busto/app/src/main/java/it/reyboz/bustorino/viewmodels/ArrivalsViewModel.kt:163:17 Expression under 'when' is never equal to null. |
| 95 | |
| 96 | > Task :app:compileGitpullJavaWithJavac |
| 97 | |
| 98 | > Task :app:generateGitpullLintVitalReportModel |
| 99 | > Task :app:dexBuilderGitpull |
| 100 | > Task :app:mergeGitpullGlobalSynthetics |
| 101 | > Task :app:processGitpullJavaRes |
| 102 | > Task :app:mergeGitpullJavaResource |
| 103 | > Task :app:mergeDexGitpull |
| 104 | > Task :app:compileGitpullArtProfile |
| 105 | > Task :app:packageGitpull |
| 106 | > Task :app:createGitpullApkListingFileRedirect |
| 107 | > Task :app:lintVitalAnalyzeGitpull |
| 108 | > Task :app:lintVitalReportGitpull |
| 109 | |
| 110 | > Task :app:lintVitalGitpull |
| 111 | |
| 112 | > Task :app:assembleGitpull |
| 113 | |
| 114 | BUILD SUCCESSFUL in 3m 8s |
| 115 | 51 actionable tasks: 51 executed |
| 116 |
| Passed |
| 1 | Found 8.7 via distributionUrl |
|---|---|
| 2 | Running /home/phabricator-android-builder/versions/8.7/bin/gradle clean |
| 3 | Starting a Gradle Daemon, 1 incompatible Daemon could not be reused, use --status for details |
| 4 | |
| 5 | > Configure project :app |
| 6 | WARNING: The option setting 'android.defaults.buildfeatures.buildconfig=true' is deprecated. |
| 7 | The current default is 'false'. |
| 8 | It will be removed in version 9.0 of the Android Gradle plugin. |
| 9 | To keep using this feature, add the following to your module-level build.gradle files: |
| 10 | android.buildFeatures.buildConfig = true |
| 11 | or from Android Studio, click: `Refactor` > `Migrate BuildConfig to Gradle Build Files`. |
| 12 | |
| 13 | > Task :app:clean |
| 14 | |
| 15 | BUILD SUCCESSFUL in 20s |
| 16 | 1 actionable task: 1 executed |
| 17 |
| Passed |
| Passed |