Module: check_mk
Branch: master
Commit: 49fdfa68b58a0fdc0c4276a9a22f7861cad4d7ef
URL:
http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=49fdfa68b58a0f…
Author: Alex Zurhake <az(a)mathias-kettner.de>
Date: Thu Mar 21 13:26:04 2019 +0100
CMK-CMK-1826: Add sles-12sp4 to new nightly build
Change-Id: I6091a5bcda344b27b988a67ce9134c3b4fe038d7
---
.../gnu-toolchain/bw-build-gnu-toolchain.sh | 4 +-
.../build-nodes/sles-12sp4/Dockerfile | 8 +-
.../infrastructure/os-nodes/sles-12sp4/Dockerfile | 34 ++++++
omd/distros/SLES_12SP4.mk | 116 +++++++++++++++++++++
4 files changed, 156 insertions(+), 6 deletions(-)
diff --git
a/buildscripts/infrastructure/build-nodes/gnu-toolchain/bw-build-gnu-toolchain.sh
b/buildscripts/infrastructure/build-nodes/gnu-toolchain/bw-build-gnu-toolchain.sh
index d4fc51f..16c2c37 100755
--- a/buildscripts/infrastructure/build-nodes/gnu-toolchain/bw-build-gnu-toolchain.sh
+++ b/buildscripts/infrastructure/build-nodes/gnu-toolchain/bw-build-gnu-toolchain.sh
@@ -12,9 +12,7 @@ PREFIX="/opt/gcc-${GCC_VERSION}"
BUILD_DIR=/tmp/build-gcc-toolchain
-#NEXUS="http://nexus.lan.tribe29.com/repository/archives/"
-NEXUS="http://devrechner.lan.mathias-kettner.de:8081/repository/archives/"
-#NEXUS="http://10.9.1.101:8081/repository/archives/"
+NEXUS="http://nexus:8081/repository/archives/"
function download-sources {
# To avoid repeated downloads of the sources + the prerequisites, we
diff --git a/buildscripts/infrastructure/build-nodes/sles-12sp4/Dockerfile
b/buildscripts/infrastructure/build-nodes/sles-12sp4/Dockerfile
index 3f2ece0..cc00e4c 100644
--- a/buildscripts/infrastructure/build-nodes/sles-12sp4/Dockerfile
+++ b/buildscripts/infrastructure/build-nodes/sles-12sp4/Dockerfile
@@ -1,8 +1,8 @@
-FROM 10.9.1.101:5010/sles-12sp4-base
+FROM nexus.lan.tribe29.com:5010/sles-12sp4-base
SHELL ["/bin/bash", "-c"]
-RUN zypper addrepo -G
http://10.9.1.101:8081/repository/sles12sp4 sles12sp4 \
+RUN zypper addrepo -G
http://nexus:8081/repository/sles12sp4 sles12sp4 \
&& zypper -n in -y --force-resolution \
awk \
&& zypper -n in -y --force-resolution \
@@ -63,4 +63,6 @@ RUN zypper addrepo -G
http://10.9.1.101:8081/repository/sles12sp4
sles12sp4 \
COPY bw-build-gnu-toolchain.sh /usr/sbin
RUN bw-build-gnu-toolchain.sh -b
-RUN rm /usr/bin/gcc /usr/bin/g++
+RUN rm /usr/bin/gcc /usr/bin/g++ \
+ && ln -s /opt/gcc-8.2.0/bin/gcc-8 /usr/bin/gcc \
+ && ln -s /opt/gcc-8.2.0/bin/g++-8 /usr/bin/g++
diff --git a/buildscripts/infrastructure/os-nodes/sles-12sp4/Dockerfile
b/buildscripts/infrastructure/os-nodes/sles-12sp4/Dockerfile
new file mode 100644
index 0000000..0494ef9
--- /dev/null
+++ b/buildscripts/infrastructure/os-nodes/sles-12sp4/Dockerfile
@@ -0,0 +1,34 @@
+FROM nexus.lan.tribe29.com:5010/sles-12sp4-base
+
+SHELL ["/bin/bash", "-c"]
+
+ARG PACKAGES
+
+RUN zypper addrepo -G
http://nexus:8081/repository/sles12sp4 sles12sp4 \
+ && zypper addrepo -G
http://nexus:8081/repository/sles12spx-web-scripting
web-scripting \
+ && zypper -n --no-gpg-checks in --replacefiles \
+ gawk \
+ && zypper -n --no-gpg-checks in --replacefiles \
+ curl \
+ cyrus-sasl-devel \
+ enchant-devel \
+ git \
+ krb5-devel \
+ libmysqlclient-devel \
+ make \
+ nodejs10 \
+ npm10 \
+ openldap2-devel \
+ python \
+ python-devel \
+ python-pyOpenSSL \
+ python-xml \
+ rrdtool-devel \
+ sudo
+RUN curl
https://bootstrap.pypa.io/get-pip.py -o get-pip.py \
+ && python get-pip.py
+RUN pip install --upgrade setuptools \
+ && pip install
git+https://github.com/pypa/pipenv.git \
+ && zypper -n --no-gpg-checks in --replacefiles \
+ $PACKAGES \
+ && zypper clean -a
diff --git a/omd/distros/SLES_12SP4.mk b/omd/distros/SLES_12SP4.mk
new file mode 100644
index 0000000..84b4c0e
--- /dev/null
+++ b/omd/distros/SLES_12SP4.mk
@@ -0,0 +1,116 @@
+DISTRO_CODE = sles12sp4
+BUILD_PACKAGES =
+BUILD_PACKAGES += tar # needed for "make rpm"
+BUILD_PACKAGES += rpm-devel # needed for "make rpm"
+BUILD_PACKAGES += unzip # unpack src files of packages
+BUILD_PACKAGES += groff # needed for building rrdtool
+BUILD_PACKAGES += libltdl7 # needed for gearman
+BUILD_PACKAGES += libtool # needed for gearman
+BUILD_PACKAGES += boost-devel
+BUILD_PACKAGES += fping
+BUILD_PACKAGES += samba-client # otherwise path to smblient missing in util.pm
+BUILD_PACKAGES += rpcbind # otherwise missing path in util.pm
+BUILD_PACKAGES += bind-utils # check_dns
+BUILD_PACKAGES += freetype2-devel
+BUILD_PACKAGES += gcc
+BUILD_PACKAGES += gcc-c++
+BUILD_PACKAGES += gd-devel
+BUILD_PACKAGES += git
+BUILD_PACKAGES += glib2-devel
+BUILD_PACKAGES += libcurl-devel # needed by perl modules / thruk
+BUILD_PACKAGES += libexpat-devel
+BUILD_PACKAGES += libevent-devel
+BUILD_PACKAGES += libgnutls-devel
+BUILD_PACKAGES += libjpeg62-devel
+BUILD_PACKAGES += libmysqlclient-devel
+BUILD_PACKAGES += libopenssl-devel
+BUILD_PACKAGES += libpng16-devel # Perl::GD
+BUILD_PACKAGES += libXpm-devel # Perl::GD
+BUILD_PACKAGES += libvpx-devel # Perl::GD
+BUILD_PACKAGES += libtiff-devel # Perl::GD
+BUILD_PACKAGES += libuuid-devel
+BUILD_PACKAGES += libxml2-devel
+BUILD_PACKAGES += sqlite3-devel # needed by Python (for sqlite3 module)
+BUILD_PACKAGES += tk-devel # needed by Python (for Tkinter module)
+BUILD_PACKAGES += make
+BUILD_PACKAGES += mysql
+BUILD_PACKAGES += net-snmp
+BUILD_PACKAGES += openldap2-devel
+BUILD_PACKAGES += pango-devel
+BUILD_PACKAGES += patch
+BUILD_PACKAGES += postgresql-devel
+BUILD_PACKAGES += readline-devel
+BUILD_PACKAGES += apache2-devel
+BUILD_PACKAGES += freeradius-client-devel
+BUILD_PACKAGES += libbz2-devel # needed for msitools
+BUILD_PACKAGES += libgsf-devel # needed for msitools
+BUILD_PACKAGES += libpcap-devel # needed buy CMC
+BUILD_PACKAGES += rrdtool-devel # needed for CMC
+BUILD_PACKAGES += libffi-devel # needed for pyOpenSSL (and dependant) compilations
+BUILD_PACKAGES += krb5-devel # needed for pykerberos / requests-kerberos python modules
+BUILD_PACKAGES += flex # needed for heirloom-pkgtools
+BUILD_PACKAGES += openssh # needed for check_by_ssh
+OS_PACKAGES =
+OS_PACKAGES += cronie # needed for sites cron jobs
+OS_PACKAGES += net-tools # traceroute is needed for Check_MK parent scan
+OS_PACKAGES += apache2
+OS_PACKAGES += bind-utils # check_dns
+OS_PACKAGES += curl
+OS_PACKAGES += dialog
+OS_PACKAGES += fping
+OS_PACKAGES += gd
+OS_PACKAGES += graphviz
+OS_PACKAGES += libpng12-0
+OS_PACKAGES += libevent-2_0-5
+OS_PACKAGES += libltdl7
+OS_PACKAGES += libreadline6
+OS_PACKAGES += libuuid1
+OS_PACKAGES += net-snmp
+OS_PACKAGES += pango
+OS_PACKAGES += perl-Net-SNMP
+OS_PACKAGES += perl-SNMP
+OS_PACKAGES += php-fastcgi
+OS_PACKAGES += php-gd
+OS_PACKAGES += php-iconv
+OS_PACKAGES += php-mbstring
+OS_PACKAGES += php-mcrypt
+OS_PACKAGES += php-pear
+OS_PACKAGES += php-sockets
+OS_PACKAGES += php-sqlite
+OS_PACKAGES += php-openssl
+OS_PACKAGES += rsync
+OS_PACKAGES += samba-client
+OS_PACKAGES += rpcbind
+OS_PACKAGES += unzip
+OS_PACKAGES += xinetd
+OS_PACKAGES += xorg-x11-fonts
+OS_PACKAGES += freeradius-client-libs
+OS_PACKAGES += binutils # Needed by Check_MK Agent Bakery
+OS_PACKAGES += rpm-build # Needed by Check_MK Agent Bakery
+OS_PACKAGES += libgio-2_0-0 # needed by msitools/Agent Bakery
+OS_PACKAGES += libgsf-1-114 # needed by msitools/Agent Bakery
+OS_PACKAGES += cpio # needed for Agent bakery (solaris pkgs)
+OS_PACKAGES += poppler-tools # needed for preview of PDF in reporting
+OS_PACKAGES += libpcap1 # needed for ICMP of CMC
+OS_PACKAGES += libffi4 # needed for pyOpenSSL and dependant
+OS_PACKAGES += libjpeg62 # needed by PIL
+OS_PACKAGES += libgthread-2_0-0 # Needed by cmc (rrd library)
+OS_PACKAGES += libpq5
+USERADD_OPTIONS = -M
+ADD_USER_TO_GROUP = gpasswd -a %(user)s %(group)s
+PACKAGE_INSTALL = zypper -n refresh ; zypper -n install
+ACTIVATE_INITSCRIPT = chkconfig --add %s
+APACHE_CONF_DIR = /etc/apache2/conf.d
+APACHE_INIT_NAME = apache2
+APACHE_USER = wwwrun
+APACHE_GROUP = www
+APACHE_BIN = /usr/sbin/httpd2-prefork
+APACHE_CTL = /usr/sbin/apache2ctl
+APACHE_MODULE_DIR = /usr/lib/apache2-prefork
+APACHE_MODULE_DIR_64 = /usr/lib64/apache2-prefork
+HTPASSWD_BIN = /usr/bin/htpasswd2
+PHP_FCGI_BIN = /usr/bin/php-cgi
+APACHE_ENMOD = a2enmod %s
+BECOME_ROOT = su -c
+MOUNT_OPTIONS =
+INIT_CMD = /usr/bin/systemctl %(action)s %(name)s.service