Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • containers/eic_container
  • wdconinc/eic_container
  • tooba/eic_container
3 results
Show changes
Commits on Source (19)
name: Mirror and Trigger EICweb
on:
pull_request:
push:
workflow_dispatch:
concurrency:
group: mirror
cancel-in-progress: false
jobs:
build:
name: Mirror and Trigger EICweb
runs-on: ubuntu-latest
permissions:
actions: write
contents: read
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Push to EICweb
uses: eic/gitlab-sync@master
with:
url: https://eicweb.phy.anl.gov/containers/eic_container.git/
token: ${{ secrets.GITLAB_TOKEN }}
username: ${{ secrets.GITLAB_USERNAME }}
ciskip: true
- name: Trigger EICweb
if: github.event_name == 'pull_request'
uses: eic/trigger-gitlab-ci@v2
with:
url: https://eicweb.phy.anl.gov
project_id: 290
token: ${{ secrets.EICWEB_EIC_CONTAINER_TRIGGER }}
ref_name: ${{ github.event.pull_request.head.ref || github.ref }}
variables:
GITHUB_REPOSITORY=${{ github.repository }}
GITHUB_SHA=${{ github.event.pull_request.head.sha || github.sha }}
GITHUB_PR=${{ github.event.pull_request.number }}
...@@ -2,13 +2,13 @@ image: alpine ...@@ -2,13 +2,13 @@ image: alpine
variables: variables:
## External images ## External images
DOCKER_IMAGE: docker.io/docker:24.0.5 DOCKER_IMAGE: docker.io/docker:24.0.7
SINGULARITY_IMAGE: quay.io/singularity/singularity:v3.11.4 SINGULARITY_IMAGE: quay.io/singularity/singularity:v3.11.5
## Application versions used for the main release ## Default versions are specified in packages.yaml but can be overridden
## note: nightly builds will always use the master/main branch ## note: nightly builds will always use the master/main branch
JUGGLER_VERSION: "v11.0.0" JUGGLER_VERSION: ""
EICRECON_VERSION: "v1.9.0" EICRECON_VERSION: ""
## Local registry ## Local registry
CI_PUSH: 1 CI_PUSH: 1
...@@ -21,11 +21,6 @@ variables: ...@@ -21,11 +21,6 @@ variables:
GH_REGISTRY_USER: eic GH_REGISTRY_USER: eic
GH_PUSH: 1 GH_PUSH: 1
## TLS error resiliency: number of retries and second wait between tries
## (wait time is doubled with each attempt)
DOCKER_NTRIES: 5
DOCKER_WAIT_TIME: 5
## Number of jobs to start during container builds ## Number of jobs to start during container builds
JOBS: 32 JOBS: 32
...@@ -62,6 +57,8 @@ workflow: ...@@ -62,6 +57,8 @@ workflow:
rules: rules:
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"' - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
- if: '$CI_PIPELINE_SOURCE == "web"' - if: '$CI_PIPELINE_SOURCE == "web"'
- if: '$CI_PIPELINE_SOURCE == "webide"'
- if: '$CI_PIPELINE_SOURCE == "trigger"'
- if: '$CI_COMMIT_BRANCH == "master"' - if: '$CI_COMMIT_BRANCH == "master"'
- if: '$CI_COMMIT_BRANCH =~ /^v[0-9]+\.[0-9]+-(alpha|beta|stable)/' ## main stable branch: vX.Y-stable - if: '$CI_COMMIT_BRANCH =~ /^v[0-9]+\.[0-9]+-(alpha|beta|stable)/' ## main stable branch: vX.Y-stable
- if: '$CI_COMMIT_BRANCH =~ /^v[0-9]+\.[0-9]+-[a-z]+-(alpha|beta|stable)/' ## special stable branch: vX.Y-acadia-stable (etc) - if: '$CI_COMMIT_BRANCH =~ /^v[0-9]+\.[0-9]+-[a-z]+-(alpha|beta|stable)/' ## special stable branch: vX.Y-acadia-stable (etc)
...@@ -159,19 +156,19 @@ status:pending: ...@@ -159,19 +156,19 @@ status:pending:
## base job settings for all docker interactions ## base job settings for all docker interactions
.docker: .docker:
image: ${DOCKER_IMAGE} image: ${DOCKER_IMAGE}
services: services:
- docker:dind - docker:dind
before_script: before_script:
- # Login to registries - # Login to registries
if [[ -n "${EXPORT_TAG}" ]] ; then if [[ -n "${EXPORT_TAG}" ]] ; then
if [[ -n "${DH_REGISTRY}" ]] ; then if [[ -n "${DH_REGISTRY}" ]] ; then
docker login -u ${DH_REGISTRY_USER} -p ${DH_EICWEB_TOKEN} ${DH_REGISTRY} ; echo ${DH_EICWEB_TOKEN} | docker login -u ${DH_REGISTRY_USER} --password-stdin ${DH_REGISTRY} ;
fi ; fi ;
if [[ -n "${GH_REGISTRY}" ]] ; then if [[ -n "${GH_REGISTRY}" ]] ; then
docker login -u ${GITHUB_REGISTRY_USER} -p ${GITHUB_REGISTRY_TOKEN} ${GH_REGISTRY} ; echo ${GITHUB_REGISTRY_TOKEN} | docker login -u ${GITHUB_REGISTRY_USER} --password-stdin ${GH_REGISTRY} ;
fi ; fi ;
if [[ -n "${CI_REGISTRY}" ]] ; then if [[ -n "${CI_REGISTRY}" ]] ; then
docker login -u ${CI_REGISTRY_USER} -p ${CI_REGISTRY_PASSWORD} ${CI_REGISTRY} ; echo ${CI_REGISTRY_PASSWORD} | docker login -u ${CI_REGISTRY_USER} --password-stdin ${CI_REGISTRY} ;
fi ; fi ;
fi fi
after_script: after_script:
...@@ -271,7 +268,7 @@ jug_dev: ...@@ -271,7 +268,7 @@ jug_dev:
- nightly - nightly
BASE_IMAGE: debian_stable_base BASE_IMAGE: debian_stable_base
BUILD_IMAGE: jug_ BUILD_IMAGE: jug_
PLATFORM: linux/amd64,linux/arm64/v8 PLATFORM: linux/amd64
ENV: ENV:
- dev - dev
- prod - prod
...@@ -337,8 +334,12 @@ jug_dev: ...@@ -337,8 +334,12 @@ jug_dev:
--build-arg S3_SECRET_KEY=${S3_SECRET_KEY} --build-arg S3_SECRET_KEY=${S3_SECRET_KEY}
--build-arg JUG_VERSION=${EXPORT_TAG}-${BUILD_TYPE}-$(git rev-parse HEAD) --build-arg JUG_VERSION=${EXPORT_TAG}-${BUILD_TYPE}-$(git rev-parse HEAD)
${IF_BUILD_DEFAULT:+ ${IF_BUILD_DEFAULT:+
--build-arg JUGGLER_VERSION=${JUGGLER_VERSION} ${JUGGLER_VERSION:+--build-arg JUGGLER_VERSION=${JUGGLER_VERSION}}
--build-arg EICRECON_VERSION=${EICRECON_VERSION} ${EICRECON_VERSION:+--build-arg EICRECON_VERSION=${EICRECON_VERSION}}
}
${IF_BUILD_NIGHTLY:+
--build-arg JUGGLER_VERSION=main
--build-arg EICRECON_VERSION=main
} }
--build-arg ENV=${ENV} --build-arg ENV=${ENV}
--build-arg jobs=${JOBS} --build-arg jobs=${JOBS}
...@@ -368,7 +369,7 @@ jug_xl:default: ...@@ -368,7 +369,7 @@ jug_xl:default:
- default - default
BASE_IMAGE: debian_stable_base BASE_IMAGE: debian_stable_base
BUILD_IMAGE: jug_ BUILD_IMAGE: jug_
PLATFORM: linux/amd64,linux/arm64/v8 PLATFORM: linux/amd64
ENV: ENV:
- dev - dev
script: script:
...@@ -417,7 +418,7 @@ jug_xl:nightly: ...@@ -417,7 +418,7 @@ jug_xl:nightly:
- nightly - nightly
BASE_IMAGE: debian_stable_base BASE_IMAGE: debian_stable_base
BUILD_IMAGE: jug_ BUILD_IMAGE: jug_
PLATFORM: linux/amd64,linux/arm64/v8 PLATFORM: linux/amd64
ENV: ENV:
- dev - dev
script: script:
...@@ -527,7 +528,50 @@ benchmarks:detector:nightly: ...@@ -527,7 +528,50 @@ benchmarks:detector:nightly:
project: EIC/benchmarks/detector_benchmarks project: EIC/benchmarks/detector_benchmarks
strategy: depend strategy: depend
allow_failure: false allow_failure: false
df:
extends: .build
stage: config
tags:
- docker-new
needs:
- version
script:
- docker images
- docker ps --size
- docker stats --all --no-stream --no-trunc > docker-stats-all.txt
- docker context ls
- docker volume ls
- docker volume ls --filter=name=buildx_buildkit_builder
- docker buildx ls
- docker buildx inspect
- docker buildx du
- docker buildx du --verbose > docker-buildx-du-verbose.txt
- docker system df
- docker system df --verbose > docker-system-df-verbose.txt
artifacts:
paths:
- docker-stats-all.txt
- docker-buildx-du-verbose.txt
- docker-system-df-verbose.txt
prune:
extends: .build
stage: finalize
tags:
- docker-new
needs:
- clean_internal_tag
- clean_unstable_mr
- clean_pipeline
rules:
- when: manual
script:
- docker buildx prune --all --force --filter=until=24h --verbose
- docker system prune --all --force --filter=until=24h
- docker system prune --volumes --force
allow_failure: true
clean_internal_tag: clean_internal_tag:
image: alpine/curl image: alpine/curl
stage: finalize stage: finalize
...@@ -567,9 +611,6 @@ clean_unstable_mr: ...@@ -567,9 +611,6 @@ clean_unstable_mr:
if [ "$state" == "merged" ] ; then docker rmi $repository:$tag ; fi ; if [ "$state" == "merged" ] ; then docker rmi $repository:$tag ; fi ;
if [ "$state" == "closed" ] ; then docker rmi $repository:$tag ; fi ; if [ "$state" == "closed" ] ; then docker rmi $repository:$tag ; fi ;
done done
- docker system prune --filter until=24h --force
- docker system df
- docker images
clean_pipeline: clean_pipeline:
extends: .docker extends: .docker
...@@ -600,9 +641,6 @@ clean_pipeline: ...@@ -600,9 +641,6 @@ clean_pipeline:
if [ "$status" == "failed" ] ; then docker rmi $repository:$tag ; fi ; if [ "$status" == "failed" ] ; then docker rmi $repository:$tag ; fi ;
if [ "$status" == "canceled" ] ; then docker rmi $repository:$tag ; fi ; if [ "$status" == "canceled" ] ; then docker rmi $repository:$tag ; fi ;
done done
- docker system prune --filter until=24h --force
- docker system df
- docker images
status:success: status:success:
stage: status-report stage: status-report
......
...@@ -34,6 +34,7 @@ apt-get -yqq install --no-install-recommends \ ...@@ -34,6 +34,7 @@ apt-get -yqq install --no-install-recommends \
ccache \ ccache \
curl \ curl \
file \ file \
gawk \
gdb \ gdb \
ghostscript \ ghostscript \
git \ git \
......
...@@ -71,7 +71,7 @@ spack compiler find --scope site ...@@ -71,7 +71,7 @@ spack compiler find --scope site
spack config blame compilers spack config blame compilers
EOF EOF
## Setup eics3 buildcache mirrors ## Setup buildcache mirrors
## - this always adds the read-only mirror to the container ## - this always adds the read-only mirror to the container
## - the write-enabled mirror is provided later as a secret mount ## - the write-enabled mirror is provided later as a secret mount
ARG S3_ACCESS_KEY="" ARG S3_ACCESS_KEY=""
...@@ -79,12 +79,14 @@ ARG S3_SECRET_KEY="" ...@@ -79,12 +79,14 @@ ARG S3_SECRET_KEY=""
RUN --mount=type=cache,target=/var/cache/spack <<EOF RUN --mount=type=cache,target=/var/cache/spack <<EOF
set -e set -e
if [ -n "${S3_ACCESS_KEY}" ] ; then if [ -n "${S3_ACCESS_KEY}" ] ; then
spack mirror add --scope site \ spack mirror add --scope site --unsigned \
--s3-endpoint-url https://eics3.sdcc.bnl.gov:9000 \ --s3-endpoint-url https://eics3.sdcc.bnl.gov:9000 \
--s3-access-key-id "${S3_ACCESS_KEY}" \ --s3-access-key-id "${S3_ACCESS_KEY}" \
--s3-access-key-secret "${S3_SECRET_KEY}" \ --s3-access-key-secret "${S3_SECRET_KEY}" \
eics3 s3://eictest/EPIC/spack/${SPACK_VERSION} eics3 s3://eictest/EPIC/spack/${SPACK_VERSION}
fi fi
spack mirror add --scope site --signed spack-${SPACK_VERSION} https://binaries.spack.io/${SPACK_VERSION}
spack mirror add --scope site --unsigned ghcr-${SPACK_VERSION} oci://ghcr.io/eic/spack-${SPACK_VERSION}
spack mirror list spack mirror list
EOF EOF
...@@ -123,13 +125,9 @@ EOF ...@@ -123,13 +125,9 @@ EOF
## ======================================================================================== ## ========================================================================================
FROM spack as builder FROM spack as builder
## Setup our custom environment (secret mount for write-enabled mirror) ## 1. Setup our default environment (secret mount for write-enabled mirror)
COPY --from=spack-environment . /opt/spack-environment/ COPY --from=spack-environment . /opt/spack-environment/
ARG ENV=dev ARG ENV=dev
ARG JUGGLER_VERSION="main"
ADD https://eicweb.phy.anl.gov/api/v4/projects/EIC%2Fjuggler/repository/commits/${JUGGLER_VERSION} /tmp/juggler.json
ARG EICRECON_VERSION="main"
ADD https://api.github.com/repos/eic/eicrecon/commits/${EICRECON_VERSION} /tmp/eicrecon.json
ENV SPACK_ENV=/opt/spack-environment/${ENV} ENV SPACK_ENV=/opt/spack-environment/${ENV}
RUN --mount=type=cache,target=/ccache,id=${TARGETPLATFORM} \ RUN --mount=type=cache,target=/ccache,id=${TARGETPLATFORM} \
--mount=type=cache,target=/var/cache/spack \ --mount=type=cache,target=/var/cache/spack \
...@@ -137,34 +135,62 @@ RUN --mount=type=cache,target=/ccache,id=${TARGETPLATFORM} \ ...@@ -137,34 +135,62 @@ RUN --mount=type=cache,target=/ccache,id=${TARGETPLATFORM} \
<<EOF <<EOF
set -e set -e
export CCACHE_DIR=/ccache export CCACHE_DIR=/ccache
source ${SPACK_ROOT}/share/spack/setup-env.sh
mkdir -p /var/cache/spack/blobs/sha256/
find /var/cache/spack/blobs/sha256/ -atime +7 -delete find /var/cache/spack/blobs/sha256/ -atime +7 -delete
JUGGLER_VERSION=$(jq -r .id /tmp/juggler.json)
EICRECON_VERSION=$(jq -r .sha /tmp/eicrecon.json)
spack buildcache update-index eics3rw spack buildcache update-index eics3rw
spack env activate --dir ${SPACK_ENV} spack env activate --dir ${SPACK_ENV}
spack add juggler@git.${JUGGLER_VERSION}
spack add eicrecon@git.${EICRECON_VERSION}
spack concretize --fresh --force --quiet spack concretize --fresh --force --quiet
make --jobs ${jobs} --keep-going --directory /opt/spack-environment SPACK_ENV=${SPACK_ENV} BUILDCACHE_MIRROR_ONLY_PACKAGE="eics3rw" BUILDCACHE_MIRROR_DEPENDENCIES="eicweb ghcr" make --jobs ${jobs} --keep-going --directory /opt/spack-environment \
SPACK_ENV=${SPACK_ENV} \
BUILDCACHE_OCI_PROMPT="eicweb" \
BUILDCACHE_OCI_FINAL="ghcr" \
BUILDCACHE_S3_FINAL="eics3rw"
ccache --show-stats
ccache --zero-stats
EOF
## 2. Setup our environment with custom versions (on top of cached layer)
## Note: these default versions are just the very first commit.
ARG JUGGLER_VERSION="df87bf1f8643afa8e80bece9d36d6dc26dfe8132"
ARG EICRECON_VERSION="28108da4a1e8919a05dfdb5f11e114800a2cbe96"
ADD https://api.github.com/repos/eic/juggler/commits/${JUGGLER_VERSION} /tmp/juggler.json
ADD https://api.github.com/repos/eic/eicrecon/commits/${EICRECON_VERSION} /tmp/eicrecon.json
RUN --mount=type=cache,target=/ccache,id=${TARGETPLATFORM} \
--mount=type=cache,target=/var/cache/spack \
--mount=type=secret,id=mirrors,target=/opt/spack/etc/spack/mirrors.yaml \
<<EOF
source ${SPACK_ROOT}/share/spack/setup-env.sh
export CCACHE_DIR=/ccache
spack buildcache update-index eics3rw
spack env activate --dir ${SPACK_ENV}
if [ "${JUGGLER_VERSION}" != "df87bf1f8643afa8e80bece9d36d6dc26dfe8132" ] ; then
export JUGGLER_VERSION=$(jq -r .sha /tmp/juggler.json)
spack config add "packages:juggler::require:['@git.${JUGGLER_VERSION}=main']"
spack deconcretize -y juggler
fi
if [ "${EICRECON_VERSION}" != "28108da4a1e8919a05dfdb5f11e114800a2cbe96" ] ; then
export EICRECON_VERSION=$(jq -r .sha /tmp/eicrecon.json)
spack config add "packages:eicrecon::require:['@git.${EICRECON_VERSION}=main']"
spack deconcretize -y eicrecon
fi
spack concretize --fresh --force --quiet
make --jobs ${jobs} --keep-going --directory /opt/spack-environment \
SPACK_ENV=${SPACK_ENV} \
BUILDCACHE_OCI_PROMPT="eicweb" \
BUILDCACHE_OCI_FINAL="ghcr" \
BUILDCACHE_S3_FINAL="eics3rw"
ccache --show-stats ccache --show-stats
ccache --zero-stats ccache --zero-stats
EOF EOF
## Create view at /usr/local ## Create view at /usr/local
RUN --mount=type=cache,target=/var/cache/spack <<EOF RUN <<EOF
set -e set -e
rm -r /usr/local rm -r /usr/local
spack -e ${SPACK_ENV} env view enable /usr/local spack -e ${SPACK_ENV} env view enable /usr/local
EOF EOF
## Optional, nuke the buildcache after install, before (re)caching
## This is useful when going to completely different containers,
## or intermittently to keep the buildcache step from taking too much time
ARG CACHE_NUKE=""
RUN --mount=type=cache,target=/var/cache/spack,sharing=locked <<EOF
[ -z "${CACHE_NUKE}" ] || rm -rf /var/cache/spack/mirror/${SPACK_VERSION}/build_cache/*
EOF
## Store environment ## Store environment
RUN <<EOF RUN <<EOF
set -e set -e
......
...@@ -3,7 +3,7 @@ EICSPACK_ORGREPO="eic/eic-spack" ...@@ -3,7 +3,7 @@ EICSPACK_ORGREPO="eic/eic-spack"
## EIC spack commit hash or github version, e.g. v0.19.7 ## EIC spack commit hash or github version, e.g. v0.19.7
## note: nightly builds could use a branch e.g. releases/v0.19 ## note: nightly builds could use a branch e.g. releases/v0.19
EICSPACK_VERSION="f3e18d6a2273029d16462575fe6cc4f4e1efeee0" EICSPACK_VERSION="bc6a4382636dd8c8bcd8c665163840815d48a25e"
## Space-separated list of eic-spack cherry-picks ## Space-separated list of eic-spack cherry-picks
read -r -d '' EICSPACK_CHERRYPICKS <<- \ read -r -d '' EICSPACK_CHERRYPICKS <<- \
......
mirrors: mirrors:
eicweb: eicweb:
url: oci://${CI_REGISTRY}/${CI_PROJECT_PATH}/spack-${SPACK_VERSION} url: oci://${CI_REGISTRY}/${CI_PROJECT_PATH}/spack-${SPACK_VERSION}
signed: false
push: push:
access_pair: access_pair:
- ${CI_REGISTRY_USER} - ${CI_REGISTRY_USER}
- ${CI_REGISTRY_PASSWORD} - ${CI_REGISTRY_PASSWORD}
ghcr: ghcr:
url: oci://ghcr.io/eic/spack-${SPACK_VERSION} url: oci://ghcr.io/eic/spack-${SPACK_VERSION}
signed: false
push: push:
access_pair: access_pair:
- ${GITHUB_REGISTRY_USER} - ${GITHUB_REGISTRY_USER}
- ${GITHUB_REGISTRY_TOKEN} - ${GITHUB_REGISTRY_TOKEN}
eics3rw: eics3rw:
signed: false
fetch: fetch:
url: s3://eictest/EPIC/spack/${SPACK_VERSION} url: s3://eictest/EPIC/spack/${SPACK_VERSION}
access_pair: access_pair:
......
...@@ -7,8 +7,10 @@ export SPACK_COLOR = always ...@@ -7,8 +7,10 @@ export SPACK_COLOR = always
SPACK_ENV ?= dev SPACK_ENV ?= dev
BUILDCACHE_MIRROR_ONLY_PACKAGE := BUILDCACHE_S3_PROMPT :=
BUILDCACHE_MIRROR_DEPENDENCIES := BUILDCACHE_S3_FINAL :=
BUILDCACHE_OCI_PROMPT :=
BUILDCACHE_OCI_FINAL :=
BUILDCACHE_OCI_BASE_IMAGE := ghcr.io/eic/debian:stable-slim BUILDCACHE_OCI_BASE_IMAGE := ghcr.io/eic/debian:stable-slim
.PHONY: all clean .PHONY: all clean
...@@ -20,13 +22,15 @@ include $(SPACK_ENV)/spack.mk ...@@ -20,13 +22,15 @@ include $(SPACK_ENV)/spack.mk
endif endif
$(SPACK_ENV)/push: $(addprefix $(SPACK_ENV)/push/,$($(SPACK_ENV)/SPACK_PACKAGE_IDS)) $(SPACK_ENV)/push: $(addprefix $(SPACK_ENV)/push/,$($(SPACK_ENV)/SPACK_PACKAGE_IDS))
$(foreach buildcache, $(BUILDCACHE_MIRROR_ONLY_PACKAGE), $(SPACK) buildcache update-index $(buildcache) ;) $(foreach buildcache, $(BUILDCACHE_S3_FINAL), $(SPACK) buildcache push --unsigned $(buildcache) ;)
$(foreach buildcache, $(BUILDCACHE_MIRROR_DEPENDENCIES), $(SPACK) buildcache update-index $(buildcache) ;) $(foreach buildcache, $(BUILDCACHE_S3_FINAL), $(SPACK) buildcache update-index $(buildcache) ;)
$(foreach buildcache, $(BUILDCACHE_S3_PROMPT), $(SPACK) buildcache update-index $(buildcache) ;)
$(foreach buildcache, $(BUILDCACHE_OCI_FINAL), $(SPACK) buildcache push --unsigned --base-image $(BUILDCACHE_OCI_BASE_IMAGE) $(buildcache) ;)
$(SPACK_ENV)/push/%: $(SPACK_ENV)/install/% $(SPACK_ENV)/push/%: $(SPACK_ENV)/install/%
@mkdir -p $(dir $@) @mkdir -p $(dir $@)
$(foreach buildcache, $(BUILDCACHE_MIRROR_ONLY_PACKAGE), $(SPACK) buildcache push --only=package --unsigned $(buildcache) /$(HASH) ;) # push $(SPEC) $(foreach buildcache, $(BUILDCACHE_S3_PROMPT), $(SPACK) buildcache push --unsigned --only=package $(buildcache) /$(HASH) ;) # push $(SPEC)
$(foreach buildcache, $(BUILDCACHE_MIRROR_DEPENDENCIES), $(SPACK) buildcache push --unsigned --base-image $(BUILDCACHE_OCI_BASE_IMAGE) $(buildcache) /$(HASH) | grep -v "Using cached archive" ;) # push $(SPEC) $(foreach buildcache, $(BUILDCACHE_OCI_PROMPT), $(SPACK) buildcache push --unsigned --base-image $(BUILDCACHE_OCI_BASE_IMAGE) $(buildcache) /$(HASH) | grep -v "Using cached archive" ;) # push $(SPEC)
@touch $@ @touch $@
$(SPACK_ENV)/spack.lock: $(SPACK_ENV)/spack.yaml Makefile $(SPACK_ENV)/spack.lock: $(SPACK_ENV)/spack.yaml Makefile
......
...@@ -24,6 +24,7 @@ spack: ...@@ -24,6 +24,7 @@ spack:
- edm4eic - edm4eic
- edm4hep - edm4hep
- eic-smear - eic-smear
- eicrecon
- eigen - eigen
- emacs - emacs
- fastjet - fastjet
...@@ -40,6 +41,7 @@ spack: ...@@ -40,6 +41,7 @@ spack:
- iwyu - iwyu
- jana2 - jana2
- k4actstracking - k4actstracking
- juggler
- k4fwcore - k4fwcore
- lcov - lcov
- lhapdf - lhapdf
......
...@@ -17,7 +17,7 @@ packages: ...@@ -17,7 +17,7 @@ packages:
- any_of: [build_type=Release, '@:'] - any_of: [build_type=Release, '@:']
acts: acts:
require: require:
- '@30.3.2' - '@31.2.0'
- cxxstd=20 +binaries +dd4hep +examples +fatras +geant4 +identification +json +python +tgeo - cxxstd=20 +binaries +dd4hep +examples +fatras +geant4 +identification +json +python +tgeo
actsvg: actsvg:
require: require:
...@@ -92,6 +92,9 @@ packages: ...@@ -92,6 +92,9 @@ packages:
eic-smear: eic-smear:
require: require:
- '@1.1.12' - '@1.1.12'
eicrecon:
require:
- '@1.9.1'
eigen: eigen:
require: require:
- '@3.4.0' - '@3.4.0'
...@@ -160,6 +163,7 @@ packages: ...@@ -160,6 +163,7 @@ packages:
- -ipo +podio +root +zmq - -ipo +podio +root +zmq
juggler: juggler:
require: require:
- '@13.0.0'
- cxxstd=20 - cxxstd=20
k4actstracking: k4actstracking:
require: require:
...@@ -242,7 +246,7 @@ packages: ...@@ -242,7 +246,7 @@ packages:
- '@1.26.26' - '@1.26.26'
py-dask: py-dask:
require: require:
- '@2021.6.2' - '@2023.4.1'
py-deepdiff: py-deepdiff:
require: require:
- '@6.3.0' - '@6.3.0'
...@@ -312,6 +316,7 @@ packages: ...@@ -312,6 +316,7 @@ packages:
py-torch: py-torch:
require: require:
- '@2.1.0' - '@2.1.0'
- -mkldnn
py-uproot: py-uproot:
require: require:
- '@5.0.5' - '@5.0.5'
......
spack: spack:
include: include:
- ../concretizer.yaml - ../concretizer.yaml
- ../packages.yaml - ../packages.yaml
config: config:
...@@ -9,6 +9,7 @@ spack: ...@@ -9,6 +9,7 @@ spack:
- cmake - cmake
- dd4hep -ddeve - dd4hep -ddeve
- edm4eic - edm4eic
- eicrecon
- fastjet - fastjet
- fjcontrib - fjcontrib
- gaudi - gaudi
...@@ -17,6 +18,7 @@ spack: ...@@ -17,6 +18,7 @@ spack:
- intel-tbb - intel-tbb
- irt - irt
- jana2 - jana2
- juggler
- npsim -geocad - npsim -geocad
- py-boto3 - py-boto3
- py-jinja2 - py-jinja2
......
...@@ -23,6 +23,9 @@ b111064e221aae83e62226672cd8bf9a7524423d ...@@ -23,6 +23,9 @@ b111064e221aae83e62226672cd8bf9a7524423d
c07ddf83c32b7129247fe90eed486dd844047087 c07ddf83c32b7129247fe90eed486dd844047087
00875fbc749a7e4e979c35d59c0a8d60d32d4cd7 00875fbc749a7e4e979c35d59c0a8d60d32d4cd7
64cf67822471ec2d3df2625a6d713f80cbe7ff43 64cf67822471ec2d3df2625a6d713f80cbe7ff43
7a0c4e8017033430e5f15ed628be6b539e935ba9
48fcfda1e7c1781cab4cada6d099823b263ab0cc
8c29e90fa9962f4a44f39f47217b46c85176af28
--- ---
## Ref: https://github.com/spack/spack/commit/[hash] ## Ref: https://github.com/spack/spack/commit/[hash]
## [hash]: [description] ## [hash]: [description]
...@@ -41,3 +44,6 @@ c07ddf83c32b7129247fe90eed486dd844047087 ...@@ -41,3 +44,6 @@ c07ddf83c32b7129247fe90eed486dd844047087
## c07ddf83c32b7129247fe90eed486dd844047087: py-torch: set env OpenBLAS_HOME ## c07ddf83c32b7129247fe90eed486dd844047087: py-torch: set env OpenBLAS_HOME
## 00875fbc749a7e4e979c35d59c0a8d60d32d4cd7: py-torch: patch for ${OpenBLAS_HOME}/include/openblas ## 00875fbc749a7e4e979c35d59c0a8d60d32d4cd7: py-torch: patch for ${OpenBLAS_HOME}/include/openblas
## 64cf67822471ec2d3df2625a6d713f80cbe7ff43: py-torch: move patch before def patch ## 64cf67822471ec2d3df2625a6d713f80cbe7ff43: py-torch: move patch before def patch
## 7a0c4e8017033430e5f15ed628be6b539e935ba9: acts: new versions 31.*
## 48fcfda1e7c1781cab4cada6d099823b263ab0cc: setup-env.sh: if exe contains qemu, use /proc/$$/comm instead
## 8c29e90fa9962f4a44f39f47217b46c85176af28: Build cache: make signed/unsigned a mirror property