Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 13 additions & 10 deletions Docker/github_ci_dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
FROM ubuntu:24.04 AS base
ARG LLVM=20
FROM ubuntu:26.04 AS base
ARG LLVM=22

RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \
build-essential \
Expand All @@ -11,9 +11,9 @@
dh-python \
clang-${LLVM} \
clang-tools-${LLVM} \
gcc-14 \
g++-14 \
gfortran-14 \
gcc-16 \
g++-16 \
gfortran-16 \
git \
hdf5-tools \
libboost-dev \
Expand Down Expand Up @@ -75,21 +75,24 @@
ENV MKL_NUM_THREADS=1
ENV OMPI_ALLOW_RUN_AS_ROOT=1
ENV OMPI_ALLOW_RUN_AS_ROOT_CONFIRM=1
ENV OMPI_MCA_rmaps_base_oversubscribe="yes"
# OpenMPI 5 moved mapping/oversubscribe from ORTE to PRRTE; the old
# OMPI_MCA_rmaps_base_oversubscribe is ignored and np>cores would fail with
# "not enough slots". PRRTE also fixes the concurrent-mpirun session-dir race.
ENV PRTE_MCA_rmaps_default_mapping_policy=:oversubscribe
ARG NCORES=8

# create source dirs
RUN cd / && mkdir -p triqs && mkdir -p source

ENV PYTHON_VERSION=3.12 \
CC=gcc-14 CXX=g++-14 \
ENV PYTHON_VERSION=3.14 \
CC=gcc-16 CXX=g++-16 \
CLANG_CC=clang-${LLVM} CLANG_CXX=clang++-${LLVM}
# triqs
ENV CPATH=/triqs/include:${CPATH} \

Check warning on line 91 in Docker/github_ci_dockerfile

View workflow job for this annotation

GitHub Actions / build-and-push-image (github_ci)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$CMAKE_PREFIX_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 91 in Docker/github_ci_dockerfile

View workflow job for this annotation

GitHub Actions / build-and-push-image (github_ci)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$PYTHONPATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 91 in Docker/github_ci_dockerfile

View workflow job for this annotation

GitHub Actions / build-and-push-image (github_ci)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 91 in Docker/github_ci_dockerfile

View workflow job for this annotation

GitHub Actions / build-and-push-image (github_ci)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 91 in Docker/github_ci_dockerfile

View workflow job for this annotation

GitHub Actions / build-and-push-image (github_ci)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$CPATH' (did you mean $PATH?) More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/
PATH=/triqs/bin:${PATH} \
LIBRARY_PATH=/triqs/lib:${LIBRARY_PATH} \
LD_LIBRARY_PATH=/triqs/lib:${LD_LIBRARY_PATH} \
PYTHONPATH=/triqs/lib/python3.12/site-packages:/triqs/lib/python3.12/dist-packages:${PYTHONPATH} \
PYTHONPATH=/triqs/lib/python${PYTHON_VERSION}/site-packages:/triqs/lib/python${PYTHON_VERSION}/dist-packages:${PYTHONPATH} \
CMAKE_PREFIX_PATH=/triqs/share/cmake:${CMAKE_PREFIX_PATH} \
CMAKE_BUILD_PARALLEL_LEVEL=${NCORES} \
CTEST_OUTPUT_ON_FAILURE=1 \
Expand Down Expand Up @@ -158,7 +161,7 @@
&& make -j$NCORES && ctest -j$NCORES && make install

# install sparse-ir into triqs pythonpath
RUN pip install --no-deps --target /triqs/lib/python3.12/site-packages sparse-ir xprec
RUN pip install --no-deps --break-system-packages --target /triqs/lib/python${PYTHON_VERSION}/site-packages sparse-ir xprec

# remove source
RUN cd / && rm -rf source
16 changes: 10 additions & 6 deletions Docker/openmpi_dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
FROM --platform=linux/amd64 ubuntu:24.04 AS base
ARG LLVM=20
FROM --platform=linux/amd64 ubuntu:26.04 AS base

Check warning on line 1 in Docker/openmpi_dockerfile

View workflow job for this annotation

GitHub Actions / build-and-push-image (openmpi)

FROM --platform flag should not use a constant value

FromPlatformFlagConstDisallowed: FROM --platform flag should not use constant value "linux/amd64" More info: https://docs.docker.com/go/dockerfile/rule/from-platform-flag-const-disallowed/

Check warning on line 1 in Docker/openmpi_dockerfile

View workflow job for this annotation

GitHub Actions / build-and-push-image (openmpi)

FROM --platform flag should not use a constant value

FromPlatformFlagConstDisallowed: FROM --platform flag should not use constant value "linux/amd64" More info: https://docs.docker.com/go/dockerfile/rule/from-platform-flag-const-disallowed/
ARG LLVM=22

# This platform includes dependencies for building docs
RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
Expand All @@ -16,6 +16,7 @@
debhelper \
dh-python \
g++ \
g++-16 \
gfortran \
git \
hdf5-tools \
Expand Down Expand Up @@ -90,9 +91,9 @@
# && rm -rf openmpi-4.1.5.tar.gz openmpi-4.1.5

# install sparse-ir into triqs pythonpath
RUN pip install --no-deps --target /triqs/lib/python3.12/site-packages sparse-ir xprec
RUN pip install --no-deps --break-system-packages --target /triqs/lib/python3.14/site-packages sparse-ir xprec

ENV PYTHON_VERSION=3.12 \
ENV PYTHON_VERSION=3.14 \
CC=clang-${LLVM} CXX=clang++-${LLVM} CXXFLAGS="-stdlib=libc++"
RUN update-alternatives --install /usr/bin/clang clang /usr/bin/clang-${LLVM} 60 --slave /usr/bin/clang++ clang++ /usr/bin/clang++-${LLVM} --slave /usr/bin/clang-cpp clang-cpp /usr/bin/clang-cpp-${LLVM}

Expand All @@ -102,7 +103,10 @@
ENV MKL_THREADING_LAYER=SEQUENTIAL
ENV OMPI_ALLOW_RUN_AS_ROOT=1
ENV OMPI_ALLOW_RUN_AS_ROOT_CONFIRM=1
ENV OMPI_MCA_rmaps_base_oversubscribe="yes"
# OpenMPI 5 moved mapping/oversubscribe from ORTE to PRRTE; the old
# OMPI_MCA_rmaps_base_oversubscribe is ignored and np>cores would fail with
# "not enough slots". PRRTE also fixes the concurrent-mpirun session-dir race.
ENV PRTE_MCA_rmaps_default_mapping_policy=:oversubscribe
ARG NCORES=4

# create source dirs
Expand Down Expand Up @@ -156,11 +160,11 @@
FROM base AS pkgs

# triqs
ENV CPATH=/triqs/include:/usr/include/mkl:${CPATH} \

Check warning on line 163 in Docker/openmpi_dockerfile

View workflow job for this annotation

GitHub Actions / build-and-push-image (openmpi)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$CMAKE_PREFIX_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 163 in Docker/openmpi_dockerfile

View workflow job for this annotation

GitHub Actions / build-and-push-image (openmpi)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$PYTHONPATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 163 in Docker/openmpi_dockerfile

View workflow job for this annotation

GitHub Actions / build-and-push-image (openmpi)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LD_LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 163 in Docker/openmpi_dockerfile

View workflow job for this annotation

GitHub Actions / build-and-push-image (openmpi)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$LIBRARY_PATH' More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/

Check warning on line 163 in Docker/openmpi_dockerfile

View workflow job for this annotation

GitHub Actions / build-and-push-image (openmpi)

Variables should be defined before their use

UndefinedVar: Usage of undefined variable '$CPATH' (did you mean $PATH?) More info: https://docs.docker.com/go/dockerfile/rule/undefined-var/
PATH=/triqs/bin:${PATH} \
LIBRARY_PATH=/triqs/lib:${LIBRARY_PATH} \
LD_LIBRARY_PATH=/triqs/lib:${LD_LIBRARY_PATH} \
PYTHONPATH=/triqs/lib/python3.12/site-packages:/triqs/lib/python3.12/dist-packages:${PYTHONPATH} \
PYTHONPATH=/triqs/lib/python${PYTHON_VERSION}/site-packages:/triqs/lib/python${PYTHON_VERSION}/dist-packages:${PYTHONPATH} \
CMAKE_PREFIX_PATH=/triqs/share/cmake:${CMAKE_PREFIX_PATH} \
CMAKE_BUILD_PARALLEL_LEVEL=${NCORES} \
CTEST_OUTPUT_ON_FAILURE=1 \
Expand Down