CI: cache dependencies in makefile

cache both gradle and haveno-specific dependencies when running CI.
windows binaries are built using ./gradlew build directly, since
windows users have to download binaries manually regardless.
This commit is contained in:
erciccione 2021-11-09 11:18:39 +00:00 committed by woodser
parent aea305048d
commit d7ae434385

View File

@ -11,9 +11,43 @@ jobs:
build:
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
os: [ubuntu-latest, macos-latest]
fail-fast: false
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2
with:
lfs: true
- name: Set up JDK 11
uses: actions/setup-java@v2
with:
java-version: '11'
distribution: 'adopt'
cache: gradle
- name: Pull lfs
run: git lfs pull
- name: Build with make
run: make
- name: cache nodes dependencies
uses: actions/upload-artifact@v2
with:
name: cached-localnet
path: .localnet
- name: Cleanup Gradle Cache
# Remove some files from the Gradle cache, so they aren't cached by GitHub Actions.
# Restoring these files from a GitHub Actions cache might cause problems for future builds.
run: |
rm -f ~/.gradle/caches/modules-2/modules-2.lock
rm -f ~/.gradle/caches/modules-2/gc.properties
- uses: actions/upload-artifact@v2
if: failure()
with:
name: gradlew-report
path: 'desktop/build/reports/tests/test/index.html'
retention-days: 30
build-windows:
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
with:
@ -27,9 +61,3 @@ jobs:
run: git lfs pull
- name: Build with Gradle
run: ./gradlew build --stacktrace --scan
- uses: actions/upload-artifact@v2
if: failure()
with:
name: gradlew-report
path: 'desktop/build/reports/tests/test/index.html'
retention-days: 30