name: Android on: [push, pull_request] jobs: build: runs-on: ubuntu-latest steps: - name: Set up JDK 17 uses: actions/setup-java@v4 with: distribution: 'temurin' java-version: '17' - uses: actions/checkout@v4 with: path: 'app' - name: Read variables from repo run: cat .github/workflows/env >> $GITHUB_ENV working-directory: ./app - name: Install Flutter uses: subosito/flutter-action@v2 with: channel: 'stable' flutter-version: ${{ env.FLUTTER }} - run: | flutter config flutter --version - name: Check app versions run: | python set-version.py git diff --exit-code working-directory: ./app - name: Run flutter tests run: | flutter test flutter analyze working-directory: ./app - name: Build the App run: android/scripts/build.sh env: YUBIOATH_STORE_BASE64: ${{ secrets.YUBIOATH_STORE_BASE64 }} YUBIOATH_KEY_ALIAS: ${{ secrets.YUBIOATH_KEY_ALIAS }} YUBIOATH_KEY_PASSWORD: ${{ secrets.YUBIOATH_KEY_PASSWORD }} YUBIOATH_STORE_PASSWORD: ${{ secrets.YUBIOATH_STORE_PASSWORD }} working-directory: ./app - name: Check generated files run: git diff --exit-code working-directory: ./app - name: Run android tests run: ./gradlew test working-directory: ./app/android - name: Collect artifacts run: android/scripts/collect-artifacts.sh ${GITHUB_REF} working-directory: ./app - uses: actions/upload-artifact@v4 with: name: yubico-authenticator-android path: app/artifacts/*