kiwix-android/.github/workflows/pull_request.yml
2022-08-24 15:28:38 +05:30

147 lines
3.2 KiB
YAML

name: Pull requests
on:
pull_request:
branches:
- '**'
jobs:
code_formatting_job:
name: Code Formatting
runs-on: ubuntu-18.04
continue-on-error: true
steps:
- uses: actions/checkout@v1
with:
fetch-depth: 1
- name: Set up JDK 11
uses: actions/setup-java@v1
with:
java-version: 11
- name: Restore Cache
uses: actions/cache@v2
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Static Analysis
run: ./gradlew ktlintCheck
- name: Upload ktlint Reports
if: ${{ always() }}
uses: actions/upload-artifact@v2
with:
name: ktlint-report
path: '**/build/reports/ktlint'
detekt:
name: Detekt
runs-on: ubuntu-18.04
continue-on-error: true
steps:
- uses: actions/checkout@v1
with:
fetch-depth: 1
- name: Set up JDK 11
uses: actions/setup-java@v1
with:
java-version: 11
- name: Restore Cache
uses: actions/cache@v2
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Static Analysis
run: ./gradlew detekt
- name: Upload Lint Reports
uses: actions/upload-artifact@v2
if: ${{ always() }}
with:
name: detekt-report
path: '**/build/reports/detekt'
lint_job:
name: Lint
runs-on: ubuntu-latest
continue-on-error: true
steps:
- name: Checkout
uses: actions/checkout@v2
with:
fetch-depth: 1
- name: Set up JDK 11
uses: actions/setup-java@v1
with:
java-version: 11
- name: Restore Cache
uses: actions/cache@v2
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Run Debug Lint
run: ./gradlew app:lintDebug custom:lintCustomexampleDebug
- name: Upload Lint Reports
uses: actions/upload-artifact@v2
if: ${{ always() }}
with:
name: lint-report
path: '**/build/reports/lint-results-*'
assemble_job:
name: Assemble
runs-on: ubuntu-18.04
continue-on-error: true
steps:
- uses: actions/checkout@v1
with:
fetch-depth: 1
- name: Set up JDK 11
uses: actions/setup-java@v1
with:
java-version: 11
- name: Install NDK
run: echo "y" | sudo ${ANDROID_HOME}/tools/bin/sdkmanager --install "ndk;22.0.7026061" --sdk_root=${ANDROID_SDK_ROOT}
- name: Build all configurations
run: ./gradlew assemble
- name: Upload APK as Artifacts
uses: actions/upload-artifact@v2.2.0
if: ${{ always() }}
with:
name: kiwix-android
path: |
**/*.apk