From: Matthew Newton Date: Tue, 5 Nov 2019 15:01:43 +0000 (+0000) Subject: Add debian10 and centos8 to Jenkins build X-Git-Tag: release_3_0_20~18 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=503a5be0645cba7601f616673f5deee3a0bb1bff;p=thirdparty%2Ffreeradius-server.git Add debian10 and centos8 to Jenkins build --- diff --git a/scripts/jenkins/Jenkinsfile b/scripts/jenkins/Jenkinsfile index 0c5541d92b2..0bac4a3f3f8 100644 --- a/scripts/jenkins/Jenkinsfile +++ b/scripts/jenkins/Jenkinsfile @@ -1,4 +1,4 @@ -platforms = ["ubuntu14", "ubuntu16", "ubuntu18","centos7","debian8","debian9"] +platforms = ["ubuntu14", "ubuntu16", "ubuntu18", "centos7", "centos8", "debian8", "debian9", "debian10"] /* The detectChanges function looks at the last git commit and searches for changes to * "redhat/freeradius.spec" or anything in the "debian" directory. If it diff --git a/scripts/jenkins/README.md b/scripts/jenkins/README.md index fee3f908c29..eab88828872 100644 --- a/scripts/jenkins/README.md +++ b/scripts/jenkins/README.md @@ -31,8 +31,9 @@ The Jenkinsfile currently builds packages for the following platforms: * Ubuntu 18.04 (Bionic Beaver) * Debian 8 (Jessie) * Debian 9 (Stretch) -* Centos 6 -* CentOS 7 +* Debian 10 (Buster) +* CentOS 7 +* CentOS 8 Once complete, the packages are available as artifacts and accessible from the job page by clicking the "Build Artifacts" link or by diff --git a/scripts/jenkins/centos8/Dockerfile b/scripts/jenkins/centos8/Dockerfile new file mode 100644 index 00000000000..166099c62a1 --- /dev/null +++ b/scripts/jenkins/centos8/Dockerfile @@ -0,0 +1,48 @@ +FROM centos:8 + +# Seems to work around https://bugs.centos.org/view.php?id=16655 +RUN rpmkeys --import /etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial + +RUN yum groupinstall -y "Development Tools" +RUN yum install -y rpmdevtools openssl dnf-utils + +# +# Create build directory +# +RUN mkdir -p /usr/local/src/repositories +WORKDIR /usr/local/src/repositories + +# +# Shallow clone the FreeRADIUS source +# +ARG source=https://github.com/FreeRADIUS/freeradius-server.git +ARG release=v3.0.x + +RUN git clone --depth 1 --single-branch --branch ${release} ${source} +WORKDIR freeradius-server +# +# Other requirements +# + +# Use LTB's openldap packages intead of the distribution version to avoid linking against NSS +RUN echo $'[ltb-project]\n\ +name=LTB project packages\n\ +baseurl=https://ltb-project.org/rpm/$releasever/$basearch\n\ +enabled=1\n\ +gpgcheck=1\n\ +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-LTB-project'\ +> /etc/yum.repos.d/ltb-project.repo +RUN rpm --import https://ltb-project.org/lib/RPM-GPG-KEY-LTB-project + +# EPEL repository for freetds and hiredis +RUN yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm +# Currently needed for hiredis: +RUN yum config-manager --enable epel-testing +# For json-c-devel and libpcap-devel ("PowerTools"?!): +RUN yum config-manager --enable PowerTools + +# +# Install build dependencies +# +RUN [ -e redhat/freeradius.spec ] && yum-builddep -y redhat/freeradius.spec + diff --git a/scripts/jenkins/debian10/Dockerfile b/scripts/jenkins/debian10/Dockerfile new file mode 100644 index 00000000000..ce5a9d73932 --- /dev/null +++ b/scripts/jenkins/debian10/Dockerfile @@ -0,0 +1,30 @@ +FROM debian:buster +# +# Install build tools +# +RUN apt-get update +RUN apt-get install -y devscripts equivs git quilt g++-${gccver} + +# +# Create build directory +# +RUN mkdir -p /usr/local/src/repositories +WORKDIR /usr/local/src/repositories + +# +# Shallow clone the FreeRADIUS source +# +ARG source=https://github.com/FreeRADIUS/freeradius-server.git +ARG release=v3.0.x + +RUN git clone --depth 1 --single-branch --branch ${release} ${source} +WORKDIR freeradius-server + +# +# Install build dependencies +# +RUN git checkout ${release}; \ + if [ -e ./debian/control.in ]; then \ + debian/rules debian/control; \ + fi; \ + echo 'y' | mk-build-deps -irt'apt-get -yV' debian/control