Skip to content

Commit 9c3fe4b

Browse files
[highsource#611] add actions for mvn 4 build + use matrix strategy to simplify java versions
1 parent 545687e commit 9c3fe4b

File tree

1 file changed

+33
-28
lines changed

1 file changed

+33
-28
lines changed

.github/workflows/maven-build-action.yaml

Lines changed: 33 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -8,40 +8,45 @@ on:
88

99
jobs:
1010
build_and_test:
11-
1211
runs-on: ubuntu-latest
13-
12+
strategy:
13+
matrix:
14+
java: [ '8', '11', '17', '21' ]
1415
steps:
15-
- uses: actions/checkout@v3
16-
- name: Set up JDK 8
17-
uses: actions/setup-java@v3
16+
- uses: actions/checkout@v4
17+
- name: Setup JDK ${{ matrix.java }}
18+
uses: actions/setup-java@v4
1819
with:
19-
java-version: 8
20+
java-version: ${{ matrix.java }}
2021
distribution: 'temurin'
21-
22-
- name: Maven with JDK 8
22+
- name: Maven with JDK ${{ matrix.java }}
2323
run: mvn -Pall -no-transfer-progress clean install
24-
25-
- name: Set up JDK 11
26-
uses: actions/setup-java@v3
27-
with:
28-
java-version: 11
29-
distribution: 'temurin'
30-
31-
- name: Maven with JDK 11
32-
run: mvn -Pall -no-transfer-progress clean install
33-
34-
- name: Maven with JDK 11 - Release dry run
24+
- name: Maven with JDK ${{ matrix.java }} - Parallel
25+
run: mvn -T4 -Pall -no-transfer-progress clean install
26+
- name: Maven with JDK ${{ matrix.java }} - Release dry run
3527
run: mvn -Prelease-dry-run,sonatype-oss-release,release -DperformRelease -DdryRun=true -Darguments="-Dgpg.skip=true" -B release:clean release:prepare clean install
3628

37-
- name: Set up JDK 17
38-
uses: actions/setup-java@v3
29+
build_and_test_mvn4:
30+
runs-on: ubuntu-latest
31+
strategy:
32+
matrix:
33+
java: [ '17', '21' ]
34+
steps:
35+
- uses: actions/checkout@v4
36+
- name: Setup Maven4
37+
run: |
38+
MAVEN_VERSION=4.0.0-rc-3
39+
wget https://archive.apache.org/dist/maven/maven-4/$MAVEN_VERSION/binaries/apache-maven-$MAVEN_VERSION-bin.tar.gz
40+
tar xzvf apache-maven-$MAVEN_VERSION-bin.tar.gz
41+
sudo mv apache-maven-$MAVEN_VERSION /opt/maven
42+
sudo rm -f /usr/bin/mvn # Remove existing symbolic link if it exists
43+
sudo ln -s /opt/maven/bin/mvn /usr/bin/mvn # Create new symbolic link
44+
- name: Setup JDK ${{ matrix.java }}
45+
uses: actions/setup-java@v4
3946
with:
40-
java-version: 17
47+
java-version: ${{ matrix.java }}
4148
distribution: 'temurin'
42-
43-
- name: Maven with JDK 17
44-
run: mvn -Pall -no-transfer-progress clean install
45-
46-
- name: Maven with JDK 17 - Release dry run
47-
run: mvn -Prelease-dry-run,sonatype-oss-release,release -DperformRelease -DdryRun=true -Darguments="-Dgpg.skip=true" -B release:clean release:prepare clean install
49+
- name: Maven4 with JDK ${{ matrix.java }}
50+
run: mvn -Pall -no-transfer-progress clean install
51+
- name: Maven4 with JDK ${{ matrix.java }} - Parallel
52+
run: mvn -T4 -Pall -no-transfer-progress clean install

0 commit comments

Comments
 (0)