Skip to content

Commit 9f387f9

Browse files
committed
try matrix strategy in github action
1 parent c697a84 commit 9f387f9

File tree

1 file changed

+16
-121
lines changed

1 file changed

+16
-121
lines changed

.github/workflows/gradle.yml

Lines changed: 16 additions & 121 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,25 @@ permissions:
1616
contents: read
1717

1818
jobs:
19-
build-01:
20-
name: Build plugin - JDK 11, minJosmVersion for current release
19+
build:
20+
strategy:
21+
matrix:
22+
josm-version:
23+
- latest
24+
- tested
25+
- release
26+
jdk:
27+
- 11
28+
- 17
29+
30+
name: Build plugin - JDK {{ matrix.jdk }}, minJosmVersion={{ matrix.josm-version }}
2131
runs-on: ubuntu-latest
2232
steps:
2333
- uses: actions/checkout@v3
24-
- name: Set up JDK 11
34+
- name: Set up JDK {{ matrix.jdk }}
2535
uses: actions/setup-java@v3
2636
with:
27-
java-version: '11'
37+
java-version: '{{ matrix.jdk }}'
2838
distribution: 'temurin'
2939
# headless X11 setup according to
3040
# https://stackoverflow.com/questions/68292797/running-java-gui-tests-on-github-using-xvfb
@@ -33,123 +43,8 @@ jobs:
3343
- name: Start virtual frame buffer
3444
run: Xvfb :19 -screen 0 1024x768x16 &
3545
- name: Build with Gradle
36-
uses: gradle/gradle-build-action@v2.1.6
46+
uses: gradle/gradle-build-action@v2.2.0
3747
env:
3848
DISPLAY: ":19"
3949
with:
40-
arguments: build -Pplugin.josmCompileVersion=release
41-
42-
build-02:
43-
name: Build plugin - JDK 11, latest JOSM version
44-
runs-on: ubuntu-latest
45-
steps:
46-
- uses: actions/checkout@v3
47-
- name: Set up JDK 11
48-
uses: actions/setup-java@v3
49-
with:
50-
java-version: '11'
51-
distribution: 'temurin'
52-
# headless X11 setup according to
53-
# https://stackoverflow.com/questions/68292797/running-java-gui-tests-on-github-using-xvfb
54-
- name: Set up virtual X11
55-
run: sudo apt-get -y install xvfb
56-
- name: Start virtual frame buffer
57-
run: Xvfb :19 -screen 0 1024x768x16 &
58-
- name: Build with Gradle
59-
uses: gradle/gradle-build-action@v2.1.6
60-
env:
61-
DISPLAY: ":19"
62-
with:
63-
arguments: build -Pplugin.josmCompileVersion=latest
64-
65-
build-03:
66-
name: Build plugin - JDK 11, tested JOSM version
67-
runs-on: ubuntu-latest
68-
steps:
69-
- uses: actions/checkout@v3
70-
- name: Set up JDK 11
71-
uses: actions/setup-java@v3
72-
with:
73-
java-version: '11'
74-
distribution: 'temurin'
75-
# headless X11 setup according to
76-
# https://stackoverflow.com/questions/68292797/running-java-gui-tests-on-github-using-xvfb
77-
- name: Set up virtual X11
78-
run: sudo apt-get -y install xvfb
79-
- name: Start virtual frame buffer
80-
run: Xvfb :19 -screen 0 1024x768x16 &
81-
- name: Build with Gradle
82-
uses: gradle/gradle-build-action@v2.1.6
83-
env:
84-
DISPLAY: ":19"
85-
with:
86-
arguments: build -Pplugin.josmCompileVersion=tested
87-
88-
build-04:
89-
name: Build plugin - JDK 17, minJosmVersion for current release
90-
runs-on: ubuntu-latest
91-
steps:
92-
- uses: actions/checkout@v3
93-
- name: Set up JDK 17
94-
uses: actions/setup-java@v3
95-
with:
96-
java-version: '17'
97-
distribution: 'temurin'
98-
# headless X11 setup according to
99-
# https://stackoverflow.com/questions/68292797/running-java-gui-tests-on-github-using-xvfb
100-
- name: Set up virtual X11
101-
run: sudo apt-get -y install xvfb
102-
- name: Start virtual frame buffer
103-
run: Xvfb :19 -screen 0 1024x768x16 &
104-
- name: Build with Gradle
105-
uses: gradle/gradle-build-action@v2.1.6
106-
env:
107-
DISPLAY: ":19"
108-
with:
109-
arguments: build -Pplugin.josmCompileVersion=release -Pgraalvm.jdk=java17
110-
111-
build-05:
112-
name: Build plugin - JDK 17, latest JOSM version
113-
runs-on: ubuntu-latest
114-
steps:
115-
- uses: actions/checkout@v3
116-
- name: Set up JDK 17
117-
uses: actions/setup-java@v3
118-
with:
119-
java-version: '17'
120-
distribution: 'temurin'
121-
# headless X11 setup according to
122-
# https://stackoverflow.com/questions/68292797/running-java-gui-tests-on-github-using-xvfb
123-
- name: Set up virtual X11
124-
run: sudo apt-get -y install xvfb
125-
- name: Start virtual frame buffer
126-
run: Xvfb :19 -screen 0 1024x768x16 &
127-
- name: Build with Gradle
128-
uses: gradle/gradle-build-action@v2.1.6
129-
env:
130-
DISPLAY: ":19"
131-
with:
132-
arguments: build -Pplugin.josmCompileVersion=latest -Pgraalvm.jdk=java17
133-
134-
build-06:
135-
name: Build plugin - JDK 17, tested JOSM version
136-
runs-on: ubuntu-latest
137-
steps:
138-
- uses: actions/checkout@v3
139-
- name: Set up JDK 17
140-
uses: actions/setup-java@v3
141-
with:
142-
java-version: '17'
143-
distribution: 'temurin'
144-
# headless X11 setup according to
145-
# https://stackoverflow.com/questions/68292797/running-java-gui-tests-on-github-using-xvfb
146-
- name: Set up virtual X11
147-
run: sudo apt-get -y install xvfb
148-
- name: Start virtual frame buffer
149-
run: Xvfb :19 -screen 0 1024x768x16 &
150-
- name: Build with Gradle
151-
uses: gradle/gradle-build-action@v2.1.6
152-
env:
153-
DISPLAY: ":19"
154-
with:
155-
arguments: build -Pplugin.josmCompileVersion=tested -Pgraalvm.jdk=java17
50+
arguments: build -Pplugin.josmCompileVersion={{ matrix.josm-version}} -Pgraalvm.jdk=java{{ matrix.jdk }}

0 commit comments

Comments
 (0)