diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md index 94bf5e675..7bd3b0b44 100644 --- a/.github/copilot-instructions.md +++ b/.github/copilot-instructions.md @@ -63,7 +63,7 @@ When updating package versions: Before submitting: 1. Test concretization with builder stage builds -2. Verify no unexpected duplicate packages +2. Verify no unexpected duplicate packages beyond each environment's `concretizer.duplicates.max_dupes` settings 3. **Check BOTH CI workflows pass** (GitHub Actions AND GitLab/EICweb) 4. Update documentation if architecture changes diff --git a/.github/workflows/build-push.yml b/.github/workflows/build-push.yml index 093caee8b..d616b86fe 100644 --- a/.github/workflows/build-push.yml +++ b/.github/workflows/build-push.yml @@ -369,7 +369,6 @@ jobs: runner: ubuntu-latest PLATFORM: linux/amd64 target: final - SPACK_DUPLICATE_ALLOWLIST: "epic|llvm|py-setuptools|py-urllib3" - BUILD_IMAGE: eic_ BUILD_TYPE: default BUILDER_IMAGE: debian_stable_base @@ -379,7 +378,6 @@ jobs: runner: ubuntu-latest PLATFORM: linux/amd64/v3 target: final - SPACK_DUPLICATE_ALLOWLIST: "epic|llvm|py-setuptools|py-urllib3" - BUILD_IMAGE: eic_ BUILD_TYPE: default BUILDER_IMAGE: debian_stable_base @@ -389,7 +387,6 @@ jobs: runner: ubuntu-24.04-arm PLATFORM: linux/arm64 target: final - SPACK_DUPLICATE_ALLOWLIST: "epic|llvm|py-setuptools|py-urllib3" - BUILD_IMAGE: eic_ BUILD_TYPE: default BUILDER_IMAGE: debian_stable_base @@ -399,7 +396,6 @@ jobs: runner: ubuntu-latest PLATFORM: linux/amd64 target: final - SPACK_DUPLICATE_ALLOWLIST: "epic|llvm|py-setuptools|py-urllib3|py-dask|py-dask-awkward|py-dask-histogram|py-distributed|py-requests" - BUILD_IMAGE: eic_ BUILD_TYPE: default BUILDER_IMAGE: debian_stable_base @@ -409,7 +405,6 @@ jobs: runner: ubuntu-latest PLATFORM: linux/amd64/v3 target: final - SPACK_DUPLICATE_ALLOWLIST: "epic|llvm|py-setuptools|py-urllib3|py-dask|py-dask-awkward|py-dask-histogram|py-distributed|py-requests" - BUILD_IMAGE: eic_ BUILD_TYPE: default BUILDER_IMAGE: debian_stable_base @@ -419,7 +414,6 @@ jobs: runner: ubuntu-24.04-arm PLATFORM: linux/arm64 target: final - SPACK_DUPLICATE_ALLOWLIST: "epic|llvm|py-setuptools|py-urllib3|py-dask|py-dask-awkward|py-dask-histogram|py-distributed|py-requests" - BUILD_IMAGE: eic_ BUILD_TYPE: default BUILDER_IMAGE: cuda_devel @@ -429,7 +423,6 @@ jobs: runner: ubuntu-latest PLATFORM: linux/amd64 target: builder_concretization_default - SPACK_DUPLICATE_ALLOWLIST: "epic|llvm|py-setuptools|py-urllib3" - BUILD_IMAGE: eic_ BUILD_TYPE: default BUILDER_IMAGE: cuda_devel @@ -439,7 +432,6 @@ jobs: runner: ubuntu-latest PLATFORM: linux/amd64 target: builder_concretization_default - SPACK_DUPLICATE_ALLOWLIST: "epic|llvm|py-setuptools|py-urllib3|py-dask|py-dask-awkward|py-dask-histogram|py-distributed|py-requests" fail-fast: false steps: - name: Free Disk Space (Ubuntu) @@ -559,7 +551,6 @@ jobs: RUNTIME_IMAGE=${{ matrix.RUNTIME_IMAGE }} INTERNAL_TAG=${{ env.INTERNAL_TAG }} ENV=${{ matrix.ENV }} - SPACK_DUPLICATE_ALLOWLIST=${{ matrix.SPACK_DUPLICATE_ALLOWLIST }} cache-from: | type=registry,ref=${{ env.GH_REGISTRY }}/${{ env.GH_REGISTRY_USER }}/buildcache:${{ matrix.BUILD_IMAGE }}${{ matrix.ENV }}-${{ matrix.BUILD_TYPE }}-${{ env.GITHUB_REF_POINT_SLUG }}-${{ matrix.arch }} type=registry,ref=${{ env.GH_REGISTRY }}/${{ env.GH_REGISTRY_USER }}/buildcache:${{ matrix.BUILD_IMAGE }}${{ matrix.ENV }}-${{ matrix.BUILD_TYPE }}-${{ env.GITHUB_BASE_REF_SLUG }}-${{ matrix.arch }} diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e86ec08c2..71e9993c0 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -479,16 +479,6 @@ eic: --build-arg JUGGLER_SHA=$(sh .ci/resolve_git_ref eic/juggler ${JUGGLER_VERSION:-main}) } --build-arg ENV=${ENV} - --build-arg SPACK_DUPLICATE_ALLOWLIST=$( - case "${ENV}" in - ci|ci_without_acts|cuda|dbg|jl|prod) - echo "epic|llvm|py-setuptools|py-urllib3" ;; - xl|tf) - echo "epic|llvm|py-setuptools|py-urllib3|py-dask|py-dask-awkward|py-dask-histogram|py-distributed|py-requests" ;; - *) - echo "epic|llvm|py-setuptools|py-urllib3" ;; - esac - ) --build-arg jobs=${JOBS} --build-context spack-environment=spack-environment --secret id=mirrors,src=mirrors.yaml diff --git a/AGENTS.md b/AGENTS.md index badfe9df3..e8365e2c3 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -214,7 +214,7 @@ The GitLab CI configuration (`.gitlab-ci.yml`) runs similar build jobs but in th When modifying `spack-environment/packages.yaml`: 1. Test concretization: Build `builder_concretization_default` stage -2. Check for duplicate packages (intentionally allowed: `epic`, `llvm`, `py-setuptools`, `py-urllib3`) +2. Check for duplicate packages against the environment's `concretizer.duplicates.max_dupes` settings in `spack-environment/*/spack.yaml` 3. Verify no unexpected duplicates appear in concretization output ### Build Testing diff --git a/containers/eic/Dockerfile b/containers/eic/Dockerfile index ccb2a59f3..ed22cc384 100644 --- a/containers/eic/Dockerfile +++ b/containers/eic/Dockerfile @@ -46,7 +46,6 @@ ARG ENV=xl ENV SPACK_ENV=/opt/spack-environment/${ENV} ARG SPACK_FLAGS="--backtrace" ARG SPACK_INSTALL_FLAGS="--no-check-signature --show-log-on-error --yes-to-all" -ARG SPACK_DUPLICATE_ALLOWLIST="" ENV SPACK_COLOR="always" ENV GIT_TERMINAL_PROMPT=0 @@ -55,29 +54,6 @@ RUN <