Something went wrong on our end
Select Git revision
instabilities.py
-
Gamelin Alexis authoredGamelin Alexis authored
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
Dockerfile 3.13 KiB
FROM gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/dev-docker-tools/dev-el6-gcc44
LABEL maintainer="Patrick Madela <patrick.madela@synchrotron-soleil.fr"
ARG PYTHON_VERSION=3.6.13 \
CONAN_VERSION=2.0.13 \
CMAKE_VERSION=3.27.7 \
GIT_VERSION=2.39.2 \
DEVTOOLS_ROOT=/usr/Local/devtools \
OS=linux \
ARCH=x86_64
ENV PYTHON_ROOT=${DEVTOOLS_ROOT}/python-${PYTHON_VERSION}-${OS}-${ARCH} \
CONAN_ROOT=${DEVTOOLS_ROOT}/conan-${CONAN_VERSION}-${OS}-${ARCH} \
CMAKE_ROOT=${DEVTOOLS_ROOT}/cmake-${CMAKE_VERSION}-${OS}-${ARCH} \
GIT_ROOT=${DEVTOOLS_ROOT}/git-${GIT_VERSION}-${OS}-${ARCH} \
PATH=${DEVTOOLS_ROOT}/bin:${DEVTOOLS_ROOT}/python-${PYTHON_VERSION}-${OS}-${ARCH}/bin:${DEVTOOLS_ROOT}/conan-${CONAN_VERSION}-${OS}-${ARCH}:${DEVTOOLS_ROOT}/cmake-${CMAKE_VERSION}-${OS}-${ARCH}/bin:${DEVTOOLS_ROOT}/git-${GIT_VERSION}-${OS}-${ARCH}/bin:${PATH} \
LD_LIBRARY_PATH=${DEVTOOLS_ROOT}/python-${PYTHON_VERSION}-${OS}-${ARCH}/lib \
CXX=/usr/bin/g++ \
CC=/usr/bin/gcc
RUN groupadd 1001 -g 1001 \
&& groupadd 1000 -g 1000 \
&& groupadd 2000 -g 2000 \
&& groupadd 999 -g 999 \
&& useradd -ms /bin/bash conan -u 1000 -g 1001 -G 1000,2000,999 \
# Add sudo for conan user
&& printf "conan:conan" | chpasswd \
&& printf "conan ALL= NOPASSWD: ALL\\n" >> /etc/sudoers \
# Create devtools folder
&& mkdir -p ${DEVTOOLS_ROOT} \
# Install python 3
&& curl -s -L -o ${PYTHON_ROOT}.zip https://gitlab.synchrotron-soleil.fr/software-control-system/devtools/python3/-/jobs/artifacts/3.6.13/download?job=linux-x86_64 \
&& unzip -q ${PYTHON_ROOT}.zip -d ${DEVTOOLS_ROOT} \
&& rm ${PYTHON_ROOT}.zip \
# Install git
&& curl -s -L -o ${GIT_ROOT}.zip https://gitlab.synchrotron-soleil.fr/software-control-system/devtools/git/-/jobs/artifacts/2.39.2/download?job=linux-x86_64 \
&& unzip -q ${GIT_ROOT}.zip -d ${DEVTOOLS_ROOT} \
&& rm ${GIT_ROOT}.zip \
# Install cmake from binaries distribution to get recent version without compilation (compilation needs c++11)
&& CMAKE_VERSION_MAJOR_MINOR=$(echo ${CMAKE_VERSION} | sed 's/^\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\)$/\1\.\2/') \
&& curl -s https://cmake.org/files/v${CMAKE_VERSION_MAJOR_MINOR}/cmake-${CMAKE_VERSION}-linux-x86_64.tar.gz | tar -xzf - -C ${DEVTOOLS_ROOT} \
--exclude=bin/cmake-gui \
--exclude=doc/cmake \
--exclude=share/cmake-${CMAKE_VERSION_MAJOR_MINOR}/Help \
--exclude=share/vim \
# Install conan
&& curl -s -L -o ${CONAN_ROOT}.zip https://gitlab.synchrotron-soleil.fr/software-control-system/devtools/conan/-/jobs/artifacts/2.0.13/download?job=linux-x86_64 \
&& unzip -q ${CONAN_ROOT}.zip -d ${DEVTOOLS_ROOT} \
&& rm ${CONAN_ROOT}.zip \
# Install other tools
&& mkdir ${DEVTOOLS_ROOT}/bin \
&& curl -s -L -o ${DEVTOOLS_ROOT}/bin/jq https://github.com/jqlang/jq/releases/download/jq-1.6/jq-linux64 \
&& curl -s -L -o ${DEVTOOLS_ROOT}/bin/yq https://github.com/mikefarah/yq/releases/download/v4.34.2/yq_linux_amd64 \
&& chmod +x ${DEVTOOLS_ROOT}/bin/*
COPY environment /etc/environment
USER conan
WORKDIR /home/conan
RUN mkdir -p /home/conan/.conan