[CI] publish signed builds from master to nextcloud #416

Merged
6543 merged 2 commits from 6543/GitNex:ci-add-publish-build into master 2020-04-15 16:09:41 +00:00
2 changed files with 42 additions and 0 deletions

View File

@ -24,6 +24,32 @@ steps:
commands:
- ./gradlew build
- name: sign
image: nextcloudci/android:android-49
environment:
TOKEN:
from_secret: BOT_TOKEN
KS_PASS:
from_secret: KS_PASS
KEY_PASS:
from_secret: KEY_PASS
OUTPUT: signed.apk
GITEA: https://gitea.com
KS_FILE: ci_keystore.jks
KS_REPO:
from_secret: KS_REPO
commands:
- ./scripts/sign-build.sh
- name: publish
image: vividboarder/drone-webdav
environment:
WEBDAV_USERNAME: GitNexBot
WEBDAV_PASSWORD:
from_secret: NC_TOKEN
PLUGIN_FILE: signed.apk
PLUGIN_DESTINATION: https://cloud.swatian.com/remote.php/dav/files/GitNexBot/GitNex-Builds/latest.apk
trigger:
event:
- push

16
scripts/sign-build.sh Executable file
View File

@ -0,0 +1,16 @@
#!/usr/bin/env bash
#make sure needed var's are here
[ -z "${TOKEN}" ] && { echo "missing TOKEN"; exit 1; }
[ -z "${KS_PASS}" ] && { echo "missing KS_PASS"; exit 1; }
[ -z "${KEY_PASS}" ] && { echo "missing KEY_PASS"; exit 1; }
[ -z "${GITEA}" ] && { echo "missing GITEA"; exit 1; }
[ -z "${KS_REPO}" ] && { echo "missing KS_REPO"; exit 1; }
[ -z "${KS_FILE}" ] && { echo "missing KS_FILE"; exit 1; }
[ -z "${OUTPUT}" ] && { echo "missing OUTPUT"; exit 1; }
KEYFILE=$(mktemp)
curl -X GET "${GITEA}/api/v1/repos/${KS_REPO}/contents/${KS_FILE}?token=${TOKEN}" -H "accept: application/json" | sed 's|"content":"|#|g' | cut -d '#' -f 2 | cut -d '"' -f 1 | base64 -d > ${KEYFILE}
/opt/android-sdk-linux/build-tools/*/apksigner sign -v --ks-pass pass:$KS_PASS --key-pass pass:$KEY_PASS --ks-key-alias GitNexBot --ks ${KEYFILE} --out signed.apk $(find . -name "*release*.apk")