name: Android on: [push, pull_request] env: CCACHE_BASEDIR: ${{ github.workspace }} CCACHE_COMPRESS: true CCACHE_MAXSIZE: 400M CC: gcc OS_NAME: linux jobs: pre-check: runs-on: ubuntu-latest outputs: should_skip: ${{ steps.skip-check.outputs.should_skip }} steps: - id: skip-check uses: fkirc/skip-duplicate-actions@master with: concurrent_skipping: 'same_content' android: needs: pre-check if: ${{ needs.pre-check.outputs.should_skip != 'true' }} runs-on: ubuntu-latest env: TEST: android # since the NDK is newly installed every time, we have to use this to avoid cache misses CCACHE_COMPILERCHECK: content steps: # even though we don't specify a specific version in our gradle files, the # build fails without this because some arbitrary NDK version, that's # weirdly not installed, is requested - name: Install NDK run: yes | sudo ${ANDROID_HOME}/tools/bin/sdkmanager --install 'ndk;21.0.6113669' - uses: actions/checkout@v2 - uses: actions/cache@v2 with: path: ~/.ccache key: ccache-android-${{ github.ref }}:${{ github.sha }} restore-keys: | ccache-android-${{ github.ref }}: ccache-android- - run: | sudo apt-get install -qq ccache echo "PATH=/usr/lib/ccache:$PATH" >> $GITHUB_ENV ccache -z - uses: ./.github/actions/default - run: ccache -s - if: ${{ success() }} uses: actions/upload-artifact@v2 with: name: Lint Results path: src/frontends/android/app/build/reports/lint-results.xml