Files
rme-jenkins/Dockerfile-15.1.dockerfile
2026-08-18 21:17:51 +02:00

89 lines
5.4 KiB
Docker
Executable File

# DOCKERFILE SPEC FOR BUILD Container
#
# FOLLOWING ARG NEEDED FROM JENKINSFILE
# ARG BASE_IMG_VERSION
# ARG ADMINSRV
# ARG PROJECT
ARG BASE_URL=harbor.sl.defence-elec.de
ARG BASE_IMG=opensuse/leap
ARG BASE_IMG_VERSION=15.1
FROM ${BASE_URL}/${BASE_IMG}:${BASE_IMG_VERSION}
ARG BASE_IMG_VERSION
ARG USERPASS=ctc
ARG ADMINSRV=10.198.80.75
ARG PROJECT=guez
ENV ADMINSRV_ENV=${ADMINSRV}
ENV REPOVERSION_ENV=${BASE_IMG_VERSION}
ENV PROJECT_ENV=${PROJECT}
LABEL Author='Thore Poggenburg'
LABEL PROJECT=${PROJECT}
LABEL OS_VERSION=${BASE_IMG_VERSION}
RUN groupadd ctc -g 1445\
&& groupadd rme -g 1000\
&& useradd -d /shd/CTC/TOOLS -u 1445 -g ctc -m -p $(openssl passwd -crypt ${USERPASS}) ctc \
&& useradd -d /home/rme -u 1000 -g rme -m -p $(openssl passwd -crypt ${USERPASS}) rme
RUN zypper rr 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20\
&& zypper --non-interactive ar --no-gpgcheck http://${ADMINSRV_ENV}/opensuse/${REPOVERSION_ENV}/distribution/leap/${REPOVERSION_ENV}/repo/oss/ OSS \
&& zypper --non-interactive ar --no-gpgcheck http://${ADMINSRV_ENV}/opensuse/${REPOVERSION_ENV}/distribution/leap/${REPOVERSION_ENV}/repo/non-oss NOSS \
&& zypper --non-interactive ar --no-gpgcheck http://${ADMINSRV_ENV}/opensuse/${REPOVERSION_ENV}/update/leap/${REPOVERSION_ENV}/oss/ UOSS \
&& zypper --non-interactive ar --no-gpgcheck http://${ADMINSRV_ENV}/opensuse/${REPOVERSION_ENV}/update/leap/${REPOVERSION_ENV}/non-oss/ UNOSS \
&& zypper --non-interactive ar --no-gpgcheck http://${ADMINSRV_ENV}/opensuse/${REPOVERSION_ENV}/repositories/KDE:/Qt5/openSUSE_Leap_${REPOVERSION_ENV}/ KDE_QT5 \
&& zypper --non-interactive ar --no-gpgcheck http://${ADMINSRV_ENV}/opensuse/${REPOVERSION_ENV}/repositories/KDE:/Frameworks5/openSUSE_Leap_${REPOVERSION_ENV}/ KDE_Frameworks5 \
&& zypper --non-interactive ar --no-gpgcheck http://${ADMINSRV_ENV}/opensuse/${REPOVERSION_ENV}/repositories/KDE:/Applications/KDE_Frameworks5_openSUSE_Leap_${REPOVERSION_ENV}/ KDE_Applications \
# && zypper --non-interactive ar --no-gpgcheck http://${ADMINSRV_ENV}/opensuse/${REPOVERSION_ENV}/update/leap/${REPOVERSION_ENV}/sle SLE-UPDATE \
&& zypper --non-interactive ar --no-gpgcheck http://${ADMINSRV_ENV}/opensuse/${REPOVERSION_ENV}/repositories/server:/database:/postgresql/openSUSE_Leap_${REPOVERSION_ENV}/ postgresql \
&& zypper --non-interactive refresh
RUN zypper dup -ly --allow-name-change --allow-arch-change --allow-vendor-change \
&& zypper --non-interactive removerepo $(zypper ls | grep repo-backports-debug-update | awk '{ print $1 }') \
&& zypper --non-interactive removerepo $(zypper ls | grep repo-backports-update | awk '{ print $1 }') \
&& zypper --non-interactive removerepo $(zypper ls | grep repo-sle-debug-update | awk '{ print $1 }') \
&& zypper --non-interactive removerepo $(zypper ls | grep repo-sle-update | awk '{ print $1 }')
RUN zypper --non-interactive update -ly --recommends \
&& zypper --non-interactive install -ly openssl curl wget subversion git vim nano python-xml xls2csv bc\
&& zypper --non-interactive install -ly postgresql postgresql-devel libbotan-devel \
&& zypper --non-interactive install -ly json-glib-lang libjson-c* libjson-glib-1_0-0 \
&& zypper --non-interactive install -ly libpopt0 popt popt-devel libpopt0-32bit \
&& zypper --non-interactive install -ly rpm-build python-rpm-macros python3-rpm systemd-rpm-macros \
&& zypper --non-interactive install -ly kernel-devel kernel-firmware-all kernel-default kernel-source patterns-devel-base-devel_kernel kernel-default-devel libjpeg62-devel alsa-devel libpulse-devel \
&& zypper --non-interactive install -ly libevdev2 libdmtx-devel kexec-tools tcl-devel gcc-c++ gdal-devel gsoap-devel libpoppler-devel java-1_8_0-openjdk \
&& zypper --non-interactive install -ly postgresql14 postgresql14-devel libbotan-2-18 python-rpm-generators gtest libOpenSceneGraph131 libOpenSceneGraph131-devel
RUN zypper dup -ly --allow-name-change --allow-arch-change --allow-vendor-change
RUN curl http://${ADMINSRV_ENV}/rme/rde_package_signing_key.pub --output /rde_package_signing_key.pub \
&& rpm --import /rde_package_signing_key.pub \
&& rm -rf /rde_package_signing_key.pub \
&& zypper --non-interactive ar http://${ADMINSRV_ENV}/rme/repository/${PROJECT_ENV}/15.0/ RME_15.0
RUN zypper --non-interactive refresh \
&& zypper --non-interactive install -ly --allow-downgrade --allow-vendor-change ctc_devel_tds_qt5 qt5-kdreports-devel tao-devel
RUN if [[ ${PROJECT_ENV} = guez ]]; \
then zypper --non-interactive install -ly NGS NGS-devel NGS_guez_fom NGS_guez_fom-devel NGS_rtifacade_mak450 liblog4cplus-1_2-5 ${PROJECT_ENV}_dependencies ${PROJECT_ENV}_situation_map-devel ; \
elif [[ ${PROJECT_ENV} = ahtc ]]; \
then zypper --non-interactive install -ly ctc_maia-devel NGS NGS-devel NGS_apache_fom-devel ace-devel ace-xml-devel ${PROJECT_ENV}_dependencies ${PROJECT_ENV}_situation_map-devel; \
elif [[ ${PROJECT_ENV} = qatar ]]; \
then zypper --non-interactive install -ly nano ; \
elif [[ ${PROJECT_ENV} = l400p2]]; \
then zypper --non-interactive install -ly ${PROJECT_ENV}_situation_map-devel nano; \
elif [[ ${PROJECT_ENV} = l400]]; \
then zypper --non-interactive install -ly ${PROJECT_ENV}_situation_map-devel nano; \
else echo "No specific pakets found for project name: ${PROJECT_ENV}"; \
fi
USER ctc
WORKDIR /shd/CTC/TOOLS
CMD ["/bin/bash"]