From 8aea45170fbb9657ea8208b7ffc57d6e3be43993 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=97=B1=20PixelyIon?= Date: Wed, 11 Dec 2019 22:32:42 +0530 Subject: [PATCH] Move to GitHub Actions for CI This commit adds a GitHub Actions Workflow for Continuous Integration. --- .github/workflows/ci.yml | 73 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 .github/workflows/ci.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 00000000..6261b0dc --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,73 @@ +name: CI + +on: push + +jobs: + build: + runs-on: ubuntu-latest + container: + image: circleci/android:api-29-ndk + options: -u root + env: + JVM_OPTS: -Xmx6G + + steps: + - name: Git Checkout + uses: actions/checkout@v1 + with: + submodules: true + + - name: Restore Gradle Cache + uses: actions/cache@v1.0.3 + with: + path: /root/.gradle/ + key: ${{ runner.os }}-gradle-${{ hashFiles('**/build.gradle') }} + restore-keys: | + ${{ runner.os }}-gradle- + + - name: Restore CXX Cache + uses: actions/cache@v1.0.3 + with: + path: app/.cxx/ + key: ${{ runner.os }}-cxx-${{ hashFiles('**/CMakeLists.txt') }} + restore-keys: | + ${{ runner.os }}-cxx- + + - name: Setup Environment for Gradle + run: chmod +x gradlew + + - name: Install CMake from Android SDK Manager + run: yes | sdkmanager --install "cmake;3.10.2.4988404" | grep -v = || true + + - name: Android Lint + run: ./gradlew --stacktrace lint + + - name: Upload Lint Report + uses: actions/upload-artifact@v1 + with: + name: lint-result.html + path: app/build/reports/lint-results.html + + - name: Android Assemble + run: ./gradlew assemble + + - name: Upload Debug APK + uses: actions/upload-artifact@v1 + with: + name: app-debug.apk + path: app/build/outputs/apk/debug/ + + - name: Upload Release APK + uses: actions/upload-artifact@v1 + with: + name: app-release.apk + path: app/build/outputs/apk/release/ + + - name: Upload R8 Mapping + uses: actions/upload-artifact@v1 + with: + name: mapping.txt + path: app/build/outputs/mapping/release/ + + - name: Delete Build Folder + run: rm -rf app/build/