From 80f3a69602ce10f83aa4e556878743c0bd191c38 Mon Sep 17 00:00:00 2001 From: Christian Poessinger Date: Sat, 27 Apr 2019 11:39:20 +0200 Subject: Packages: remove duplicate '-j' statement when building Kernel --- scripts/build-packages | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/build-packages b/scripts/build-packages index cff676ed..3f146bf2 100755 --- a/scripts/build-packages +++ b/scripts/build-packages @@ -234,7 +234,7 @@ pkg_special.append( add_package('frr', url='https://github.com/FRRouting/frr.git kernel_build_cmd = "make x86_64_vyos_defconfig && " \ "echo $(make kernelversion)-amd64-vyos > " + repo_root + "/data/kernel_version && " \ "sed -i 's/\"kernel_version\": \"[0-9].[0-9][0-9].[0-9]*\"/\"kernel_version\": \"'$(make kernelversion)'\"/' " + repo_root + "/data/defaults.json && " \ - "make bindeb-pkg -j8 LOCALVERSION='-amd64-vyos' KDEB_PKGVERSION=$(make kernelversion)-1 -j $(getconf _NPROCESSORS_ONLN)" + "make bindeb-pkg LOCALVERSION='-amd64-vyos' KDEB_PKGVERSION=$(make kernelversion)-1 -j $(getconf _NPROCESSORS_ONLN)" pkg_special.append( add_package('vyos-kernel', branch='linux-vyos-4.19.y', custombuild_cmd=kernel_build_cmd) ) -- cgit v1.2.3 From 9702b3c05c90540de37b4577990d26be5679537f Mon Sep 17 00:00:00 2001 From: Christian Poessinger Date: Sat, 27 Apr 2019 14:41:10 +0200 Subject: Packages: add net-snmp package to build procedure --- docker/Dockerfile | 6 ++++++ scripts/build-packages | 7 +++++++ 2 files changed, 13 insertions(+) diff --git a/docker/Dockerfile b/docker/Dockerfile index beb88053..a4e07d60 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -299,6 +299,12 @@ RUN apt-get update && apt-get install -y \ libnl-genl-3-200 \ libnl-genl-3-dev +# Packages needed for net-snmp +RUN apt-get update && apt-get install -y \ + python-all \ + python2.7-dev \ + libmysqld-dev + # Update live-build RUN echo 'deb http://ftp.debian.org/debian stretch main' | tee -a /etc/apt/sources.list.d/stretch.list && \ apt-get update && apt-get install -y -t stretch \ diff --git a/scripts/build-packages b/scripts/build-packages index 3f146bf2..90d4e212 100755 --- a/scripts/build-packages +++ b/scripts/build-packages @@ -228,6 +228,13 @@ pkg_special.append( add_package('frr', url='https://github.com/FRRouting/frr.git #pkg_special.append( add_package('libyang', url='https://github.com/opensourcerouting/libyang.git', commit='179da47', branch='master', custombuild_cmd=libyang_build_cmd) ) +# +# Net-SNMP +# +# net-snmp conflicts with already installed libsnmp-dev thus we need to build with -d +net_snmp_build_cmd = "dpkg-buildpackage -b -us -uc -tc -d -j$(getconf _NPROCESSORS_ONLN)" +pkg_special.append( add_package('net-snmp', custombuild_cmd=net_snmp_build_cmd) ) + # # Linux (VyOS) Kernel # -- cgit v1.2.3 From a1bb0268650370a317c7effa864a27c59c823c40 Mon Sep 17 00:00:00 2001 From: Kim Hagen Date: Mon, 29 Apr 2019 17:20:02 +0200 Subject: add reprepro deploy script --- docker/Dockerfile | 1 + docker/pkg-build.sh | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 56 insertions(+) create mode 100755 docker/pkg-build.sh diff --git a/docker/Dockerfile b/docker/Dockerfile index a4e07d60..10c6c785 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -330,5 +330,6 @@ RUN echo "$(opam env --root=/opt/opam --set-root)" >> /etc/skel/.bashrc # Cleanup RUN rm -rf /tmp/* +COPY pkg-build.sh /usr/local/bin/pkg-build.sh COPY entrypoint.sh /usr/local/bin/entrypoint.sh ENTRYPOINT ["/usr/local/bin/entrypoint.sh"] diff --git a/docker/pkg-build.sh b/docker/pkg-build.sh new file mode 100755 index 00000000..598917a1 --- /dev/null +++ b/docker/pkg-build.sh @@ -0,0 +1,55 @@ +if [ -z "$1" ]; then + RELEASE=`echo $GIT_BRANCH | sed 's/origin\//* /g' |sed -n 's/^\* \(.*\)$/\1/p'` +else + RELEASE="$1" +fi + +if [ "$RELEASE" == "master" ]; then + RELEASE="current" +fi + +if [ -n "$1" ]; then + RELEASE="$1" +fi + +ARCH=`dpkg --print-architecture` +VYOS_REPO_PATH="/home/sentrium/web/dev.packages.vyos.net/public_html/repositories/$RELEASE/vyos/" + +exit_code () { +rc=$? +if [[ $rc != 0 ]] ; then + exit $rc +fi +} + +echo $RELEASE + +ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no khagen@dev.packages.vyos.net -t "bash --login -c 'mkdir -p ~/VyOS/$RELEASE/$ARCH'" +exit_code + +scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no ../*.deb khagen@dev.packages.vyos.net:~/VyOS/$RELEASE/$ARCH/ +exit_code + +for PACKAGE in `ls ../*.deb`; +do + PACKAGE=`echo $PACKAGE| cut -d'/' -f 2` + SUBSTRING=`echo $PACKAGE| cut -d'_' -f 1` + if [[ "$PACKAGE" == *_all* ]]; then + ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no khagen@dev.packages.vyos.net -t "uncron-add 'reprepro -v -b ${VYOS_REPO_PATH} remove ${RELEASE} ${SUBSTRING}'" + exit_code + else + ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no khagen@dev.packages.vyos.net -t "uncron-add 'reprepro -v -b ${VYOS_REPO_PATH} -A $ARCH remove $RELEASE $SUBSTRING'" + exit_code + fi + ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no khagen@dev.packages.vyos.net -t "uncron-add 'reprepro -v -b ${VYOS_REPO_PATH} deleteunreferenced'" + exit_code + if [[ "$PACKAGE" == *_all* ]]; then + ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no khagen@dev.packages.vyos.net -t "uncron-add 'reprepro -v -b ${VYOS_REPO_PATH} includedeb $RELEASE ~/VyOS/$RELEASE/$ARCH/$PACKAGE'" + exit_code + else + ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no khagen@dev.packages.vyos.net -t "uncron-add 'reprepro -v -b ${VYOS_REPO_PATH} -A $ARCH includedeb $RELEASE ~/VyOS/$RELEASE/$ARCH/$PACKAGE'" + exit_code + fi +done + +rm -f ../*.deb -- cgit v1.2.3 From 01fd8dfdec8278e63f43502da44b4e7f8d0bf9e5 Mon Sep 17 00:00:00 2001 From: Kim Date: Fri, 3 May 2019 14:23:18 +0200 Subject: use bash as the shell for make --- Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/Makefile b/Makefile index 628574e2..534077b4 100644 --- a/Makefile +++ b/Makefile @@ -1,3 +1,4 @@ +SHELL := /bin/bash build_dir := build .PHONY: all -- cgit v1.2.3 From 8984e91e89191a5092a0d4ad028ebf0bb0f69f9d Mon Sep 17 00:00:00 2001 From: Kim Hagen Date: Fri, 3 May 2019 15:49:21 +0200 Subject: Revert "use bash as the shell for make" This reverts commit 01fd8dfdec8278e63f43502da44b4e7f8d0bf9e5. --- Makefile | 1 - 1 file changed, 1 deletion(-) diff --git a/Makefile b/Makefile index 534077b4..628574e2 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,3 @@ -SHELL := /bin/bash build_dir := build .PHONY: all -- cgit v1.2.3 From 396b8265144186d7d4292b24d76a328700034d62 Mon Sep 17 00:00:00 2001 From: Kim Hagen Date: Fri, 3 May 2019 15:49:40 +0200 Subject: Revert "Makefile: proper handle 'make iso' error codes" This reverts commit 2ffff339c5515280a1926d2ee134d5d2c7cdbcfc. --- Makefile | 4 ---- 1 file changed, 4 deletions(-) diff --git a/Makefile b/Makefile index 628574e2..3bfa9597 100644 --- a/Makefile +++ b/Makefile @@ -28,13 +28,9 @@ prepare: .ONESHELL: iso: check_build_config clean prepare @set -e - @set -o pipefail @echo "It's not like I'm building this specially for you or anything!" cd $(build_dir) lb build 2>&1 | tee build.log - if [ "$?" != "0" ]; then - exit 1 - fi cd .. @scripts/copy-image -- cgit v1.2.3 From b528142fcae71e79e4ebc16219e3705e78a45e03 Mon Sep 17 00:00:00 2001 From: Christian Poessinger Date: Fri, 3 May 2019 22:56:47 +0200 Subject: Docker: add additional dependencies for Debian keepalived repo --- docker/Dockerfile | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/docker/Dockerfile b/docker/Dockerfile index 10c6c785..7cf7e42d 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -296,8 +296,12 @@ RUN apt-get update && apt-get install -y \ RUN apt-get update && apt-get install -y \ libnl-3-200 \ libnl-3-dev \ + libnl-nf-3-200 \ + libnl-nf-3-dev \ + libipset-dev \ libnl-genl-3-200 \ - libnl-genl-3-dev + libnl-genl-3-dev \ + libpopt-dev # Packages needed for net-snmp RUN apt-get update && apt-get install -y \ -- cgit v1.2.3 From b9c508b9b0d0e93f2026bb7facd04706c0f2231f Mon Sep 17 00:00:00 2001 From: Christian Poessinger Date: Fri, 3 May 2019 23:02:40 +0200 Subject: Packages: add keepalived 2.0.10 to build procedure --- scripts/build-packages | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/scripts/build-packages b/scripts/build-packages index 90d4e212..c05b8c70 100755 --- a/scripts/build-packages +++ b/scripts/build-packages @@ -228,6 +228,14 @@ pkg_special.append( add_package('frr', url='https://github.com/FRRouting/frr.git #pkg_special.append( add_package('libyang', url='https://github.com/opensourcerouting/libyang.git', commit='179da47', branch='master', custombuild_cmd=libyang_build_cmd) ) +# +# We use keepalived from Debian Buster +# +keepalived_build_cmd = "sed -i 's/debhelper (>= 11)/debhelper (>= 9)/' debian/control && " \ + "echo 9 > debian/compat && " \ + "dpkg-buildpackage -b -us -uc -tc -j$(getconf _NPROCESSORS_ONLN)" +pkg_special.append( add_package('keepalived', url='https://salsa.debian.org/ipvs-team/pkg-keepalived.git', branch='master', commit='eae91c81', custombuild_cmd=keepalived_build_cmd) ) + # # Net-SNMP # -- cgit v1.2.3 From 57961845bc6b56b78bf25c0ee6dbcc6f9ae91b5d Mon Sep 17 00:00:00 2001 From: Christian Poessinger Date: Sat, 4 May 2019 09:03:37 +0200 Subject: intel: set debhelper compat level to 9 --- scripts/build-intel-drivers | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/build-intel-drivers b/scripts/build-intel-drivers index ef039e4c..4dba64a1 100755 --- a/scripts/build-intel-drivers +++ b/scripts/build-intel-drivers @@ -60,6 +60,7 @@ do make -j $(cat /proc/cpuinfo | grep processor | wc -l) install mkdir -p $deb_pkg_dir/DEBIAN + echo "9" >$deb_pkg_dir/DEBIAN/compat echo "Package: vyos-intel-$dirname" >$deb_pkg_dir/DEBIAN/control echo "Version: $version" >>$deb_pkg_dir/DEBIAN/control echo "Section: kernel" >>$deb_pkg_dir/DEBIAN/control -- cgit v1.2.3 From 21d672fec801c0dddbe98ba384c948715e86de6c Mon Sep 17 00:00:00 2001 From: Christian Poessinger Date: Sat, 4 May 2019 09:04:02 +0200 Subject: intel: remove debhelper depencendy on linux-image --- scripts/build-intel-drivers | 1 - 1 file changed, 1 deletion(-) diff --git a/scripts/build-intel-drivers b/scripts/build-intel-drivers index 4dba64a1..aafd66a9 100755 --- a/scripts/build-intel-drivers +++ b/scripts/build-intel-drivers @@ -68,7 +68,6 @@ do echo "Architecture: amd64" >>$deb_pkg_dir/DEBIAN/control echo "Maintainer: VyOS Package Maintainers " >>$deb_pkg_dir/DEBIAN/control echo "Installed-Size: 9" >>$deb_pkg_dir/DEBIAN/control - echo "Depends: linux-image" >>$deb_pkg_dir/DEBIAN/control echo "Description: Intel Vendor driver for $dirname" >>$deb_pkg_dir/DEBIAN/control echo " Replacement for the in Kernel drivers" >>$deb_pkg_dir/DEBIAN/control -- cgit v1.2.3 From 8be350bf26d119ac5c8878cd586ca3f7092b1fb2 Mon Sep 17 00:00:00 2001 From: Christian Poessinger Date: Sat, 4 May 2019 10:32:28 +0200 Subject: Packages: add vyos-replace package to build procedure --- scripts/build-packages | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/build-packages b/scripts/build-packages index c05b8c70..cf7f369d 100755 --- a/scripts/build-packages +++ b/scripts/build-packages @@ -174,6 +174,7 @@ vyos_packages = ['vyatta-bash', 'vyatta-lldp', 'vyatta-ipv6-rtradv', 'vyatta-ravpn', + 'vyos-replace', 'vyos-nhrp', 'vyos-world', 'vyos-1x', -- cgit v1.2.3 From 9da68d6850a5a103e8569bdebab0a9fa7776d823 Mon Sep 17 00:00:00 2001 From: Christian Poessinger Date: Sat, 4 May 2019 14:01:55 +0200 Subject: Jenkins: list build packages --- Jenkinsfile | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Jenkinsfile b/Jenkinsfile index 90c38d1c..243a019f 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -145,6 +145,12 @@ pipeline { } } + stage('List Packages') { + steps { + sh "find packages/ -maxdepth 1 -type f -print0 | xargs -0r ls" + } + } + stage('ISO Image') { steps { sh ''' -- cgit v1.2.3 From 5a3489861dc50e6bd4083993ad8065340f8f7c0f Mon Sep 17 00:00:00 2001 From: Christian Poessinger Date: Sun, 5 May 2019 17:44:23 +0200 Subject: hooks: initramfs: add option to remove an existing initramfs --- data/live-build-config/hooks/live/17-gen_initramfs.chroot | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/live-build-config/hooks/live/17-gen_initramfs.chroot b/data/live-build-config/hooks/live/17-gen_initramfs.chroot index 0f5e0ece..9c2cfb04 100755 --- a/data/live-build-config/hooks/live/17-gen_initramfs.chroot +++ b/data/live-build-config/hooks/live/17-gen_initramfs.chroot @@ -5,4 +5,4 @@ echo I: Create initramfs if it does not exist. # Kernel complains about non available nls_ascii module when booting from USB pendrive echo "nls_ascii" >> /etc/initramfs-tools/modules -update-initramfs -c -k `ls /boot | grep vmlinuz- | sed 's/vmlinuz-//g'` +update-initramfs -c -d -k `ls /boot | grep vmlinuz- | sed 's/vmlinuz-//g'` -- cgit v1.2.3 From 0e32ee9576251ce8bc21aa88ff96c77fba2b9c48 Mon Sep 17 00:00:00 2001 From: Christian Poessinger Date: Sun, 5 May 2019 18:43:28 +0200 Subject: T1366: Update Linux Kernel to v4.19.40 --- data/defaults.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/defaults.json b/data/defaults.json index 2699b789..2d2ebcd4 100644 --- a/data/defaults.json +++ b/data/defaults.json @@ -5,7 +5,7 @@ "debian_distribution": "jessie", "vyos_mirror": "http://dev.packages.vyos.net/repositories/current", "vyos_branch": "current", - "kernel_version": "4.19.36", + "kernel_version": "4.19.40", "kernel_flavor": "amd64-vyos", "additional_repositories": [ "deb http://repo.saltstack.com/apt/debian/8/amd64/2017.7 jessie main", -- cgit v1.2.3 From f38c2f22ffb11dcd07b299873692611990566070 Mon Sep 17 00:00:00 2001 From: Christian Poessinger Date: Sun, 5 May 2019 19:38:41 +0200 Subject: Revert "hooks: initramfs: add option to remove an existing initramfs" This reverts commit 5a3489861dc50e6bd4083993ad8065340f8f7c0f. --- data/live-build-config/hooks/live/17-gen_initramfs.chroot | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/live-build-config/hooks/live/17-gen_initramfs.chroot b/data/live-build-config/hooks/live/17-gen_initramfs.chroot index 9c2cfb04..0f5e0ece 100755 --- a/data/live-build-config/hooks/live/17-gen_initramfs.chroot +++ b/data/live-build-config/hooks/live/17-gen_initramfs.chroot @@ -5,4 +5,4 @@ echo I: Create initramfs if it does not exist. # Kernel complains about non available nls_ascii module when booting from USB pendrive echo "nls_ascii" >> /etc/initramfs-tools/modules -update-initramfs -c -d -k `ls /boot | grep vmlinuz- | sed 's/vmlinuz-//g'` +update-initramfs -c -k `ls /boot | grep vmlinuz- | sed 's/vmlinuz-//g'` -- cgit v1.2.3 From 355d187696961401db490ddc9ded6b342052cc7b Mon Sep 17 00:00:00 2001 From: Christian Poessinger Date: Sun, 5 May 2019 19:39:37 +0200 Subject: hooks: initramfs: add option to update an existing initramfs --- data/kernel_version | 2 +- data/live-build-config/hooks/live/17-gen_initramfs.chroot | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/data/kernel_version b/data/kernel_version index ab416d6c..51333a00 100644 --- a/data/kernel_version +++ b/data/kernel_version @@ -1 +1 @@ -4.19.36-amd64-vyos +4.19.40-amd64-vyos diff --git a/data/live-build-config/hooks/live/17-gen_initramfs.chroot b/data/live-build-config/hooks/live/17-gen_initramfs.chroot index 0f5e0ece..6ecf4be7 100755 --- a/data/live-build-config/hooks/live/17-gen_initramfs.chroot +++ b/data/live-build-config/hooks/live/17-gen_initramfs.chroot @@ -5,4 +5,4 @@ echo I: Create initramfs if it does not exist. # Kernel complains about non available nls_ascii module when booting from USB pendrive echo "nls_ascii" >> /etc/initramfs-tools/modules -update-initramfs -c -k `ls /boot | grep vmlinuz- | sed 's/vmlinuz-//g'` +update-initramfs -c -u -k `ls /boot | grep vmlinuz- | sed 's/vmlinuz-//g'` -- cgit v1.2.3 From 155725bd2dd2fd98c0ffd2bac88684e1bf14ece7 Mon Sep 17 00:00:00 2001 From: Christian Poessinger Date: Mon, 6 May 2019 18:24:41 +0200 Subject: Jenkins: remove dbg packages before assembling ISO to reduce size Some packages produce debug symbols which we do not wan't to have in our ISO: * librtr / rtr-tools * libsnmp * Linux Kernel --- Jenkinsfile | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Jenkinsfile b/Jenkinsfile index 243a019f..3faa9188 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -160,6 +160,9 @@ pipeline { # we rather prefer all build by ourself! sed -i '/vyos_repo_entry/d' scripts/live-build-config + # remove debug packages + rm -f packages/*-dbg_*.deb + # Configure the ISO ./configure --build-by="autobuild@vyos.net" --debian-mirror="http://ftp.us.debian.org/debian/" -- cgit v1.2.3 From 5b1411721f808cf1a779bb3807a3f249b1ac045b Mon Sep 17 00:00:00 2001 From: Christian Poessinger Date: Mon, 6 May 2019 18:26:11 +0200 Subject: Jenkins: adjust artifacts to archive --- Jenkinsfile | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 3faa9188..e8b83415 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -174,11 +174,8 @@ pipeline { } post { - always { - archiveArtifacts artifacts: 'build/build.log', fingerprint: true - } success { - archiveArtifacts artifacts: 'build/vyos*.iso', fingerprint: true + archiveArtifacts artifacts: 'build/live-image-*.iso', fingerprint: true } cleanup { echo 'One way or another, I have finished' -- cgit v1.2.3