Skip to content

Commit 8a21740

Browse files
committed
chore: Improve CI workflow
1 parent 4c034ad commit 8a21740

2 files changed

Lines changed: 71 additions & 60 deletions

File tree

.github/workflows/build.yml

Lines changed: 69 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,69 +1,83 @@
11
name: Build
22

33
on:
4-
push:
5-
branches:
6-
- main
7-
- develop
8-
pull_request:
9-
merge_group:
4+
push:
5+
branches:
6+
- main
7+
- develop
8+
pull_request:
9+
merge_group:
1010

1111
permissions:
12-
id-token: write # This is required for requesting the JWT
13-
security-events: write
14-
contents: read
15-
actions: read # This is required for actions/checkout
16-
issues: write
17-
pull-requests: write
18-
checks: write # needed for spotbugs
12+
# This is required for requesting the JWT
13+
id-token: write
14+
security-events: write
15+
contents: read
16+
# This is required for actions/checkout
17+
actions: read
18+
issues: write
19+
pull-requests: write
20+
checks: write # needed for spotbugs
21+
22+
# For reporting
23+
attestations: write
24+
checks: write
25+
# For Junit Reporting commenting
26+
pull-requests: write
1927

2028
jobs:
21-
build:
22-
strategy:
23-
matrix:
24-
os: [ubuntu-latest, windows-latest]
25-
java: [11, 17]
26-
fail-fast: false
29+
build:
30+
strategy:
31+
matrix:
32+
os: [ ubuntu-latest, windows-latest ]
33+
java: [ 11, 17 ]
34+
fail-fast: false
35+
36+
runs-on: ${{ matrix.os }}
2737

28-
runs-on: ${{ matrix.os }}
38+
steps:
39+
- name: Checkout
40+
uses: actions/checkout@v3
2941

30-
steps:
31-
- name: Checkout
32-
uses: actions/checkout@v3
42+
- name: Set up cache for ~./m2/repository
43+
uses: actions/cache@v3
44+
with:
45+
path: ~/.m2/repository
46+
key: maven-${{ matrix.os }}-java${{ matrix.java }}-${{ hashFiles('**/pom.xml') }}-${{ hashFiles('.mvn/wrapper/maven-wrapper.properties') }}
47+
restore-keys: |
48+
maven-${{ matrix.os }}-java${{ matrix.java }}-
49+
maven-${{ matrix.os }}-
3350
34-
- name: Set up cache for ~./m2/repository
35-
uses: actions/cache@v3
36-
with:
37-
path: ~/.m2/repository
38-
key: maven-${{ matrix.os }}-java${{ matrix.java }}-${{ hashFiles('**/pom.xml') }}-${{ hashFiles('.mvn/wrapper/maven-wrapper.properties') }}
39-
restore-keys: |
40-
maven-${{ matrix.os }}-java${{ matrix.java }}-
41-
maven-${{ matrix.os }}-
51+
- name: Set up JDK
52+
uses: actions/setup-java@v3
53+
with:
54+
java-version: ${{ matrix.java }}
55+
distribution: "adopt"
4256

43-
- name: Set up JDK
44-
uses: actions/setup-java@v3
45-
with:
46-
java-version: ${{ matrix.java }}
47-
distribution: "adopt"
57+
- name: Build with Maven
58+
run: ./mvnw --batch-mode clean install
4859

49-
- name: Build with Maven
50-
run: ./mvnw --batch-mode clean install
60+
- name: Publish Test Report
61+
uses: mikepenz/action-junit-report@v5
62+
if: success() || failure() # always run even if the previous step fails
63+
with:
64+
report_paths: '**/target/*/TEST-*.xml'
5165

52-
- name: Run PMD checks
53-
run: ./mvnw pmd:check
66+
- name: Run PMD checks
67+
run: ./mvnw pmd:check
5468

55-
build-results:
56-
name: Build results
57-
if: ${{ always() }}
58-
runs-on: ubuntu-latest
59-
needs:
60-
- build
61-
steps:
62-
- run: exit 1
63-
# see https://stackoverflow.com/a/67532120/4907315
64-
if: >-
65-
${{
66-
contains(needs.*.result, 'failure')
67-
|| contains(needs.*.result, 'cancelled')
68-
|| contains(needs.*.result, 'skipped')
69-
}}
69+
build-results:
70+
name: Build results
71+
if: ${{ always() }}
72+
runs-on: ubuntu-latest
73+
needs:
74+
- build
75+
steps:
76+
- run: exit 1
77+
# see https://stackoverflow.com/a/67532120/4907315
78+
if: >-
79+
${{
80+
contains(needs.*.result, 'failure')
81+
|| contains(needs.*.result, 'cancelled')
82+
|| contains(needs.*.result, 'skipped')
83+
}}

.github/workflows/release.yml

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,11 @@ jobs:
3232
git config --global user.email "${GITHUB_ACTOR_ID}+${GITHUB_ACTOR}@users.noreply.github.com"
3333
git config --global user.name "$(gh api /users/${GITHUB_ACTOR} | jq .name -r)"
3434
35-
- name: Set up JDK 11
35+
- name: Set up JDK 17
3636
uses: actions/setup-java@v3
3737
with:
3838
distribution: 'adopt'
39-
java-version: 11
39+
java-version: 17
4040
cache: 'maven'
4141

4242
- name: Setup settings.xml
@@ -50,7 +50,6 @@ jobs:
5050
"password": "${{ secrets.OSS_JENKINS_PASS }}"
5151
}]
5252
53-
5453
- name: Create release
5554
id: create-release
5655
env:
@@ -93,8 +92,6 @@ jobs:
9392
env:
9493
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
9594

96-
97-
9895
- name: Create Pull Request
9996
id: create-pr
10097
uses: peter-evans/create-pull-request@v7

0 commit comments

Comments
 (0)