Add configuration for Nightly build

This commit is contained in:
vanous 2022-01-15 10:06:19 +01:00
parent 3124c8ebba
commit 52881fe9a9
1 changed files with 101 additions and 0 deletions

101
.woodpecker/nightly.yml Normal file
View File

@ -0,0 +1,101 @@
clone:
git:
image: woodpeckerci/plugin-git
settings:
partial: false
steps:
build-apks:
image: codeberg.org/freeyourgadget/android-fdroid-tools:latest
commands:
# build the apks
- echo "$${SIGNING_KEY}" | base64 -d > app/keystore.p12
- ./gradlew assembleMainNightly -Dnightly_store_file="keystore.p12" -Dnightly_store_password="$${KEYSTOREPASS}" -Dnightly_key_alias="gadgetbridge" -Dnightly_key_password="$${KEYPASS}"
- ./gradlew assembleMainNopebble -Dnightly_store_file="keystore.p12" -Dnightly_store_password="$${KEYSTOREPASS}" -Dnightly_key_alias="gadgetbridge" -Dnightly_key_password="$${KEYPASS}"
- ./gradlew assembleBanglejsNightly -Dnightly_store_file="keystore.p12" -Dnightly_store_password="$${KEYSTOREPASS}" -Dnightly_key_alias="gadgetbridge" -Dnightly_key_password="$${KEYPASS}"
secrets: [ signing_key, keystorepass, keypass ]
pull-repo-config:
image: codeberg.org/freeyourgadget/android-fdroid-tools:latest
commands:
- cd ..
- pwd
- mkdir repoconfig
- cd repoconfig
- pwd
- git clone --depth 1 https://codeberg.org/Freeyourgadget/fdroid-repo-config.git
- ./fdroid-repo-config/repoconfig/copy_files_to_repo_config.sh
secrets: [ commit_token ]
pull-pages:
image: codeberg.org/freeyourgadget/android-fdroid-tools:latest
commands:
# prepare the pages repo, so fdroidclient can push files into it later
- cd ..
- pwd
- mkdir pages
- cd pages
- pwd
- git clone --depth 2 https://codeberg.org/Freeyourgadget/pages.git
- cd pages
- git config user.name "CODEBERG CI"
- git config user.email "noreply@nodomain.nodomain"
# reset and remove, later force push, to keep repo size small
- git reset --soft HEAD~1
- git status
#- rm -f fdroid/repo/*apk
update-fdroid-data:
image: codeberg.org/freeyourgadget/android-fdroid-tools:latest
commands:
- pwd
- ../repoconfig/fdroid-repo-config/repoconfig/prepare_changelog.sh
- cd ../repoconfig/fdroid-repo-config/repoconfig
# get secrets from storage
- echo "$${SIGNING_KEY}" | base64 -d > keystore.p12
- sed -i "s#KEYSTOREPASS_PLACEHOLDER#$${KEYSTOREPASS}#g" config.yml
- sed -i "s#KEYPASS_PLACEHOLDER#$${KEYPASS}#g" config.yml
- fdroid update
- cp ./repo/nodomain.freeyourgadget.gadgetbridge.nightly/en-US/icon.png ./repo/icons/icon.png
- python3 repo_listing.py > listing.html
- sed -i "s#</body>#LISTING\n</body>#" ./repo/index.html
- sed -i -e "/LISTING/r listing.html" -e '//d' ./repo/index.html
- fdroid deploy
- ls -laR repo
secrets: [ signing_key, keystorepass, keypass ]
push-pages-update-repo:
image: codeberg.org/freeyourgadget/android-fdroid-tools:latest
commands:
- cd ../pages/pages/
- git add -A
- git status
- git diff
- ls -lsR fdroid/repo
- git commit -m "autodeploy, $${DRONE_COMMIT_MESSAGE}"
- git remote remove origin
- git remote add origin https://"$${COMMIT_TOKEN}"@codeberg.org/Freeyourgadget/pages.git
# force push as we removed all data
- git push -f origin master
- cd ../../
- pwd
- ls -la
- ./repoconfig/fdroid-repo-config/repoconfig/hyperlink.sh https://freeyourgadget.codeberg.page/fdroid/repo/
# bump
secrets: [ commit_token ]
on-error:
image: codeberg.org/freeyourgadget/android-fdroid-tools:latest
commands:
- cd ..
- mkdir -p repoconfig
- cd repoconfig
- git clone --depth 1 https://codeberg.org/Freeyourgadget/fdroid-repo-config.git || true
- ./fdroid-repo-config/repoconfig/create_issue_comment.sh "CI failed"
when:
status: failure
secrets: [ commit_token ]
#bump
#this doesn't work yet:
#https://github.com/woodpecker-ci/woodpecker/issues/687
when:
branch: nightly-branch