name: Code Quality on: push: branches: [main] pull_request: branches: [main] concurrency: group: code-quality-${{ github.ref }} cancel-in-progress: true jobs: ktlint: name: Kotlin Lint runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Set up JDK uses: actions/setup-java@v4 with: distribution: 'temurin' java-version: '17' - name: Cache Gradle uses: actions/cache@v4 with: path: | ~/.gradle/caches ~/.gradle/wrapper key: gradle-${{ runner.os }}-${{ hashFiles('**/*.gradle', '**/gradle-wrapper.properties') }} restore-keys: gradle-${{ runner.os }}- - name: Run ktlint run: ./gradlew ktlint continue-on-error: true - name: Upload ktlint report if: always() uses: actions/upload-artifact@v4 with: name: ktlint-report path: build/reports/checkstyle/ktlint.xml if-no-files-found: ignore