@@ -33,9 +33,9 @@ push_to_registry=${PUSH_TO_REGISTRY:-true}
3333# REGISTRY_TOKEN allows you to provide your own personal access token to the CI
3434# registry. Be sure to set the token with at least read access to the registry.
3535registry_token=${REGISTRY_TOKEN:- " " }
36- ci_registry_user=${CI_REGISTRY_USER:- " ${USER} " }
3736ci_registry_image=${CI_REGISTRY_IMAGE:- " czregistry.llnl.gov:5050/radiuss/chai" }
38- ci_registry_token=${CI_JOB_TOKEN:- " ${registry_token} " }
37+ export ci_registry_user=${CI_REGISTRY_USER:- " ${USER} " }
38+ export ci_registry_token=${CI_JOB_TOKEN:- " ${registry_token} " }
3939
4040timed_message ()
4141{
6262
6363if [[ -n ${module_list} ]]
6464then
65- echo " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
66- echo " ~~~~~ Modules to load: ${module_list} "
67- echo " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
65+ timed_message " Modules to load: ${module_list} "
6866 module load ${module_list}
6967fi
7068
8482 prefix=" ${prefix} -${job_unique_id} "
8583else
8684 # We set the prefix in the parent directory so that spack dependencies are not installed inside the source tree.
87- prefix=" $( pwd ) /../spack-and-build-root"
85+ prefix=" ${project_dir} /../spack-and-build-root"
8886fi
8987
9088echo " Creating directory ${prefix} "
146144 if [[ -n ${ci_registry_token} ]]
147145 then
148146 timed_message " GitLab registry as Spack Buildcache"
149- ${spack_cmd} -D ${spack_env_path} mirror add --unsigned --oci-username ${ ci_registry_user} --oci-password ${ ci_registry_token} gitlab_ci oci://${ci_registry_image}
147+ ${spack_cmd} -D ${spack_env_path} mirror add --unsigned --oci-username-variable ci_registry_user --oci-password-variable ci_registry_token gitlab_ci oci://${ci_registry_image}
150148 fi
151149
152150 timed_message " Spack build of dependencies"
@@ -222,8 +220,18 @@ then
222220 mkdir -p ${build_dir} && cd ${build_dir}
223221
224222 timed_message " Building CHAI"
223+ # We set the MPI tests command to allow overlapping.
224+ # Shared allocation: Allows build_and_test.sh to run within a sub-allocation (see CI config).
225+ # Use /dev/shm: Prevent MPI tests from running on a node where the build dir doesn't exist.
226+ cmake_options=" "
227+ if [[ " ${truehostname} " == " ruby" || " ${truehostname} " == " poodle" ]]
228+ then
229+ cmake_options=" -DBLT_MPI_COMMAND_APPEND:STRING=--overlap"
230+ fi
231+
225232 $cmake_exe \
226233 -C ${hostconfig_path} \
234+ ${cmake_options} \
227235 -DCMAKE_INSTALL_PREFIX=${install_dir} \
228236 ${project_dir}
229237 if ! $cmake_exe --build . -j ${core_counts[$truehostname]}
259267 echo " [Error]: No tests were found" && exit 1
260268 fi
261269
262- timed_message " Preparing testing xml reports for export"
270+ timed_message " Preparing tests xml reports for export"
263271 tree Testing
264- xsltproc -o junit.xml ${project_dir} /blt/tests /ctest-to-junit.xsl Testing/* /Test.xml
272+ xsltproc -o junit.xml ${project_dir} /scripts/radiuss-spack-configs/utilities /ctest-to-junit.xsl Testing/* /Test.xml
265273 mv junit.xml ${project_dir} /junit.xml
266274
267275 if grep -q " Errors while running CTest" ./tests_output.txt
0 commit comments