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 | % Total % Received % Xferd Average Speed Time Time Time Current |
|---|---|
| 2 | Dload Upload Total Spent Left Speed |
| 3 | |
| 4 | 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 |
| 5 | 100 1272 100 899 100 373 6659 2762 --:--:-- --:--:-- --:--:-- 9422 |
| 6 |
| 1 | [INFO] including .env 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 7 18:34 ./app/build/outputs/apk/gitpull/app-gitpull-signed.apk |
| 8 | Cleaning old builds |
| 9 | Update checksums |
| 10 | Published here: |
| 11 | https://lab.reyboz.it/builds/libre-busto/HEAD-libre-busto.apk |
| 12 | DEBUG TELEGRAM CONTENT |
| 13 | 🌚 New commit: *Put stop text* |
| 14 | https://gitpull\.it/R4:30ff404e3964ebfb2f6165cc3acb7e38aa09c600 |
| 15 | |
| 16 | Try this fresh test APK: |
| 17 | [Download HEAD\-libre\-busto\.apk](https:\/\/lab\.reyboz\.it\/builds\/libre\-busto\/HEAD\-libre\-busto\.apk) |
| 18 | |
| 19 | APK fingerprint sha256: |
| 20 | `c7c65890480a3479840d33117ff42a82c3ea8d5ca3da774a4f07b5f282f58fac` |
| 21 | {"ok":true,"result":{"message_id":8196,"from":{"id":7507357656,"is_bot":true,"first_name":"GitPull.it Phorge bot","username":"gitpullit_phorge_bot"},"chat":{"id":-1001282771908,"title":"Libre BusTO dev community ediscion","username":"librebusto_dev","type":"supergroup"},"date":1746635678,"text":"\ud83c\udf1a New commit: Put stop text\nhttps://gitpull.it/R4:30ff404e3964ebfb2f6165cc3acb7e38aa09c600\n\nTry this fresh test APK:\nDownload HEAD-libre-busto.apk\n\nAPK fingerprint sha256:\nc7c65890480a3479840d33117ff42a82c3ea8d5ca3da774a4f07b5f282f58fac","entities":[{"offset":15,"length":13,"type":"bold"},{"offset":29,"length":62,"type":"url"},{"offset":118,"length":29,"type":"text_link","url":"https://lab.reyboz.it/builds/libre-busto/HEAD-libre-busto.apk"},{"offset":173,"length":64,"type":"code"}],"link_preview_options":{"url":"https://gitpull.it/R4:30ff404e3964ebfb2f6165cc3acb7e38aa09c600"}}}Cleaning |
| 22 | Done |
| 23 |
| Passed |
| 1193 | 23693796 res/yd.png (OK) |
|---|---|
| 1194 | 23705732 res/yg.9.png (OK) |
| 1195 | 23706167 res/yj.xml (OK - compressed) |
| 1196 | 23706564 res/yn.png (OK) |
| 1197 | 23709048 res/z-.9.png (OK) |
| 1198 | 23709312 res/z9.9.png (OK) |
| 1199 | 23709772 res/zE.png (OK) |
| 1200 | 23710136 res/zG.xml (OK - compressed) |
| 1201 | 23710456 res/zR.png (OK) |
| 1202 | 23713257 res/zR.xml (OK - compressed) |
| 1203 | 23713748 res/zV.9.png (OK) |
| 1204 | 23716251 res/zc.xml (OK - compressed) |
| 1205 | 23716700 res/ze.png (OK) |
| 1206 | 23725055 res/zp.xml (OK - compressed) |
| 1207 | 23725312 res/zq.xml (OK - compressed) |
| 1208 | 23725624 res/zr.png (OK) |
| 1209 | 23728443 res/zs.xml (OK - compressed) |
| 1210 | 23728715 res/zu.xml (OK - compressed) |
| 1211 | 23729746 res/zv.xml (OK - compressed) |
| 1212 | 23731023 res/zz.xml (OK - compressed) |
| 1213 | 23731216 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.
| 14 | <uses-permission> element there. A typical path to a debug manifest |
|---|---|
| 15 | override file in a Gradle project is src/debug/AndroidManifest.xml. |
| 16 | |
| 17 | /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] |
| 18 | palinaLiveData.postValue(palina) |
| 19 | ~~~~~~ |
| 20 | |
| 21 | Explanation for issues of type "NullSafeMutableLiveData": |
| 22 | This check ensures that LiveData values are not null when explicitly |
| 23 | declared as non-nullable. |
| 24 | |
| 25 | Kotlin interoperability does not support enforcing explicit |
| 26 | null-safety when using generic Java type parameters. Since |
| 27 | LiveData is a Java class its value can always be null even |
| 28 | when its type is explicitly declared as non-nullable. This can lead |
| 29 | to runtime exceptions from reading a null LiveData value that is |
| 30 | assumed to be non-nullable. |
| 31 | |
| 32 | Vendor: Android Open Source Project |
| 33 | Identifier: androidx.lifecycle |
| 34 | Feedback: https://issuetracker.google.com/issues/new?component=413132 |
| 35 | |
| 36 | 2 errors, 0 warnings |
| 37 | |
| 38 |
| 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:processGitpullJavaRes |
| 101 | > Task :app:mergeGitpullGlobalSynthetics |
| 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 2m 15s |
| 115 | 51 actionable tasks: 50 executed, 1 up-to-date |
| 116 |
| Passed |
| 1 | Found 8.7 via distributionUrl |
|---|---|
| 2 | Running /home/phabricator-android-builder/versions/8.7/bin/gradle clean |
| 3 | |
| 4 | > Configure project :app |
| 5 | WARNING: The option setting 'android.defaults.buildfeatures.buildconfig=true' is deprecated. |
| 6 | The current default is 'false'. |
| 7 | It will be removed in version 9.0 of the Android Gradle plugin. |
| 8 | To keep using this feature, add the following to your module-level build.gradle files: |
| 9 | android.buildFeatures.buildConfig = true |
| 10 | or from Android Studio, click: `Refactor` > `Migrate BuildConfig to Gradle Build Files`. |
| 11 | |
| 12 | > Task :app:clean |
| 13 | |
| 14 | BUILD SUCCESSFUL in 2s |
| 15 | 1 actionable task: 1 executed |
| 16 |
| Passed |
| Passed |