summaryrefslogtreecommitdiff
path: root/share/spack/templates/container
diff options
context:
space:
mode:
Diffstat (limited to 'share/spack/templates/container')
-rw-r--r--share/spack/templates/container/Dockerfile5
-rw-r--r--share/spack/templates/container/bootstrap-base.dockerfile2
-rw-r--r--share/spack/templates/container/centos_7.dockerfile28
-rw-r--r--share/spack/templates/container/centos_stream9.dockerfile (renamed from share/spack/templates/container/centos_stream.dockerfile)6
-rw-r--r--share/spack/templates/container/fedora.dockerfile (renamed from share/spack/templates/container/fedora_38.dockerfile)0
-rw-r--r--share/spack/templates/container/fedora_37.dockerfile29
-rw-r--r--share/spack/templates/container/ubuntu_2404.dockerfile33
7 files changed, 40 insertions, 63 deletions
diff --git a/share/spack/templates/container/Dockerfile b/share/spack/templates/container/Dockerfile
index 2fad37affb..35dc270a22 100644
--- a/share/spack/templates/container/Dockerfile
+++ b/share/spack/templates/container/Dockerfile
@@ -4,7 +4,7 @@
{% endif %}
{% if render_phase.build %}
# Build stage with Spack pre-installed and ready to be used
-FROM {{ build.image }} as builder
+FROM {{ build.image }} AS builder
{% block build_stage %}
{% if os_packages_build %}
@@ -16,7 +16,8 @@ RUN {% if os_package_update %}{{ os_packages_build.update }} \
# What we want to install and how we want to install it
# is specified in a manifest file (spack.yaml)
-RUN mkdir {{ paths.environment }} \
+RUN mkdir -p {{ paths.environment }} && \
+set -o noclobber \
{{ manifest }} > {{ paths.environment }}/spack.yaml
# Install the software, remove unnecessary deps
diff --git a/share/spack/templates/container/bootstrap-base.dockerfile b/share/spack/templates/container/bootstrap-base.dockerfile
index 38de6c8849..a8310a982a 100644
--- a/share/spack/templates/container/bootstrap-base.dockerfile
+++ b/share/spack/templates/container/bootstrap-base.dockerfile
@@ -1,4 +1,4 @@
-FROM {{ bootstrap.image }} as bootstrap
+FROM {{ bootstrap.image }} AS bootstrap
{% block env_vars %}
ENV SPACK_ROOT=/opt/spack \
diff --git a/share/spack/templates/container/centos_7.dockerfile b/share/spack/templates/container/centos_7.dockerfile
deleted file mode 100644
index 2d99ecad91..0000000000
--- a/share/spack/templates/container/centos_7.dockerfile
+++ /dev/null
@@ -1,28 +0,0 @@
-{% extends "container/bootstrap-base.dockerfile" %}
-{% block install_os_packages %}
-RUN yum update -y \
- && yum install -y epel-release \
- && yum update -y \
- && yum --enablerepo epel groupinstall -y "Development Tools" \
- && yum --enablerepo epel install -y \
- curl \
- findutils \
- gcc-c++ \
- gcc \
- gcc-gfortran \
- git \
- gnupg2 \
- hostname \
- hg \
- iproute \
- make \
- patch \
- python3 \
- python3-pip \
- python3-setuptools \
- unzip \
- zstd \
- && pip3 install boto3 \
- && rm -rf /var/cache/yum \
- && yum clean all
-{% endblock %}
diff --git a/share/spack/templates/container/centos_stream.dockerfile b/share/spack/templates/container/centos_stream9.dockerfile
index c11a658fc7..e62c64364f 100644
--- a/share/spack/templates/container/centos_stream.dockerfile
+++ b/share/spack/templates/container/centos_stream9.dockerfile
@@ -1,14 +1,14 @@
{% extends "container/bootstrap-base.dockerfile" %}
{% block install_os_packages %}
RUN dnf update -y \
- # See https://fedoraproject.org/wiki/EPEL#Quickstart for powertools
+ # See https://fedoraproject.org/wiki/EPEL#Quickstart for crb
&& dnf install -y dnf-plugins-core \
- && dnf config-manager --set-enabled powertools \
+ && dnf config-manager --set-enabled crb \
&& dnf install -y epel-release \
&& dnf update -y \
&& dnf --enablerepo epel groupinstall -y "Development Tools" \
&& dnf --enablerepo epel install -y \
- curl \
+ curl-minimal \
findutils \
gcc-c++ \
gcc \
diff --git a/share/spack/templates/container/fedora_38.dockerfile b/share/spack/templates/container/fedora.dockerfile
index 4856ad2197..4856ad2197 100644
--- a/share/spack/templates/container/fedora_38.dockerfile
+++ b/share/spack/templates/container/fedora.dockerfile
diff --git a/share/spack/templates/container/fedora_37.dockerfile b/share/spack/templates/container/fedora_37.dockerfile
deleted file mode 100644
index 6cea1e0cd3..0000000000
--- a/share/spack/templates/container/fedora_37.dockerfile
+++ /dev/null
@@ -1,29 +0,0 @@
-{% extends "container/bootstrap-base.dockerfile" %}
-{% block install_os_packages %}
-RUN dnf update -y \
- && dnf 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/dnf \
- && dnf clean all
-{% endblock %}
diff --git a/share/spack/templates/container/ubuntu_2404.dockerfile b/share/spack/templates/container/ubuntu_2404.dockerfile
new file mode 100644
index 0000000000..1cf4cfb101
--- /dev/null
+++ b/share/spack/templates/container/ubuntu_2404.dockerfile
@@ -0,0 +1,33 @@
+{% extends "container/bootstrap-base.dockerfile" %}
+{% block env_vars %}
+{{ super() }}
+ENV DEBIAN_FRONTEND=noninteractive \
+ LANGUAGE=en_US.UTF-8 \
+ LANG=en_US.UTF-8 \
+ LC_ALL=en_US.UTF-8
+{% endblock %}
+{% block install_os_packages %}
+RUN apt-get -yqq update \
+ && apt-get -yqq upgrade \
+ && apt-get -yqq install --no-install-recommends \
+ build-essential \
+ ca-certificates \
+ curl \
+ file \
+ g++ \
+ gcc \
+ gfortran \
+ git \
+ gnupg2 \
+ iproute2 \
+ locales \
+ make \
+ mercurial \
+ subversion \
+ python3 \
+ python3-boto3 \
+ unzip \
+ zstd \
+ && locale-gen en_US.UTF-8 \
+ && rm -rf /var/lib/apt/lists/*
+{% endblock %}