name: CI Pipeline on: push: branches: - main pull_request: permissions: contents: write jobs: lint: name: Android Lint runs-on: ubuntu-latest container: image: 'cimg/android:2024.04-node' steps: - name: Checkout sources uses: actions/checkout@v4 with: fetch-depth: 1 - name: Lint shell: bash run: ./gradlew lint android-check: name: Unit Tests runs-on: ubuntu-latest container: image: 'cimg/android:2024.04-node' steps: - name: Checkout sources uses: actions/checkout@v4 with: fetch-depth: 1 - name: Test shell: bash run: ./gradlew testNightlyDebugUnitTest --stacktrace release: name: Build and Upload APK needs: [lint, android-check] if: github.event_name == 'push' runs-on: ubuntu-latest container: image: 'cimg/android:2024.04-node' steps: - name: Checkout sources uses: actions/checkout@v4 with: fetch-depth: 0 - name: Build APKs shell: bash run: ./gradlew assembleDebug - name: Prepare APKs shell: bash run: | mkdir -p release-apks find . -name "*.apk" -print -exec cp {} release-apks/ \; ls -la release-apks/ - name: Upload to Gitea Releases uses: https://gitea.com/actions/gitea-release-action@v1 with: tag_name: build-${{ github.run_number }} name: "Build #${{ github.run_number }}" prerelease: true files: |- release-apks/*.apk env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}