summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFabian Mastenbroek <mail.fabianm@gmail.com>2021-11-02 14:34:59 +0100
committerFabian Mastenbroek <mail.fabianm@gmail.com>2021-11-02 15:23:27 +0100
commit1d62f0b709cfced8b4dfcd0510cb554b4e3dbe90 (patch)
tree184002ed3ac820e886c8d05ad7abbd3d0d26cb02
parent722bf49b9263005d665b01c8fa6c676ef9a685f7 (diff)
ci: Update Java Github Actions workflows
This change updates the Github Actions workflows for the Java/Kotlin part of the project. We now use the gradle-build-action from Gradle to build the project, which does caching for us. In addition, we update the Codecov action to version 2, since the old version is deprecated and will stop working next year.
-rw-r--r--.github/workflows/build.yml37
-rw-r--r--.github/workflows/release.yml26
2 files changed, 17 insertions, 46 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 9bd42254..d72ad63e 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -7,8 +7,8 @@ on:
branches: [master]
jobs:
- build-simulator:
- name: Build Simulator (Java ${{ matrix.java }})
+ build:
+ name: Build (Java ${{ matrix.java }})
runs-on: ${{ matrix.os }}
strategy:
matrix:
@@ -23,30 +23,17 @@ jobs:
- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@v1
- name: Set up JDK
- uses: actions/setup-java@v1
+ uses: actions/setup-java@v2
with:
+ distribution: 'zulu'
java-version: ${{ matrix.java }}
- - name: Grant execute permission for gradlew
- run: chmod +x gradlew
- - uses: actions/cache@v2
- with:
- path: |
- ~/.gradle/caches
- ~/.gradle/wrapper
- key: ${{ runner.os }}-${{ matrix.java }}-gradle-${{ hashFiles('gradle/wrapper/gradle-wrapper.properties') }}
- restore-keys: |
- ${{ runner.os }}-${{ matrix.java }}-gradle-
- name: Build with Gradle
- run: ./gradlew classes
- - name: Check with Gradle
- run: ./gradlew check codeCoverageReport
- - name: Cleanup Gradle Daemons
- run: ./gradlew --stop
- - name: Cleanup Gradle Cache
- run: |
- rm -f ~/.gradle/caches/modules-2/modules-2.lock
- rm -f ~/.gradle/caches/modules-2/gc.properties
- shell: bash
+ uses: gradle/gradle-build-action@v2
+ with:
+ arguments: build codeCoverageReport
+ # Only write to the cache for builds on the 'main' branch.
+ # Builds on other branches will only read existing entries from the cache.
+ cache-read-only: ${{ github.ref != 'refs/heads/main' }}
- name: Publish report
if: always()
uses: mikepenz/action-junit-report@v2
@@ -64,7 +51,7 @@ jobs:
./**/build/test-results/**/*
retention-days: 5
- name: Upload code coverage
- uses: codecov/codecov-action@v1
+ uses: codecov/codecov-action@v2
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./build/reports/jacoco/report.xml
@@ -101,7 +88,7 @@ jobs:
report_paths: '**/junit-report.xml'
github_token: ${{ secrets.GITHUB_TOKEN }}
- name: Upload code coverage
- uses: codecov/codecov-action@v1
+ uses: codecov/codecov-action@v2
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: opendc-web/opendc-web-api/coverage.xml
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index c1f2864c..ce1d2a1b 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -17,23 +17,14 @@ jobs:
- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@v1
- name: Set up JDK
- uses: actions/setup-java@v1
+ uses: actions/setup-java@v2
with:
+ distribution: 'zulu'
java-version: ${{ matrix.java }}
- - name: Grant execute permission for gradlew
- run: chmod +x gradlew
- - uses: actions/cache@v2
- with:
- path: |
- ~/.gradle/caches
- ~/.gradle/wrapper
- key: ${{ runner.os }}-${{ matrix.java }}-gradle-${{ hashFiles('gradle/wrapper/gradle-wrapper.properties') }}
- restore-keys: |
- ${{ runner.os }}-${{ matrix.java }}-gradle-
- - name: Build with Gradle
- run: ./gradlew :assembleDist
- name: Publish with Gradle
- run: ./gradlew publish
+ uses: gradle/gradle-build-action@v2
+ with:
+ arguments: publish
env:
ORG_GRADLE_PROJECT_signingKeyId: F8134F9C
ORG_GRADLE_PROJECT_signingKey: ${{ secrets.GPG_PRIVATE_KEY }}
@@ -48,10 +39,3 @@ jobs:
files: build/distributions/*
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- - name: Cleanup Gradle Daemons
- run: ./gradlew --stop
- - name: Cleanup Gradle Cache
- run: |
- rm -f ~/.gradle/caches/modules-2/modules-2.lock
- rm -f ~/.gradle/caches/modules-2/gc.properties
- shell: bash