Publish Custom App #177
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Publish Custom App | |
on: | |
release: | |
types: [published] | |
branches: | |
- main | |
jobs: | |
publish: | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Retrieving custom app configuration | |
uses: actions/checkout@v3 | |
- name: Retrieving Kiwix Android source code | |
run: git clone --depth=1 --single-branch --branch develop https://github.com/kiwix/kiwix-android.git | |
- name: Copying custom app configuration into Kiwix Android code base | |
run: ./copy_files_to_kiwix_android.sh | |
- name: Preparing signing material | |
env: | |
keystore: ${{ secrets.keystore }} | |
playstore_json: ${{ secrets.PLAYSTORE_JSON }} | |
run: | | |
echo "$playstore_json" > kiwix-android/playstore.json | |
echo "$keystore" | base64 -d > kiwix-android/kiwix-android.keystore | |
- name: Set tag variable | |
run: echo "TAG=$(echo ${GITHUB_REF:10})" >> $GITHUB_ENV | |
- name: Publishing app to Google Play | |
env: | |
KEY_ALIAS: ${{ secrets.KEY_ALIAS }} | |
KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }} | |
KEY_STORE_PASSWORD: ${{ secrets.KEY_STORE_PASSWORD }} | |
DWDS_HTTP_BASIC_ACCESS_AUTHENTICATION: ${{ secrets.DWDS_HTTP_BASIC_ACCESS_AUTHENTICATION }} | |
run: | | |
cd kiwix-android | |
eval "./gradlew publish${TAG^}ReleaseBundleWithPlayAssetDelivery" | |
publish_dummy_bundle: | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Retrieving custom app configuration | |
uses: actions/checkout@v3 | |
- name: Retrieving Kiwix Android source code | |
run: git clone --depth=1 --single-branch --branch develop https://github.com/kiwix/kiwix-android.git | |
- name: Copying custom app configuration into Kiwix Android code base | |
run: ./copy_files_to_kiwix_android.sh | |
- name: Install jq | |
run: apt-get install -y jq | |
- name: Should upload dummy Bundle | |
run: | | |
cd ${TAG} | |
should_publish=$(jq -r '.new // empty' info.json) | |
if [ "$should_publish" == 'true' ]; then | |
echo "should_publish=true" >> $GITHUB_ENV | |
else | |
echo "should_publish=false" >> $GITHUB_ENV | |
fi | |
- name: Preparing signing material | |
if: env.should_publish == 'true' | |
env: | |
keystore: ${{ secrets.keystore }} | |
run: | | |
echo "$keystore" | base64 -d > kiwix-android/kiwix-android.keystore | |
- name: Set tag variable | |
if: env.should_publish == 'true' | |
run: echo "TAG=$(echo ${GITHUB_REF:10})" >> $GITHUB_ENV | |
- name: Generate dummy Bundle | |
if: env.should_publish == 'true' | |
env: | |
KEY_ALIAS: ${{ secrets.KEY_ALIAS }} | |
KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }} | |
KEY_STORE_PASSWORD: ${{ secrets.KEY_STORE_PASSWORD }} | |
DWDS_HTTP_BASIC_ACCESS_AUTHENTICATION: ${{ secrets.DWDS_HTTP_BASIC_ACCESS_AUTHENTICATION }} | |
run: | | |
cd kiwix-android | |
eval "./gradlew bundle${TAG^}Release" | |
- name: Get Bundle name and path | |
if: env.should_publish == 'true' | |
id: bundle-path | |
run: | | |
BUNDLE_PATH="kiwix-android/custom/build/outputs/bundle/${TAG}Release/*${TAG}*.aab" | |
BUNDLE_NAME="${TAG^}DummyBundle.aab" | |
echo "bundle_path=$BUNDLE_PATH" >> $GITHUB_ENV | |
echo "bundle_name=$BUNDLE_NAME" >> $GITHUB_ENV | |
- name: Upload Bundle as an artifact | |
if: env.should_publish == 'true' | |
uses: actions/upload-artifact@v2 | |
with: | |
name: ${{ env.bundle_name }} | |
path: ${{ env.bundle_path }} | |