Skip to content
Snippets Groups Projects
Commit b0401c2a authored by Patrick MADELA's avatar Patrick MADELA
Browse files

Add conan-el7-gcc114

parent 70e37d7c
Branches
Tags
No related merge requests found
Checking pipeline status
...@@ -55,6 +55,12 @@ conan-el7-gcc93-x86: ...@@ -55,6 +55,12 @@ conan-el7-gcc93-x86:
include: conan-el7-gcc93-x86/.gitlab-ci.yml include: conan-el7-gcc93-x86/.gitlab-ci.yml
strategy: depend strategy: depend
conan-el7-gcc114:
stage: triggers
trigger:
include: conan-el7-gcc114/.gitlab-ci.yml
strategy: depend
conan-el9-gcc114: conan-el9-gcc114:
stage: triggers stage: triggers
trigger: trigger:
......
...@@ -17,13 +17,15 @@ All images include: ...@@ -17,13 +17,15 @@ All images include:
| conan-el7-gcc48-x86 | CentOS 7 | i686 | gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44) | | conan-el7-gcc48-x86 | CentOS 7 | i686 | gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44) |
| conan-el7-gcc93 | CentOS 7 | x86_64 | gcc (GCC) 9.3.1 20200408 (Red Hat 9.3.1-2) | | conan-el7-gcc93 | CentOS 7 | x86_64 | gcc (GCC) 9.3.1 20200408 (Red Hat 9.3.1-2) |
| conan-el7-gcc93-x86 | CentOS 7 | i686 | gcc (GCC) 9.3.1 20200408 (Red Hat 9.3.1-2) | | conan-el7-gcc93-x86 | CentOS 7 | i686 | gcc (GCC) 9.3.1 20200408 (Red Hat 9.3.1-2) |
| conan-el7-gcc114 | CentOS 7 | x86_64 | gcc (conda-forge gcc 11.4.0-13) 11.4.0 |
| conan-el9-gcc114 | Rocky Linux 9 | x86_64 | gcc (conda-forge gcc 11.4.0-13) 11.4.0 |
## Build ## Build
### To build one image ### To build one image
``` ```
docker-compose -f conan-el6-gcc44\docker-compose.yml build docker-compose -f conan-el6-gcc44/docker-compose.yml build
``` ```
### To build an image manually without docker-compose ### To build an image manually without docker-compose
...@@ -42,12 +44,12 @@ $ docker build --build-arg http_proxy --build-arg https_proxy --build-arg no_pro ...@@ -42,12 +44,12 @@ $ docker build --build-arg http_proxy --build-arg https_proxy --build-arg no_pro
### To launch one with docker-compose ### To launch one with docker-compose
``` ```
$ docker-compose run --rm conan-el6-gcc44 $ docker-compose -f conan-el6-gcc44/docker-compose.yml run --rm conan-el6-gcc44
``` ```
### To launch one x86 with docker-compose ### To launch one x86 with docker-compose
``` ```
$ docker-compose run --rm conan-el6-gcc44-x86 $ docker-compose -f conan-el6-gcc44-x86/docker-compose.yml run --rm conan-el6-gcc44-x86
``` ```
### To launch one container without docker-compose ### To launch one container without docker-compose
......
image: docker:latest
services:
- docker:dind
variables:
NAME: conan-el7-gcc114
CONTAINER_TEST_IMAGE: ${CI_REGISTRY_IMAGE}/${NAME}:$CI_COMMIT_REF_SLUG
CONTAINER_RELEASE_IMAGE: ${CI_REGISTRY_IMAGE}/${NAME}:latest
stages:
- build
- test
- release
before_script:
- echo "${CI_DEPLOY_PASSWORD}" | docker login ${CI_REGISTRY} -u ${CI_DEPLOY_USER} --password-stdin
build:
stage: build
script:
- docker build --pull -t ${CONTAINER_TEST_IMAGE} -f ${NAME}/Dockerfile .
- docker push ${CONTAINER_TEST_IMAGE}
test:
stage: test
script:
- docker run --rm ${CONTAINER_TEST_IMAGE} cat /etc/centos-release | grep "CentOS Linux release 7"
- docker run --rm ${CONTAINER_TEST_IMAGE} uname -m | grep "x86_64"
- docker run --rm ${CONTAINER_TEST_IMAGE} gcc --version | grep "11.4.0"
- docker run --rm ${CONTAINER_TEST_IMAGE} cmake --version | grep "3.31.5"
- docker run --rm ${CONTAINER_TEST_IMAGE} git --version | grep "2.47.1"
- docker run --rm ${CONTAINER_TEST_IMAGE} python --version | grep "3.13.1"
- docker run --rm ${CONTAINER_TEST_IMAGE} conan --version | grep "2.12.1"
- docker run --rm ${CONTAINER_TEST_IMAGE} jq --version | grep "1.7.1"
- docker run --rm ${CONTAINER_TEST_IMAGE} yq --version | grep "3.4.3"
release:
stage: release
script:
- docker pull ${CONTAINER_TEST_IMAGE}
- docker tag ${CONTAINER_TEST_IMAGE} ${CONTAINER_RELEASE_IMAGE}
- docker push ${CONTAINER_RELEASE_IMAGE}
FROM centos:7
LABEL maintainer="Patrick Madela <patrick.madela@synchrotron-soleil.fr"
ENV MAMBA_ROOT_PREFIX=/opt/micromamba
ENV PATH=${MAMBA_ROOT_PREFIX}/bin:$PATH
# Configure micromamba environment
COPY conan-el7-gcc114/environment.yml /tmp/environment.yml
RUN rm -rf /etc/localtime && ln -s /usr/share/zoneinfo/Europe/Paris /etc/localtime \
# Fix Centos repo urls
&& sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-* \
&& sed -i 's|#\s*baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-* \
&& yum update -y \
&& yum install -y curl bzip2 git \
&& yum clean all \
# Add groups
&& groupadd g1001 -g 1001 \
&& groupadd g1000 -g 1000 \
&& groupadd g2000 -g 2000 \
# Creation of conan user
&& 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 \
# Install micromamba
&& curl -Ls https://micro.mamba.pm/api/micromamba/linux-64/latest | tar -xvj bin/micromamba \
# Install environment with micromamba
&& micromamba create -y -f /tmp/environment.yml && \
rm /tmp/environment.yml
COPY environment /etc/environment
USER conan
WORKDIR /home/conan
# Activate environment when launching command
ENTRYPOINT ["bash", "-c" ,"eval \"$(micromamba shell hook --shell bash)\" && micromamba activate conan-el7-gcc114 && \"$@\"", "-s"]
# Define default shell and activate environment
SHELL ["/bin/bash", "-c"]
RUN echo 'eval "$(micromamba shell hook --shell=bash)"' >> ~/.bashrc && \
echo 'micromamba activate conan-el7-gcc114' >> ~/.bashrc
# Lauch interactive shell by default
CMD ["/bin/bash"]
version: "3.8"
services:
conan-el7-gcc114:
build:
context: ..
dockerfile: conan-el7-gcc114/Dockerfile
args:
- http_proxy
- https_proxy
- no_proxy
image: "gitlab-registry.synchrotron-soleil.fr/software-control-system/containers/conan-docker-tools/conan-el7-gcc114"
container_name: conan-el7-gcc114
tty: true
environment:
- http_proxy
- https_proxy
- no_proxy
name: conan-el7-gcc114
channels:
- conda-forge
dependencies:
- cmake=3.31.5
- conan=2.12.1
- git=2.47.1
- jq=1.7.1
- yq=3.4.3
- gcc=11.4
- gxx=11.4
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment