From 7f4df0e143000ca2100943b7030df4d6b94ec35a Mon Sep 17 00:00:00 2001 From: Oksana Shadura Date: Thu, 13 Jun 2024 10:07:28 +0200 Subject: [PATCH 1/5] Add alma9 flavour (attempt to add standalone Combine after) --- .github/workflows/gh-ci.yaml | 4 +++- coffea-base/Dockerfile.almalinux9 | 29 +++++++++++++++++++++++++++++ coffea-dask/Dockerfile.almalinux9 | 29 +++++++++++++++++++++++++++++ 3 files changed, 61 insertions(+), 1 deletion(-) create mode 100644 coffea-base/Dockerfile.almalinux9 create mode 100644 coffea-dask/Dockerfile.almalinux9 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.almalinux9 b/coffea-base/Dockerfile.almalinux9 new file mode 100644 index 0000000..90b7201 --- /dev/null +++ b/coffea-base/Dockerfile.almalinux9 @@ -0,0 +1,29 @@ +FROM almalinux:9 + +ARG python +ARG releasev0 + +ENV PYTHON_VERSION=${python} + +RUN yum -y install epel-release \ + && yum -y update \ + && yum -y install git curl bzip2 libgfortran which \ + && 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 \ + && mamba update mamba \ + && mamba clean --all --yes \ + && rpm -e --nodeps curl bzip2 \ + && 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..45c16a8 --- /dev/null +++ b/coffea-dask/Dockerfile.almalinux9 @@ -0,0 +1,29 @@ +FROM almalinux:9 + +ARG python +ARG release + +ENV PYTHON_VERSION=${python} + +RUN yum -y install epel-release \ + && yum -y update \ + && yum -y install git curl 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 \ + && mamba update mamba \ + && mamba clean --all --yes \ + && rpm -e --nodeps curl bzip2 \ + && 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 From 93860e8ba8a0a198be65c8eebf739156f870d2eb Mon Sep 17 00:00:00 2001 From: Oksana Shadura Date: Thu, 13 Jun 2024 10:13:51 +0200 Subject: [PATCH 2/5] remove curl and sync deps with base image --- coffea-base/Dockerfile.almalinux8 | 2 +- coffea-base/Dockerfile.almalinux9 | 2 +- coffea-dask/Dockerfile.almalinux9 | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) 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 index 90b7201..b2beb3c 100644 --- a/coffea-base/Dockerfile.almalinux9 +++ b/coffea-base/Dockerfile.almalinux9 @@ -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 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-dask/Dockerfile.almalinux9 b/coffea-dask/Dockerfile.almalinux9 index 45c16a8..99016e3 100644 --- a/coffea-dask/Dockerfile.almalinux9 +++ b/coffea-dask/Dockerfile.almalinux9 @@ -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 zsh emacs vim htop man man-pages \ + && yum -y install 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 \ From fa0140edb7ec72ab578637558ca6b0183050d2cc Mon Sep 17 00:00:00 2001 From: Oksana Shadura Date: Thu, 13 Jun 2024 10:17:13 +0200 Subject: [PATCH 3/5] We need curl for mamba Trying to fix package curl-minimal-7.76.1-29.el9_4.x86_64 from baseos conflicts with curl provided by curl-7.76.1-29.el9_4.x86_64 from baseos --- coffea-base/Dockerfile.almalinux9 | 3 ++- coffea-dask/Dockerfile.almalinux9 | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/coffea-base/Dockerfile.almalinux9 b/coffea-base/Dockerfile.almalinux9 index b2beb3c..38760d8 100644 --- a/coffea-base/Dockerfile.almalinux9 +++ b/coffea-base/Dockerfile.almalinux9 @@ -7,7 +7,8 @@ ENV PYTHON_VERSION=${python} RUN yum -y install epel-release \ && yum -y update \ - && yum -y install git bzip2 libgfortran which zsh emacs vim htop man man-pages \ + && yum -y remove curl-minimal \ + && yum -y --allowerasing 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-dask/Dockerfile.almalinux9 b/coffea-dask/Dockerfile.almalinux9 index 99016e3..be8b8a6 100644 --- a/coffea-dask/Dockerfile.almalinux9 +++ b/coffea-dask/Dockerfile.almalinux9 @@ -7,7 +7,8 @@ ENV PYTHON_VERSION=${python} RUN yum -y install epel-release \ && yum -y update \ - && yum -y install git bzip2 libgfortran which zsh emacs vim htop man man-pages \ + && yum -y remove curl-minimal \ + && yum -y --allowerasing --nobest 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 \ From 2b4ace8825856bc623940d62bec39efa5acf9ea0 Mon Sep 17 00:00:00 2001 From: Oksana Shadura Date: Thu, 13 Jun 2024 12:45:35 +0200 Subject: [PATCH 4/5] Curl installation is broken on alma9 --- coffea-base/Dockerfile.almalinux9 | 5 ++--- coffea-dask/Dockerfile.almalinux9 | 4 ++-- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/coffea-base/Dockerfile.almalinux9 b/coffea-base/Dockerfile.almalinux9 index 38760d8..13f6fd9 100644 --- a/coffea-base/Dockerfile.almalinux9 +++ b/coffea-base/Dockerfile.almalinux9 @@ -7,9 +7,8 @@ ENV PYTHON_VERSION=${python} RUN yum -y install epel-release \ && yum -y update \ - && yum -y remove curl-minimal \ - && yum -y --allowerasing 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 \ + && yum -y --allowerasing install wget git bzip2 libgfortran which zsh emacs vim htop man man-pages \ + && wget 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 \ && mamba update mamba \ diff --git a/coffea-dask/Dockerfile.almalinux9 b/coffea-dask/Dockerfile.almalinux9 index be8b8a6..30b5b18 100644 --- a/coffea-dask/Dockerfile.almalinux9 +++ b/coffea-dask/Dockerfile.almalinux9 @@ -8,8 +8,8 @@ ENV PYTHON_VERSION=${python} RUN yum -y install epel-release \ && yum -y update \ && yum -y remove curl-minimal \ - && yum -y --allowerasing --nobest 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 \ + && yum -y --allowerasing install wget git bzip2 libgfortran which zsh emacs vim htop man man-pages \ + && wget 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 \ && mamba update mamba \ From fc4fa245f2f241e71e4cc7ce4868373aa4a58ab5 Mon Sep 17 00:00:00 2001 From: Oksana Shadura Date: Thu, 13 Jun 2024 12:49:23 +0200 Subject: [PATCH 5/5] Update mamba installation version to latest --- coffea-base/Dockerfile.almalinux9 | 5 ++--- coffea-dask/Dockerfile.almalinux9 | 6 ++---- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/coffea-base/Dockerfile.almalinux9 b/coffea-base/Dockerfile.almalinux9 index 13f6fd9..3577141 100644 --- a/coffea-base/Dockerfile.almalinux9 +++ b/coffea-base/Dockerfile.almalinux9 @@ -8,12 +8,11 @@ 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 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 \ + && 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 \ - && rpm -e --nodeps curl bzip2 \ && yum clean all COPY environment.yaml / diff --git a/coffea-dask/Dockerfile.almalinux9 b/coffea-dask/Dockerfile.almalinux9 index 30b5b18..6d9948c 100644 --- a/coffea-dask/Dockerfile.almalinux9 +++ b/coffea-dask/Dockerfile.almalinux9 @@ -7,14 +7,12 @@ ENV PYTHON_VERSION=${python} RUN yum -y install epel-release \ && yum -y update \ - && yum -y remove curl-minimal \ && yum -y --allowerasing install wget git bzip2 libgfortran which zsh emacs vim htop man man-pages \ - && wget 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 \ + && 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 \ - && rpm -e --nodeps curl bzip2 \ && yum clean all COPY environment.yaml /