|
62 | 62 | - job-name.txt |
63 | 63 |
|
64 | 64 | # This copies the install so scheduled perf tests can use it |
| 65 | +# Adding test-perf to commit message will trigger the perf install from that branch |
65 | 66 | .perf_install: |
66 | 67 | extends: [.retry_rule] |
67 | 68 | stage: perf_install |
|
73 | 74 | script: |
74 | 75 | - CI_BUILD_DIR=$(cat ci-dir.txt) |
75 | 76 | - INSTALL_DIR=$PERF_INSTALL_DIR/${SPEC#?} |
76 | | - - echo "Copying install from $CI_BUILD_DIR/build_gitlab/install to $INSTALL_DIR" |
77 | 77 | - ml load mpifileutils |
78 | 78 | - if [[ -d $INSTALL_DIR ]]; then $RUN_CMD -n $NPROC drm $INSTALL_DIR; else echo "No install exists."; fi |
79 | | - - cd $CI_BUILD_DIR |
80 | | - - $RUN_CMD -n $NPROC dcp ./build_gitlab/install $INSTALL_DIR |
| 79 | + - cd $CI_BUILD_DIR/build_gitlab/build |
| 80 | + - cmake ../../ -DCMAKE_INSTALL_PREFIX=$INSTALL_DIR |
| 81 | + - make -j $NPROC install |
81 | 82 | - $RUN_CMD -n $NPROC dchmod --mode go+rx $INSTALL_DIR |
82 | 83 | artifacts: |
83 | 84 | paths: |
|
95 | 96 | - cd $CI_BUILD_DIR && cat job-name.txt |
96 | 97 |
|
97 | 98 | - ./build_gitlab/install/bin/spheral-ats --ciRun ./build_gitlab/install/$ATS_FILE || exit_code=$? |
| 99 | + # Clean up Caliper files |
| 100 | + - find ./build_gitlab/install/tests -name '*.cali' -print0 -delete |
98 | 101 | - cp -r test-logs $CI_PROJECT_DIR |
99 | 102 | - exit $exit_code |
100 | 103 | artifacts: |
|
112 | 115 | GIT_STRATEGY: empty |
113 | 116 | script: |
114 | 117 | - CI_BUILD_DIR=$(cat ci-dir.txt) |
115 | | - |
116 | 118 | - ml load mpifileutils |
117 | 119 | - cd $SPHERAL_BUILDS_DIR |
118 | | - - $RUN_CMD -n 20 drm $CI_BUILD_DIR/.. |
| 120 | + - $RUN_CMD -n $NPROC drm $CI_BUILD_DIR/.. |
119 | 121 | interruptible: true |
120 | 122 |
|
121 | 123 | # ------------------------------------------------------------------------------ |
122 | 124 | # Shared TPL scripts. |
123 | 125 | # ------------------------------------------------------------------------------ |
124 | 126 |
|
| 127 | +# Updates the TPLs in the upstream. Adding update-tpls to commit message will trigger this |
125 | 128 | .update_tpls: |
126 | 129 | variables: |
127 | 130 | GIT_STRATEGY: clone |
128 | 131 | GIT_SUBMODULE_STRATEGY: recursive |
129 | 132 | stage: update_tpls |
130 | 133 | rules: |
131 | 134 | - !reference [.merge_pr_rule, rules] |
| 135 | + - if: '$CI_COMMIT_MESSAGE =~ /update-tpls/' |
132 | 136 | script: |
133 | 137 | - ./$SCRIPT_DIR/devtools/tpl-manager.py --update-upstream |
134 | 138 |
|
|
138 | 142 | GIT_STRATEGY: none |
139 | 143 | rules: |
140 | 144 | - !reference [.merge_pr_rule, rules] |
| 145 | + - if: '$CI_COMMIT_MESSAGE =~ /update-tpls/' |
141 | 146 | script: |
142 | 147 | - ml load mpifileutils |
143 | 148 | - $RUN_CMD -n $NPROC dchmod --mode go+rx $UPSTREAM_DIR |
|
204 | 209 | - env INSTALL_DIR=$INSTALL_DIR DEV_PKG_SPEC=$DEV_PKG_SPEC BUILD_ALLOC="" SCRIPT_DIR=$SCRIPT_DIR |
205 | 210 | bash ./$SCRIPT_DIR/lc/install-from-dev-pkg.sh |
206 | 211 | - ml load mpifileutils |
207 | | - - dchmod --mode go+rx $INSTALL_DIR |
| 212 | + - $RUN_CMD -n $NPROC dchmod --mode go+rx $INSTALL_DIR |
208 | 213 |
|
209 | 214 | artifacts: |
210 | 215 | paths: |
|
243 | 248 | dependencies: [] |
244 | 249 | script: |
245 | 250 | - cd $SPHERAL_BUILDS_DIR |
246 | | - - MAX_DIR=30 |
247 | | - - DIR_LIST=$(ls -ltd * | sed "1, $MAX_DIR d" | rev | cut -d ' ' -f1 | rev | paste -sd ' ' - ) |
248 | | - - echo $DIR_LIST |
249 | 251 | - ml load mpifileutils |
250 | | - - if [[ $DIR_LIST ]]; then $RUN_CMD -n $NPROC drm $DIR_LIST; else echo "No directories to remove at this time."; fi |
| 252 | + - | |
| 253 | + find . -mindepth 1 -maxdepth 1 -type d -mtime +15 -print0 \ |
| 254 | + | while IFS= read -r -d '' dir; do |
| 255 | + $RUN_CMD -n $NPROC drm "$dir" |
| 256 | + done |
251 | 257 |
|
| 258 | +# Remove performance benchmarks that are older than 6 months |
252 | 259 | .clean_old_perfs: |
253 | 260 | stage: cleanup |
254 | 261 | variables: |
|
260 | 267 | dependencies: [] |
261 | 268 | script: |
262 | 269 | - BENCHMARK_LOC=$(python3 $SCRIPT_DIR/spheral_ats.py --get-benchmark) |
263 | | - - ml load mpifileutils |
264 | 270 | - cd $BENCHMARK_LOC |
265 | | - - env TARGET_DIR=$BENCHMARK_LOC bash ./$SCRIPT_DIR/lc/cleanup_files |
| 271 | + - ml load mpifileutils |
| 272 | + - | |
| 273 | + find . -mindepth 2 -type d -mtime +200 -print0 \ |
| 274 | + | while IFS= read -r -d '' dir; do |
| 275 | + echo "Removing $dir" |
| 276 | + $RUN_CMD -n $NPROC drm "$dir" |
| 277 | + done |
266 | 278 |
|
267 | 279 | # ------------------------------------------------------------------------------ |
268 | 280 | # Script Utilities |
|
273 | 285 | - if: '$CI_COMMIT_REF_NAME == "develop"' |
274 | 286 | when: always |
275 | 287 |
|
| 288 | +# Adding test-prod to commit message triggers jobs that rely on this rule |
276 | 289 | .tag_release_rule: |
277 | 290 | rules: |
278 | 291 | - if: $CI_COMMIT_TAG |
|
0 commit comments