Skip to content

Commit

Permalink
Add UBI8 support (#229)
Browse files Browse the repository at this point in the history
* update dockerfiles for ubi8

* updates

* update to remove rhel9 repo

* attempt to fix test failure

* fix for test

* Disabled codecov upload

---------

Co-authored-by: Archana-Shinde1 <[email protected]>
  • Loading branch information
cdeepali and Archana-Shinde1 authored Jun 24, 2024
1 parent ea66c70 commit 0fb0dec
Show file tree
Hide file tree
Showing 10 changed files with 192 additions and 12 deletions.
20 changes: 10 additions & 10 deletions .github/workflows/builder-unit-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -68,13 +68,13 @@ jobs:
run: |
pip install -e .
pytest tests/
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v1
with:
file: ./coverage.xml
directory: ./
flags: unittests
env_vars: OS,PYTHON
name: codecov-umbrella
fail_ci_if_error: true
path_to_write_report: ./codecov_report.gz
# - name: Upload coverage to Codecov
# uses: codecov/codecov-action@v1
#with:
#file: ./coverage.xml
#directory: ./
#flags: unittests
#env_vars: OS,PYTHON
#name: codecov-umbrella
#fail_ci_if_error: true
#path_to_write_report: ./codecov_report.gz
4 changes: 2 additions & 2 deletions open_ce/container_build.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,9 @@
from open_ce.inputs import Argument

OPEN_CE_PATH = os.path.abspath(os.path.join(os.path.dirname(__file__), "."))
BUILD_IMAGE_NAME = "builder"
BUILD_IMAGE_NAME = "builder/ubi8"
BUILD_IMAGE_PATH = os.path.join(OPEN_CE_PATH, "images", BUILD_IMAGE_NAME)
BUILD_CUDA_IMAGE_NAME = "builder-cuda"
BUILD_CUDA_IMAGE_NAME = "builder-cuda/ubi8"
BUILD_CUDA_IMAGE_PATH = os.path.join(OPEN_CE_PATH, "images", BUILD_CUDA_IMAGE_NAME)
LOCAL_FILES_PATH = os.path.join(os.path.join(os.getcwd(), "local_files"))

Expand Down
59 changes: 59 additions & 0 deletions open_ce/images/builder-cuda/ubi8/Dockerfile.cuda-12.2
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
FROM docker.io/nvidia/cuda:12.2.2-devel-ubi8

ENV CONDA_HOME=${CONDA_HOME:-/opt/conda}
ENV PATH=$CONDA_HOME/bin:$PATH
ENV CUDA_HOME=/usr/local/cuda

ENV OPEN_CE_CONDA_BUILD=3.22.0
ENV OPEN_CE_CONDA=4.14
ENV OPENSSL_VER=3.*

ENV CICD_GROUP=cicd
ARG GROUP_ID=1500
ENV BUILD_USER=builder
ARG BUILD_ID=1084

ARG LIMIT_BUILD_RESOURCES=0
ENV LIMIT_BUILD_RESOURCES=${LIMIT_BUILD_RESOURCES}

# Remove preinclude system compilers
RUN rpm -e --nodeps --verbose gcc gcc-c++

RUN export ARCH="$(uname -m)" && \
yum repolist && yum install -y rsync openssh-clients diffutils procps git-lfs file psmisc openssl-devel && \
# Create CICD Group
groupadd --non-unique --gid ${GROUP_ID} ${CICD_GROUP} && \
# Adduser Builder
useradd -b /home --non-unique --create-home --gid ${GROUP_ID} --groups wheel \
--uid ${BUILD_ID} --comment "User for Building" ${BUILD_USER} && \
curl -o /tmp/anaconda.sh https://repo.anaconda.com/miniconda/Miniconda3-py310_22.11.1-1-Linux-${ARCH}.sh && \
chmod +x /tmp/anaconda.sh && \
/bin/bash /tmp/anaconda.sh -f -b -p /opt/conda && \
rm -f /tmp/anaconda.sh && \
$CONDA_HOME/bin/conda install -y conda-build=${OPEN_CE_CONDA_BUILD} conda=${OPEN_CE_CONDA} networkx git junit-xml patch && \
$CONDA_HOME/bin/conda config --system --add envs_dirs $CONDA_HOME/envs && \
$CONDA_HOME/bin/conda config --system --add pkgs_dirs $CONDA_HOME/pkgs && \
$CONDA_HOME/bin/conda config --system --set always_yes true && \
$CONDA_HOME/bin/conda config --system --set auto_update_conda false && \
$CONDA_HOME/bin/conda config --system --set notify_outdated_conda false && \
$CONDA_HOME/bin/conda --version && \
$CONDA_HOME/bin/conda install openssl=${OPENSSL_VER} && \
mkdir -p $CONDA_HOME/conda-bld && \
mkdir -p $HOME/.cache && \
echo "export PYTHONPATH=${PYTHONPATH}:$HOME/open_ce" >> ${HOME}/.bashrc && \
echo "export LIMIT_BUILD_RESOURCES=${LIMIT_BUILD_RESOURCES}" >> ${HOME}/.bashrc && \
chown -R ${BUILD_USER}:${CICD_GROUP} ${CONDA_HOME} && \
git config --global http.version HTTP/1.1 && \
git config --global http.postBuffer 157286400


USER ${BUILD_USER}
RUN export PATH="${PATH}" && \
echo "PATH="${PATH}"" >> ${HOME}/.profile && \
mkdir -p $HOME/.cache && \
echo ". $CONDA_HOME/etc/profile.d/conda.sh" >> ${HOME}/.bashrc && \
echo "export PYTHONPATH=${PYTHONPATH}:$HOME/open_ce" >> ${HOME}/.bashrc && \
echo "export LIMIT_BUILD_RESOURCES=${LIMIT_BUILD_RESOURCES}" >> ${HOME}/.bashrc && \
echo "conda activate base" >> ${HOME}/.bashrc && \
git config --global http.version HTTP/1.1 && \
git config --global http.postBuffer 157286400
55 changes: 55 additions & 0 deletions open_ce/images/builder/ubi8/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
FROM registry.access.redhat.com/ubi8/ubi

ENV CONDA_HOME=${CONDA_HOME:-/opt/conda}
ENV PATH=$CONDA_HOME/bin:$PATH

ENV OPEN_CE_CONDA_BUILD=3.22.0
ENV OPEN_CE_CONDA=4.14
ENV OPENSSL_VER=3.*

ENV CICD_GROUP=cicd
ARG GROUP_ID=1500
ENV BUILD_USER=builder
ARG BUILD_ID=1084

ARG LIMIT_BUILD_RESOURCES=0
ENV LIMIT_BUILD_RESOURCES=${LIMIT_BUILD_RESOURCES}

RUN export ARCH="$(uname -m)" && \
yum repolist && yum install -y rsync openssh-clients diffutils procps binutils git-lfs glibc-devel file psmisc openssl-devel && \
# Create CICD Group
groupadd --non-unique --gid ${GROUP_ID} ${CICD_GROUP} && \
# Adduser Builder
useradd -b /home --non-unique --create-home --gid ${GROUP_ID} --groups wheel \
--uid ${BUILD_ID} --comment "User for Building" ${BUILD_USER} && \
curl -o /tmp/anaconda.sh https://repo.anaconda.com/miniconda/Miniconda3-py310_22.11.1-1-Linux-${ARCH}.sh && \
chmod +x /tmp/anaconda.sh && \
/bin/bash /tmp/anaconda.sh -f -b -p /opt/conda && \
rm -f /tmp/anaconda.sh && \
$CONDA_HOME/bin/conda install -y conda-build=${OPEN_CE_CONDA_BUILD} conda=${OPEN_CE_CONDA} networkx git junit-xml patch && \
$CONDA_HOME/bin/conda config --system --add envs_dirs $CONDA_HOME/envs && \
$CONDA_HOME/bin/conda config --system --add pkgs_dirs $CONDA_HOME/pkgs && \
$CONDA_HOME/bin/conda config --system --set always_yes true && \
$CONDA_HOME/bin/conda config --system --set auto_update_conda false && \
$CONDA_HOME/bin/conda config --system --set notify_outdated_conda false && \
$CONDA_HOME/bin/conda --version && \
$CONDA_HOME/bin/conda install openssl=${OPENSSL_VER} && \
mkdir -p $CONDA_HOME/conda-bld && \
mkdir -p $HOME/.cache && \
echo "export PYTHONPATH=${PYTHONPATH}:$HOME/open_ce" >> ${HOME}/.bashrc && \
echo "export LIMIT_BUILD_RESOURCES=${LIMIT_BUILD_RESOURCES}" >> ${HOME}/.bashrc && \
chown -R ${BUILD_USER}:${CICD_GROUP} ${CONDA_HOME} && \
git config --global http.version HTTP/1.1 && \
git config --global http.postBuffer 157286400

USER ${BUILD_USER}
RUN export PATH="${PATH}" && \
echo "PATH="${PATH}"" >> ${HOME}/.profile && \
mkdir -p $HOME/.cache && \
echo ". $CONDA_HOME/etc/profile.d/conda.sh" >> ${HOME}/.bashrc && \
echo "export PYTHONPATH=${PYTHONPATH}:$HOME/open_ce" >> ${HOME}/.bashrc && \
echo "export LIMIT_BUILD_RESOURCES=${LIMIT_BUILD_RESOURCES}" >> ${HOME}/.bashrc && \
echo "conda activate base" >> ${HOME}/.bashrc && \
git config --global http.version HTTP/1.1 && \
git config --global http.postBuffer 157286400

66 changes: 66 additions & 0 deletions open_ce/images/builder/ubi8/Dockerfile-p10
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
FROM registry.access.redhat.com/ubi8/ubi

ENV CONDA_HOME=${CONDA_HOME:-/opt/conda}
ENV PATH=$CONDA_HOME/bin:$PATH

ENV OPEN_CE_CONDA_BUILD=3.22.0
ENV OPEN_CE_CONDA=4.14
ENV OPENSSL_VER=3.*

ENV CICD_GROUP=cicd
ARG GROUP_ID=1500
ENV BUILD_USER=builder
ARG BUILD_ID=1084

ARG LIMIT_BUILD_RESOURCES=0
ENV LIMIT_BUILD_RESOURCES=${LIMIT_BUILD_RESOURCES}

RUN export ARCH="$(uname -m)" && \
yum install -y yum-utils rsync openssh-clients diffutils procps git-lfs gcc-toolset-12 glibc-devel file psmisc libX11-devel openssl openssl-libs openssl-devel && \
yum install -y libtirpc-devel && \
# Create CICD Group
groupadd --non-unique --gid ${GROUP_ID} ${CICD_GROUP} && \
# Adduser Builder
useradd -b /home --non-unique --create-home --gid ${GROUP_ID} --groups wheel \
--uid ${BUILD_ID} --comment "User for Building" ${BUILD_USER} && \
curl -o /tmp/anaconda.sh https://repo.anaconda.com/miniconda/Miniconda3-py310_22.11.1-1-Linux-${ARCH}.sh && \
chmod +x /tmp/anaconda.sh && \
/bin/bash /tmp/anaconda.sh -f -b -p /opt/conda && \
rm -f /tmp/anaconda.sh && \
$CONDA_HOME/bin/conda install -y conda-build=${OPEN_CE_CONDA_BUILD} conda=${OPEN_CE_CONDA} networkx git junit-xml patch && \
$CONDA_HOME/bin/conda config --system --add envs_dirs $CONDA_HOME/envs && \
$CONDA_HOME/bin/conda config --system --add pkgs_dirs $CONDA_HOME/pkgs && \
$CONDA_HOME/bin/conda config --system --set always_yes true && \
$CONDA_HOME/bin/conda config --system --set auto_update_conda false && \
$CONDA_HOME/bin/conda config --system --set notify_outdated_conda false && \
$CONDA_HOME/bin/conda config --system --add create_default_packages openssl=${OPENSSL_VER} && \
$CONDA_HOME/bin/conda --version && \
$CONDA_HOME/bin/conda install openssl=${OPENSSL_VER} && \
mkdir -p $CONDA_HOME/conda-bld && \
mkdir -p $HOME/.cache && \
echo "export PYTHONPATH=${PYTHONPATH}:$HOME/open_ce" >> ${HOME}/.bashrc && \
echo "export LIMIT_BUILD_RESOURCES=${LIMIT_BUILD_RESOURCES}" >> ${HOME}/.bashrc && \
export PATH="/opt/rh/gcc-toolset-12/root/usr/bin:${PATH}" && \
export GCC_HOME="/opt/rh/gcc-toolset-12/root/usr" && \
echo "PATH="${PATH}"" >> ${HOME}/.profile && \
echo "PATH="${PATH}"" >> ${HOME}/.bashrc && \
echo "GCC_HOME="${GCC_HOME}"" >> ${HOME}/.bashrc && \
chown -R ${BUILD_USER}:${CICD_GROUP} ${CONDA_HOME} && \
git config --global http.version HTTP/1.1 && \
git config --global http.postBuffer 157286400


USER ${BUILD_USER}
RUN export PATH="/opt/rh/gcc-toolset-12/root/usr/bin:${PATH}" && \
export GCC_HOME="/opt/rh/gcc-toolset-12/root/usr" && \
echo "PATH="${PATH}"" >> ${HOME}/.profile && \
echo "PATH="${PATH}"" >> ${HOME}/.bashrc && \
echo "GCC_HOME="${GCC_HOME}"" >> ${HOME}/.bashrc && \
mkdir -p $HOME/.cache && \
echo ". $CONDA_HOME/etc/profile.d/conda.sh" >> ${HOME}/.bashrc && \
echo "export PYTHONPATH=${PYTHONPATH}:$HOME/open_ce" >> ${HOME}/.bashrc && \
echo "export LIMIT_BUILD_RESOURCES=${LIMIT_BUILD_RESOURCES}" >> ${HOME}/.bashrc && \
echo "conda activate base" >> ${HOME}/.bashrc && \
git config --global http.version HTTP/1.1 && \
git config --global http.postBuffer 157286400

File renamed without changes.
File renamed without changes.
File renamed without changes.

0 comments on commit 0fb0dec

Please sign in to comment.