File Dockerfile of Package uyuni-master-base

# Defines the tag for OBS and build script builds:
#!BuildTag: uyuni-master-base
# Use repositories defined in OBS for installing packages
#!UseOBSRepositories
FROM uyuni-master-root

# Install packages required to run both the python and the Java tests

# Packages required to run spacewalk-setup inside of the container
RUN zypper --non-interactive in \
        perl \
        perl-Params-Validate \
        perl-Mail-RFC822-Address \
        perl-XML-LibXML \
        perl-XML-SAX \
        perl-DateTime \
        perl-Frontier-RPC \
        perl-libwww-perl \
        perl-Net-LibIDN \
        perl-Satcon \
        perl-Term-Size \
        perl-Term-Completion \
        perl-DBI \
        which \
        timezone \
        aaa_base \
        net-tools

# Packages required to run the python unit tests
RUN zypper --non-interactive in \
        python3-dateutil \
        python3-debian \
        python3-dmidecode \
        python3-ethtool \
        python3-gobject2 \
        python3-gpgme \
        python3-gzipstream \
        python3-iniparse \
        python3-newt \
        python3-python-pam \
        python3-psycopg2 \
        python3-pyOpenSSL \
        python3-pycrypto \
        python3-pycurl \
        python3-selinux \
        python3-simplejson \
        python3-urlgrabber \
        python3-xml \
        python3-rpm

# Packages required to run the Java unit tests and java checkstyle
RUN zypper --non-interactive in ant \
        ant-junit \
        ant-junit5 \
        xerces-j2 \
        obs-to-maven \
        apache-ivy \
        java-17-openjdk-devel \
        pam \
        sudo \
        tar \
        system-user-wwwrun \
        system-user-mail

# Packages required to run Github actions for nodejs and ruby checkstyles and lints
RUN zypper --non-interactive in ruby git nodejs npm yarn

# Required by GitHub actions/checkout@v2
RUN zypper --non-interactive in gzip

# add schema RPMs for migration tests
ADD susemanager-schema-4.3.8-1.3.uyuni1.noarch.rpm /root/susemanager-schema-4.3.8-1.3.uyuni1.noarch.rpm
ADD susemanager-schema-utility-4.3.8-1.3.uyuni1.noarch.rpm /root/susemanager-schema-utility-4.3.8-1.3.uyuni1.noarch.rpm
ADD uyuni-reportdb-schema-4.3.1-1.3.uyuni1.noarch.rpm /root/uyuni-reportdb-schema-4.3.1-1.3.uyuni1.noarch.rpm

ADD susemanager-schema-5.1.6-150700.1.3.noarch.rpm /root/susemanager-schema-5.1.6-150700.1.3.noarch.rpm
ADD susemanager-schema-utility-5.1.6-150700.1.3.noarch.rpm /root/susemanager-schema-utility-5.1.6-150700.1.3.noarch.rpm
ADD uyuni-reportdb-schema-5.1.4-150700.1.3.noarch.rpm /root/uyuni-reportdb-schema-5.1.4-150700.1.3.noarch.rpm

# Create fake filesystem entries required to run spacewalk-setup
ADD create_fake_filesystem_entries.sh /root/create_fake_filesystem_entries.sh
RUN chmod +x /root/create_fake_filesystem_entries.sh
RUN /root/create_fake_filesystem_entries.sh

# Create a tomcat user - this is required later by spacewalk-setup
RUN useradd tomcat

ENV PYTHONPATH /manager/client/rhel/rhnlib/:/manager/client/rhel/rhn-client-tools/src
ENV PERLLIB /manager/spacewalk/setup/lib/:/manager/web/modules/rhn/:/manager/web/modules/pxt/
ENV PATH /manager/schema/spacewalk/:/manager/spacewalk/setup/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
openSUSE Build Service is sponsored by