aboutsummaryrefslogtreecommitdiff
path: root/generate-apk-release.sh
diff options
context:
space:
mode:
Diffstat (limited to 'generate-apk-release.sh')
-rw-r--r--generate-apk-release.sh49
1 files changed, 49 insertions, 0 deletions
diff --git a/generate-apk-release.sh b/generate-apk-release.sh
new file mode 100644
index 00000000..830fa07d
--- /dev/null
+++ b/generate-apk-release.sh
@@ -0,0 +1,49 @@
+#!/usr/bin/env bash
+
+# config
+# make sure the GITHUB_API_KEY is encrypted and inside the travis file
+# travis encrypt GITHUB_API_KEY=super_secret --add env.global
+
+RELEASE_REPO=AllanWang/Frost-for-Facebook-APK-Builder
+USER_AUTH=AllanWang
+EMAIL=me@allanwang.ca
+APK_NAME=Frost-releaseTest
+MODULE_NAME=app
+VERSION_KEY=Frost
+# Make version key different from module name
+
+# create a new directory that will contain our generated apk
+mkdir $HOME/$VERSION_KEY/
+# copy generated apk from build folder to the folder just created
+cp -R $MODULE_NAME/build/outputs/apk/$APK_NAME.apk $HOME/$VERSION_KEY/
+
+# go to home and setup git
+echo "Clone Git"
+cd $HOME
+git config --global user.email "$EMAIL"
+git config --global user.name "$USER_AUTH CI"
+# clone the repository in the buildApk folder
+git clone --quiet --branch=master https://$USER_AUTH:$GITHUB_API_KEY@github.com/$RELEASE_REPO.git master > /dev/null
+# create version file
+echo "Create Version File"
+cd master
+echo "$VERSION_KEY v$TRAVIS_BUILD_NUMBER" > "$VERSION_KEY.txt"
+
+echo "Push Version File"
+git remote rm origin
+git remote add origin https://$USER_AUTH:$GITHUB_API_KEY@github.com/$RELEASE_REPO.git
+git add -f .
+git commit -m "Travis build $TRAVIS_BUILD_NUMBER pushed [skip ci]"
+git push -fq origin master > /dev/null
+
+echo "Create New Release"
+API_JSON="$(printf '{"tag_name": "v%s","target_commitish": "master","name": "v%s","body": "Automatic Release v%s","draft": false,"prerelease": false}' $TRAVIS_BUILD_NUMBER $TRAVIS_BUILD_NUMBER $TRAVIS_BUILD_NUMBER)"
+newRelease="$(curl --data "$API_JSON" https://api.github.com/repos/$RELEASE_REPO/releases?access_token=$GITHUB_API_KEY)"
+rID="$(echo "$newRelease" | jq ".id")"
+
+cd $HOME
+echo "Push apk to $rID"
+curl "https://uploads.github.com/repos/${RELEASE_REPO}/releases/${rID}/assets?access_token=${GITHUB_API_KEY}&name=${APK_NAME}-v${TRAVIS_BUILD_NUMBER}.apk" --header 'Content-Type: application/zip' --upload-file $VERSION_KEY/$APK_NAME.apk -X POST
+
+
+echo -e "Done\n" \ No newline at end of file