[Git][qa/jenkins.debian.net][master] 2 commits: init_node: run apt-get update first

Holger Levsen (@holger) gitlab at salsa.debian.org
Fri Mar 22 22:21:33 GMT 2024



Holger Levsen pushed to branch master at Debian QA / jenkins.debian.net


Commits:
336f1883 by Holger Levsen at 2024-03-22T23:20:55+01:00
init_node: run apt-get update first

Signed-off-by: Holger Levsen <holger at layer-acht.org>

- - - - -
5ea8a987 by Holger Levsen at 2024-03-22T23:20:55+01:00
add two new amd64 CI builder, thanks to our new sponsor infomaniak.com

Signed-off-by: Holger Levsen <holger at layer-acht.org>

- - - - -


11 changed files:

- TODO.infrastructure
- bin/common-functions.sh
- bin/djm
- bin/jenkins_node_definitions.sh
- hosts/common/etc/pbuilderrc
- hosts/common/etc/rc.local
- hosts/jenkins/etc/munin/munin.conf
- init_node
- job-cfg/reproducible.yaml
- nodes/list.yml
- update_jdn.sh


Changes:

=====================================
TODO.infrastructure
=====================================
@@ -24,7 +24,9 @@ mv jenkins:/dev/vda1 to SDD, free 500gb hdd space
 	increase to 640gb? more partitions?
 is /srv/workspace on jenkins on tmpfs (with 100gb size) really a good idea, especially with / on sdd?
 document codethink out-of-band access
+	also make powercycle via script work, so that djm can use that
 document infomaniak setup
+	also make powercycle via script work, so that djm can use that
 setup two infomiaik nodes, as a start
 	infomaniak01: 12 cores, 24gb ram
 	infomaniak02: 12 cores. 24gb ram
@@ -46,6 +48,7 @@ split this on several hosts:
 	osuosl3-amd64: Debian live-builds / Debian bootstrap jobs / debian-janitor / mmdebstrap-jenkins jobs / openqa.d.n workers
 	FIXME: this needs a plan
 point snapshot.r-b.o to rebuilder-snapshot.d.n?
+squid proxy for infomaniak nodes?
 improve ionos naming scheme so the datacenter becomes visible and whether its running in the future or not?
 	 ionos151 - fkb/5/future
 	 ionos050 - fra/5/today


=====================================
bin/common-functions.sh
=====================================
@@ -139,6 +139,9 @@ else
 			export http_proxy="http://192.168.101.104:3128" ;;
 		cbxi4*|wbq0|ff*|jt?1*|virt64[a-z]|virt32[a-z])
 			export http_proxy="http://10.0.0.15:3142/" ;;
+		infom*)
+			# infomaniak nodes don't yet use a proxy
+			:
 		warren) : ;;  # warren is mattia's laptop
 		*)
 			echo "unsupported host, exiting." ; exit 1 ;;


=====================================
bin/djm
=====================================
@@ -60,7 +60,8 @@ node_in_the_future () {
 	case "$1" in
 		ionos5-amd64*|ionos6-i386*|ionos15-amd64*|ionos16-i386*) true ;;
 		codethink01*|codethink03*) true ;;
-		osuosl2-amd64*) true ;;
+		osuosl2*) true ;;
+		infom02*) true ;;
 		*) false ;;
 	esac
 }
@@ -590,6 +591,9 @@ djm_do() {
 						osuosl*)	echo "We cannot powercycle nodes at OSUOSL on our own. Please contact #osuosl on libera.chat or send email to support at osuosl.org"
 								exit 1
 								;;
+						infom*)		echo "We need to learn how to powercycle these via script."
+								exit 1
+								;;
 						*)		echo "This should not happen, please investigate and fixup."
 								exit 1
 								;;


=====================================
bin/jenkins_node_definitions.sh
=====================================
@@ -1,6 +1,6 @@
 #!/bin/bash
 
-# Copyright 2015-2023 Holger Levsen <holger at layer-acht.org>
+# Copyright 2015-2024 Holger Levsen <holger at layer-acht.org>
 # released under the GPLv2
 
 # define Debian build nodes in use for tests.reproducible-builds.org/debian/
@@ -42,7 +42,9 @@ virt64z-armhf-rb.debian.net
 wbq0-armhf-rb.debian.net
 osuosl1-amd64.debian.net
 osuosl2-amd64.debian.net
-osuosl3-amd64.debian.net"
+osuosl3-amd64.debian.net
+infom01-amd64.debian.net
+infom02-amd64.debian.net"
 
 NODE_RUN_IN_THE_FUTURE=false
 get_node_information() {
@@ -54,7 +56,10 @@ get_node_information() {
 	  codethink01*|codethink03*)
 	    NODE_RUN_IN_THE_FUTURE=true
 	    ;;
-	  osuosl2-amd64*)
+	  osuosl2*)
+	    NODE_RUN_IN_THE_FUTURE=true
+	    ;;
+	  infom02*)
 	    NODE_RUN_IN_THE_FUTURE=true
 	    ;;
 	  *)


=====================================
hosts/common/etc/pbuilderrc
=====================================
@@ -27,9 +27,10 @@ if [ "$(readlink /proc/1/ns/uts)" != "$(readlink /proc/self/ns/uts)" ]; then
 fi
 
 # needed to ignore failures due to running 398 days in the future…
-# (only on those 8 nodes running in the future…)
+# (only on those nodes running in the future…)
 if [ "$HOSTNAME" = "ionos5-amd64" ] || [ "$HOSTNAME" = "ionos6-i386" ] || \
    [ "$HOSTNAME" = "ionos15-amd64" ] || [ "$HOSTNAME" = "ionos16-i386" ] || \
-   [ "$HOSTNAME" = "codethink01-arm64" ] || [ "$HOSTNAME" = "codethink03-arm64" ] ; then
+   [ "$HOSTNAME" = "codethink01-arm64" ] || [ "$HOSTNAME" = "codethink03-arm64" ] || \
+   [ "$HOSTNAME" = "infom02-amd64" ] ; then
 	APTGETOPT=(-o Acquire::Check-Valid-Until="false")
 fi


=====================================
hosts/common/etc/rc.local
=====================================
@@ -99,7 +99,8 @@ case $(hostname) in
 	ionos6*)		send_back_to_the_future ;;
 	ionos15*)		send_back_to_the_future ;;
 	ionos16*)		send_back_to_the_future ;;
-	osuosl2-amd64)		send_back_to_the_future time.osuosl.org;;
+	osuosl2*)		send_back_to_the_future time.osuosl.org ;;
+	infom02*)		send_back_to_the_future ch.pool.ntp.org ;;
 	*)			;;
 esac
 


=====================================
hosts/jenkins/etc/munin/munin.conf
=====================================
@@ -471,6 +471,14 @@ contact.me.command mail -s "Munin notification ${var:host}" root
     address osuosl5-amd64.debian.net
     use_node_name yes
 
+[debian.net;infom01-amd64.debian.net]
+    address infom01-amd64.debian.net
+    use_node_name yes
+
+[debian.net;infom02-amd64.debian.net]
+    address infom02-amd64.debian.net
+    use_node_name yes
+
 [freebsd-jenkins.debian.net]
     address 46.16.73.236
     use_node_name yes
@@ -523,7 +531,7 @@ contact.me.command mail -s "Munin notification ${var:host}" root
 #       node_order Totals fii.foo.com fay.foo.com
 #
 [debian.net]
-	node_order jenkins.debian.net ionos1-amd64.debian.net ionos2-i386.debian.net ionos5-amd64.debian.net ionos6-i386.debian.net ionos7-amd64.debian.net ionos9-amd64.debian.net ionos10-amd64.debian.net ionos11-amd64.debian.net ionos12-i386.debian.net ionos15-amd64.debian.net ionos16-i386.debian.net codethink01-arm64.debian.net codethink02-arm64.debian.net codethink03-arm64.debian.net codethink04-arm64.debian.net cbxi4a-armhf-rb.debian.net cbxi4b-armhf-rb.debian.net cbxi4pro0-armhf-rb.debian.net ff4a-armhf-rb.debian.net ff64a-armhf-rb.debian.net virt32a-armhf-rb.debian.net virt32b-armhf-rb.debian.net virt32c-armhf-rb.debian.net virt32z-armhf-rb.debian.net virt64a-armhf-rb.debian.net virt64b-armhf-rb.debian.net virt64c-armhf-rb.debian.net virt64z-armhf-rb.debian.net wbq0-armhf-rb.debian.net freebsd-jenkins.debian.net osuosl1-amd64.debian.net osuosl2-amd64.debian.net osuosl3-amd64.debian.net osuosl4-amd64.debian.net osuosl5-amd64.debian.net
+	node_order jenkins.debian.net ionos1-amd64.debian.net ionos2-i386.debian.net ionos5-amd64.debian.net ionos6-i386.debian.net ionos7-amd64.debian.net ionos9-amd64.debian.net ionos10-amd64.debian.net ionos11-amd64.debian.net ionos12-i386.debian.net ionos15-amd64.debian.net ionos16-i386.debian.net codethink01-arm64.debian.net codethink02-arm64.debian.net codethink03-arm64.debian.net codethink04-arm64.debian.net cbxi4a-armhf-rb.debian.net cbxi4b-armhf-rb.debian.net cbxi4pro0-armhf-rb.debian.net ff4a-armhf-rb.debian.net ff64a-armhf-rb.debian.net virt32a-armhf-rb.debian.net virt32b-armhf-rb.debian.net virt32c-armhf-rb.debian.net virt32z-armhf-rb.debian.net virt64a-armhf-rb.debian.net virt64b-armhf-rb.debian.net virt64c-armhf-rb.debian.net virt64z-armhf-rb.debian.net wbq0-armhf-rb.debian.net freebsd-jenkins.debian.net osuosl1-amd64.debian.net osuosl2-amd64.debian.net osuosl3-amd64.debian.net osuosl4-amd64.debian.net osuosl5-amd64.debian.net infom01-amd64.debian.net infom02-amd64.debian.net
 
 [reproducible-builds.org;]
 	node_order rb-mail1.reproducible-builds.org


=====================================
init_node
=====================================
@@ -1,6 +1,6 @@
 #!/bin/bash
 #
-# Copyright 2014-2023 Holger Levsen <holger at layer-acht.org>
+# Copyright 2014-2024 Holger Levsen <holger at layer-acht.org>
 #
 # released under the GPLv2
 #
@@ -28,6 +28,7 @@ adduser --system --shell /bin/bash --home /var/lib/jenkins --ingroup jenkins --d
 addgroup --system jenkins-adm
 adduser --system --shell /bin/bash --home /home/jenkins-adm --ingroup jenkins-adm --disabled-login jenkins-adm
 usermod -G jenkins jenkins-adm
+apt-get update
 which sudo || apt-get install -y sudo
 echo '%jenkins-adm ALL= NOPASSWD: ALL' > /etc/sudoers.d/jenkins-adm # will be overwritten later
 chown jenkins-adm:jenkins-adm /home/jenkins-adm


=====================================
job-cfg/reproducible.yaml
=====================================
@@ -335,6 +335,8 @@
                 - 'osuosl3':        { my_arch: 'amd64' }
                 - 'osuosl4':        { my_arch: 'amd64' }
                 - 'osuosl5':        { my_arch: 'amd64' }
+                - 'infom01':        { my_arch: 'amd64' }
+                - 'infom02':        { my_arch: 'amd64' }
                 - 'codethink01':    { my_arch: 'arm64' }
                 - 'codethink02':    { my_arch: 'arm64' }
                 - 'codethink03':    { my_arch: 'arm64' }
@@ -378,6 +380,8 @@
                 - 'osuosl3':        { my_arch: 'amd64' }
                 - 'osuosl4':        { my_arch: 'amd64' }
                 - 'osuosl5':        { my_arch: 'amd64' }
+                - 'infom01':        { my_arch: 'amd64' }
+                - 'infom02':        { my_arch: 'amd64' }
                 - 'codethink01':    { my_arch: 'arm64' }
                 - 'codethink02':    { my_arch: 'arm64' }
                 - 'codethink03':    { my_arch: 'arm64' }
@@ -428,6 +432,8 @@
                 - 'codethink02':    { my_arch: 'arm64' }
                 - 'codethink03':    { my_arch: 'arm64' }
                 - 'codethink04':    { my_arch: 'arm64' }
+                - 'infom01':        { my_arch: 'amd64' }
+                - 'infom02':        { my_arch: 'amd64' }
             my_shell: '/srv/jenkins/bin/jenkins_master_wrapper.sh'
             my_naginator_regex: '^E: Couldn.t download .*/Packages'
 


=====================================
nodes/list.yml
=====================================
@@ -87,6 +87,16 @@
   keys:
     - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINep1h8oDSxOlfkAB4lwdfOlNfggNcVcU3xJrf9W3fZj root at osuosl5-amd64
 
+# x86 infomaniak
+- hostname: infom01-amd64.debian.net
+  ip: 195.15.254.212
+  keys:
+    - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICPx8pxJ8nVimHl/d2ZGruzBfYbwAg3aCr1p3NSXH2DD root at infom01
+- hostname: infom02-amd64.debian.net
+  ip: 195.15.253.25
+  keys:
+    - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKCi1NXei3/Iuz/SwAgbXuc6z0Yax7xipJSfT0HmHYkY root at infom2
+
 # arm64
 - hostname: codethink01-arm64.debian.net
   time: future


=====================================
update_jdn.sh
=====================================
@@ -67,6 +67,10 @@ case $HOSTNAME in
 		# set correct date
 		set_correct_date time.osuosl.org
 		;;
+	infom02*)
+		# set correct date
+		set_correct_date ch.pool.ntp.org
+		;;
 	*)	;;
 esac
 
@@ -192,6 +196,10 @@ case $HOSTNAME in
 		TMPFSSIZE=400
 		TMPSIZE=75
 		;;
+	infom*)
+		TMPFSSIZE=100
+		TMPSIZE=15
+		;;
 	*) ;;
 esac
 case $HOSTNAME in
@@ -207,7 +215,7 @@ case $HOSTNAME in
 			exit 1
 		fi
 		;;
-	jenkins|ionos*amd64|codethink*)
+	jenkins|ionos*amd64|codethink*|infom*)
 		# FIXME: this needs to be checked and smoothed for all ionos nodes... strangly on codethink nodes
 		# this has not become a problem yet
 		if ! grep -q '/srv/workspace' /etc/fstab && ! grep -q '^tmpfs\s\+/srv/workspace\s' /etc/fstab; then
@@ -431,7 +439,8 @@ if [ -f /etc/debian_version ] ; then
 		case $HOSTNAME in
 			ionos5-amd64|ionos6-i386|ionos15-amd64|ionos16-i386) DEBS="$DEBS ntpdate" ;;
 			codethink01*|codethink03*) DEBS="$DEBS ntpdate" ;;
-			osuosl2-amd64) DEBS="$DEBS ntpdate" ;;
+			osuosl2*) DEBS="$DEBS ntpdate" ;;
+			infom02*) DEBS="$DEBS ntpdate" ;;
 			*) ;;
 		esac
 		# needed to run coreboot/openwrt/netbsd/fedora jobs
@@ -625,10 +634,11 @@ if [ -f /etc/debian_version ] ; then
 		$UP2DATE || sudo apt-get update
 		$UP2DATE || sudo apt-get install $DEBS $MASTERDEBS
 		# for varying kernels:
-		# - we use bpo kernels on osuosl2 and ionos5+15 (and the default amd64 kernel on ionos6+16-i386)
+		# - we use bpo kernels on osuosl2 and ionos5+15 and infom02 (and the default amd64 kernel on ionos6+16-i386)
 		# - this is done as a separate step as bpo kernels are frequently uninstallable when upgraded on bpo
 		if [ "$HOSTNAME" = "ionos5-amd64" ] || [ "$HOSTNAME" = "ionos15-amd64" ] \
 			|| [ "$HOSTNAME" = "osuosl2-amd64" ] \
+			|| [ "$HOSTNAME" = "infom02-amd64" ] \
 			|| [ "$HOSTNAME" = "jenkins" ] ; then
 			sudo apt install linux-image-amd64/bookworm-backports || true # backport kernels are frequently uninstallable...
 			:
@@ -974,6 +984,10 @@ case $HOSTNAME in
 		disable_dsa_check_packages
 		sudo date --set="+398 days +6 hours + 23 minutes"
 		;;
+	infom02-amd64)
+		disable_dsa_check_packages
+		sudo date --set="+398 days +6 hours + 23 minutes"
+		;;
 	jenkins)
 		# notify irc on updates of jenkins.d.n
 		MESSAGE="jenkins.d.n updated to $(cd $BASEDIR ; git describe --always)."



View it on GitLab: https://salsa.debian.org/qa/jenkins.debian.net/-/compare/68572764e46f944e2d060dc8c2039d0e82197e3a...5ea8a9875468ee1b461528ced431dbd60aaf6fa0

-- 
View it on GitLab: https://salsa.debian.org/qa/jenkins.debian.net/-/compare/68572764e46f944e2d060dc8c2039d0e82197e3a...5ea8a9875468ee1b461528ced431dbd60aaf6fa0
You're receiving this email because of your account on salsa.debian.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/qa-jenkins-scm/attachments/20240322/28f316b9/attachment-0001.htm>


More information about the Qa-jenkins-scm mailing list