diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 97b796b0c7e5f6f4350c20ae1f05cd6c57c9ec6b..a0ee14cd02a50f33615856ed1d32a76cd30daeb2 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -157,12 +157,32 @@ builder:singularity: - build/eic_builder.sif - build/eic_builder.def -release:singularity: +builder:singularity:unstable: stage: singularity tags: - singularity only: - tags + needs: ["builder:unstable"] + when: manual + script: + - cp containers/builder/eic_builder.def . + - /bin/bash .gitlabci/setup.sh + - /bin/bash .gitlabci/build.sh eic_builder.def + - mkdir -p build + - cp eic_builder.sif build/. + - cp eic_builder.def build/. + artifacts: + paths: + - build/eic_builder.sif + - build/eic_builder.def + +release:singularity: + stage: singularity + tags: + - singularity + only: + - develop needs: ["release:stable"] script: - cp containers/release/eic.def . @@ -176,3 +196,24 @@ release:singularity: paths: - build/eic.sif - build/eic.def + +release:singularity:unstable: + stage: singularity + tags: + - singularity + only: + - develop + needs: ["release:unstable"] + when: manual + script: + - cp containers/release/eic.def . + - /bin/bash .gitlabci/setup.sh + - /bin/bash .gitlabci/build.sh eic.def + - mkdir -p build + - cp eic.sif build/. + - cp eic.def build/. + artifacts: + expire_in: 90 days # this will change in future gitlab vesions :https://docs.gitlab.com/13.3/ee/ci/yaml/README.html#artifactsexpire_in + paths: + - build/eic.sif + - build/eic.def diff --git a/README.md b/README.md index 0d1f67226cdd58822777327dbc016a867dfff99f..98f1f077928f8e31ba068e394cbcea3b3b1196ab 100644 --- a/README.md +++ b/README.md @@ -15,9 +15,9 @@ cd eic_container modeuefile will be installed to `$PREFIX/../../etc/modulefiles`. You can use the `-v` flag to select the version you want to deploy, or omit the flag if you want to install the master build. The recommended stable - release version is `v2.3.1`. + release version is `v2.4.0`. ```bash -./deploy.py -v 2.3.1 <PREFIX> +./deploy.py -v 2.4.0 <PREFIX> ``` Available flags: @@ -102,23 +102,24 @@ Included software: ------------------ - Included software: - gcc@10.2.0 - - cmake@3.18.1 - - fmt@6.1.2 + - cmake@3.18.4 + - fmt@7.1.2 - spdlog@1.5.0 - nlohmann-json - heppdt@3.04.01 - clhep@2.4.1.3 - - eigen@3.3.7 - - python@3.7.8 with pip, numpy, pyyaml, pyafp, matplotlib, ipython, scipy + - eigen@3.3.8 + - python@3.8.6 with pip, numpy, pyyaml, pyafp, matplotlib, ipython, scipy - xrootd@4.12.3 - root@6.22.00 - - pythia8@8244 + - pythia8@8303 - hepmc3@3.2.2 +python +rootio + - stow@2.3.1 - podio@master - geant4@10.6.2 - dd4hep@1.14.1 - - acts@1.02.0 - - gaudi@34.0 + - acts@2.00.0 + - gaudi@35.0 - dawn@3.91a - dawncut@1.54a - The singularity build exports the following applications: diff --git a/VERSION b/VERSION index 2bf1c1ccf363acd53eaf92ef33a7f11f5f4557c2..197c4d5c2d7c724b4cd0048f4e3574bb3fa5c8db 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -2.3.1 +2.4.0 diff --git a/containers/builder/Dockerfile b/containers/builder/Dockerfile index e80801e4eadd3192d67b6cab9f53a45ea08c17a5..3c763cdd41970c3b246a34de0b3b988ee4ed7f95 100644 --- a/containers/builder/Dockerfile +++ b/containers/builder/Dockerfile @@ -1,6 +1,6 @@ # Builder with Argonne EIC software # -FROM eicweb.phy.anl.gov:4567/containers/image_recipes/debian_spack:snapshot-20201025 +FROM eicweb.phy.anl.gov:4567/containers/image_recipes/debian_spack:snapshot-20201117 LABEL maintainer="Sylvester Joosten <sjoosten@anl.gov>" \ name="eic_builder" \ @@ -11,7 +11,7 @@ LABEL maintainer="Sylvester Joosten <sjoosten@anl.gov>" \ ENV DOCKERFILE_BASE=debian \ DOCKERFILE_DISTRO=debian \ - DOCKERFILE_DISTRO_VERSION=20201012-testing \ + DOCKERFILE_DISTRO_VERSION=20201117-testing \ SPACK_ROOT=/opt/spack \ DEBIAN_FRONTEND=noninteractive \ CURRENTLY_BUILDING_DOCKER_IMAGE=1 \ @@ -24,19 +24,19 @@ RUN apt-get -yqq update \ gv \ && rm -rf /var/lib/apt/lists/* +## Setup our environment definition +COPY spack.yaml /opt/spack-environment/spack.yaml + ## Ensure an up-to-date custom package list RUN rm -rf $SPACK_ROOT/np-spack \ && git clone https://eicweb.phy.anl.gov/EIC/np-spack.git $SPACK_ROOT/np-spack \ && cd $SPACK_ROOT/np-spack \ - && git checkout snapshot-`echo $(spack --version) | cut -d- -f3` \ + && git checkout v$(spack --version) \ && cd - \ && echo "DISABLED: rm -rf $SPACK_ROOT/np-spack/.git" \ && echo "repos:" > $SPACK_ROOT/etc/spack/repos.yaml \ && echo " - $SPACK_ROOT/np-spack" >> $SPACK_ROOT/etc/spack/repos.yaml -## Setup our environment definition -COPY spack.yaml /opt/spack-environment/spack.yaml - ## Install the software, no garbage collection at this stage ## as this is a raw builder image RUN cd /opt/spack-environment \ @@ -61,7 +61,7 @@ RUN cd /opt/spack-environment && spack env activate . \ #&& spack install \ #&& spack clean -a -## Strip the binaries +## Strip the binaries/DISABLED for builder, do this for release step #RUN find -L /usr/local/* -type f -exec readlink -f '{}' \; | \ # xargs file -i | \ # grep 'charset=binary' | \ @@ -81,7 +81,7 @@ RUN cd /opt/spack-environment \ && spack env activate . \ && export PODIO=`spack find -p podio | grep software | awk '{print $2}'` \ && echo "export PODIO=${PODIO};" >> /etc/profile.d/z10_spack_environment.sh \ - && echo "export BINARY_TAG=x86_64-linux-gcc9-opt" >> /etc/profile.d/z10_spack_environment.sh + && echo "export BINARY_TAG=x86_64-linux-gcc10-opt" >> /etc/profile.d/z10_spack_environment.sh ## make sure we have the entrypoints setup correctly ENTRYPOINT [] diff --git a/containers/builder/spack.yaml b/containers/builder/spack.yaml index af27cfc779f657cf49caf76fb5aa42af545aa76d..0ed51310f6a429e9cc470c64d9ef0743205e5d32 100644 --- a/containers/builder/spack.yaml +++ b/containers/builder/spack.yaml @@ -1,29 +1,31 @@ spack: specs: - - cmake@3.18.1 - - fmt@6.1.2 cxxstd=17 - - spdlog@1.5.0 - - nlohmann-json - - heppdt@3.04.01 - - clhep@2.4.1.3 cxxstd=17 - - cairo+fc+ft+X+pdf+gobject - - eigen@3.3.7 - - python@3.7.8 - - py-pip - - py-numpy - - py-pyyaml - - xrootd@4.12.3 cxxstd=17 +python - - root@6.22.00 cxxstd=17 +fftw +fortran +gdml +http +mlp +pythia8 +root7 +tmva +vc - +xrootd +ssl ^mesa+opengl -llvm -osmesa - - pythia8@8244 - - hepmc3@3.2.2 +python +rootio - - stow@2.2.2 - - podio@master - - geant4@10.6.2 cxxstd=17 +opengl +vecgeom +x11 +qt ^qt +opengl - - dd4hep@1.14.1 +geant4 +assimp +hepmc3 - - acts@1.02.0 +dd4hep +digitization +identification +json +tgeo - - gaudi@34.0 - - dawn@3_91a - - dawncut@1_54a + - cmake@3.18.4 + - fmt@7.1.2 cxxstd=17 + - spdlog@1.5.0 + - nlohmann-json@3.9.1 + - heppdt@3.04.01 + - clhep@2.4.1.3 cxxstd=17 + - eigen@3.3.8 + - python@3.8.6 + - py-pip + - py-numpy + - py-pyyaml + - xrootd@4.12.3 cxxstd=17 +python + - root@6.22.00 cxxstd=17 + +fftw +fortran +gdml +http +mlp +pythia8 + +root7 +tmva +vc +xrootd +ssl ^mesa+opengl + -llvm -osmesa + - pythia8@8303 + - hepmc3@3.2.2 +python +rootio + - stow@2.3.1 + - cairo+fc+ft+X+pdf+gobject + - podio@master + - geant4@10.6.2 cxxstd=17 +opengl +vecgeom +x11 +qt ^qt +opengl + - dd4hep@1.14.1 +geant4 +assimp +hepmc3 +ipo + - acts@2.00.0 +dd4hep +digitization +identification +json +tgeo +ipo + - gaudi@35.0 + - dawn@3_91a + - dawncut@1_54a concretization: together view: /usr/local diff --git a/containers/release/Dockerfile.in b/containers/release/Dockerfile.in index cb21cf8d47ba2b41760752d3ca1fe0bcb2de8cd2..2b3b8c5fe14995ed5af05bf62ca99a02c2326f5f 100644 --- a/containers/release/Dockerfile.in +++ b/containers/release/Dockerfile.in @@ -11,7 +11,7 @@ RUN find -L /usr/local/* -type f -exec readlink -f '{}' \; | \ grep 'x-executable\|x-archive\|x-sharedlib' | \ awk -F: '{print $1}' | xargs strip -s -FROM eicweb.phy.anl.gov:4567/containers/image_recipes/debian_minimal:testing-20201012 +FROM eicweb.phy.anl.gov:4567/containers/image_recipes/debian_minimal:testing-20201117 LABEL maintainer="Sylvester Joosten <sjoosten@anl.gov>" \ name="eic" \ group="eic" \ @@ -21,14 +21,12 @@ LABEL maintainer="Sylvester Joosten <sjoosten@anl.gov>" \ ## @ENV@ will be automatically expanded to auto-load the ## runtime environment -ENV DOCKERFILE_DISTRO=ubuntu \ - DOCKERFILE_DISTRO_VERSION=20201012-testing \ +ENV DOCKERFILE_DISTRO=debian \ + DOCKERFILE_DISTRO_VERSION=20201117-testing \ DEBIAN_FRONTEND=noninteractive \ @ENV@ -## TODO: move this to upstream, as we should have ssh available in -## any dev container -## poppler-utils for pdftoppm, is this is right now now supported by the +## poppler-utils for pdftoppm, is this is right now not supported by the ## Spack version RUN apt-get -yqq update \ && apt-get -yqq install --no-install-recommends \