11variables :
22 PDC_BUILD_PATH : " ${CI_PROJECT_DIR}/build"
33 PDC_INSTALL_PATH : " ${CI_PROJECT_DIR}/install"
4-
4+ GIT_CLONE_PATH : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID}"
5+
56stages :
67 - build
78 - test
89 - metrics
910
11+ .report-status :
12+ variables :
13+ STATUS_PROJECT : " hpc-io/pdc"
14+ STATUS_NAME : " NERSC / Perlmutter"
15+ script :
16+ # For complete details on the GitHub API please see:
17+ # https://developer.github.com/v3/repos/statuses
18+ - |
19+ curl -L \
20+ -X POST \
21+ -H "Accept: application/vnd.github+json" \
22+ -H "Authorization: Bearer ${GITHUB_TOKEN}" \
23+ -H "X-GitHub-Api-Version: 2022-11-28" \
24+ "https://api.github.com/repos/${STATUS_PROJECT}/statuses/${CI_COMMIT_SHA}" \
25+ -d "{\"state\":\"${CI_JOB_NAME}\",\"target_url\":\"${CI_PIPELINE_URL}\",\"context\":\"${STATUS_NAME}\"}"
26+
27+ pending :
28+ stage : .pre
29+ extends :
30+ - .report-status
31+
32+ success :
33+ stage : .post
34+ extends :
35+ - .report-status
36+
37+ failure :
38+ stage : .post
39+ extends :
40+ - .report-status
41+ rules :
42+ - when : on_failure
43+
1044perlmutter-no-cache-build :
1145 stage : build
1246 rules :
1347 - if : ' $METRICS == null'
1448 when : manual
1549 id_tokens :
1650 SITE_ID_TOKEN :
17- aud : https://software.nersc.gov/
51+ aud : https://gitlab.com
1852 allow_failure : false
1953 tags :
2054 - perlmutter
@@ -42,7 +76,7 @@ perlmutter-cache-build:
4276 when : manual
4377 id_tokens :
4478 SITE_ID_TOKEN :
45- aud : https://software.nersc.gov /
79+ aud : https://gitlab.com /
4680 allow_failure : false
4781 tags :
4882 - perlmutter
@@ -72,7 +106,7 @@ perlmutter-no-cache-parallel-pdc:
72106 stage : test
73107 id_tokens :
74108 SITE_ID_TOKEN :
75- aud : https://software.nersc.gov /
109+ aud : https://gitlab.com /
76110 rules :
77111 - if : ' $METRICS == null'
78112 needs :
@@ -83,8 +117,8 @@ perlmutter-no-cache-parallel-pdc:
83117 SCHEDULER_PARAMETERS : " -A ${PDC_PROJECT} --qos=debug --constraint=cpu --tasks-per-node=64 -N 1 -t 00:30:00"
84118 SUPERCOMPUTER : " perlmutter"
85119 MERCURY_DIR : " /global/cfs/cdirs/${PDC_PROJECT}/pdc-perlmutter/mercury/install"
86- PDC_TMPDIR : " ${PDC_BUILD_PATH }/no-cache/pdc-tmp-paralell-pdc"
87- PDC_DATA_LOC : " ${PDC_BUILD_PATH }/no-cache/pdc-data-paralell-pdc"
120+ PDC_TMPDIR : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/no-cache/pdc-tmp-paralell-pdc"
121+ PDC_DATA_LOC : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/no-cache/pdc-data-paralell-pdc"
88122 script :
89123 - export LD_LIBRARY_PATH="$MERCURY_DIR/lib:$LD_LIBRARY_PATH"
90124 - cd ${PDC_BUILD_PATH}/perlmutter/no-cache
@@ -95,7 +129,7 @@ perlmutter-no-cache-parallel-obj:
95129 stage : test
96130 id_tokens :
97131 SITE_ID_TOKEN :
98- aud : https://software.nersc.gov /
132+ aud : https://gitlab.com /
99133 rules :
100134 - if : ' $METRICS == null'
101135 needs :
@@ -107,8 +141,8 @@ perlmutter-no-cache-parallel-obj:
107141 SCHEDULER_PARAMETERS : " -A ${PDC_PROJECT} --qos=debug --constraint=cpu --tasks-per-node=64 -N 1 -t 00:30:00"
108142 SUPERCOMPUTER : " perlmutter"
109143 MERCURY_DIR : " /global/cfs/cdirs/${PDC_PROJECT}/pdc-perlmutter/mercury/install"
110- PDC_TMPDIR : " ${PDC_BUILD_PATH }/no-cache/pdc-tmp-paralell-obj"
111- PDC_DATA_LOC : " ${PDC_BUILD_PATH }/no-cache/pdc-data-paralell-obj"
144+ PDC_TMPDIR : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/no-cache/pdc-tmp-paralell-obj"
145+ PDC_DATA_LOC : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/no-cache/pdc-data-paralell-obj"
112146 script :
113147 - export LD_LIBRARY_PATH="$MERCURY_DIR/lib:$LD_LIBRARY_PATH"
114148 - cd ${PDC_BUILD_PATH}/perlmutter/no-cache
@@ -119,7 +153,7 @@ perlmutter-no-cache-parallel-cont:
119153 stage : test
120154 id_tokens :
121155 SITE_ID_TOKEN :
122- aud : https://software.nersc.gov /
156+ aud : https://gitlab.com /
123157 rules :
124158 - if : ' $METRICS == null'
125159 needs :
@@ -131,8 +165,8 @@ perlmutter-no-cache-parallel-cont:
131165 SCHEDULER_PARAMETERS : " -A ${PDC_PROJECT} --qos=debug --constraint=cpu --tasks-per-node=64 -N 1 -t 00:30:00"
132166 SUPERCOMPUTER : " perlmutter"
133167 MERCURY_DIR : " /global/cfs/cdirs/${PDC_PROJECT}/pdc-perlmutter/mercury/install"
134- PDC_TMPDIR : " ${PDC_BUILD_PATH }/no-cache/pdc-tmp-paralell-cont"
135- PDC_DATA_LOC : " ${PDC_BUILD_PATH }/no-cache/pdc-data-paralell-cont"
168+ PDC_TMPDIR : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/no-cache/pdc-tmp-paralell-cont"
169+ PDC_DATA_LOC : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/no-cache/pdc-data-paralell-cont"
136170 script :
137171 - export LD_LIBRARY_PATH="$MERCURY_DIR/lib:$LD_LIBRARY_PATH"
138172 - cd ${PDC_BUILD_PATH}/perlmutter/no-cache
@@ -143,7 +177,7 @@ perlmutter-no-cache-parallel-prop:
143177 stage : test
144178 id_tokens :
145179 SITE_ID_TOKEN :
146- aud : https://software.nersc.gov /
180+ aud : https://gitlab.com /
147181 rules :
148182 - if : ' $METRICS == null'
149183 needs :
@@ -155,8 +189,8 @@ perlmutter-no-cache-parallel-prop:
155189 SCHEDULER_PARAMETERS : " -A ${PDC_PROJECT} --qos=debug --constraint=cpu --tasks-per-node=64 -N 1 -t 00:30:00"
156190 SUPERCOMPUTER : " perlmutter"
157191 MERCURY_DIR : " /global/cfs/cdirs/${PDC_PROJECT}/pdc-perlmutter/mercury/install"
158- PDC_TMPDIR : " ${PDC_BUILD_PATH }/no-cache/pdc-tmp-paralell-prop"
159- PDC_DATA_LOC : " ${PDC_BUILD_PATH }/no-cache/pdc-data-paralell-prop"
192+ PDC_TMPDIR : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/no-cache/pdc-tmp-paralell-prop"
193+ PDC_DATA_LOC : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/no-cache/pdc-data-paralell-prop"
160194 script :
161195 - export LD_LIBRARY_PATH="$MERCURY_DIR/lib:$LD_LIBRARY_PATH"
162196 - cd ${PDC_BUILD_PATH}/perlmutter/no-cache
@@ -167,7 +201,7 @@ perlmutter-no-cache-parallel-region:
167201 stage : test
168202 id_tokens :
169203 SITE_ID_TOKEN :
170- aud : https://software.nersc.gov /
204+ aud : https://gitlab.com /
171205 rules :
172206 - if : ' $METRICS == null'
173207 needs :
@@ -179,8 +213,8 @@ perlmutter-no-cache-parallel-region:
179213 SCHEDULER_PARAMETERS : " -A ${PDC_PROJECT} --qos=debug --constraint=cpu --tasks-per-node=64 -N 1 -t 00:30:00"
180214 SUPERCOMPUTER : " perlmutter"
181215 MERCURY_DIR : " /global/cfs/cdirs/${PDC_PROJECT}/pdc-perlmutter/mercury/install"
182- PDC_TMPDIR : " ${PDC_BUILD_PATH }/no-cache/pdc-tmp-paralell-region"
183- PDC_DATA_LOC : " ${PDC_BUILD_PATH }/no-cache/pdc-data-paralell-region"
216+ PDC_TMPDIR : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/no-cache/pdc-tmp-paralell-region"
217+ PDC_DATA_LOC : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/no-cache/pdc-data-paralell-region"
184218 script :
185219 - export LD_LIBRARY_PATH="$MERCURY_DIR/lib:$LD_LIBRARY_PATH"
186220 - cd ${PDC_BUILD_PATH}/perlmutter/no-cache
@@ -191,7 +225,7 @@ perlmutter-no-cache-parallel-region-all:
191225 stage : test
192226 id_tokens :
193227 SITE_ID_TOKEN :
194- aud : https://software.nersc.gov /
228+ aud : https://gitlab.com /
195229 rules :
196230 - if : ' $METRICS == null'
197231 needs :
@@ -203,8 +237,8 @@ perlmutter-no-cache-parallel-region-all:
203237 SCHEDULER_PARAMETERS : " -A ${PDC_PROJECT} --qos=debug --constraint=cpu --tasks-per-node=64 -N 1 -t 00:30:00"
204238 SUPERCOMPUTER : " perlmutter"
205239 MERCURY_DIR : " /global/cfs/cdirs/${PDC_PROJECT}/pdc-perlmutter/mercury/install"
206- PDC_TMPDIR : " ${PDC_BUILD_PATH }/no-cache/pdc-tmp-paralell-region-all"
207- PDC_DATA_LOC : " ${PDC_BUILD_PATH }/no-cache/pdc-data-paralell-region-all"
240+ PDC_TMPDIR : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/no-cache/pdc-tmp-paralell-region-all"
241+ PDC_DATA_LOC : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/no-cache/pdc-data-paralell-region-all"
208242 script :
209243 - export LD_LIBRARY_PATH="$MERCURY_DIR/lib:$LD_LIBRARY_PATH"
210244 - cd ${PDC_BUILD_PATH}/perlmutter/no-cache
@@ -220,7 +254,7 @@ perlmutter-cache-parallel-pdc:
220254 stage : test
221255 id_tokens :
222256 SITE_ID_TOKEN :
223- aud : https://software.nersc.gov /
257+ aud : https://gitlab.com /
224258 rules :
225259 - if : ' $METRICS == null'
226260 needs :
@@ -231,8 +265,8 @@ perlmutter-cache-parallel-pdc:
231265 SCHEDULER_PARAMETERS : " -A ${PDC_PROJECT} --qos=debug --constraint=cpu --tasks-per-node=64 -N 1 -t 00:30:00"
232266 SUPERCOMPUTER : " perlmutter"
233267 MERCURY_DIR : " /global/cfs/cdirs/${PDC_PROJECT}/pdc-perlmutter/mercury/install"
234- PDC_TMPDIR : " ${PDC_BUILD_PATH }/cache/pdc-tmp-paralell-pdc"
235- PDC_DATA_LOC : " ${PDC_BUILD_PATH }/cache/pdc-data-paralell-pdc"
268+ PDC_TMPDIR : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/cache/pdc-tmp-paralell-pdc"
269+ PDC_DATA_LOC : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/cache/pdc-data-paralell-pdc"
236270 script :
237271 - export LD_LIBRARY_PATH="$MERCURY_DIR/lib:$LD_LIBRARY_PATH"
238272 - cd ${PDC_BUILD_PATH}/perlmutter/cache
@@ -243,7 +277,7 @@ perlmutter-cache-parallel-obj:
243277 stage : test
244278 id_tokens :
245279 SITE_ID_TOKEN :
246- aud : https://software.nersc.gov /
280+ aud : https://gitlab.com /
247281 rules :
248282 - if : ' $METRICS == null'
249283 needs :
@@ -255,8 +289,8 @@ perlmutter-cache-parallel-obj:
255289 SCHEDULER_PARAMETERS : " -A ${PDC_PROJECT} --qos=debug --constraint=cpu --tasks-per-node=64 -N 1 -t 00:30:00"
256290 SUPERCOMPUTER : " perlmutter"
257291 MERCURY_DIR : " /global/cfs/cdirs/${PDC_PROJECT}/pdc-perlmutter/mercury/install"
258- PDC_TMPDIR : " ${PDC_BUILD_PATH }/cache/pdc-tmp-paralell-obj"
259- PDC_DATA_LOC : " ${PDC_BUILD_PATH }/cache/pdc-data-paralell-obj"
292+ PDC_TMPDIR : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/cache/pdc-tmp-paralell-obj"
293+ PDC_DATA_LOC : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/cache/pdc-data-paralell-obj"
260294 script :
261295 - export LD_LIBRARY_PATH="$MERCURY_DIR/lib:$LD_LIBRARY_PATH"
262296 - cd ${PDC_BUILD_PATH}/perlmutter/cache
@@ -267,7 +301,7 @@ perlmutter-cache-parallel-cont:
267301 stage : test
268302 id_tokens :
269303 SITE_ID_TOKEN :
270- aud : https://software.nersc.gov /
304+ aud : https://gitlab.com /
271305 rules :
272306 - if : ' $METRICS == null'
273307 needs :
@@ -279,8 +313,8 @@ perlmutter-cache-parallel-cont:
279313 SCHEDULER_PARAMETERS : " -A ${PDC_PROJECT} --qos=debug --constraint=cpu --tasks-per-node=64 -N 1 -t 00:30:00"
280314 SUPERCOMPUTER : " perlmutter"
281315 MERCURY_DIR : " /global/cfs/cdirs/${PDC_PROJECT}/pdc-perlmutter/mercury/install"
282- PDC_TMPDIR : " ${PDC_BUILD_PATH }/cache/pdc-tmp-paralell-cont"
283- PDC_DATA_LOC : " ${PDC_BUILD_PATH }/cache/pdc-data-paralell-cont"
316+ PDC_TMPDIR : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/cache/pdc-tmp-paralell-cont"
317+ PDC_DATA_LOC : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/cache/pdc-data-paralell-cont"
284318 script :
285319 - export LD_LIBRARY_PATH="$MERCURY_DIR/lib:$LD_LIBRARY_PATH"
286320 - cd ${PDC_BUILD_PATH}/perlmutter/cache
@@ -291,7 +325,7 @@ perlmutter-cache-parallel-prop:
291325 stage : test
292326 id_tokens :
293327 SITE_ID_TOKEN :
294- aud : https://software.nersc.gov /
328+ aud : https://gitlab.com /
295329 rules :
296330 - if : ' $METRICS == null'
297331 needs :
@@ -303,8 +337,8 @@ perlmutter-cache-parallel-prop:
303337 SCHEDULER_PARAMETERS : " -A ${PDC_PROJECT} --qos=debug --constraint=cpu --tasks-per-node=64 -N 1 -t 00:30:00"
304338 SUPERCOMPUTER : " perlmutter"
305339 MERCURY_DIR : " /global/cfs/cdirs/${PDC_PROJECT}/pdc-perlmutter/mercury/install"
306- PDC_TMPDIR : " ${PDC_BUILD_PATH }/cache/pdc-tmp-paralell-prop"
307- PDC_DATA_LOC : " ${PDC_BUILD_PATH }/cache/pdc-data-paralell-prop"
340+ PDC_TMPDIR : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/cache/pdc-tmp-paralell-prop"
341+ PDC_DATA_LOC : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/cache/pdc-data-paralell-prop"
308342 script :
309343 - export LD_LIBRARY_PATH="$MERCURY_DIR/lib:$LD_LIBRARY_PATH"
310344 - cd ${PDC_BUILD_PATH}/perlmutter/cache
@@ -315,7 +349,7 @@ perlmutter-cache-parallel-region:
315349 stage : test
316350 id_tokens :
317351 SITE_ID_TOKEN :
318- aud : https://software.nersc.gov /
352+ aud : https://gitlab.com /
319353 rules :
320354 - if : ' $METRICS == null'
321355 needs :
@@ -327,8 +361,8 @@ perlmutter-cache-parallel-region:
327361 SCHEDULER_PARAMETERS : " -A ${PDC_PROJECT} --qos=debug --constraint=cpu --tasks-per-node=64 -N 1 -t 00:30:00"
328362 SUPERCOMPUTER : " perlmutter"
329363 MERCURY_DIR : " /global/cfs/cdirs/${PDC_PROJECT}/pdc-perlmutter/mercury/install"
330- PDC_TMPDIR : " ${PDC_BUILD_PATH }/cache/pdc-tmp-paralell-region"
331- PDC_DATA_LOC : " ${PDC_BUILD_PATH }/cache/pdc-data-paralell-region"
364+ PDC_TMPDIR : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/cache/pdc-tmp-paralell-region"
365+ PDC_DATA_LOC : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/cache/pdc-data-paralell-region"
332366 script :
333367 - export LD_LIBRARY_PATH="$MERCURY_DIR/lib:$LD_LIBRARY_PATH"
334368 - cd ${PDC_BUILD_PATH}/perlmutter/cache
@@ -339,7 +373,7 @@ perlmutter-cache-parallel-region-all:
339373 stage : test
340374 id_tokens :
341375 SITE_ID_TOKEN :
342- aud : https://software.nersc.gov /
376+ aud : https://gitlab.com /
343377 rules :
344378 - if : ' $METRICS == null'
345379 needs :
@@ -351,8 +385,8 @@ perlmutter-cache-parallel-region-all:
351385 SCHEDULER_PARAMETERS : " -A ${PDC_PROJECT} --qos=debug --constraint=cpu --tasks-per-node=64 -N 1 -t 00:30:00"
352386 SUPERCOMPUTER : " perlmutter"
353387 MERCURY_DIR : " /global/cfs/cdirs/${PDC_PROJECT}/pdc-perlmutter/mercury/install"
354- PDC_TMPDIR : " ${PDC_BUILD_PATH }/cache/pdc-tmp-paralell-region-all"
355- PDC_DATA_LOC : " ${PDC_BUILD_PATH }/cache/pdc-data-paralell-region-all"
388+ PDC_TMPDIR : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/cache/pdc-tmp-paralell-region-all"
389+ PDC_DATA_LOC : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/cache/pdc-data-paralell-region-all"
356390 script :
357391 - export LD_LIBRARY_PATH="$MERCURY_DIR/lib:$LD_LIBRARY_PATH"
358392 - cd ${PDC_BUILD_PATH}/perlmutter/cache
@@ -363,7 +397,7 @@ perlmutter-metrics-build:
363397 stage : build
364398 id_tokens :
365399 SITE_ID_TOKEN :
366- aud : https://software.nersc.gov /
400+ aud : https://gitlab.com /
367401 rules :
368402 - if : ' $METRICS == "true"'
369403 allow_failure : false
@@ -390,7 +424,7 @@ perlmutter-metrics:
390424 stage : metrics
391425 id_tokens :
392426 SITE_ID_TOKEN :
393- aud : https://software.nersc.gov /
427+ aud : https://gitlab.com /
394428 rules :
395429 - if : ' $METRICS == "true"'
396430 needs :
@@ -401,8 +435,8 @@ perlmutter-metrics:
401435 SCHEDULER_PARAMETERS : " -A ${PDC_PROJECT} --qos=${PDC_QUEUE} --constraint=cpu --tasks-per-node=${PDC_N_CLIENTS} -N ${PDC_N_NODES} -t 00:30:00"
402436 SUPERCOMPUTER : " perlmutter"
403437 MERCURY_DIR : " /global/cfs/cdirs/${PDC_PROJECT}/pdc-perlmutter/mercury/install"
404- PDC_TMPDIR : " ${PDC_BUILD_PATH }/pdc-tmp-metrics"
405- PDC_DATA_LOC : " ${PDC_BUILD_PATH }/pdc-data-metrics"
438+ PDC_TMPDIR : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/pdc-tmp-metrics"
439+ PDC_DATA_LOC : " ${CI_BUILDS_DIR}/${CI_PROJECT_NAME}/${CI_JOB_ID }/pdc-data-metrics"
406440 PDC_CLIENT_LOOKUP : " NONE"
407441 PDC_SERVER : " ${PDC_BUILD_PATH}/perlmutter/metrics/bin/pdc_server.exe"
408442 PDC_SERVER_CLOSE : " ${PDC_BUILD_PATH}/perlmutter/metrics/bin/close_server"
0 commit comments