Skip to content

Bumps version number for open beta testing (#312) #535

Bumps version number for open beta testing (#312)

Bumps version number for open beta testing (#312) #535

Workflow file for this run

name: CI
on:
pull_request:
branches: [ main, develop ]
push:
branches: [ main ]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
test:
name: Unit Tests
runs-on: ubuntu-latest
timeout-minutes: 10
if: github.event_name == 'pull_request'
permissions:
contents: read
actions: write
steps:
- uses: actions/checkout@v4
- name: Validate Gradle wrapper
uses: gradle/actions/wrapper-validation@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
cache: 'gradle'
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v4
with:
cache-read-only: ${{ github.ref != 'refs/heads/main' && github.ref != 'refs/heads/develop' }}
- name: Run tests with coverage
run: ./gradlew koverHtmlReport koverXmlReport --stacktrace --no-daemon
- name: Upload test results
if: always()
uses: actions/upload-artifact@v4
with:
name: test-results
path: '**/build/test-results/**/*.xml'
retention-days: 3
- name: Upload test reports
if: always()
uses: actions/upload-artifact@v4
with:
name: test-reports
path: '**/build/reports/tests/**'
retention-days: 3
- name: Upload coverage report
if: always()
uses: actions/upload-artifact@v4
with:
name: coverage-report
path: '**/build/reports/kover/**'
retention-days: 3
lint:
name: Code Quality
runs-on: ubuntu-latest
timeout-minutes: 10
if: github.event_name == 'pull_request'
permissions:
contents: read
actions: write
steps:
- uses: actions/checkout@v4
- name: Validate Gradle wrapper
uses: gradle/actions/wrapper-validation@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
cache: 'gradle'
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v4
with:
cache-read-only: ${{ github.ref != 'refs/heads/main' && github.ref != 'refs/heads/develop' }}
- name: Run ktlint
run: ./gradlew ktlintCheck --stacktrace --no-daemon
- name: Run Android Lint
run: ./gradlew lintDebug --stacktrace --no-daemon
- name: Upload lint results
if: always()
uses: actions/upload-artifact@v4
with:
name: lint-results
path: |
**/build/reports/lint-results-*.html
**/build/reports/lint-results-*.xml
retention-days: 3
build-debug:
name: Build Debug APK
runs-on: ubuntu-latest
timeout-minutes: 15
needs: [test, lint]
if: github.event_name == 'pull_request'
permissions:
contents: read
actions: write
steps:
- uses: actions/checkout@v4
- name: Validate Gradle wrapper
uses: gradle/actions/wrapper-validation@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
cache: 'gradle'
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v4
with:
cache-read-only: ${{ github.ref != 'refs/heads/main' && github.ref != 'refs/heads/develop' }}
- name: Build debug APK
run: ./gradlew assembleDebug --stacktrace --no-daemon
build-release:
name: Build Release APK
runs-on: ubuntu-latest
timeout-minutes: 15
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
permissions:
contents: read
actions: write
steps:
- uses: actions/checkout@v4
- name: Validate Gradle wrapper
uses: gradle/actions/wrapper-validation@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
cache: 'gradle'
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v4
with:
cache-read-only: ${{ github.ref != 'refs/heads/main' && github.ref != 'refs/heads/develop' }}
- name: Build release APK
run: ./gradlew assembleRelease --stacktrace --no-daemon