Add container images supporting RHEL alternatives (#36713)
Add container support for AlmaLinux, Fedora 37 and 38 and Rocky Linux
This commit is contained in:
parent
c87cc5c7b1
commit
cba8d1253d
8 changed files with 267 additions and 1 deletions
8
.github/workflows/build-containers.yml
vendored
8
.github/workflows/build-containers.yml
vendored
|
@ -45,7 +45,13 @@ jobs:
|
||||||
[leap15, 'linux/amd64,linux/arm64,linux/ppc64le', 'opensuse/leap:15'],
|
[leap15, 'linux/amd64,linux/arm64,linux/ppc64le', 'opensuse/leap:15'],
|
||||||
[ubuntu-bionic, 'linux/amd64,linux/arm64,linux/ppc64le', 'ubuntu:18.04'],
|
[ubuntu-bionic, 'linux/amd64,linux/arm64,linux/ppc64le', 'ubuntu:18.04'],
|
||||||
[ubuntu-focal, 'linux/amd64,linux/arm64,linux/ppc64le', 'ubuntu:20.04'],
|
[ubuntu-focal, 'linux/amd64,linux/arm64,linux/ppc64le', 'ubuntu:20.04'],
|
||||||
[ubuntu-jammy, 'linux/amd64,linux/arm64,linux/ppc64le', 'ubuntu:22.04']]
|
[ubuntu-jammy, 'linux/amd64,linux/arm64,linux/ppc64le', 'ubuntu:22.04'],
|
||||||
|
[almalinux8, 'linux/amd64,linux/arm64,linux/ppc64le', 'almalinux:8'],
|
||||||
|
[almalinux9, 'linux/amd64,linux/arm64,linux/ppc64le', 'almalinux:9'],
|
||||||
|
[rockylinux8, 'linux/amd64,linux/arm64', 'rockylinux:8'],
|
||||||
|
[rockylinux9, 'linux/amd64,linux/arm64,linux/ppc64le', 'rockylinux:9'],
|
||||||
|
[fedora37, 'linux/amd64,linux/arm64,linux/ppc64le', 'fedora:37'],
|
||||||
|
[fedora38, 'linux/amd64,linux/arm64,linux/ppc64le', 'fedora:38']]
|
||||||
name: Build ${{ matrix.dockerfile[0] }}
|
name: Build ${{ matrix.dockerfile[0] }}
|
||||||
if: github.repository == 'spack/spack'
|
if: github.repository == 'spack/spack'
|
||||||
steps:
|
steps:
|
||||||
|
|
|
@ -12,6 +12,90 @@
|
||||||
},
|
},
|
||||||
"os_package_manager": "yum_amazon"
|
"os_package_manager": "yum_amazon"
|
||||||
},
|
},
|
||||||
|
"fedora:38": {
|
||||||
|
"bootstrap": {
|
||||||
|
"template": "container/fedora_38.dockerfile",
|
||||||
|
"image": "docker.io/fedora:38"
|
||||||
|
},
|
||||||
|
"os_package_manager": "yum",
|
||||||
|
"build": "spack/fedora38",
|
||||||
|
"build_tags": {
|
||||||
|
"develop": "latest"
|
||||||
|
},
|
||||||
|
"final": {
|
||||||
|
"image": "docker.io/fedora:38"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"fedora:37": {
|
||||||
|
"bootstrap": {
|
||||||
|
"template": "container/fedora_37.dockerfile",
|
||||||
|
"image": "docker.io/fedora:37"
|
||||||
|
},
|
||||||
|
"os_package_manager": "yum",
|
||||||
|
"build": "spack/fedora37",
|
||||||
|
"build_tags": {
|
||||||
|
"develop": "latest"
|
||||||
|
},
|
||||||
|
"final": {
|
||||||
|
"image": "docker.io/fedora:37"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"rockylinux:9": {
|
||||||
|
"bootstrap": {
|
||||||
|
"template": "container/rockylinux_9.dockerfile",
|
||||||
|
"image": "docker.io/rockylinux:9"
|
||||||
|
},
|
||||||
|
"os_package_manager": "yum",
|
||||||
|
"build": "spack/rockylinux9",
|
||||||
|
"build_tags": {
|
||||||
|
"develop": "latest"
|
||||||
|
},
|
||||||
|
"final": {
|
||||||
|
"image": "docker.io/rockylinux:9"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"rockylinux:8": {
|
||||||
|
"bootstrap": {
|
||||||
|
"template": "container/rockylinux_8.dockerfile",
|
||||||
|
"image": "docker.io/rockylinux:8"
|
||||||
|
},
|
||||||
|
"os_package_manager": "yum",
|
||||||
|
"build": "spack/rockylinux8",
|
||||||
|
"build_tags": {
|
||||||
|
"develop": "latest"
|
||||||
|
},
|
||||||
|
"final": {
|
||||||
|
"image": "docker.io/rockylinux:8"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"almalinux:9": {
|
||||||
|
"bootstrap": {
|
||||||
|
"template": "container/almalinux_9.dockerfile",
|
||||||
|
"image": "quay.io/almalinux/almalinux:9"
|
||||||
|
},
|
||||||
|
"os_package_manager": "yum",
|
||||||
|
"build": "spack/almalinux9",
|
||||||
|
"build_tags": {
|
||||||
|
"develop": "latest"
|
||||||
|
},
|
||||||
|
"final": {
|
||||||
|
"image": "quay.io/almalinux/almalinux:9"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"almalinux:8": {
|
||||||
|
"bootstrap": {
|
||||||
|
"template": "container/almalinux_8.dockerfile",
|
||||||
|
"image": "quay.io/almalinux/almalinux:8"
|
||||||
|
},
|
||||||
|
"os_package_manager": "yum",
|
||||||
|
"build": "spack/almalinux8",
|
||||||
|
"build_tags": {
|
||||||
|
"develop": "latest"
|
||||||
|
},
|
||||||
|
"final": {
|
||||||
|
"image": "quay.io/almalinux/almalinux:8"
|
||||||
|
}
|
||||||
|
},
|
||||||
"centos:stream": {
|
"centos:stream": {
|
||||||
"bootstrap": {
|
"bootstrap": {
|
||||||
"template": "container/centos_stream.dockerfile",
|
"template": "container/centos_stream.dockerfile",
|
||||||
|
|
28
share/spack/templates/container/almalinux_8.dockerfile
Normal file
28
share/spack/templates/container/almalinux_8.dockerfile
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
{% extends "container/bootstrap-base.dockerfile" %}
|
||||||
|
{% block install_os_packages %}
|
||||||
|
RUN yum update -y \
|
||||||
|
&& yum install -y \
|
||||||
|
bzip2 \
|
||||||
|
curl \
|
||||||
|
file \
|
||||||
|
findutils \
|
||||||
|
gcc-c++ \
|
||||||
|
gcc \
|
||||||
|
gcc-gfortran \
|
||||||
|
git \
|
||||||
|
gnupg2 \
|
||||||
|
hg \
|
||||||
|
hostname \
|
||||||
|
iproute \
|
||||||
|
make \
|
||||||
|
patch \
|
||||||
|
python3 \
|
||||||
|
python3-pip \
|
||||||
|
python3-setuptools \
|
||||||
|
svn \
|
||||||
|
unzip \
|
||||||
|
zstd \
|
||||||
|
&& pip3 install boto3 \
|
||||||
|
&& rm -rf /var/cache/yum \
|
||||||
|
&& yum clean all
|
||||||
|
{% endblock %}
|
30
share/spack/templates/container/almalinux_9.dockerfile
Normal file
30
share/spack/templates/container/almalinux_9.dockerfile
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
{% extends "container/bootstrap-base.dockerfile" %}
|
||||||
|
{% block install_os_packages %}
|
||||||
|
RUN yum update -y \
|
||||||
|
&& yum install -y epel-release \
|
||||||
|
&& yum update -y \
|
||||||
|
&& yum --enablerepo epel install -y \
|
||||||
|
bzip2 \
|
||||||
|
curl-minimal \
|
||||||
|
file \
|
||||||
|
findutils \
|
||||||
|
gcc-c++ \
|
||||||
|
gcc \
|
||||||
|
gcc-gfortran \
|
||||||
|
git \
|
||||||
|
gnupg2 \
|
||||||
|
hg \
|
||||||
|
hostname \
|
||||||
|
iproute \
|
||||||
|
make \
|
||||||
|
patch \
|
||||||
|
python3 \
|
||||||
|
python3-pip \
|
||||||
|
python3-setuptools \
|
||||||
|
svn \
|
||||||
|
unzip \
|
||||||
|
zstd \
|
||||||
|
&& pip3 install boto3 \
|
||||||
|
&& rm -rf /var/cache/yum \
|
||||||
|
&& yum clean all
|
||||||
|
{% endblock %}
|
29
share/spack/templates/container/fedora_37.dockerfile
Normal file
29
share/spack/templates/container/fedora_37.dockerfile
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
{% extends "container/bootstrap-base.dockerfile" %}
|
||||||
|
{% block install_os_packages %}
|
||||||
|
RUN yum update -y \
|
||||||
|
&& yum install -y \
|
||||||
|
bzip2 \
|
||||||
|
curl \
|
||||||
|
file \
|
||||||
|
findutils \
|
||||||
|
gcc-c++ \
|
||||||
|
gcc \
|
||||||
|
gcc-gfortran \
|
||||||
|
git \
|
||||||
|
gnupg2 \
|
||||||
|
hg \
|
||||||
|
hostname \
|
||||||
|
iproute \
|
||||||
|
make \
|
||||||
|
patch \
|
||||||
|
python3 \
|
||||||
|
python3-pip \
|
||||||
|
python3-setuptools \
|
||||||
|
svn \
|
||||||
|
unzip \
|
||||||
|
zstd \
|
||||||
|
xz \
|
||||||
|
&& pip3 install boto3 \
|
||||||
|
&& rm -rf /var/cache/yum \
|
||||||
|
&& yum clean all
|
||||||
|
{% endblock %}
|
29
share/spack/templates/container/fedora_38.dockerfile
Normal file
29
share/spack/templates/container/fedora_38.dockerfile
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
{% extends "container/bootstrap-base.dockerfile" %}
|
||||||
|
{% block install_os_packages %}
|
||||||
|
RUN yum update -y \
|
||||||
|
&& yum install -y \
|
||||||
|
bzip2 \
|
||||||
|
curl \
|
||||||
|
file \
|
||||||
|
findutils \
|
||||||
|
gcc-c++ \
|
||||||
|
gcc \
|
||||||
|
gcc-gfortran \
|
||||||
|
git \
|
||||||
|
gnupg2 \
|
||||||
|
hg \
|
||||||
|
hostname \
|
||||||
|
iproute \
|
||||||
|
make \
|
||||||
|
patch \
|
||||||
|
python3 \
|
||||||
|
python3-pip \
|
||||||
|
python3-setuptools \
|
||||||
|
svn \
|
||||||
|
unzip \
|
||||||
|
xz \
|
||||||
|
zstd \
|
||||||
|
&& pip3 install boto3 \
|
||||||
|
&& rm -rf /var/cache/yum \
|
||||||
|
&& yum clean all
|
||||||
|
{% endblock %}
|
29
share/spack/templates/container/rockylinux_8.dockerfile
Normal file
29
share/spack/templates/container/rockylinux_8.dockerfile
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
{% extends "container/bootstrap-base.dockerfile" %}
|
||||||
|
{% block install_os_packages %}
|
||||||
|
RUN yum update -y \
|
||||||
|
&& yum install -y \
|
||||||
|
bzip2 \
|
||||||
|
curl \
|
||||||
|
file \
|
||||||
|
findutils \
|
||||||
|
gcc-c++ \
|
||||||
|
gcc \
|
||||||
|
gcc-gfortran \
|
||||||
|
git \
|
||||||
|
gnupg2 \
|
||||||
|
hg \
|
||||||
|
hostname \
|
||||||
|
iproute \
|
||||||
|
make \
|
||||||
|
patch \
|
||||||
|
python3 \
|
||||||
|
python3-pip \
|
||||||
|
python3-setuptools \
|
||||||
|
svn \
|
||||||
|
unzip \
|
||||||
|
xz \
|
||||||
|
zstd \
|
||||||
|
&& pip3 install boto3 \
|
||||||
|
&& rm -rf /var/cache/yum \
|
||||||
|
&& yum clean all
|
||||||
|
{% endblock %}
|
31
share/spack/templates/container/rockylinux_9.dockerfile
Normal file
31
share/spack/templates/container/rockylinux_9.dockerfile
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
{% extends "container/bootstrap-base.dockerfile" %}
|
||||||
|
{% block install_os_packages %}
|
||||||
|
RUN yum update -y \
|
||||||
|
&& yum install -y epel-release \
|
||||||
|
&& yum update -y \
|
||||||
|
&& yum --enablerepo epel install -y \
|
||||||
|
bzip2 \
|
||||||
|
curl-minimal \
|
||||||
|
file \
|
||||||
|
findutils \
|
||||||
|
gcc-c++ \
|
||||||
|
gcc \
|
||||||
|
gcc-gfortran \
|
||||||
|
git \
|
||||||
|
gnupg2 \
|
||||||
|
hg \
|
||||||
|
hostname \
|
||||||
|
iproute \
|
||||||
|
make \
|
||||||
|
patch \
|
||||||
|
python3 \
|
||||||
|
python3-pip \
|
||||||
|
python3-setuptools \
|
||||||
|
svn \
|
||||||
|
unzip \
|
||||||
|
xz \
|
||||||
|
zstd \
|
||||||
|
&& pip3 install boto3 \
|
||||||
|
&& rm -rf /var/cache/yum \
|
||||||
|
&& yum clean all
|
||||||
|
{% endblock %}
|
Loading…
Reference in a new issue