Skip to content
Open
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
32 changes: 27 additions & 5 deletions .ci/gitlab/.gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,17 @@ variables:
# expand: false

default:
id_tokens:
SITE_ID_TOKEN:
aud: https://gitlab.spack.io
image: { "name": "ghcr.io/spack/e4s-ubuntu-18.04:v2021-10-18", "entrypoint": [""] }

.checkout_repository: &checkout_repository
- git init "${CI_PROJECT_DIR}"
- git -C "${CI_PROJECT_DIR}" config remote.origin.url "${CI_REPOSITORY_URL}"
- git -C "${CI_PROJECT_DIR}" fetch --depth 1 origin "${CI_COMMIT_SHA}"
- git -C "${CI_PROJECT_DIR}" checkout --force FETCH_HEAD

.clone_spack: &clone_spack
- mkdir .ci/tmp
- mkdir .ci/tmp/spack
Expand Down Expand Up @@ -163,7 +172,11 @@ default:
# Generate without tags for cases using external runners
.generate-base:
extends: [ ".base-job", ".generate-common" ]
variables:
CUSTOM_CI_BUILDS_DIR: "/tmp/spackbot"
GIT_STRATEGY: "none"
before_script:
- *checkout_repository
# Check if bypass for noop is set
- |
[ ! -z ${NOOP_JOB} ] && \
Expand All @@ -186,26 +199,30 @@ default:
.generate-x86_64:
variables:
SPACK_CI_TARGET: "x86_64_v3"
SCHEDULER_PARAMETERS: "-q cts2 -n 1 -c ${SPACK_CONCRETIZE_JOBS}"
extends: [ ".generate-base" ]
tags: ["spack", "public", "medium", "x86_64_v3"]
tags: ["litmus", "public", "medium", "x86_64_v3"]

.generate-aarch64:
variables:
SPACK_CI_TARGET: "aarch64"
SCHEDULER_PARAMETERS: "-q cts2 -n 1 -c ${SPACK_CONCRETIZE_JOBS}"
extends: [ ".generate-base" ]
tags: ["spack", "public", "medium", "aarch64"]
tags: ["litmus", "public", "medium", "aarch64"]

.generate-neoverse_v1:
variables:
SPACK_CI_TARGET: "neoverse_v1"
SCHEDULER_PARAMETERS: "-q cts2 -n 1 -c ${SPACK_CONCRETIZE_JOBS}"
extends: [ ".generate-base" ]
tags: ["spack", "public", "medium", "aarch64", "neoverse_v1"]
tags: ["litmus", "public", "medium", "aarch64", "neoverse_v1"]

.generate-neoverse-v2:
variables:
SPACK_CI_TARGET: "neoverse_v2"
SCHEDULER_PARAMETERS: "-q cts2 -n 1 -c ${SPACK_CONCRETIZE_JOBS}"
extends: [ ".generate-base" ]
tags: ["spack", "public", "medium", "neoverse_v2"]
tags: ["litmus", "public", "medium", "neoverse_v2"]

.generate-win64:
extends: [ ".base-job", ".generate-common" ]
Expand Down Expand Up @@ -530,7 +547,8 @@ radiuss-build:
.tags-x86_64_v4:
variables:
SPACK_CI_TARGET: "x86_64_v4"
tags: ["spack", "public", "medium", "x86_64_v4"]
SCHEDULER_PARAMETERS: "-q cts2 -n 1 -c ${SPACK_CONCRETIZE_JOBS}"
tags: ["litmus", "public", "medium", "x86_64_v4"]

# Parallel Pipeline for aarch64 (reuses override image, but generates and builds on aarch64)

Expand Down Expand Up @@ -762,10 +780,14 @@ aws-pcluster-neoverse_v1-build:
.generate-cray:
extends: [ ".generate-common", ".base-job" ]
variables:
CUSTOM_CI_BUILDS_DIR: "/tmp/spackbot"
GIT_STRATEGY: "none"
# Override concretization pool for metal runners
SPACK_CONCRETIZE_JOBS: 16
SCHEDULER_PARAMETERS: "-q cts2 -n 1 -c ${SPACK_CONCRETIZE_JOBS}"

before_script:
- *checkout_repository
- echo $PATH
- module avail
- module list
Expand Down
20 changes: 13 additions & 7 deletions .ci/gitlab/configs/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -139,23 +139,29 @@ ci:
after_script:: []

- any-job:
id_tokens:
SITE_ID_TOKEN:
aud: https://gitlab.spack.io
tags: ["spack"]
image: "ghcr.io/spack/e4s-ubuntu-18.04:v2021-10-18"
variables:
# Disable local configs to avoid issues on shell runners
SPACK_DISABLE_LOCAL_CONFIG: "1"
REMOTE_SCRIPT_CLONE_SPACK_SHA256: da9ce276f9c0fbcaaa78a90c6047588fc468a7d945e9b199309bfb8edf2c5190
REMOTE_SCRIPT_REF: e1c30b77cd582a0aed5ff432a31fc1202427c80c
before_script:
- - export SPACK_USER_CACHE_PATH="${CI_PROJECT_DIR}/tmp/_user_cache/"
- - uname -a || true
- grep -E "vendor|model name" /proc/cpuinfo 2>/dev/null | sort -u || head -n10 /proc/cpuinfo 2>/dev/null || true
- nproc || true
# Clone the other repo
- - curl -LSsO https://raw.githubusercontent.com/spack/spack-packages/$REMOTE_SCRIPT_REF/.ci/gitlab/scripts/common/clone_spack.sh
- echo "$REMOTE_SCRIPT_CLONE_SPACK_SHA256 clone_spack.sh" > digest.txt
- sha256sum -c digest.txt
- sh clone_spack.sh
# Jacamar places CI_PROJECT_DIR under CUSTOM_CI_BUILDS_DIR.
- - git init "${CI_PROJECT_DIR}"
- git -C "${CI_PROJECT_DIR}" config remote.origin.url "${CI_REPOSITORY_URL}"
- git -C "${CI_PROJECT_DIR}" fetch --depth 1 origin "${CI_COMMIT_SHA}"
- git -C "${CI_PROJECT_DIR}" checkout --force FETCH_HEAD
# Clone Spack alongside the packages checkout.
- - git init "${SPACK_CI_SPACK_ROOT}"
- git -C "${SPACK_CI_SPACK_ROOT}" config remote.origin.url "https://github.com/${SPACK_CHECKOUT_REPO}.git"
- git -C "${SPACK_CI_SPACK_ROOT}" fetch --depth 1 origin "${SPACK_CHECKOUT_VERSION}"
- git -C "${SPACK_CI_SPACK_ROOT}" checkout --force FETCH_HEAD
- - . "${SPACK_CI_SPACK_ROOT}/share/spack/setup-env.sh"
- spack --version
- spack arch
4 changes: 4 additions & 0 deletions .ci/gitlab/configs/darwin/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,10 @@ ci:
- openmpi
- py-mpi4py
pipeline-gen:
- any-job:
variables:
CUSTOM_CI_BUILDS_DIR: "/tmp/spackbot"
GIT_STRATEGY: "empty"
- match_behavior: first
submapping:
- match:
Expand Down
22 changes: 22 additions & 0 deletions .ci/gitlab/configs/linux/ci.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,27 @@
ci:
pipeline-gen:
- any-job-remove:
tags: ["spack"]
- any-job:
tags: ["litmus"]
variables:
CUSTOM_CI_BUILDS_DIR: "/tmp/spackbot"
GIT_STRATEGY: "empty"
- copy-job:
variables:
SCHEDULER_PARAMETERS: "-q cts2 -n 1 -c 1"
- cleanup-job:
variables:
SCHEDULER_PARAMETERS: "-q cts2 -n 1 -c 1"
- noop-job:
variables:
SCHEDULER_PARAMETERS: "-q cts2 -n 1 -c 1"
- reindex-job:
variables:
SCHEDULER_PARAMETERS: "-q cts2 -n 1 -c 1"
- signing-job:
variables:
SCHEDULER_PARAMETERS: "-q cts2 -n 1 -c 1"
- build-job:
before_script-:
# Test package relocation on linux using a modified prefix
Expand Down
3 changes: 3 additions & 0 deletions .ci/gitlab/scripts/common/noop_job.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,9 @@
# KUBERNETES_MEMORY_REQUEST: 5M
NOOP_JOB = """
noop:
id_tokens:
SITE_ID_TOKEN:
aud: https://gitlab.spack.io
image: busybox@sha256:37f7b378a29ceb4c551b1b5582e27747b855bbfaa73fa11914fe0df028dc581f
variables:
CI_OIDC_REQUIRED: 0
Expand Down
Loading