[Qa-jenkins-scm] [jenkins.debian.net] 01/01: reproducible Debian: more DRY refactoring

Holger Levsen holger at layer-acht.org
Tue Nov 8 21:23:53 UTC 2016


This is an automated email from the git hooks/post-receive script.

holger pushed a commit to branch master
in repository jenkins.debian.net.

commit 44072e5660de5ad8dfb2a671d1e572f74ebf86c8
Author: Holger Levsen <holger at layer-acht.org>
Date:   Tue Nov 8 22:23:38 2016 +0100

    reproducible Debian: more DRY refactoring
---
 bin/reproducible_create_meta_pkg_sets.sh | 133 ++++++++++++++++---------------
 1 file changed, 70 insertions(+), 63 deletions(-)

diff --git a/bin/reproducible_create_meta_pkg_sets.sh b/bin/reproducible_create_meta_pkg_sets.sh
index 5d18265..5d4dfc8 100755
--- a/bin/reproducible_create_meta_pkg_sets.sh
+++ b/bin/reproducible_create_meta_pkg_sets.sh
@@ -149,18 +149,21 @@ use_previous_sets_build_depends() {
 
 update_pkg_set_specific() {
 	#
-	# bin/meta_pkgset.csv defines the names of the packages set and their ordering/numbering
+	# bin/meta_pkgset.csv defines the names of the packages set and their ordering
 	#
-	case $index in
-		1)	# the essential package set
+	case ${META_PKGSET[$index]} in
+		essential)
+			# the essential package set
 			chdist --data-dir=$CHPATH grep-dctrl-packages $DISTNAME -X -FEssential yes > $TMPFILE
 			convert_from_deb822_into_source_packages_only
 			;;
-		2)	# the required package set
+		required)
+			# the required package set
 			chdist --data-dir=$CHPATH grep-dctrl-packages $DISTNAME -X -FPriority required > $TMPFILE
 			convert_from_deb822_into_source_packages_only
 			;;
-		3)	# build-essential
+		build-essential)
+			# build-essential
 			chdist --data-dir=$CHPATH grep-dctrl-packages $DISTNAME -X \( -FBuild-Essential yes --or -FPackage build-essential \) > ${TMPFILE2}
 			# here we want the installable set:
 			get_installable_set
@@ -168,7 +171,8 @@ update_pkg_set_specific() {
 				convert_from_deb822_into_source_packages_only
 			fi
 			;;
-		4)	# build-essential-depends
+		build-essential-depends)
+			# build-essential-depends
 			#
 			# This set is created using the following procedure:
 			#
@@ -200,7 +204,8 @@ update_pkg_set_specific() {
 				| schroot --directory /tmp -c source:jenkins-reproducible-unstable -- botch-bin2src --deb-native-arch="$ARCH" - "$SOURCES" \
 				| grep-dctrl --no-field-names --show-field=Package '' > $TMPFILE
 			;;
-		5)	# popcon top 1337 installed sources
+		popcon_top1337-installed-sources)
+			# popcon top 1337 installed sources
 			SQL_QUERY="SELECT popcon_src.source FROM popcon_src ORDER BY popcon_src.insts DESC LIMIT 1337;"
 			PGPASSWORD=public-udd-mirror \
 				psql -U public-udd-mirror \
@@ -208,7 +213,8 @@ update_pkg_set_specific() {
 				-t \
 				udd -c"${SQL_QUERY}" > $TMPFILE
 			;;
-		6)	# key packages (same for all suites)
+		key_packages)
+			# key packages (same for all suites)
 			SQL_QUERY="SELECT source FROM key_packages;"
 			PGPASSWORD=public-udd-mirror \
 				psql -U public-udd-mirror \
@@ -216,17 +222,20 @@ update_pkg_set_specific() {
 				-t \
 				udd -c"${SQL_QUERY}" > $TMPFILE
 			;;
-		7)	# installed on one or more .debian.org machines
+		installed_on_debian.org)
+			# installed on one or more .debian.org machines
 			# one day we will get a proper data provider from DSA...
 			# (so far it was a manual "dpkg --get-selections" on all machines
 			# converted into a list of source packages...)
 			cat /srv/jenkins/bin/reproducible_installed_on_debian.org > $TMPFILE
 			;;
-		8)	# packages which had a DSA
+		had_a_DSA)
+			# packages which had a DSA
 			svn export svn://svn.debian.org/svn/secure-testing/data/DSA/list ${TMPFILE2}
 			grep "^\[" ${TMPFILE2} | grep "DSA-" | cut -d " " -f5 > $TMPFILE
 			;;
-		9)	# packages from the cii-census
+		cii-census)
+			# packages from the cii-census
 			CII=$(mktemp --tmpdir=$TEMPDIR pkg-sets-XXXXXXXXX -u)
 			git clone --depth 1 https://github.com/linuxfoundation/cii-census.git $CII
 			csvtool -t ',' col 1 $CII/results.csv | grep -v "project_name" > $TMPFILE
@@ -240,7 +249,7 @@ update_pkg_set_specific() {
 			rm $CII -r
 			convert_from_deb822_into_source_packages_only
 			;;
-		10)	# gnome and everything it depends on
+		gnome)	# gnome and everything it depends on
 			#
 			# The build-depends of X tasks can be solved once dose-ceve is able to read
 			# Debian source packages (possible in dose3 git but needs a new dose3 release
@@ -256,10 +265,11 @@ update_pkg_set_specific() {
 				convert_from_deb822_into_source_packages_only
 			fi
 			;;
-		11)	# all build depends of gnome
+		*_build-depends)
+			# all build depends of the previous set (as defined in bin/meta_pkgset.csv)
 			use_previous_sets_build_depends
 			;;
-		12)	# kde and everything it depends on
+		kde)	# kde and everything it depends on
 			chdist --data-dir=$CHPATH grep-dctrl-packages $DISTNAME -X \( -FPriority required --or -FPackage kde-full --or -FPackage kde-standard \) > ${TMPFILE2}
 			get_installable_set
 			if [ -f $TMPFILE ] ; then
@@ -270,10 +280,7 @@ update_pkg_set_specific() {
 				grep-dctrl -sPackage -n -FMaintainer,Uploaders pkg-kde-extras at lists.alioth.debian.org $SOURCES >> $TMPFILE
 			fi
 			;;
-		13)	# all build depends of kde
-			use_previous_sets_build_depends
-			;;
-		14)	# mate and everything it depends on
+		mate)	# mate and everything it depends on
 			chdist --data-dir=$CHPATH grep-dctrl-packages $DISTNAME -X \( -FPriority required --or -FPackage mate-desktop-environment --or -FPackage mate-desktop-environment-extras \) > ${TMPFILE2}
 			get_installable_set
 			if [ -f $TMPFILE ] ; then
@@ -283,20 +290,15 @@ update_pkg_set_specific() {
 				grep-dctrl -sPackage -n -FMaintainer,Uploaders pkg-mate-team at lists.alioth.debian.org $SOURCES >> $TMPFILE
 			fi
 			;;
-		15)	# all build depends of mate
-			use_previous_sets_build_depends
-			;;
-		16)	# xfce and everything it depends on
+		xfce)	# xfce and everything it depends on
 			chdist --data-dir=$CHPATH grep-dctrl-packages $DISTNAME -X \( -FPriority required --or -FPackage xfce4 \) > ${TMPFILE2}
 			get_installable_set
 			if [ -f $TMPFILE ] ; then
 				convert_from_deb822_into_source_packages_only
 			fi
 			;;
-		17)	# all build depends of xfce
-			use_previous_sets_build_depends
-			;;
-		18)	# Debian Edu
+		debian-edu)
+			# Debian Edu
 			# all recommends of the education-* packages
 			# (the Debian Edu metapackages don't use depends but recommends…)
 			chdist --data-dir=$CHPATH grep-dctrl-packages $DISTNAME -n -sRecommends -r -FPackage education-*  |sed "s#([^()]*)##g ; s#\[[^][]*\]##g ; s#,##g" | sort -u > ${TMPFILE}
@@ -311,10 +313,8 @@ update_pkg_set_specific() {
 				convert_from_deb822_into_source_packages_only
 			fi
 			;;
-		19)	# all build depends of Debian Edu
-			use_previous_sets_build_depends
-			;;
-		20)	# freedombox-setup and plinth and everything they depend on
+		freedombox)
+			# freedombox-setup and plinth and everything they depend on
 			chdist --data-dir=$CHPATH grep-dctrl-packages $DISTNAME -X \( -FPriority required --or -FPackage freedombox-setup --or -FPackage plinth \) > ${TMPFILE2}
 			get_installable_set
 			if [ -f $TMPFILE ] ; then
@@ -327,10 +327,7 @@ update_pkg_set_specific() {
 				done
 			fi
 			;;
-		21)	# all build depends of freedombox-setup and plinth
-			use_previous_sets_build_depends
-			;;
-		22)	# grml
+		grml)	# grml
 			URL="http://grml.org/files/grml64-full_latest/dpkg.selections"
 			echo "Downloading $URL now."
 			curl $URL | cut -f1 > $TMPFILE
@@ -344,10 +341,7 @@ update_pkg_set_specific() {
 				ABORT=true
 			fi
 			;;
-		23)	# all build depends of grml
-			use_previous_sets_build_depends
-			;;
-		24)	# tails
+		tails)	# tails
 			URL="https://nightly.tails.boum.org/build_Tails_ISO_devel/lastSuccessful/archive/latest.iso.build-manifest"
 			echo "Downloading $URL now."
 			curl $URL > $TMPFILE
@@ -361,77 +355,90 @@ update_pkg_set_specific() {
 				ABORT=true
 			fi
 			;;
-		25)	# all build depends of tails
-			use_previous_sets_build_depends
-			;;
-		26)	# installed by Subgraph OS
+		subgraph_OS)
+			# installed by Subgraph OS
 			# one day we will get a proper data provider from Subgraph OSA...
 			# (so far it was a manual "dpkg -l")
 			cat /srv/jenkins/bin/reproducible_installed_by_subgraphos > $TMPFILE
 			packages_list_to_deb822
 			convert_from_deb822_into_source_packages_only
 			;;
-		27)	# all build depends of Subgraph OS
-			use_previous_sets_build_depends
-			;;
-		28)	# debian-boot at l.d.o maintainers
+		maint_debian-boot)
+			# debian-boot at l.d.o maintainers
 			grep-dctrl -sPackage -n -FMaintainer,Uploaders debian-boot at lists.debian.org $SOURCES > $TMPFILE
 			;;
-		29)	# Debian Med Packaging Team <debian-med-packaging at lists.alioth.debian.org>
+		maint_debian-med)
+			# Debian Med Packaging Team <debian-med-packaging at lists.alioth.debian.org>
 			grep-dctrl -sPackage -n -FMaintainer,Uploaders debian-med-packaging at lists.alioth.debian.org $SOURCES > $TMPFILE
 			;;
-		30)	# debian-ocaml-maint at l.d.o maintainers
+		maint_debian-ocaml)
+			# debian-ocaml-maint at l.d.o maintainers
 			grep-dctrl -sPackage -n -FMaintainer,Uploaders debian-ocaml-maint at lists.debian.org $SOURCES > $TMPFILE
 			;;
-		31)	# debian python maintainers
+		maint_debian-python)
+			# debian python maintainers
 			grep-dctrl -sPackage -n -FMaintainer,Uploaders python-modules-team at lists.alioth.debian.org $SOURCES > $TMPFILE
 			grep-dctrl -sPackage -n -FMaintainer,Uploaders python-apps-team at lists.alioth.debian.org $SOURCES >> $TMPFILE
 			;;
-		32)	# debian-qa maintainers
+		maint_debian-qa)
+			# debian-qa maintainers
 			grep-dctrl -sPackage -n -FMaintainer,Uploaders packages at qa.debian.org $SOURCES > $TMPFILE
 			;;
-		33)	# Debian Science Team
+		maint_debian-science)
+			# Debian Science Team
 			grep-dctrl -sPackage -n -FMaintainer,Uploaders debian-science-maintainers at lists.alioth.debian.org $SOURCES > $TMPFILE
 			;;
-		34)	# debian-x at l.d.o maintainers
+		maint_debian-x)
+			# debian-x at l.d.o maintainers
 			grep-dctrl -sPackage -n -FMaintainer,Uploaders debian-x at lists.debian.org $SOURCES > $TMPFILE
 			;;
-		35)	# lua packages
+		maint_lua)
+			# lua packages
 			grep-dctrl -sPackage -n -FPackage -e ^lua.* $SOURCES > $TMPFILE
 			grep-dctrl -sPackage -n -FBuild-Depends dh-lua $SOURCES | sed "s#([^()]*)##g ; s#\[[^][]*\]##g ; s#,##g" | sort -u >> $TMPFILE
 			;;
-		36)	# pkg-fonts-devel
+		maint_pkg-fonts-devel)
+			# pkg-fonts-devel
 			grep-dctrl -sPackage -n -FMaintainer,Uploaders pkg-fonts-devel at lists.alioth.debian.org $SOURCES > $TMPFILE
 			;;
-		37)	# pkg-games-devel
+		maint_pkg-games-devel)
+			# pkg-games-devel
 			grep-dctrl -sPackage -n -FMaintainer,Uploaders pkg-games-devel at lists.alioth.debian.org $SOURCES > $TMPFILE
 			;;
-		38)	# pkg-golang-maintainers
+		maint_pkg-golang-maintainers)
+			# pkg-golang-maintainers
 			grep-dctrl -sPackage -n -FMaintainer,Uploaders pkg-golang-devel at lists.alioth.debian.org $SOURCES > $TMPFILE
 			grep-dctrl -sPackage -n -FBuild-Depends golang-go $SOURCES | sed "s#([^()]*)##g ; s#\[[^][]*\]##g ; s#,##g" | sort -u >> $TMPFILE
 			;;
-		39)	# pkg-haskell-maintainers
+		maint_pkg-haskell-maintainers)
+			# pkg-haskell-maintainers
 			grep-dctrl -sPackage -n -FMaintainer,Uploaders pkg-haskell-maintainers at lists.alioth.debian.org $SOURCES > $TMPFILE
 			grep-dctrl -sPackage -n -FBuild-Depends ghc $SOURCES | sed "s#([^()]*)##g ; s#\[[^][]*\]##g ; s#,##g" | sort -u >> $TMPFILE
 			;;
-		40)	# pkg-java-maintainers
+		maint_pkg-java-maintainers)
+			# pkg-java-maintainers
 			grep-dctrl -sPackage -n -FMaintainer,Uploaders pkg-java-maintainers at lists.alioth.debian.org $SOURCES > $TMPFILE
 			grep-dctrl -sPackage -n -FMaintainer,Uploaders openjdk at lists.launchpad.net $SOURCES >> $TMPFILE
 			grep-dctrl -sPackage -n -FBuild-Depends default-jdk -o -FBuild-Depends-Indep default-jdk $SOURCES | sed "s#([^()]*)##g ; s#\[[^][]*\]##g ; s#,##g" | sort -u >> $TMPFILE
 			;;
-		41)	# pkg-javascript-devel
+		maint_pkg-javascript-devel)
+			# pkg-javascript-devel
 			grep-dctrl -sPackage -n -FMaintainer,Uploaders pkg-javascript-devel at lists.alioth.debian.org $SOURCES > $TMPFILE
 			;;
-		42)	# pkg-multimedia-maintainers
+		maint_pkg-multimedia-maintainers)
+			# pkg-multimedia-maintainers
 			grep-dctrl -sPackage -n -FMaintainer,Uploaders pkg-multimedia-maintainers at lists.alioth.debian.org $SOURCES > $TMPFILE
 			;;
-		43)	# pkg-perl-maintainers
+		maint_pkg-perl-maintainers)
+			# pkg-perl-maintainers
 			grep-dctrl -sPackage -n -FMaintainer,Uploaders pkg-perl-maintainers at lists.alioth.debian.org $SOURCES > $TMPFILE
 			;;
-		44)	# pkg-php-pear
+		maint_pkg-php-pear)
+			# pkg-php-pear
 			grep-dctrl -sPackage -n -FMaintainer,Uploaders pkg-php-pear at lists.alioth.debian.org $SOURCES > $TMPFILE
 			;;
-		45)	# pkg-ruby-extras-maintainers
+		maint_pkg-ruby-extras-maintainers)
+			# pkg-ruby-extras-maintainers
 			grep-dctrl -sPackage -n -FMaintainer,Uploaders pkg-ruby-extras-maintainers at lists.alioth.debian.org $SOURCES > $TMPFILE
 			;;
 	esac

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/qa/jenkins.debian.net.git



More information about the Qa-jenkins-scm mailing list