@@ -41,22 +41,28 @@ jobs:
4141 with :
4242 persist-credentials : false
4343
44- - name : Cache Maven packages
44+ - name : Prepare Mimir
45+ shell : bash
46+ run : |
47+ mkdir -p ~/.m2
48+ cp .github/ci-extensions.xml ~/.m2/extensions.xml
49+
50+ - name : Handle Mimir caches
4551 uses : actions/cache@v4
4652 with :
47- path : ~/.m2/repository/cached
48- key : maven -${{ runner.os }}-initial-${{ hashFiles('**/pom.xml') }}
53+ path : ~/.mimir/local
54+ key : mimir -${{ runner.os }}-initial-${{ hashFiles('**/pom.xml') }}
4955 restore-keys : |
50- maven -${{ runner.os }}-initial-
51- maven -${{ runner.os }}-
56+ mimir -${{ runner.os }}-initial-
57+ mimir -${{ runner.os }}-
5258
5359 - name : Set up Maven
5460 shell : bash
55- run : mvn --errors --batch-mode --show-version org.apache.maven.plugins:maven-wrapper-plugin:3.3.2:wrapper "-Dmaven=4.0.0-rc-2 "
61+ run : mvn --errors --batch-mode --show-version org.apache.maven.plugins:maven-wrapper-plugin:3.3.2:wrapper "-Dmaven=4.0.0-rc-3 "
5662
5763 - name : Build Maven distributions
5864 shell : bash
59- run : ./mvnw verify -e -B -V -Dmaven.repo.local=$HOME/.m2/repository/cached
65+ run : ./mvnw verify -e -B -V
6066
6167 - name : List contents of target directory
6268 shell : bash
@@ -102,6 +108,21 @@ jobs:
102108 with :
103109 persist-credentials : false
104110
111+ - name : Prepare Mimir
112+ shell : bash
113+ run : |
114+ mkdir -p ~/.m2
115+ cp .github/ci-extensions.xml ~/.m2/extensions.xml
116+
117+ - name : Handle Mimir caches
118+ uses : actions/cache@v4
119+ with :
120+ path : ~/.mimir/local
121+ key : mimir-${{ runner.os }}-full-${{ hashFiles('**/pom.xml') }}
122+ restore-keys : |
123+ mimir-${{ runner.os }}-full-
124+ mimir-${{ runner.os }}-
125+
105126 - name : Download Maven distribution
106127 uses : actions/download-artifact@v4
107128 with :
@@ -129,26 +150,17 @@ jobs:
129150 echo "MAVEN_HOME=$PWD/maven-local" >> $GITHUB_ENV
130151 echo "$PWD/maven-local/bin" >> $GITHUB_PATH
131152
132- - name : Cache Maven packages
133- uses : actions/cache@v4
134- with :
135- path : ~/.m2/repository/cached
136- key : maven-${{ runner.os }}-full-${{ hashFiles('**/pom.xml') }}
137- restore-keys : |
138- maven-${{ runner.os }}-full-
139- maven-${{ runner.os }}-
140-
141153 - name : Show IP
142154 shell : bash
143155 run : curl --silent https://api.ipify.org
144156
145157 - name : Build with downloaded Maven
146158 shell : bash
147- run : mvn verify -Papache-release -Dgpg.skip=true -e -B -V -Dmaven.repo.local=$HOME/.m2/repository/cached
159+ run : mvn verify -Papache-release -Dgpg.skip=true -e -B -V
148160
149161 - name : Build site with downloaded Maven
150162 shell : bash
151- run : mvn site -e -B -V -Preporting -Dmaven.repo.local=$HOME/.m2/repository/cached
163+ run : mvn site -e -B -V -Preporting
152164
153165 - name : Upload test artifacts
154166 uses : actions/upload-artifact@v4
@@ -177,6 +189,21 @@ jobs:
177189 with :
178190 persist-credentials : false
179191
192+ - name : Prepare Mimir
193+ shell : bash
194+ run : |
195+ mkdir -p ~/.m2
196+ cp .github/ci-extensions.xml ~/.m2/extensions.xml
197+
198+ - name : Handle Mimir caches
199+ uses : actions/cache@v4
200+ with :
201+ path : ~/.mimir/local
202+ key : mimir-${{ runner.os }}-its-${{ hashFiles('**/pom.xml') }}
203+ restore-keys : |
204+ mimir-${{ runner.os }}-its-
205+ mimir-${{ runner.os }}-
206+
180207 - name : Download Maven distribution
181208 uses : actions/download-artifact@v4
182209 with :
@@ -204,33 +231,17 @@ jobs:
204231 echo "MAVEN_HOME=$PWD/maven-local" >> $GITHUB_ENV
205232 echo "$PWD/maven-local/bin" >> $GITHUB_PATH
206233
207- - name : Cache Maven packages
208- uses : actions/cache@v4
209- with :
210- path : ~/.m2/repository/cached
211- key : maven-${{ runner.os }}-its-${{ hashFiles('**/pom.xml') }}
212- restore-keys : |
213- maven-${{ runner.os }}-its
214- maven-${{ runner.os }}-
215-
216234 - name : Show IP
217235 shell : bash
218236 run : curl --silent https://api.ipify.org
219237
220- # we use two steps so that we can cache artifacts downloaded from Maven Central repository
221- # without installing any local artifacts to not pollute the cache
222- - name : Build maven and ITs
223- shell : bash
224- run : mvn package -DskipTests -e -B -V -Prun-its -Dmaven.repo.local=$HOME/.m2/repository/cached
225-
226- # Now run tests and ITs using a separate local repo (using the previous filled repo as tail)
227- - name : Run integration tests
238+ - name : Build Maven and ITs and run them
228239 shell : bash
229- run : mvn install -e -B -V -Prun-its -Dmaven.repo.local=$HOME/.m2/repository/local -Dmaven.repo.local.tail=$HOME/.m2/repository/cached
240+ run : mvn install -e -B -V -Prun-its,mimir
230241
231242 - name : Upload test artifacts
232243 uses : actions/upload-artifact@v4
233244 if : failure()
234245 with :
235246 name : ${{ github.run_number }}-integration-test-artifact-${{ runner.os }}-${{ matrix.java }}
236- path : ./its/core-it-suite/target/test-classes/
247+ path : ./its/core-it-suite/target/test-classes/
0 commit comments