Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • containers/eic_container
  • wdconinc/eic_container
  • tooba/eic_container
3 results
Show changes
Commits on Source (2)
......@@ -63,8 +63,8 @@ workflow:
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
- if: '$CI_PIPELINE_SOURCE == "web"'
- if: '$CI_COMMIT_BRANCH == "master"'
- if: '$CI_COMMIT_BRANCH =~ /^v[0-9]+\.[0-9]+-\(alpha\|beta\|stable\)/' ## main stable branch: vX.Y-stable
- if: '$CI_COMMIT_BRANCH =~ /^v[0-9]+\.[0-9]+-[a-z]+-\(alpha\|beta\|stable\)/' ## special stable branch: vX.Y-acadia-stable (etc)
- if: '$CI_COMMIT_BRANCH =~ /^v[0-9]+\.[0-9]+-(alpha|beta|stable)/' ## main stable branch: vX.Y-stable
- if: '$CI_COMMIT_BRANCH =~ /^v[0-9]+\.[0-9]+-[a-z]+-(alpha|beta|stable)/' ## special stable branch: vX.Y-acadia-stable (etc)
- if: '$CI_COMMIT_TAG =~ /^v[0-9]+\.[0-9]+\.[0-9]+/' ## commit tags start with vX.Y.Z with optional suffix
## plan:
......
......@@ -17,13 +17,13 @@ ENV CLICOLOR_FORCE=1 \
## Install additional packages. Remove the auto-cleanup functionality
## for docker, as we're using the new buildkit cache instead.
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
--mount=type=cache,target=/var/lib/apt/lists,sharing=locked \
rm -f /etc/apt/apt.conf.d/docker-clean \
&& ln -fs /usr/share/zoneinfo/America/New_York /etc/localtime \
&& echo "US/Eastern" > /etc/timezone \
&& apt-get -yqq update \
&& apt-get -yqq install --no-install-recommends \
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
--mount=type=cache,target=/var/lib/apt/lists,sharing=locked <<EOF
rm -f /etc/apt/apt.conf.d/docker-clean
ln -fs /usr/share/zoneinfo/America/New_York /etc/localtime
echo "US/Eastern" > /etc/timezone
apt-get -yqq update
apt-get -yqq install --no-install-recommends \
bc \
bzip2 \
ca-certificates \
......@@ -53,50 +53,40 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
time \
unzip \
vim-nox \
wget \
&& apt-get -yqq autoremove \
&& localedef -i en_US -f UTF-8 en_US.UTF-8
wget
apt-get -yqq autoremove
localedef -i en_US -f UTF-8 en_US.UTF-8
EOF
# Install updated compilers, with support for multiple base images
## Ubuntu: latest gcc from toolchain ppa, latest stable clang
## Debian: default gcc with distribution, latest stable clang
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
--mount=type=cache,target=/var/lib/apt/lists,sharing=locked \
. /etc/os-release \
&& mkdir -p /etc/apt/source.list.d \
&& if [ "${ID}" = "ubuntu" ] ; then \
echo "deb http://ppa.launchpad.net/ubuntu-toolchain-r/ppa/ubuntu/ \
${VERSION_CODENAME} main" \
> /etc/apt/source.list.d/ubuntu-toolchain.list \
&& if [ "${VERSION_ID}" = "20.04" ] ; then GCC="-10" CLANG="-12" ; fi\
&& if [ "${VERSION_ID}" = "22.04" ] ; then GCC="-12" CLANG="-14" ; fi\
&& curl -s https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add -\
&& echo "deb http://apt.llvm.org/${VERSION_CODENAME} \
llvm-toolchain-${VERSION_CODENAME}${CLANG} main" \
> /etc/apt/source.list.d/llvm.list \
&& apt-get -yqq update \
&& apt-get -yqq install \
gcc${GCC} g++${GCC} gfortran${GCC} \
&& apt-get -yqq install \
clang${CLANG} clang-tidy${CLANG} clang-format${CLANG} \
iwyu \
&& update-alternatives --install /usr/bin/gcc gcc \
/usr/bin/gcc${GCC} 100 \
&& update-alternatives --install /usr/bin/g++ g++ \
/usr/bin/g++${GCC} 100 \
&& update-alternatives --install /usr/bin/gfortran gfortran \
/usr/bin/gfortran${GCC} 100 \
&& update-alternatives --install /usr/bin/clang clang \
/usr/bin/clang${CLANG} 100 \
&& update-alternatives --install /usr/bin/clang++ clang++ \
/usr/bin/clang++${CLANG} 100 \
; else \
apt-get -yqq update \
&& apt-get -yqq install \
gcc g++ gfortran \
clang clang-tidy clang-format \
iwyu \
; fi \
&& apt-get -yqq autoremove \
&& gcc --version \
&& clang --version
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
--mount=type=cache,target=/var/lib/apt/lists,sharing=locked <<EOF
. /etc/os-release
mkdir -p /etc/apt/source.list.d
if [ "${ID}" = "ubuntu" ] ; then
echo "deb http://ppa.launchpad.net/ubuntu-toolchain-r/ppa/ubuntu/${VERSION_CODENAME} main" > /etc/apt/source.list.d/ubuntu-toolchain.list
if [ "${VERSION_ID}" = "20.04" ] ; then GCC="-10" CLANG="-12" ; fi
if [ "${VERSION_ID}" = "22.04" ] ; then GCC="-12" CLANG="-14" ; fi
curl -s https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add -
echo "deb http://apt.llvm.org/${VERSION_CODENAME} llvm-toolchain-${VERSION_CODENAME}${CLANG} main" > /etc/apt/source.list.d/llvm.list
apt-get -yqq update
apt-get -yqq install gcc${GCC} g++${GCC} gfortran${GCC}
apt-get -yqq install clang${CLANG} clang-tidy${CLANG} clang-format${CLANG}
apt-get -yqq install iwyu
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc${GCC} 100
update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++${GCC} 100
update-alternatives --install /usr/bin/gfortran gfortran /usr/bin/gfortran${GCC} 100
update-alternatives --install /usr/bin/clang clang /usr/bin/clang${CLANG} 100
update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++${CLANG} 100
else
apt-get -yqq update
apt-get -yqq install gcc g++ gfortran
apt-get -yqq install clang clang-tidy clang-format
apt-get -yqq install iwyu
fi
apt-get -yqq autoremove
gcc --version
clang --version
EOF
This diff is collapsed.
......@@ -17,8 +17,7 @@ ARG jobs=8
## the date
ARG JUG_VERSION=1
RUN cd /tmp \
&& echo " - jug_xl: ${JUG_VERSION}" >> /etc/jug_info
RUN echo " - jug_xl: ${JUG_VERSION}" >> /etc/jug_info
## also install detector/ip geometries into opt
ARG NIGHTLY=''
......@@ -31,11 +30,11 @@ ADD https://api.github.com/repos/eic/ip6 /tmp/ip6.json
ADD https://api.github.com/repos/eic/epic /tmp/epic.json
COPY setup_detectors.py /tmp
COPY --from=detectors detectors.yaml /tmp
RUN --mount=type=cache,target=/ccache/,sharing=locked,id=${TARGETPLATFORM} \
cd /tmp \
&& export CCACHE_DIR=/ccache \
&& [ "z$NIGHTLY" = "z1" ] && NIGHTLY_FLAG="--nightly" || NIGHTLY_FLAG="" \
&& /tmp/setup_detectors.py --prefix /opt/detector --config /tmp/detectors.yaml \
$NIGHTLY_FLAG \
&& ccache --show-stats \
&& rm /tmp/setup_detectors.py
RUN --mount=type=cache,target=/ccache/,sharing=locked,id=${TARGETPLATFORM} <<EOF
cd /tmp
export CCACHE_DIR=/ccache
[ "z$NIGHTLY" = "z1" ] && NIGHTLY_FLAG="--nightly" || NIGHTLY_FLAG=""
/tmp/setup_detectors.py --prefix /opt/detector --config /tmp/detectors.yaml $NIGHTLY_FLAG
ccache --show-stats
rm /tmp/setup_detectors.py
EOF