diff --git a/.github/workflows/gh-ci.yaml b/.github/workflows/gh-ci.yaml index 7e4d6d7..e6179da 100644 --- a/.github/workflows/gh-ci.yaml +++ b/.github/workflows/gh-ci.yaml @@ -24,11 +24,13 @@ jobs: fail-fast: false matrix: image_dir: [coffea-base, coffea-dask] - distro: [almalinux8] + distro: [almalinux8, almalinux9] python: ["3.9", "3.10", "3.11"] exclude: - distro: almalinux8 python: 3.9 + - distro: almalinux9 + python: 3.9 - image_dir: coffea-base python: 3.11 name: ${{ matrix.image_dir }}-${{ matrix.distro }}-${{ matrix.python }} diff --git a/coffea-base/Dockerfile.almalinux8 b/coffea-base/Dockerfile.almalinux8 index 0605531..f42143c 100644 --- a/coffea-base/Dockerfile.almalinux8 +++ b/coffea-base/Dockerfile.almalinux8 @@ -7,7 +7,7 @@ ENV PYTHON_VERSION=${python} RUN yum -y install epel-release \ && yum -y update \ - && yum -y install git curl bzip2 libgfortran which \ + && yum -y install curl git bzip2 libgfortran which zsh emacs vim htop man man-pages \ && curl -sSL https://github.com/conda-forge/miniforge/releases/download/23.3.1-1/Mambaforge-Linux-x86_64.sh -o /tmp/mambaforge.sh \ && bash /tmp/mambaforge.sh -bfp /usr/local \ && rm -rf /tmp/mambaforge.sh \ diff --git a/coffea-base/Dockerfile.almalinux9 b/coffea-base/Dockerfile.almalinux9 new file mode 100644 index 0000000..3577141 --- /dev/null +++ b/coffea-base/Dockerfile.almalinux9 @@ -0,0 +1,28 @@ +FROM almalinux:9 + +ARG python +ARG releasev0 + +ENV PYTHON_VERSION=${python} + +RUN yum -y install epel-release \ + && yum -y update \ + && yum -y --allowerasing install wget git bzip2 libgfortran which zsh emacs vim htop man man-pages \ + && wget -O Miniforge3.sh "https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-$(uname)-$(uname -m).sh" \ + && bash Miniforge3.sh -bfp /usr/local \ + && rm -rf /tmp/mambaforge.sh \ + && mamba update mamba \ + && mamba clean --all --yes \ + && yum clean all + +COPY environment.yaml / + +RUN mamba install --yes python=${PYTHON_VERSION} \ + && mamba env update --file /environment.yaml \ + && mamba clean -y --all + +# Make a symbolic link between installation /opt/conda/etc/grid-security and actual directory /etc/grid-security +RUN ln -s /usr/local/etc/grid-security /etc/grid-security && \ + curl -L https://github.com/opensciencegrid/osg-vo-config/archive/refs/heads/master.tar.gz | \ + tar -xz --strip-components=1 --directory=/etc/grid-security --wildcards */vomses */vomsdir && \ + mv /etc/grid-security/vomses /etc diff --git a/coffea-dask/Dockerfile.almalinux9 b/coffea-dask/Dockerfile.almalinux9 new file mode 100644 index 0000000..6d9948c --- /dev/null +++ b/coffea-dask/Dockerfile.almalinux9 @@ -0,0 +1,28 @@ +FROM almalinux:9 + +ARG python +ARG release + +ENV PYTHON_VERSION=${python} + +RUN yum -y install epel-release \ + && yum -y update \ + && yum -y --allowerasing install wget git bzip2 libgfortran which zsh emacs vim htop man man-pages \ + && wget -O Miniforge3.sh "https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-$(uname)-$(uname -m).sh" \ + && bash Miniforge3.sh -bfp /usr/local \ + && rm -rf /tmp/mambaforge.sh \ + && mamba update mamba \ + && mamba clean --all --yes \ + && yum clean all + +COPY environment.yaml / + +RUN mamba install --yes python=${PYTHON_VERSION} \ + && mamba env update --file /environment.yaml \ + && mamba clean -y --all + +# Make a symbolic link between installation /opt/conda/etc/grid-security and actual directory /etc/grid-security +RUN ln -s /usr/local/etc/grid-security /etc/grid-security && \ + curl -L https://github.com/opensciencegrid/osg-vo-config/archive/refs/heads/master.tar.gz | \ + tar -xz --strip-components=1 --directory=/etc/grid-security --wildcards */vomses */vomsdir && \ + mv /etc/grid-security/vomses /etc