Skip to content

🚀 Play Store publish #1

🚀 Play Store publish

🚀 Play Store publish #1

name: Play Store publish
on:
workflow_dispatch:
inputs:
track:
description: "Play Store track"
required: true
type: choice
default: "internal"
options:
- internal
- alpha
- beta
- production
upload_binary:
description: "Whether to upload AAB or not"
required: true
type: boolean
default: true
upload_assets:
description: "Whether to upload screenshots & metadata"
required: true
type: boolean
default: false
tag_repository:
description: "Whether to tag the repository or not"
required: true
type: boolean
default: true
# Version name, default "" (use repo)
# Version code, default ${{ github.run_number }}
jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: read
checks: write
id-token: write
steps:
- uses: actions/checkout@v4
- name: ☕ Set up JDK 21
uses: actions/setup-java@v4
with:
java-version: '21'
distribution: 'adopt'
- name: 🐘 Setup Gradle
uses: gradle/actions/setup-gradle@v4
with:
add-job-summary-as-pr-comment: on-failure
- name: 🔨 Build Android App
env:
PLAYSTORE_SECRET_PASSPHRASE: ${{ secrets.PLAYSTORE_SECRET_PASSPHRASE }}
KEYSTORE_PASSWORD: ${{ secrets.KEYSTORE_PASSWORD }}
KEYSTORE_KEY_PASSWORD: ${{ secrets.KEYSTORE_KEY_PASSWORD }}
run: |
set -eux
./_ci/decrypt_secrets.sh
echo "BUILD"
# ./gradlew --no-daemon :tasks-app-android:assembleStoreRelease \
# -Pci=true \
# -Pplaystore.keystore.file="${PWD}/_ci/tasksApp.keystore" \
# -Pplaystore.keystore.password="${KEYSTORE_PASSWORD}" \
# -Pplaystore.keystore.key_password="${KEYSTORE_KEY_PASSWORD}"
- name: 🚀 Play Store publish
run: |
gem install bundler
bundle config set --local path .bundler
bundle install --jobs "$(nproc)"
./_ci/playstore.sh "${{ inputs.track }}" ${{ inputs.upload_binary }} ${{ inputs.upload_assets }}
- name: 📌 Tag Release
if: ${{ inputs.tag_repository }}
run: |
echo "${{ github.run_number }}"
# version_name=${GITHUB_REF##*/}
# echo "Tagging release with tag $version_name"
# git tag $version_name release/$version_name
# git push origin --tags