Skip to content

Promote release version within Google Play #2

Promote release version within Google Play

Promote release version within Google Play #2

name: Promote release version within Google Play
on:
workflow_dispatch:
inputs:
fromTrack:
description: 'The track from which to promote a release'
required: true
default: 'internal'
type: choice
options:
- internal
- open_beta
- alpha
- beta
- production
promoteTrack:
description: 'Track to which to promote a release'
required: true
default: 'open_beta'
type: choice
options:
- internal
- open_beta
- alpha
- beta
- production
userFraction:
description: 'percentage of users who will receive a staged release'
required: false
default: '0.25'
type: choice
options:
- "0.25"
- "0.5"
- "0.75"
- "1.0"
jobs:
promote:
name: Promote an release to a specific track
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
with:
fetch-depth: '0'
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
distribution: 'adopt'
java-version: 17
- name: Decode Gradle Play Publisher Credentials
id: decode_play_store_credentials
uses: timheuer/base64-to-file@v1
with:
fileName: 'gradle_playstore_publisher_credentials.json'
encodedString: ${{ secrets.ANDROID_KEYSTORE }}
- name: Publish release bundle
run: fastlane android promote --track_promote_to ${{ github.event.inputs.promoteTrack }} --rollout ${{ github.event.inputs.userFraction }}
env:
KEYSTORE_FILE: ${{ steps.decode_keystore.outputs.filePath }}
STORE_PASSWORD: ${{ secrets.ANDROID_KEYSTORE_PASSWORD }}
KEY_ALIAS: ${{ secrets.ANDROID_KEYSTORE_KEY_ALIAS }}
KEY_PASSWORD: ${{ secrets.ANDROID_KEYSTORE_KEY_PASSWORD }}
ANDROID_JSON_KEY_FILE: './gradle_playstore_publisher_credentials.json'