[Piuparts-devel] [Git][debian/piuparts][develop] 12 commits: distros.conf: wheezy/updates has been archived

Holger Levsen gitlab at salsa.debian.org
Wed Apr 10 12:50:50 BST 2019



Holger Levsen pushed to branch develop at Debian / piuparts


Commits:
64b150e6 by Andreas Beckmann at 2019-04-10T11:49:53Z
distros.conf: wheezy/updates has been archived

Signed-off-by: Andreas Beckmann <anbe at debian.org>
Signed-off-by: Holger Levsen <holger at layer-acht.org>

- - - - -
e1128d63 by Andreas Beckmann at 2019-04-10T11:49:53Z
p: add --merged-usr support

Signed-off-by: Andreas Beckmann <anbe at debian.org>
Signed-off-by: Holger Levsen <holger at layer-acht.org>

- - - - -
d7db0f1e by Andreas Beckmann at 2019-04-10T11:49:53Z
p.conf.anbe: add [sid-merged-usr], using --merged-usr

Signed-off-by: Andreas Beckmann <anbe at debian.org>
Signed-off-by: Holger Levsen <holger at layer-acht.org>

- - - - -
4135783d by Andreas Beckmann at 2019-04-10T11:49:54Z
p.conf: add [sid-merged-usr], using --merged-usr

Signed-off-by: Andreas Beckmann <anbe at debian.org>
Signed-off-by: Holger Levsen <holger at layer-acht.org>

- - - - -
fa2b1c79 by Andreas Beckmann at 2019-04-10T11:49:54Z
p-s: do not check non-expiring tarballs every 60 seconds

Signed-off-by: Andreas Beckmann <anbe at debian.org>
Signed-off-by: Holger Levsen <holger at layer-acht.org>

- - - - -
21242aa1 by Andreas Beckmann at 2019-04-10T11:49:54Z
p.conf.anbe: tune settings

Signed-off-by: Andreas Beckmann <anbe at debian.org>
Signed-off-by: Holger Levsen <holger at layer-acht.org>

- - - - -
79cae420 by Andreas Beckmann at 2019-04-10T11:49:54Z
add exception for git:i386/jessie shipping directories with mode 0775

Signed-off-by: Andreas Beckmann <anbe at debian.org>
Signed-off-by: Holger Levsen <holger at layer-acht.org>

- - - - -
8c63fa6f by Andreas Beckmann at 2019-04-10T11:49:54Z
add exception for libjs-protoaculous failing to install in jessie

Signed-off-by: Andreas Beckmann <anbe at debian.org>
Signed-off-by: Holger Levsen <holger at layer-acht.org>

- - - - -
78167e8b by Andreas Beckmann at 2019-04-10T11:49:54Z
skip distupgrade tests of uninstallable dms*/jessie

Signed-off-by: Andreas Beckmann <anbe at debian.org>
Signed-off-by: Holger Levsen <holger at layer-acht.org>

- - - - -
1df4ed7f by Andreas Beckmann at 2019-04-10T11:49:54Z
cleanup alternatives left by openjdk-6 in multi-distro-upgrades

Signed-off-by: Andreas Beckmann <anbe at debian.org>
Signed-off-by: Holger Levsen <holger at layer-acht.org>

- - - - -
2fc640a4 by Andreas Beckmann at 2019-04-10T11:49:54Z
the signature for archived jessie-backports has expired

Signed-off-by: Andreas Beckmann <anbe at debian.org>
Signed-off-by: Holger Levsen <holger at layer-acht.org>

- - - - -
f5ca92e0 by Andreas Beckmann at 2019-04-10T11:49:54Z
p-s: flush logs more frequently to master

Signed-off-by: Andreas Beckmann <anbe at debian.org>
Signed-off-by: Holger Levsen <holger at layer-acht.org>

- - - - -


14 changed files:

- README_server.txt
- conf/distros.conf
- + custom-scripts/scripts-multi-distro-upgrade/post_distupgrade_exceptions_multi-distro-upgrade
- custom-scripts/scripts/is_testable_uninstallable
- custom-scripts/scripts/post_chroot_unpack_allow_unauthenticated
- custom-scripts/scripts/post_distupgrade_exceptions
- custom-scripts/scripts/pre_distupgrade_allow_unauthenticated
- custom-scripts/scripts/pre_install_exceptions
- debian/changelog
- instances/piuparts.conf-template.pejacevic
- instances/piuparts.conf.anbe
- piuparts-slave.py
- piuparts.1.txt
- piuparts.py


Changes:

=====================================
README_server.txt
=====================================
@@ -305,6 +305,11 @@ used for all further sections.
 * "slave-count" is the number of concurrent slaves to start.
  Default: "1".
 
+* "slave-flush-interval" is an interval (in seconds) of processing a
+ section which has more queued work after that the slave will connect
+ to the master and flush pending logfiles before resuming the section.
+ Default: "0", i.e. disabled.
+
 * "output-directory" is the directory where piuparts-report places
  the logfiles, generated html files, charts, ... that can be
  served by a webserver.


=====================================
conf/distros.conf
=====================================
@@ -58,7 +58,7 @@ target-release = squeeze-backports-sloppy
 uri = http://archive.debian.org/debian
 
 [wheezy/updates]
-uri = http://security.debian.org
+uri = http://archive.debian.org/debian-security
 depends = wheezy
 
 [wheezy-lts]


=====================================
custom-scripts/scripts-multi-distro-upgrade/post_distupgrade_exceptions_multi-distro-upgrade
=====================================
@@ -0,0 +1,30 @@
+#!/bin/sh
+set -e
+
+log_debug() {
+	echo "Debug: piuparts exception for package $PIUPARTS_OBJECTS"
+}
+
+is_installed()
+{
+	local pkg="$1"
+	dpkg-query -s "$pkg" >/dev/null 2>&1 || return 1
+	local status="$(dpkg-query -W -f '${Status}' $pkg)"
+	test "$status" != "unknown ok not-installed" || return 1
+	test "$status" != "deinstall ok config-files" || return 1
+	return 0
+}
+
+# Skip while creating the reference chroot.
+test "$PIUPARTS_PHASE" != "" || exit 0
+
+if [ "$PIUPARTS_DISTRIBUTION" = "jessie" ]; then
+
+	if [ -h /etc/alternatives/javaws ] && ! is_installed openjdk-7-jre ; then
+		#775072 openjdk-7-jre: cleanup broken alternatives left by openjdk-6-jre: javaws, pluginappletviewer
+		log_debug
+		update-alternatives --remove javaws /usr/lib/jvm/java-6-openjdk/jre/bin/javaws
+		update-alternatives --remove pluginappletviewer /usr/lib/jvm/java-6-openjdk/jre/bin/pluginappletviewer
+	fi
+
+fi


=====================================
custom-scripts/scripts/is_testable_uninstallable
=====================================
@@ -171,6 +171,13 @@ case ${PIUPARTS_OBJECTS%%=*}@${PIUPARTS_DISTRIBUTION} in
 		# removed after lenny
 		skip_distupgrade "#523770: must use invoke-rc.d"
 		;;
+	dms-core at jessie|\
+	dms at jessie|\
+	dms-dr at jessie|\
+	dms-wsgi at jessie)
+		# fixed after jessie, not in stable after jessie
+		skip_distupgrade '#852519: fails to install: NZST FATAL: configuration file "/etc/postgresql/9.4/dms/postgresql.conf" contains errors'
+		;;
 	docbookwiki at lenny)
 		# removed after lenny
 		skip_distupgrade "unconditionally uses mysql-client during purge"


=====================================
custom-scripts/scripts/post_chroot_unpack_allow_unauthenticated
=====================================
@@ -21,3 +21,11 @@ APT::Get::AllowUnauthenticated "true";
 Acquire::Check-Valid-Until "false";
 EOF
 fi
+
+if [ "$PIUPARTS_DISTRIBUTION" = "jessie-backports" ]; then
+	echo "Creating /etc/apt/apt.conf.d/unauthenticated-jessie ..."
+	tee /etc/apt/apt.conf.d/unauthenticated-jessie <<EOF
+# The Release file is not getting updated.
+Acquire::Check-Valid-Until "false";
+EOF
+fi


=====================================
custom-scripts/scripts/post_distupgrade_exceptions
=====================================
@@ -5,6 +5,16 @@ log_debug() {
 	echo "Debug: piuparts exception for package $PIUPARTS_OBJECTS"
 }
 
+is_installed()
+{
+	local pkg="$1"
+	dpkg-query -s "$pkg" >/dev/null 2>&1 || return 1
+	local status="$(dpkg-query -W -f '${Status}' $pkg)"
+	test "$status" != "unknown ok not-installed" || return 1
+	test "$status" != "deinstall ok config-files" || return 1
+	return 0
+}
+
 # E: Could not perform immediate configuration on ...
 rm -fv /etc/apt/apt.conf.d/piuparts-disable-immediate-configure
 
@@ -80,6 +90,11 @@ if [ "$PIUPARTS_DISTRIBUTION" = "stretch" ]; then
 		test ! -d "$dir" || chmod -c g-w "$dir"
 	done
 
+	# git:i386 in jessie shipped /usr/share/locale/**/ with mode 0775
+	if is_installed git ; then
+		find /usr/share/locale -type d -perm /020 -exec chmod -c g-w {} +
+	fi
+
 fi
 
 if [ "$PIUPARTS_DISTRIBUTION" = "buster" ] || \


=====================================
custom-scripts/scripts/pre_distupgrade_allow_unauthenticated
=====================================
@@ -29,3 +29,18 @@ elif [ -e /etc/apt/apt.conf.d/unauthenticated-squeeze ]; then
 	echo "FAIL: /etc/apt/apt.conf.d/unauthenticated-squeeze exists"
 	exit 1
 fi
+
+if [ "$PIUPARTS_DISTRIBUTION_NEXT" = "stretch" ]; then
+	rm -fv /etc/apt/apt.conf.d/unauthenticated-jessie
+fi
+
+if [ "$PIUPARTS_DISTRIBUTION_NEXT" = "jessie-backports" ]; then
+	echo "Creating /etc/apt/apt.conf.d/unauthenticated-jessie ..."
+	tee /etc/apt/apt.conf.d/unauthenticated-jessie <<EOF
+# The Release file is not getting updated.
+Acquire::Check-Valid-Until "false";
+EOF
+elif [ -e /etc/apt/apt.conf.d/unauthenticated-jessie ]; then
+	echo "FAIL: /etc/apt/apt.conf.d/unauthenticated-jessie exists"
+	exit 1
+fi


=====================================
custom-scripts/scripts/pre_install_exceptions
=====================================
@@ -97,6 +97,18 @@ case ${PIUPARTS_OBJECTS%%=*} in
 			;;
 esac
 
+if [ "$PIUPARTS_DISTRIBUTION" = "jessie" ]; then
+
+	case ${PIUPARTS_OBJECTS%%=*} in
+		libjs-protoaculous)
+			#919917: yui-compressor: insufficient java dependency in jessie
+			log_debug
+			apt-get -y install default-jre-headless
+			;;
+	esac
+
+fi
+
 if [ "$PIUPARTS_DISTRIBUTION" = "wheezy" ]; then
 
 	case ${PIUPARTS_OBJECTS%%=*} in


=====================================
debian/changelog
=====================================
@@ -12,6 +12,7 @@ piuparts (0.99) UNRELEASED; urgency=medium
 
   [ Andreas Beckmann ]
   * piuparts.py:
+    - Add '--merged-usr' support when using debootstrap to create the chroot.
     - Add '--distupgrade-to-testdebs-from DIR' as a shorthand for
       '--bindmount DIR --testdebs-repo DIR --distupgrade-to-testdebs'.
   * distros.conf:
@@ -19,6 +20,13 @@ piuparts (0.99) UNRELEASED; urgency=medium
     - jessie* has been partially archived/removed.
     - Add buster-backports.
     - Add bullseye-proposed-updates.
+  * piuparts.conf:
+    - Add section [sid-merged-usr], using --merged-usr.  (Closes: #848968)
+  * piuparts-slave.py:
+    - New option "slave-flush-interval" to flush logs more frequently to the
+      master. Set to 30 minutes.
+  * scripts/{post_chroot_unpack,pre_distupgrade}_allow_unauthenticated:
+    - Disable Check-Valid-Until for jessie-backports.
   * scripts/post_distupgrade_exceptions:
     - Handle /var/lib/pam/seen stretch -> buster upgrade by running
       pam-auth-update if needed. Workaround for #920760.


=====================================
instances/piuparts.conf-template.pejacevic
=====================================
@@ -148,6 +148,7 @@ flags-broken-symlinks =
 [global]
 basetgz-sections =
 	tarball/sid
+	tarball/sid-merged-usr
 	tarball/buster
 	tarball/stretch
 	tarball/jessie
@@ -160,6 +161,7 @@ sections =
 	sid
 	sid-strict
 	sid-nodoc
+	sid-merged-usr
 	sid-broken-symlinks
 	testing2sid
 	stable2sid
@@ -236,6 +238,7 @@ arch = @ARCH@
 area = main
 # the slave-count setting is for the slave(s)
 slave-count = 4
+slave-flush-interval = 1800
 # 3600s = 1h
 idle-sleep = 3600
 max-tgz-age = 0
@@ -259,6 +262,17 @@ upgrade-test-distros = sid
 max-tgz-age = 259200
 
 
+[tarball/sid-merged-usr]
+piuparts-flags =
+	--merged-usr
+	%(flags-default)s
+distro = None
+upgrade-test-distros = sid
+chroot-tgz = %(upgrade-test-distros)s-merged-usr_%(arch)s.tgz
+# 3 days (60*60*24*3)
+max-tgz-age = 259200
+
+
 [tarball/buster]
 piuparts-flags =
 	%(flags-default)s
@@ -368,6 +382,17 @@ piuparts-flags =
 distro = sid
 
 
+[sid-merged-usr]
+precedence = 5
+description = + In --merged-usr environment.
+json-sections = none
+piuparts-flags =
+	--merged-usr
+	%(flags-default)s
+distro = sid
+chroot-tgz = %(distro)s-merged-usr_%(arch)s.tgz
+
+
 [sid-broken-symlinks]
 precedence = 9
 description = + Failing on broken symlinks.


=====================================
instances/piuparts.conf.anbe
=====================================
@@ -111,6 +111,8 @@ flags-broken-symlinks =
 basetgz-sections =
 	tarball/sid/amd64
 	tarball/sid/i386
+	tarball/sid-merged-usr/amd64
+	tarball/sid-merged-usr/i386
 	tarball/buster/amd64
 	tarball/buster/i386
 	tarball/stretch/amd64
@@ -131,6 +133,7 @@ sections =
 	sid/main
 	sid-plus/main
 	sid-rcmd/main
+	sid-merged-usr/main
 	sid-bl/main
 	sid-bl_i386/main
 	sid-ipi/main
@@ -195,6 +198,7 @@ sections =
 	sid/contrib
 	sid-plus/contrib
 	sid-rcmd/contrib
+	sid-merged-usr/contrib
 	sid-bl/contrib
 	sid-bl_i386/contrib
 	sid-ipi/contrib
@@ -259,6 +263,7 @@ sections =
 	sid/non-free
 	sid-plus/non-free
 	sid-rcmd/non-free
+	sid-merged-usr/non-free
 	sid-bl/non-free
 	sid-bl_i386/non-free
 	sid-ipi/non-free
@@ -430,10 +435,11 @@ slave-directory = /srv/piuparts/slave
 basetgz-directory = /srv/piuparts/slave/basetgz
 output-directory = /srv/piuparts/htdocs
 backup-directory = /srv/piuparts/backup
-tmpdir = /tmp/piupartss
+tmpdir = /srv/piuparts/tmp
 chroot-meta-auto = reference-chroot-metadata.dat
-slave-load-max = 20.5
-idle-sleep = 1800
+slave-load-max = 15.5
+idle-sleep = 3600
+slave-flush-interval = 1800
 max-tgz-age = -1
 max-reserved = 50
 reschedule-old-count = 200
@@ -442,7 +448,7 @@ expire-old-days = +15
 reschedule-fail-count = 100
 reschedule-fail-days = 5
 expire-fail-days = +3
-reschedule-untestable-days = 2
+reschedule-untestable-days = 1
 slave-count = 12
 
 
@@ -476,6 +482,35 @@ components = main
 max-tgz-age = 172800
 
 
+[tarball/sid-merged-usr/amd64]
+piuparts-flags =
+	--merged-usr
+	%(flags-default)s
+distro = None
+upgrade-test-distros = sid
+arch = amd64
+area = main
+components = main
+chroot-tgz = %(upgrade-test-distros)s-merged-usr_%(arch)s.tgz
+# 60*60*24*2
+max-tgz-age = 172800
+
+
+[tarball/sid-merged-usr/i386]
+piuparts-flags =
+	--merged-usr
+	%(flags-default)s
+distro = None
+upgrade-test-distros = sid
+arch = i386
+setarch = linux32
+area = main
+components = main
+chroot-tgz = %(upgrade-test-distros)s-merged-usr_%(arch)s.tgz
+# 60*60*24*2
+max-tgz-age = 172800
+
+
 [tarball/buster/amd64]
 piuparts-flags =
 	%(flags-default)s
@@ -886,6 +921,43 @@ area = non-free
 reschedule-old-days = 60
 
 
+[sid-merged-usr/main]
+precedence = 30
+description = + In --merged-usr environment.
+piuparts-flags =
+	--merged-usr
+	%(flags-default)s
+distro = sid
+arch = amd64
+area = main
+components = main
+chroot-tgz = %(distro)s-merged-usr_%(arch)s.tgz
+
+[sid-merged-usr/contrib]
+precedence = 45
+description = + In --merged-usr environment.
+piuparts-flags =
+	--merged-usr
+	%(flags-default)s
+depends-sections = sid-merged-usr/main sid-merged-usr/non-free
+distro = sid
+arch = amd64
+area = contrib
+chroot-tgz = %(distro)s-merged-usr_%(arch)s.tgz
+
+[sid-merged-usr/non-free]
+precedence = 45
+description = + In --merged-usr environment.
+piuparts-flags =
+	--merged-usr
+	%(flags-default)s
+depends-sections = sid-merged-usr/main sid-merged-usr/contrib
+distro = sid
+arch = amd64
+area = non-free
+chroot-tgz = %(distro)s-merged-usr_%(arch)s.tgz
+
+
 [sid-bl/main]
 precedence = 130
 description = + Failing on broken symlinks.
@@ -1278,7 +1350,7 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-stretch)s
 	%(flags-end-stretch)s
-depends-sections = stretch/main
+depends-sections = stretch/main stretch/contrib
 distro = stretch/updates
 arch = amd64
 area = contrib
@@ -1289,7 +1361,7 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-stretch)s
 	%(flags-end-stretch)s
-depends-sections = stretch/main
+depends-sections = stretch/main stretch/contrib
 distro = stretch/updates
 arch = amd64
 area = non-free
@@ -1584,7 +1656,7 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-jessie)s
-depends-sections = jessie/main
+depends-sections = jessie/main jessie/contrib
 distro = jessie/updates
 arch = amd64
 area = non-free
@@ -2320,7 +2392,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-squeeze)s
 	%(flags-end-wheezy)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = squeeze/main
 distro = squeeze-lts
 arch = i386
@@ -2336,7 +2407,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-squeeze)s
 	%(flags-end-wheezy)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = squeeze/main squeeze2lts2wheezy/main squeeze2lts2wheezy/non-free
 distro = squeeze-lts
 arch = i386
@@ -2351,7 +2421,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-squeeze)s
 	%(flags-end-wheezy)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = squeeze/main squeeze2lts2wheezy/main squeeze2lts2wheezy/contrib
 distro = squeeze-lts
 arch = i386
@@ -2367,7 +2436,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-squeeze)s
 	%(flags-end-wheezy)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 arch = amd64
 area = main
 components = main
@@ -2408,7 +2476,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-squeeze)s
 	%(flags-end-wheezy)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 arch = amd64
 area = main
 components = main
@@ -2449,7 +2516,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-squeeze)s
 	%(flags-end-wheezy)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 arch = i386
 setarch = linux32
 area = main
@@ -2495,7 +2561,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-squeeze)s
 	%(flags-end-wheezy)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 arch = amd64
 area = main
 components = main
@@ -2541,7 +2606,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-squeeze)s
 	%(flags-end-wheezy)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 arch = i386
 setarch = linux32
 area = main
@@ -2587,7 +2651,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-squeeze)s
 	%(flags-end-wheezy)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = squeeze/main
 distro = squeeze-backports
 arch = amd64
@@ -2602,7 +2665,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-squeeze)s
 	%(flags-end-wheezy)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = squeeze/main squeeze2bpo2wheezy/main squeeze2bpo2wheezy/non-free
 distro = squeeze-backports
 arch = amd64
@@ -2616,7 +2678,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-squeeze)s
 	%(flags-end-wheezy)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = squeeze/main squeeze2bpo2wheezy/main squeeze2bpo2wheezy/contrib
 distro = squeeze-backports
 arch = amd64
@@ -2720,7 +2781,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-wheezy)s
 	%(flags-end-wheezy)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 arch = amd64
 area = main
 components = main
@@ -2761,7 +2821,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-wheezy)s
 	%(flags-end-jessie)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 arch = amd64
 area = main
 components = main
@@ -2774,7 +2833,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-wheezy)s
 	%(flags-end-jessie)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = wheezy2jessie/main wheezy2jessie/non-free
 arch = amd64
 area = contrib
@@ -2787,7 +2845,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-wheezy)s
 	%(flags-end-jessie)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = wheezy2jessie/main wheezy2jessie/contrib
 arch = amd64
 area = non-free
@@ -2801,7 +2858,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-wheezy)s
 	%(flags-end-jessie)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 arch = i386
 setarch = linux32
 area = main
@@ -2815,7 +2871,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-wheezy)s
 	%(flags-end-jessie)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = wheezy2jessie_i386/main wheezy2jessie_i386/non-free
 arch = i386
 setarch = linux32
@@ -2829,7 +2884,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-wheezy)s
 	%(flags-end-jessie)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = wheezy2jessie_i386/main wheezy2jessie_i386/contrib
 arch = i386
 setarch = linux32
@@ -2846,7 +2900,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-wheezy)s
 	%(flags-end-jessie)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 	-i /usr/lib/dbus-1.0/dbus-daemon-launch-helper
 arch = amd64
 area = main
@@ -2862,7 +2915,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-wheezy)s
 	%(flags-end-jessie)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 	-i /usr/lib/dbus-1.0/dbus-daemon-launch-helper
 depends-sections = wheezy2jessie-rcmd/main wheezy2jessie-rcmd/non-free
 arch = amd64
@@ -2878,7 +2930,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-wheezy)s
 	%(flags-end-jessie)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 	-i /usr/lib/dbus-1.0/dbus-daemon-launch-helper
 depends-sections = wheezy2jessie-rcmd/main wheezy2jessie-rcmd/contrib
 arch = amd64
@@ -2895,7 +2946,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-wheezy)s
 	%(flags-end-jessie)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 	-i /usr/lib/dbus-1.0/dbus-daemon-launch-helper
 arch = i386
 setarch = linux32
@@ -2912,7 +2962,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-wheezy)s
 	%(flags-end-jessie)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 	-i /usr/lib/dbus-1.0/dbus-daemon-launch-helper
 depends-sections = wheezy2jessie-rcmd_i386/main wheezy2jessie-rcmd_i386/non-free
 arch = i386
@@ -2929,7 +2978,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-wheezy)s
 	%(flags-end-jessie)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 	-i /usr/lib/dbus-1.0/dbus-daemon-launch-helper
 depends-sections = wheezy2jessie-rcmd_i386/main wheezy2jessie-rcmd_i386/contrib
 arch = i386
@@ -2946,7 +2994,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-wheezy)s
 	%(flags-end-jessie)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 	--scriptsdir /etc/piuparts/scripts-sysvinit
 arch = amd64
 area = main
@@ -2962,7 +3009,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-wheezy)s
 	%(flags-end-jessie)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 	--scriptsdir /etc/piuparts/scripts-sysvinit
 depends-sections = wheezy2jessie-sysv/main wheezy2jessie-sysv/non-free
 arch = amd64
@@ -2978,7 +3024,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-wheezy)s
 	%(flags-end-jessie)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 	--scriptsdir /etc/piuparts/scripts-sysvinit
 depends-sections = wheezy2jessie-sysv/main wheezy2jessie-sysv/contrib
 arch = amd64
@@ -2995,7 +3040,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-wheezy)s
 	%(flags-end-jessie)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 	--scriptsdir /etc/piuparts/scripts-apt-first
 arch = amd64
 area = main
@@ -3011,7 +3055,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-wheezy)s
 	%(flags-end-jessie)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 	--scriptsdir /etc/piuparts/scripts-apt-first
 depends-sections = wheezy2jessie-apt1st/main wheezy2jessie-apt1st/non-free
 arch = amd64
@@ -3027,7 +3070,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-wheezy)s
 	%(flags-end-jessie)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 	--scriptsdir /etc/piuparts/scripts-apt-first
 depends-sections = wheezy2jessie-apt1st/main wheezy2jessie-apt1st/contrib
 arch = amd64
@@ -3213,7 +3255,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-jessie)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 arch = amd64
 area = main
 components = main
@@ -3251,7 +3292,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 arch = amd64
 area = main
 components = main
@@ -3264,7 +3304,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = jessie2stretch/main jessie2stretch/non-free
 arch = amd64
 area = contrib
@@ -3277,7 +3316,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = jessie2stretch/main jessie2stretch/contrib
 arch = amd64
 area = non-free
@@ -3293,7 +3331,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 arch = amd64
 area = main
 components = main
@@ -3309,7 +3346,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = jessie3stretch/main jessie3stretch/non-free
 arch = amd64
 area = contrib
@@ -3325,7 +3361,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = jessie3stretch/main jessie3stretch/contrib
 arch = amd64
 area = non-free
@@ -3340,7 +3375,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 arch = i386
 setarch = linux32
 area = main
@@ -3354,7 +3388,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = jessie2stretch_i386/main jessie2stretch_i386/non-free
 arch = i386
 setarch = linux32
@@ -3368,7 +3401,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = jessie2stretch_i386/main jessie2stretch_i386/contrib
 arch = i386
 setarch = linux32
@@ -3385,7 +3417,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 arch = i386
 setarch = linux32
 area = main
@@ -3402,7 +3433,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = jessie3stretch_i386/main jessie3stretch_i386/non-free
 arch = i386
 setarch = linux32
@@ -3419,7 +3449,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = jessie3stretch_i386/main jessie3stretch_i386/contrib
 arch = i386
 setarch = linux32
@@ -3437,7 +3466,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 arch = amd64
 area = main
 components = main
@@ -3452,7 +3480,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = jessie2stretch-rcmd/main jessie2stretch-rcmd/non-free
 arch = amd64
 area = contrib
@@ -3467,7 +3494,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = jessie2stretch-rcmd/main jessie2stretch-rcmd/contrib
 arch = amd64
 area = non-free
@@ -3484,7 +3510,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 arch = amd64
 area = main
 components = main
@@ -3501,7 +3526,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = jessie3stretch-rcmd/main jessie3stretch-rcmd/non-free
 arch = amd64
 area = contrib
@@ -3518,7 +3542,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = jessie3stretch-rcmd/main jessie3stretch-rcmd/contrib
 arch = amd64
 area = non-free
@@ -3535,7 +3558,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 arch = i386
 setarch = linux32
 area = main
@@ -3551,7 +3573,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = jessie2stretch-rcmd_i386/main jessie2stretch-rcmd_i386/non-free
 arch = i386
 setarch = linux32
@@ -3567,7 +3588,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = jessie2stretch-rcmd_i386/main jessie2stretch-rcmd_i386/contrib
 arch = i386
 setarch = linux32
@@ -3585,7 +3605,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 arch = i386
 setarch = linux32
 area = main
@@ -3603,7 +3622,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = jessie3stretch-rcmd_i386/main jessie3stretch-rcmd_i386/non-free
 arch = i386
 setarch = linux32
@@ -3621,7 +3639,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = jessie3stretch-rcmd_i386/main jessie3stretch-rcmd_i386/contrib
 arch = i386
 setarch = linux32
@@ -3639,7 +3656,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 arch = amd64
 area = main
 components = main
@@ -3654,7 +3670,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = jessie2stretch-iri/main jessie2stretch-iri/non-free
 arch = amd64
 area = contrib
@@ -3669,7 +3684,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-jessie)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 depends-sections = jessie2stretch-iri/main jessie2stretch-iri/contrib
 arch = amd64
 area = non-free
@@ -3810,7 +3824,6 @@ piuparts-flags =
 	%(flags-default)s
 	%(flags-start-stretch)s
 	%(flags-end-stretch)s
-	--scriptsdir /etc/piuparts/scripts-debug-problemresolver
 arch = amd64
 area = main
 components = main
@@ -4175,7 +4188,6 @@ precedence = 80
 description = + Testing two-stage upgrades with --install-recommends.
 piuparts-flags =
 	--install-recommends
-	--fake-essential-packages ca-certificates
 	--upgrade-before-dist-upgrade
 	%(flags-default)s
 	%(flags-start-stretch)s
@@ -4194,7 +4206,6 @@ precedence = 95
 description = + Testing two-stage upgrades with --install-recommends.
 piuparts-flags =
 	--install-recommends
-	--fake-essential-packages ca-certificates
 	--upgrade-before-dist-upgrade
 	%(flags-default)s
 	%(flags-start-stretch)s
@@ -4213,7 +4224,6 @@ precedence = 95
 description = + Testing two-stage upgrades with --install-recommends.
 piuparts-flags =
 	--install-recommends
-	--fake-essential-packages ca-certificates
 	--upgrade-before-dist-upgrade
 	%(flags-default)s
 	%(flags-start-stretch)s


=====================================
piuparts-slave.py
=====================================
@@ -101,6 +101,7 @@ class Config(piupartslib.conf.Config):
                                          "arch": None,
                                          "precedence": "1",
                                          "slave-load-max": None,
+                                         "slave-flush-interval": 0,
                                          },
                                          defaults_section=defaults_section)
 
@@ -359,15 +360,15 @@ class Section:
             self._logger = logging.getLogger()
             self._logger.setLevel(logging.DEBUG)
 
-        if int(self._config["max-reserved"]) > 0:
-            self._check_tarball()
+        self._slave = slave or Slave()
 
         for rdir in ["new", "pass", "fail", "untestable", "reserved"]:
             rdir = os.path.join(self._slave_directory, rdir)
             if not os.path.exists(rdir):
                 os.mkdir(rdir)
 
-        self._slave = slave or Slave()
+        if int(self._config["max-reserved"]) > 0:
+            self._check_tarball()
 
     def _throttle_if_overloaded(self):
         global interrupted
@@ -423,6 +424,8 @@ class Section:
         max_tgz_age = int(self._config["max-tgz-age"])
         min_tgz_retry_delay = int(self._config["min-tgz-retry-delay"])
         ttl = 0
+        if max_tgz_age == 0:
+            ttl = 86400
         needs_update = not os.path.exists(tgz)
         if not needs_update and max_tgz_age > 0:
             # tgz exists and age is limited, so check age
@@ -439,6 +442,7 @@ class Section:
                     needs_update = True
                     logging.info("%s too old.  Forcing re-creation" % tgz)
         if needs_update:
+            self._slave.close()
             create_chroot(self._config, tgz, self._config.get_start_distro())
             ttl = min_tgz_retry_delay
         self._tarball_wait_until = time.time() + ttl
@@ -612,7 +616,7 @@ class Section:
 
     def _process(self):
         global interrupted
-        self._slave.close()
+        last_flush = time.time()
 
         packagenames = set([x[0] for x in self._slave.get_reserved()])
         packages_files = {}
@@ -652,6 +656,11 @@ class Section:
             self._throttle_if_overloaded()
             if interrupted or got_sighup:
                 break
+            if int(self._config["slave-flush-interval"]):
+                if time.time() - last_flush > int(self._config["slave-flush-interval"]):
+                    last_flush += 300   # throttle retries
+                    if self._talk_to_master():
+                        last_flush = time.time()
             if not os.path.exists(self._get_tarball()):
                 logging.error("Missing chroot-tgz %s" % self._get_tarball())
                 break
@@ -664,6 +673,7 @@ class Section:
     def _test_package(self, pname, pvers, packages_files):
         global old_sigint_handler
         old_sigint_handler = signal(SIGINT, sigint_handler)
+        self._slave.close()
 
         logging.info("Testing package %s/%s %s" % (self._config.section, pname, pvers))
 


=====================================
piuparts.1.txt
=====================================
@@ -173,6 +173,11 @@ The tarball can be created with the '-s' option, or you can use one that *pbuild
 *--log-level*='level'::
   Display messages from loglevel LEVEL, possible values are: error, info, dump, debug. The default is dump.
 
+*--merged-usr*::
+  When using debootstrap to create the chroot, use the '--merged-usr' option
+  to create a chroot with /bin, /lib, /sbin being symlinks to their /usr
+  counterparts.
+
 *-m* 'url', *--mirror*='url'::
   Which Debian mirror to use. The default is the first mirror named in _/etc/apt/sources.list_ or _http://deb.debian.org/debian_ if none is found. This option may be used multiple times to use multiple mirrors. Only the first mirror is used with *debootstrap*.
 +


=====================================
piuparts.py
=====================================
@@ -193,6 +193,7 @@ class Settings:
         self.minimize = False
         self.debfoster_options = None
         self.docker_image = None
+        self.merged_usr = False
         # tests and checks
         self.no_install_purge_test = False
         self.no_upgrade_test = False
@@ -1107,7 +1108,10 @@ class Chroot:
             options.append("--keyring=%s" % settings.keyring)
         if settings.eatmydata:
             options.append('--include=eatmydata')
-        options.append('--no-merged-usr')
+        if settings.merged_usr:
+            options.append('--merged-usr')
+        else:
+            options.append('--no-merged-usr')
         options.append('--components=%s' % ','.join(settings.debian_mirrors[0][1]))
         if settings.arch:
             options.append('--arch=%s' % settings.arch)
@@ -2797,6 +2801,11 @@ def parse_command_line():
                       "DOCKER-IMAGE for the testing environment, instead of "
                       "building a new one with debootstrap.")
 
+    parser.add_option("--merged-usr",
+                      default=False,
+                      action='store_true',
+                      help="Create a --merged-usr chroot (if using debootstrap).")
+
     parser.add_option("-m", "--mirror", action="append", metavar="URL",
                       default=[],
                       help="Which Debian mirror to use.")
@@ -3026,6 +3035,7 @@ def parse_command_line():
         settings.skip_minimize = False
     settings.debfoster_options = opts.debfoster_options.split()
     settings.docker_image = opts.docker_image
+    settings.merged_usr = opts.merged_usr
     # tests and checks
     settings.no_install_purge_test = opts.no_install_purge_test
     settings.no_upgrade_test = opts.no_upgrade_test



View it on GitLab: https://salsa.debian.org/debian/piuparts/compare/d33ef39b8a2a8d9f862f5bb0cde9297ed4c0a048...f5ca92e07ad196eae51254b222471704033f12ae

-- 
View it on GitLab: https://salsa.debian.org/debian/piuparts/compare/d33ef39b8a2a8d9f862f5bb0cde9297ed4c0a048...f5ca92e07ad196eae51254b222471704033f12ae
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/piuparts-devel/attachments/20190410/478dfa07/attachment-0001.html>


More information about the Piuparts-devel mailing list