[Qa-jenkins-scm] [Git][qa/jenkins.debian.net][master] 2 commits: reproducible: Support arbitrary package filters when generating deb822 output.
Holger Levsen
gitlab at salsa.debian.org
Thu Dec 6 13:57:07 GMT 2018
Holger Levsen pushed to branch master at Debian QA / jenkins.debian.net
Commits:
607abf0b by Chris Lamb at 2018-12-06T13:56:34Z
reproducible: Support arbitrary package filters when generating deb822 output.
We were previously encountering errors when filtering excessively-long package
lists. In particular:
/tmp/jenkins-script-DMnm8bZM: line 25: /usr/bin/grep-dctrl: Argument list too long
This was because we were constructing an excessively-long command-line along
the lines of "(foo|bar|baz...)". This commit changes the implementation to
iterate over Packages file instead to support arbitrary filter sizes.
This is related (but orthogonal...) to MR !15.
Signed-off-by: Holger Levsen <holger at layer-acht.org>
- - - - -
6a6abf09 by Chris Lamb at 2018-12-06T13:56:51Z
Add support for calculating a PureOS package set.
Signed-off-by: Holger Levsen <holger at layer-acht.org>
- - - - -
2 changed files:
- bin/reproducible_create_meta_pkg_sets.sh
- bin/reproducible_pkgsets.csv
Changes:
=====================================
bin/reproducible_create_meta_pkg_sets.sh
=====================================
@@ -21,8 +21,21 @@ ABORT=false
# helper functions
packages_list_to_deb822() {
- ALL_PKGS=$(cat $TMPFILE | cut -d ":" -f1 | sed "s#([^()]*)##g ; s#\[[^][]*\]##g ; s#,##g ; s# #\n#g" |sort -u | tr '\n' '|')
- grep-dctrl -F Package -e '^('"$ALL_PKGS"')$' $PACKAGES > $TMPFILE
+ script=$(cat <<'EOF'
+ use Dpkg::Control;
+ my $fd;
+ open($fd, '<', $ARGV[0]) or die $!;
+ my %packages = map { chomp; $_ => 1 } <STDIN>;
+ while (1) {
+ my $deb822 = Dpkg::Control->new();
+ last unless $deb822->parse($fd);
+ print "$deb822\n" if $packages{$deb822->{'Package'}};
+ }
+ close($fd);
+EOF
+ )
+ perl -e "$script" $PACKAGES < $TMPFILE > $TMPFILE2
+ mv $TMPFILE2 $TMPFILE
}
tails_build_manifest_to_deb822() {
@@ -390,6 +403,20 @@ update_pkg_set_specific() {
ABORT=true
fi
;;
+ pureos) # pureos
+ URL="https://repo.puri.sm/pureos/dists/green/main/source/Sources.gz"
+ echo "Downloading $URL now."
+ curl $URL | gunzip > $TMPFILE
+ if [ -s $TMPFILE ] ; then
+ echo "parsing $TMPFILE now..."
+ convert_from_deb822_into_source_packages_only
+ else
+ rm $TMPFILE
+ MESSAGE="Warning: could not download PureOS's Sources file, skipping pkg set..."
+ irc_message debian-reproducible $MESSAGE
+ ABORT=true
+ fi
+ ;;
subgraph_OS)
# installed by Subgraph OS
# one day we will get a proper data provider from Subgraph OS...
=====================================
bin/reproducible_pkgsets.csv
=====================================
@@ -27,6 +27,8 @@ Debian distribution,grml
Debian distribution,grml_build-depends
Debian distribution,tails
Debian distribution,tails_build-depends
+Debian distribution,pureos
+Debian distribution,pureos_build-depends
Debian distribution,subgraph_OS
Debian distribution,subgraph_OS_build-depends
maintenance team,maint_debian-accessibility
View it on GitLab: https://salsa.debian.org/qa/jenkins.debian.net/compare/709fd65506d56c20bc433896d63e3ff5cba06ea6...6a6abf0920d8dd9d5b339e02ca99d581b8b97fcc
--
View it on GitLab: https://salsa.debian.org/qa/jenkins.debian.net/compare/709fd65506d56c20bc433896d63e3ff5cba06ea6...6a6abf0920d8dd9d5b339e02ca99d581b8b97fcc
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/20181206/6fcac2e9/attachment-0001.html>
More information about the Qa-jenkins-scm
mailing list