mirror of
https://github.com/skyline-emu/skyline.git
synced 2024-10-08 17:35:08 +02:00
40a7433e97
A lot of default Gradle parameters are unoptimal for the best performance, this enables the configuration and build cache alongside parallel building.
70 lines
2.1 KiB
YAML
70 lines
2.1 KiB
YAML
name: CI
|
|
|
|
on: [ push, pull_request ]
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
env:
|
|
JVM_OPTS: -Xmx6G
|
|
|
|
steps:
|
|
- name: Git Checkout
|
|
uses: actions/checkout@v2
|
|
with:
|
|
submodules: recursive
|
|
|
|
- name: Restore Gradle Cache
|
|
uses: actions/cache@v3
|
|
with:
|
|
path: ~/.gradle/
|
|
key: ${{ runner.os }}-gradle-${{ hashFiles('**/build.gradle') }}
|
|
|
|
- name: Restore CXX Cache
|
|
uses: actions/cache@v3
|
|
with:
|
|
path: |
|
|
app/.cxx/
|
|
app/build/intermediates/cxx/
|
|
key: ${{ runner.os }}-cxx-${{ hashFiles('**/CMakeLists.txt') }}
|
|
|
|
- name: Install Ninja Build
|
|
run: |
|
|
sudo apt-get install -y ninja-build
|
|
ln -s /usr/bin/ninja .
|
|
|
|
- name: Install CMake & Android NDK
|
|
run: echo "yes" | $ANDROID_HOME/tools/bin/sdkmanager "cmake;3.18.1" "ndk;25.0.8221429" --channel=3 | grep -v = || true
|
|
|
|
- name: Decode Keystore
|
|
env:
|
|
KEYSTORE_ENCODED: ${{ secrets.KEYSTORE }}
|
|
run: echo $KEYSTORE_ENCODED | base64 --decode > "$HOME/keystore.jks"
|
|
|
|
- name: Android Assemble
|
|
env:
|
|
SIGNING_STORE_PASSWORD: ${{ secrets.SIGNING_STORE_PASSWORD }}
|
|
SIGNING_KEY_ALIAS: ${{ secrets.SIGNING_KEY_ALIAS }}
|
|
SIGNING_KEY_PASSWORD: ${{ secrets.SIGNING_KEY_PASSWORD }}
|
|
run: ./gradlew --stacktrace --configuration-cache --build-cache --parallel --configure-on-demand assemble
|
|
|
|
- name: Rename APKs
|
|
run: |
|
|
mv app/build/outputs/apk/debug/app-debug.apk skyline-$GITHUB_RUN_NUMBER-debug.apk
|
|
mv app/build/outputs/apk/release/app-release.apk skyline-$GITHUB_RUN_NUMBER-release.apk
|
|
|
|
- name: Upload Debug APK
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: skyline-${{ github.run_number }}-debug.apk
|
|
path: skyline-${{ github.run_number }}-debug.apk
|
|
|
|
- name: Upload Release APK
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: skyline-${{ github.run_number }}-release.apk
|
|
path: skyline-${{ github.run_number }}-release.apk
|
|
|
|
- name: Delete Build Folder
|
|
run: rm -rf app/build/
|