Skip to content

Add missing env, and initial signing job #18

Add missing env, and initial signing job

Add missing env, and initial signing job #18

Workflow file for this run

name: Build
on: [push, pull_request]
jobs:
build:
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
fail-fast: false
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: '17'
- name: Setup Gradle
uses: gradle/gradle-build-action@v2
- name: Setup Build ID
run: |
[[ "$MATRIX_OS" == ubuntu* ]] && osName=linux || osName="${MATRIX_OS:0:3}"
echo "BUILD_ID=$GITHUB_RUN_NUMBER.$osName" >> "$GITHUB_ENV"
shell: bash
env:
MATRIX_OS: ${{ matrix.os }}
- run: ./gradlew build
- name: Setup APK artifact names
run: |
echo "DEBUG_APK=$(jq -er '.elements[].outputFile|sub("(-unsigned)?(\\.apk)?$";"")' 'app/build/outputs/apk/debug/output-metadata.json')" >> "$GITHUB_ENV"
echo "RELEASE_APK=$(jq -er '.elements[].outputFile|sub("(-unsigned)?(\\.apk)?$";"")' 'app/build/outputs/apk/release/output-metadata.json')" >> "$GITHUB_ENV"
shell: bash
- name: Upload debug APK
uses: actions/upload-artifact@v3
with:
name: ${{ env.DEBUG_APK }}
path: app/build/outputs/apk/debug/*.apk
if-no-files-found: error
- name: Upload release APK
uses: actions/upload-artifact@v3
with:
name: ${{ env.RELEASE_APK }}
path: app/build/outputs/apk/release/*.apk
if-no-files-found: error
- name: Prep consolidated build outputs
run: |
mkdir -p "$RUNNER_TEMP/build-outputs"
mv 'app/build/outputs' "$RUNNER_TEMP/build-outputs/$MATRIX_OS"
shell: bash
env:
MATRIX_OS: ${{ matrix.os }}
- name: Upload build outputs
uses: actions/upload-artifact@v3
with:
name: build-outputs
path: ${{ runner.temp }}/build-outputs
if-no-files-found: error
sign:
environment: Release
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
fail-fast: false
runs-on: ${{ matrix.os }}
steps:
- name: Download build artifacts
uses: actions/download-artifact@v3
with:
name: my-artifact
- name: Take a look around
run: ls -R