diff --git a/.github/workflows/android-ci.yml b/.github/workflows/android-ci.yml new file mode 100644 index 000000000..718164d1b --- /dev/null +++ b/.github/workflows/android-ci.yml @@ -0,0 +1,85 @@ +name: CI + +on: + push: + branches: + - master + - cleanup-bc + pull_request: + branches: + - master + - cleanup-bc + +jobs: + BuildAndTest: + name: Build and Test on JDK ${{ matrix.java_version }} + runs-on: ubuntu-latest + strategy: + matrix: + java_version: [1.8] + steps: + - name: Checkout + uses: actions/checkout@v2 + with: + submodules: true + fetch-depth: 0 # 0 indicates all history + - name: Install JDK ${{ matrix.java_version }} + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java_version }} + - name: Install Android SDK + uses: malinskiy/action-android/install-sdk@release/0.1.0 + - name: Build project + run: ./gradlew assemble + - name: Run tests + run: ./gradlew :OpenKeychain:test + - name: Archive UnitTest report + uses: actions/upload-artifact@v2 + if: failure() + with: + name: UnitTest-report + path: ${{ github.workspace }}/**/build/reports/tests/testDebugUnitTest + Check: + name: Check + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v2 + with: + submodules: true + fetch-depth: 0 # 0 indicates all history + - name: Install JDK ${{ matrix.java_version }} + uses: actions/setup-java@v1 + with: + java-version: 1.8 + - name: Install Android SDK + uses: malinskiy/action-android/install-sdk@release/0.1.0 + - name: Build project + run: ./gradlew lint + Espresso: + runs-on: ubuntu-latest + continue-on-error: true + steps: + - uses: actions/checkout@v2 + with: + submodules: true + - name: set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: 1.8 + - name: Install Android SDK + uses: malinskiy/action-android/install-sdk@release/0.1.0 + - name: Run instrumentation tests + uses: malinskiy/action-android/emulator-run-cmd@release/0.1.0 + with: + cmd: ./gradlew connectedFdroidDebugAndroidTest + api: 28 + tag: default + abi: x86 + - name: Archive Espresso results + uses: actions/upload-artifact@v2 + if: failure() + with: + name: Espresso-report + path: ./**/build/reports/androidTests/connected + diff --git a/.github/workflows/gradle-wrapper-validation.yml b/.github/workflows/gradle-wrapper-validation.yml index 13dca3db3..498cbfb57 100644 --- a/.github/workflows/gradle-wrapper-validation.yml +++ b/.github/workflows/gradle-wrapper-validation.yml @@ -1,4 +1,4 @@ -name: "Validate Gradle Wrapper" +name: Validate Gradle Wrapper on: push: @@ -10,7 +10,7 @@ on: jobs: validation: - name: "Validation" + name: Validation runs-on: ubuntu-latest steps: - uses: actions/checkout@v2