Commit 19a07a8b authored by Fabio Luchetti's avatar Fabio Luchetti
Browse files

Add dockerfile for CI builds with no sse support

parent 126542f8
Pipeline #1774903 skipped with stage
#
# Simple EOS Docker file
#
# Version 0.3
FROM centos:7
LABEL maintainer="Elvin Sindrilaru, esindril@cern.ch, CERN 2017"
# Add extra repositories
COPY eos-docker/el-7/*.repo /etc/yum.repos.d/
# Add helper scripts
COPY eos-docker/image_scripts/*.sh /
# Add configuration files for EOS instance
COPY eos-docker/eos.sysconfig /etc/sysconfig/eos
COPY eos-docker/xrd.cf.* eos-docker/krb5.conf /etc/
COPY eos-docker/fuse.eosdockertest.conf /etc/eos/fuse.eosdockertest.conf
COPY eos-docker/fuse.conf /etc/eos/fuse.mount-1.conf
COPY eos-docker/fuse.conf /etc/eos/fuse.mount-2.conf
COPY eos-docker/fstfmd.dict /var/eos/md/
# Add configuration files for forwarding proxy server
COPY eos-docker/xrootd.conf /etc/tmpfiles.d/
COPY eos-docker/xrootd-fwd-proxy.cfg /etc/xrootd/
RUN mkdir /var/tmp/eosxd-cache/ /var/tmp/eosxd-journal/
RUN adduser eos-user
# Docker will aggressively cache the following command, but this is fine, since
# these packages are not updated often.
RUN yum -y --nogpg install \
at autoconf automake \
bzip2 \
centos-release-scl-rh cmake3 compat-libf2c-34 createrepo \
emacs \
gcc-c++ gdb git \
heimdal-server heimdal-workstation \
initscripts \
krb5-server krb5-workstation \
less libacl-devel libgfortran libtool \
nano \
parallel perl-Test-Harness python2 python2-pip python3 python3-pip \
redhat-lsb-core rpm-build \
sudo \
vim \
xauth \
yum-plugin-priorities \
&& yum clean all
# Install new EOS from created repo - the ADD command will reset the docker cache,
# and any commands after that point will be uncached.
ENV EOSREPODIR="/repo/eos"
ADD cc7_no_sse_artifacts ${EOSREPODIR}
# Special packages, must be installed un-cached.
RUN createrepo ${EOSREPODIR} \
&& echo -e "[eos-artifacts]\nname=EOS artifacts\nbaseurl=file://${EOSREPODIR}\ngpgcheck=0\nenabled=1\npriority=1" >> /etc/yum.repos.d/eos.repo \
&& yum -y --nogpg install \
davix grid-hammer quarkdb \
eos-archive eos-client eos-debuginfo eos-fuse eos-fusex eos-ns-inspect eos-server eos-test eos-testkeytab \
&& yum clean all
# *************
# NOTE: !UGLY!*
# *************
# This is an ugly hack but the FST ofs.tpc config requires /usr/bin/xrdcp
# and this is provided by the xrootd-client package. With EOS having eos-xrootd
# as dependency the xrdcp program is in /opt/eos/xrootd/bin/xrdcp and the
# xrootd-client package is no longer installed and therefore starting the FSTs
# fails. This happens on CC7 and C8.
RUN yum install -y --nogpg install xrootd-client
# Generate a new forwardable keytab 'eos-test+' to replace the not-forwardable
# one (installed by the eos-testkeytab package).
# This is useful to deploy EOS on Kubernetes clusters running on CERN's Cloud
# Infrastructure; you can remove these lines if you don't need one.
RUN yes | xrdsssadmin -k eos-test del /etc/eos.keytab \
&& yes | xrdsssadmin -u daemon -g daemon -k eos-test+ -n 1234567890123456789 add /etc/eos.keytab \
&& chown daemon:daemon /etc/eos.keytab \
&& chmod 400 /etc/eos.keytab
# Change owner of /var/spool/xrootd directory to daemon
RUN chown daemon:daemon /var/spool/xrootd
ENTRYPOINT ["/bin/bash"]
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment