@@ -5,9 +5,19 @@ on: push
5
5
jobs :
6
6
build :
7
7
runs-on : ubuntu-latest
8
+ strategy :
9
+ matrix :
10
+ java : [8, 11, 17]
8
11
timeout-minutes : 5
9
12
steps :
10
13
- uses : actions/checkout@v4
14
+
15
+ - name : Set up JDK ${{ matrix.java }}
16
+ uses : actions/setup-java@v3
17
+ with :
18
+ java-version : ${{ matrix.java }}
19
+ distribution : " temurin"
20
+
11
21
- name : Cache npm dependencies
12
22
uses : actions/cache@v3
13
23
id : npm-cache
@@ -21,25 +31,22 @@ jobs:
21
31
id : maven-cache
22
32
with :
23
33
path : ~/.m2/repository
24
- key : maven-cache-v1-${{ runner.os }}-${{ hashFiles('**/pom.xml') }}
34
+ key : maven-cache-v1-${{ runner.os }}-${{ hashFiles('**/pom.xml') }}-${{ matrix.java }}
25
35
restore-keys : |
26
- maven-cache-v1-${{ runner.os }}-
27
- - name : Set up JDK 8
28
- uses : actions/setup-java@v3
29
- with :
30
- java-version : " 8"
31
- distribution : " temurin"
36
+ maven-cache-v1-${{ runner.os }}-${{ matrix.java }}
37
+
32
38
- name : Install Maven dependencies
33
39
# https://github.com/actions/cache#skipping-steps-based-on-cache-hit
34
40
if : steps.maven-cache.outputs.cache-hit != 'true'
35
41
run : mvn clean install -DskipTests
42
+
36
43
- name : Install NPM dependencies
37
44
# https://github.com/actions/cache#skipping-steps-based-on-cache-hit
38
45
if : steps.npm-cache.outputs.cache-hit != 'true'
39
46
run : |
40
- npm install &&
41
- npm --prefix=selenium install &&
42
- npm --prefix=playwright install
47
+ npm ci &&
48
+ npm --prefix=selenium ci &&
49
+ npm --prefix=playwright ci
43
50
44
51
license-check :
45
52
needs : build
58
65
needs : [license-check, build]
59
66
runs-on : ubuntu-latest
60
67
timeout-minutes : 5
68
+ strategy :
69
+ matrix :
70
+ java : [8, 11, 17]
61
71
steps :
62
72
- uses : actions/checkout@v4
63
73
- uses : actions/cache@v3
@@ -73,18 +83,21 @@ jobs:
73
83
id : maven-cache
74
84
with :
75
85
path : ~/.m2/repository
76
- key : maven-cache-v1-${{ runner.os }}-${{ hashFiles('**/pom.xml') }}
86
+ key : maven-cache-v1-${{ runner.os }}-${{ hashFiles('**/pom.xml') }}-${{ matrix.java }}
77
87
restore-keys : |
78
- maven-cache-v1-${{ runner.os }}-
88
+ maven-cache-v1-${{ runner.os }}-${{ matrix.java }}
79
89
- name : Start fixture server
80
90
run : npm --prefix=playwright start &
81
91
- name : Run Playwright tests
82
92
run : mvn test -q -pl playwright
83
93
84
94
selenium-tests :
85
95
needs : [license-check, build]
86
- timeout-minutes : 5
87
96
runs-on : ubuntu-latest
97
+ timeout-minutes : 5
98
+ strategy :
99
+ matrix :
100
+ java : [8, 11, 17]
88
101
steps :
89
102
- uses : actions/checkout@v4
90
103
- uses : actions/setup-python@v4
@@ -101,9 +114,9 @@ jobs:
101
114
id : maven-cache
102
115
with :
103
116
path : ~/.m2/repository
104
- key : maven-cache-v1-${{ runner.os }}-${{ hashFiles('**/pom.xml') }}
117
+ key : maven-cache-v1-${{ runner.os }}-${{ hashFiles('**/pom.xml') }}-${{ matrix.java }}
105
118
restore-keys : |
106
- maven-cache-v1-${{ runner.os }}-
119
+ maven-cache-v1-${{ runner.os }}-${{ matrix.java }}
107
120
- name : Start fixture server
108
121
run : python -m http.server 8001 &
109
122
working-directory : selenium/node_modules/axe-test-fixtures/fixtures
0 commit comments