smalltalk-matrix/.github/workflows/release-candidate.yml

51 lines
1.5 KiB
YAML

name: Generate and publish Release Candidate
on:
push:
branches:
- 'release'
jobs:
publish-release-candidate:
name: Publish release candidate
runs-on: ubuntu-latest
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
steps:
- uses: actions/checkout@v2
- uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '11'
- uses: actions/setup-node@v3
with:
node-version:
16
- run: npm ci
working-directory: ./tools/beta-release/
- name: Write secrets
run: |
mkdir .secrets
touch .secrets/upload-key.jks
touch .secrets/service-account.json
echo -n '${{ secrets.UPLOAD_KEY }}' | base64 --decode >> .secrets/upload-key.jks
echo -n '${{ secrets.SERVICE_ACCOUNT }}' | base64 --decode >> .secrets/service-account.json
- name: Assemble release variant
run: ./tools/generate-release.sh ${{ secrets.STORE_PASS }}
- uses: actions/github-script@v6
with:
script: |
const { publishRelease } = await import('${{ github.workspace }}/tools/beta-release/app.js')
const artifacts = {
bundle: '${{ github.workspace }}/app/build/outputs/bundle/release/app-release.aab',
mapping: '${{ github.workspace }}/app/build/outputs/mapping/release/mapping.txt',
}
await publishRelease(github, artifacts)