Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitlab/gitlab-ci-frontier.yml
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,7 @@ install:frontier-gcc:
- rsync -av "${SPACK_BUILD_DIR}/spack" "${SPACK_BUILD_COMPUTING_DIR}"
- rsync -av "${SPACK_USER_CACHE_PATH}/" "${SPACK_USER_CACHE_COMPUTING_PATH}"
- SPACK_BUILD_DIR="${SPACK_BUILD_COMPUTING_DIR}" SPACK_USER_CACHE_PATH="${SPACK_USER_CACHE_COMPUTING_PATH}" bash scripts/ci/gitlab-ci/run.sh install
- rsync -av "${SPACK_USER_CACHE_COMPUTING_PATH}/" "${SPACK_USER_CACHE_PATH}"
needs:
- setup:frontier-gcc
dependencies:
Expand Down
23 changes: 23 additions & 0 deletions scripts/ci/gitlab-ci/cdash-upload.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
diff --git a/lib/spack/spack/reporters/cdash.py b/lib/spack/spack/reporters/cdash.py
index cd3ac31a37..c9ae4949fa 100644
--- a/lib/spack/spack/reporters/cdash.py
+++ b/lib/spack/spack/reporters/cdash.py
@@ -296,7 +296,7 @@ def build_report(self, report_dir, specs):
# Generate reports for each package in each spec.
for spec in specs:
duration = 0
- if "time" in spec:
+ if "time" in spec and spec["time"]:
duration = int(spec["time"])
for package in spec["packages"]:
self.build_report_for_package(report_dir, package, duration)
@@ -432,6 +432,9 @@ def upload(self, filename):
print("Cannot upload {0} due to missing upload url".format(filename))
return

+ if self.cdash_upload_url == "skip_upload":
+ return
+
# Compute md5 checksum for the contents of this file.
md5sum = checksum(hashlib.md5, filename, block_size=8192)

19 changes: 16 additions & 3 deletions scripts/ci/gitlab-ci/run.sh
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,12 @@ case ${STEP} in
echo "**********Setup Begin**********"
git clone -c feature.manyFiles=true https://github.com/spack/spack.git "${SPACK_BUILD_DIR}/spack"

# Apply patch to be able to skip the cdash upload during spack install
patch="$(pwd)/scripts/ci/gitlab-ci/cdash-upload.patch"
cd "${SPACK_BUILD_DIR}/spack"
git apply "$patch"
cd -

# Clone spack-packages
mkdir -p "${SPACK_BUILD_DIR}/spack-packages"
cd "${SPACK_BUILD_DIR}/spack-packages"
Expand Down Expand Up @@ -103,7 +109,13 @@ case ${STEP} in
spack config blame

# Install the environment with timing and parallel jobs
spack -t install "-j$((NUM_CORES*2))" --show-log-on-error --no-check-signature --fail-fast | tee spack_log.out 2>&1
spack -t install \
"-j$((NUM_CORES*2))" \
--show-log-on-error \
--no-check-signature \
--fail-fast \
"--cdash-upload-url=skip_upload" \
| tee spack_log.out 2>&1

# Show what was installed
spack find -lv
Expand All @@ -112,8 +124,9 @@ case ${STEP} in

submit)
echo "**********Submit Begin**********"
# Placeholder for submission to CDash or other reporting systems
echo "Submit step - currently a placeholder"

find "${SPACK_USER_CACHE_PATH}"/reports -type f -exec curl -T {} "https://open.cdash.org/submit.php?project=TOOLS-SDK" ';'

echo "**********Submit End**********"
;;

Expand Down
Loading