Skip to content

Commit

Permalink
Migrate PBS container to rocklinux 8 and openpbs 23.06 (#649)
Browse files Browse the repository at this point in the history
* Replace docker-compose with docker compose

* Migrate PBS container to rockylinux 8 and openpbs 23.06
  • Loading branch information
jacobtomlinson authored Aug 5, 2024
1 parent 5a4b39b commit 37143f8
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 33 deletions.
31 changes: 11 additions & 20 deletions ci/pbs/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,35 +1,26 @@
# inspired from https://github.com/PBSPro/pbspro/blob/v18.1.beta/docker/centos7/
# multi-stage build
# build script will be triggered
FROM centos:7.5.1804 AS builder
# install dependencies for building
RUN yum install -y gcc make rpm-build libtool hwloc-devel libX11-devel \
libXt-devel libedit-devel libical-devel ncurses-devel perl \
postgresql-devel python-devel tcl-devel tk-devel swig expat-devel \
openssl-devel libXext libXft git postgresql-contrib
# get known PBS Pro source code
RUN git clone --branch release_18_1_branch https://github.com/pbspro/pbspro.git /src/pbspro
COPY build.sh /
RUN bash /build.sh

# base image
FROM centos:7.5.1804
LABEL description="PBS Professional Open Source and conda"
FROM rockylinux:8
LABEL description="openpbs and conda"

#The pbs master node name, can be overridden if needed
ENV PBS_MASTER pbs_master
ENV PATH /opt/pbs/bin:/opt/anaconda/bin:$PATH
ENV LANG en_US.UTF-8
ENV LC_ALL en_US.UTF-8

COPY --from=builder /root/rpmbuild/RPMS/x86_64/pbspro-server-*.rpm .
# install pbspro and useful packages
RUN yum install -y pbspro-server-*.rpm curl bzip2 git gcc sudo openssh-server && yum clean all
# install openpbs and useful packages
RUN yum install -y unzip bzip2 git gcc sudo openssh-server && yum clean all
RUN curl -o openpbs.zip https://vcdn.altair.com/rl/OpenPBS/openpbs_23.06.06.rockylinux_8.8.zip && \
unzip openpbs.zip && \
mv openpbs_23.06.06.rockylinux_8.8/openpbs-*.rpm . && \
rm -rf openpbs.zip openpbs_23.06.06.rockylinux_8.8
RUN yum install -y openpbs-debuginfo-*.rpm openpbs-server-*.rpm && yum clean all

# install python
RUN curl -o miniconda.sh https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh && \
bash miniconda.sh -f -b -p /opt/anaconda && \
/opt/anaconda/bin/conda clean -tipy && \
rm -f miniconda.sh

# environment.yml file is copied by CI script. If manually building, you should copy it too from parent directory
COPY environment.yml .
RUN conda env create --file environment.yml
Expand Down
11 changes: 0 additions & 11 deletions ci/pbs/build.sh

This file was deleted.

2 changes: 1 addition & 1 deletion ci/pbs/master-entrypoint.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ hostname=$(hostname)
sed -i "s/PBS_SERVER=.*/PBS_SERVER=$hostname/" $pbs_conf_file
sed -i "s/\$clienthost .*/\$clienthost $hostname/" $mom_conf_file

# start PBS Pro
# start openpbs
/etc/init.d/pbs start

# create default non-root user
Expand Down
2 changes: 1 addition & 1 deletion ci/pbs/slave-entrypoint.sh
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ sed -i "s/PBS_START_MOM=.*/PBS_START_MOM=1/" $pbs_conf_file
echo "\$usecp *:/home/ /home/" >> $mom_conf_file
echo "\$usecp *:/dask-jobqueue/ /tmp/" >> $mom_conf_file

# start PBS Pro
# start openpbs
/etc/init.d/pbs start

# create default non-root user
Expand Down

0 comments on commit 37143f8

Please sign in to comment.