prism-android/.github/workflows/build.yml
2026-02-02 23:25:04 -08:00

70 lines
1.7 KiB
YAML

name: Build
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
release:
types: [ created ]
jobs:
check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Run ktlint check
run: ./gradlew ktlintCheck --stacktrace
- name: Run detekt check
run: ./gradlew detekt --stacktrace
- name: Build debug APK
run: ./gradlew assembleDebug --stacktrace
release:
runs-on: ubuntu-latest
if: github.event_name == 'release'
steps:
- uses: actions/checkout@v4
with:
ref: ${{ github.event.release.tag_name }}
fetch-depth: 0
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build release bundle
run: ./gradlew bundleRelease --stacktrace
- name: Rename bundle
run: mv app/build/outputs/bundle/release/app-release.aab prism.aab
- name: Upload release bundle
uses: actions/upload-artifact@v4
with:
name: prism-bundle
path: prism.aab
- name: Upload to release
uses: softprops/action-gh-release@v1
with:
files: prism.aab
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}