Bug#791913: ceph: please make the build reproducible
> Would you consider applying this patch and uploading? Friendly ping on this :) Best wishes, -- ,''`. : :' : Chris Lamb `. `'` la...@debian.org / chris-lamb.co.uk `-
Bug#791913: ceph: please make the build reproducible
Dan Mick wrote: > I would add a comment explaining the sort or it will surely be > forgotten. It seems you forgot to CC me (or 791913-submitter@) so I did not see this in 402 days! Updated patch attached. Regards, -- ,''`. : :' : Chris Lamb `. `'` la...@debian.org / chris-lamb.co.uk `- diff --git a/debian/rules b/debian/rules index b977a45..444cfcb 100755 --- a/debian/rules +++ b/debian/rules @@ -59,18 +59,20 @@ override_dh_auto_install: override_dh_installinit: dh_installinit --no-start dh_installinit -pceph --no-start --name=rbdmap - # Install upstart configurations using dh_installinit - for conf in `ls -1 src/upstart/ceph*.conf | grep -v mds`; do \ + # Install upstart configurations using dh_installinit. We sort to + # ensure that in entries added to the maintainer scripts appear in a + # reproducible order. + for conf in `ls -1 src/upstart/ceph*.conf | grep -v mds | LC_ALL=C sort`; do \ name=`basename $$conf | cut -d . -f 1`; \ cp -v $$conf debian/ceph.$$name.upstart; \ dh_installinit -pceph --no-start --name=$$name; \ done - for conf in `ls -1 src/upstart/ceph-mds*.conf`; do \ + for conf in `ls -1 src/upstart/ceph-mds*.conf | LC_ALL=C sort`; do \ name=`basename $$conf | cut -d . -f 1`; \ cp -v $$conf debian/ceph-mds.$$name.upstart; \ dh_installinit -pceph-mds --no-start --name=$$name; \ done - for conf in `ls -1 src/upstart/radosgw*.conf`; do \ + for conf in `ls -1 src/upstart/radosgw*.conf | LC_ALL=C sort`; do \ name=`basename $$conf | cut -d . -f 1`; \ [ $$name = "radosgw" ] && name="radosgw-instance";\ cp -v $$conf debian/radosgw.$$name.upstart; \
Bug#791913: ceph: please make the build reproducible
I would add a comment explaining the sort or it will surely be forgotten. -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Bug#791913: ceph: please make the build reproducible
Source: ceph Version: 0.80.9-2 Severity: wishlist Tags: patch User: reproducible-bui...@lists.alioth.debian.org Usertags: randomness X-Debbugs-Cc: reproducible-bui...@lists.alioth.debian.org Hi, While working on the reproducible builds effort [1], we have noticed that ceph could not be built reproducibly. This is because the dh_installinit snippets that are placed into the post{inst,rm} scripts are generated in a filesystem — and thus non-deterministic — order. The attached patch removes this randomness from the build system by simply sorting the filenames. Once applied, ceph can be built reproducibly in our reproducible toolchain. [1]: https://wiki.debian.org/ReproducibleBuilds Regards, -- ,''`. : :' : Chris Lamb `. `'` la...@debian.org / chris-lamb.co.uk `- diff --git a/debian/rules b/debian/rules index b3b0ccb..45833b4 100755 --- a/debian/rules +++ b/debian/rules @@ -62,17 +62,17 @@ override_dh_installinit: dh_installinit --no-start dh_installinit -pceph --no-start --name=rbdmap # Install upstart configurations using dh_installinit - for conf in `ls -1 src/upstart/ceph*.conf | grep -v mds`; do \ + for conf in `ls -1 src/upstart/ceph*.conf | grep -v mds | LC_ALL=C sort`; do \ name=`basename $$conf | cut -d . -f 1`; \ cp -v $$conf debian/ceph.$$name.upstart; \ dh_installinit -pceph --no-start --name=$$name; \ done - for conf in `ls -1 src/upstart/ceph-mds*.conf`; do \ + for conf in `ls -1 src/upstart/ceph-mds*.conf | LC_ALL=C sort`; do \ name=`basename $$conf | cut -d . -f 1`; \ cp -v $$conf debian/ceph-mds.$$name.upstart; \ dh_installinit -pceph-mds --no-start --name=$$name; \ done - for conf in `ls -1 src/upstart/radosgw*.conf`; do \ + for conf in `ls -1 src/upstart/radosgw*.conf | LC_ALL=C sort`; do \ name=`basename $$conf | cut -d . -f 1`; \ [ $$name = radosgw ] name=radosgw-instance;\ cp -v $$conf debian/radosgw.$$name.upstart; \