commit warewulf for openSUSE:Factory
Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package warewulf for openSUSE:Factory checked in at 2024-03-27 20:43:33 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/warewulf (Old) and /work/SRC/openSUSE:Factory/.warewulf.new.1905 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "warewulf" Wed Mar 27 20:43:33 2024 rev:13 rq:1162930 version:3.8.1 Changes: -------- --- /work/SRC/openSUSE:Factory/warewulf/warewulf.changes 2024-02-26 19:46:06.927480461 +0100 +++ /work/SRC/openSUSE:Factory/.warewulf.new.1905/warewulf.changes 2024-03-27 20:44:09.736647981 +0100 @@ -1,0 +2,7 @@ +Sat Mar 23 15:48:04 UTC 2024 - Egbert Eich <eich@suse.com> + +- Make build reproducible (bsc#1217973). + * ipmi-For-reproducible-builds-equalize-time-stamps-in-CPIO-archives.patch + * provision-For-reproducible-builds-equalize-time-stamps-in-CPIO-archives.patch + +------------------------------------------------------------------- New: ---- ipmi-For-reproducible-builds-equalize-time-stamps-in-CPIO-archives.patch provision-For-reproducible-builds-equalize-time-stamps-in-CPIO-archives.patch BETA DEBUG BEGIN: New:- Make build reproducible (bsc#1217973). * ipmi-For-reproducible-builds-equalize-time-stamps-in-CPIO-archives.patch * provision-For-reproducible-builds-equalize-time-stamps-in-CPIO-archives.patch New: * ipmi-For-reproducible-builds-equalize-time-stamps-in-CPIO-archives.patch * provision-For-reproducible-builds-equalize-time-stamps-in-CPIO-archives.patch BETA DEBUG END: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ warewulf.spec ++++++ --- /var/tmp/diff_new_pack.4S48f4/_old 2024-03-27 20:44:10.672682492 +0100 +++ /var/tmp/diff_new_pack.4S48f4/_new 2024-03-27 20:44:10.672682492 +0100 @@ -58,6 +58,7 @@ Patch14: busybox-Newer-versions-of-glibc-do-not-ship-rpc-functions-any-more-130.patch Patch15: common-Correctly-detect-SUSE-system-for-system-services.patch Patch16: common-Consolidate-system-service-module-for-SUSE.patch +#Patch17: provision-Update-ipxe-to-Github-commitid-133f4c4.patch Patch18: Remove-shebang-from-scripts-only-intended-to-be-sourced.patch Patch19: vnfs-SUSE-copy-repo-files-to-correct-location.patch Patch20: vnfs-SUSE-make-sure-zypper-auto-accepts-licenses.patch @@ -86,6 +87,8 @@ Patch42: vnfs-Do-not-pull-in-recommended-packages-on-SUSE.patch Patch43: Add-suse-to-overlay-template.patch Patch44: vnfs-On-SUSE-don-t-copy-repository-information-into-chroot.patch +Patch45: provision-For-reproducible-builds-equalize-time-stamps-in-CPIO-archives.patch +Patch46: ipmi-For-reproducible-builds-equalize-time-stamps-in-CPIO-archives.patch %if "%{?flavor}" != "common" BuildRequires: bsdtar @@ -369,6 +372,8 @@ %prep %setup -q -n %{name}3-%{version} +cp %{SOURCE100} ./common/README.SUSE-INSTALL-RECIPE +cp %{SOURCE101} ./common/README.SUSE-VM-CONFIG-RECIPE # common %patch -P 0 -p1 %patch -P 6 -p1 @@ -378,8 +383,6 @@ %patch -P 26 -p1 %patch -P 29 -p1 %patch -P 30 -p1 -cp %{SOURCE100} ./common/README.SUSE-INSTALL-RECIPE -cp %{SOURCE101} ./common/README.SUSE-VM-CONFIG-RECIPE # provision %patch -P 1 -p1 %patch -P 4 -p1 @@ -394,6 +397,7 @@ %patch -P 38 -p1 %patch -P 39 -p1 %patch -P 40 -p1 +%patch -P 45 -p1 # vnfs %patch -P 5 -p1 %patch -P 10 -p1 @@ -417,16 +421,12 @@ %patch -P 36 -p1 # ipmi %patch -P 25 -p1 +%patch -P 46 -p1 # common %patch -P 18 -p1 %patch -P 32 -p1 %patch -P 33 -p1 %patch -P 34 -p1 -# reproducible builds -sed -i 's/cpio -o/xargs touch -h -d @1690848000 ; find . | sort | cpio -o --reproducible/' \ - provision/initramfs/capabilities/*/Makefile.am \ - ipmi/initramfs/Makefile.am \ - provision/initramfs/Makefile.am %build %if "%{?flavor}" == "common" ++++++ ipmi-For-reproducible-builds-equalize-time-stamps-in-CPIO-archives.patch ++++++ From: Egbert Eich <eich@suse.com> Date: Mon Mar 25 22:33:32 2024 +0100 Subject: [ipmi] For reproducible builds equalize time stamps in CPIO archives Patch-mainline: Upstream Git-commit: bea56d0379a3bfdc58cf1487282693217f80996b References: bsc#1217973 For reproducible builds, set time stamps in CPIO files to a well defined value since these archives are distributed. (On reproducible builds: https://reproducible-builds.org/) Signed-off-by: Egbert Eich <eich@suse.com> Signed-off-by: Egbert Eich <eich@suse.de> --- ipmi/initramfs/Makefile.am | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/ipmi/initramfs/Makefile.am b/ipmi/initramfs/Makefile.am index 4a2b364..3470b17 100644 --- a/ipmi/initramfs/Makefile.am +++ b/ipmi/initramfs/Makefile.am @@ -9,7 +9,7 @@ IPMITOOL_SOURCE = $(top_srcdir)/3rd_party/BSD/ipmitool-$(IPMITOOL_VERSION).tar.b ipmitool: @ if [ -n "@local_ipmitool_path@" -a -f "@local_ipmitool_path@" ]; then \ - cp "@local_ipmitool_path@" ipmitool; \ + cp -av "@local_ipmitool_path@" ipmitool; \ else \ if [ ! -d "_work/ipmitool/ipmitool-$(IPMITOOL_VERSION)" ]; then \ echo "Preparing to build ipmitool" ;\ @@ -42,14 +42,15 @@ rootfs: ipmitool mkdir rootfs/lib64 mkdir -p rootfs/warewulf/provision/ chmod -R u+w rootfs/ - cp -a ipmitool rootfs/sbin/ - find rootfs -type f -perm -o+x -print | xargs ldd | grep "=>" | awk '{print $$3}' | grep "^/" | sort | uniq | while read i; do cp -L --parents $$i rootfs/; done + cp -av ipmitool rootfs/sbin/ + find rootfs -type f -perm -o+x -print | xargs ldd | grep "=>" | awk '{print $$3}' | grep "^/" | sort | uniq | while read i; do cp -avL --parents $$i rootfs/; done chmod -R +w rootfs/ - find rootfs -type f -perm -o+x -print | xargs strip -g - install -m 755 $(srcdir)/10-ipmiconfig rootfs/warewulf/provision/10-ipmiconfig + find rootfs -type f -perm -o+x -print | xargs strip -pg + install -p -m 755 $(srcdir)/10-ipmiconfig rootfs/warewulf/provision/10-ipmiconfig capability.cpio: rootfs - cd rootfs/; find . | cpio -o -H newc -F ../capability.cpio + find rootfs/ -type d | xargs touch -r $(srcdir)/10-ipmiconfig + cd rootfs/; find . | cpio -o -H newc --reproducible -F ../capability.cpio install-data-local: capability.cpio install -d -m 755 $(DESTDIR)/$(WAREWULF_STATEDIR)/warewulf/initramfs/$(MACHINE) ++++++ provision-For-reproducible-builds-equalize-time-stamps-in-CPIO-archives.patch ++++++ From: Egbert Eich <eich@suse.com> Date: Sat Mar 23 17:30:00 2024 +0100 Subject: [provision] For reproducible builds equalize time stamps in CPIO archives Patch-mainline: Upstream Git-commit: 41d3b723af31fc9aea19e0844dce7753bdddfa96 References: bsc#1217973 For reproducible builds, set time stamps in CPIO files to a well defined value since these archives are distributed. (On reproducible builds: https://reproducible-builds.org/) Signed-off-by: Egbert Eich <eich@suse.com> Signed-off-by: Egbert Eich <eich@suse.de> --- provision/initramfs/Makefile.am | 28 ++++++++++++---------- .../capabilities/provision-adhoc/Makefile.am | 5 ++-- .../capabilities/provision-files/Makefile.am | 5 ++-- .../capabilities/provision-selinux/Makefile.am | 5 ++-- .../capabilities/provision-unionfs/Makefile.am | 3 ++- .../capabilities/provision-vnfs/Makefile.am | 6 +++-- .../capabilities/setup-filesystems/Makefile.am | 5 ++-- .../capabilities/transport-http/Makefile.am | 5 ++-- 8 files changed, 36 insertions(+), 26 deletions(-) diff --git a/provision/initramfs/Makefile.am b/provision/initramfs/Makefile.am index 262b971..667af7e 100644 --- a/provision/initramfs/Makefile.am +++ b/provision/initramfs/Makefile.am @@ -161,21 +161,22 @@ rootfs: busybox e2fsprogs libarchive parted else \ $(MAKE) -C _work/$(PARTED_DIR)/ DESTDIR=`pwd`/rootfs install; \ fi - if [ -f /usr/sbin/haveged ]; then cp -a /usr/sbin/haveged rootfs/usr/sbin/haveged; fi - cp -L --parents /lib*/ld-linux* rootfs/ - find rootfs -type f -perm -o+x -print | grep -v ld-linux | xargs ldd | grep "=>" | awk '{print $$3}' | grep "^/" | sort | uniq | while read i; do cp -L --parents $$i rootfs/ && chmod 755 rootfs/$$i; done + if [ -f /usr/sbin/haveged ]; then cp -av /usr/sbin/haveged rootfs/usr/sbin/haveged; fi + cp -avL --parents /lib*/ld-linux* rootfs/ + find rootfs -type f -perm -o+x -print | grep -v ld-linux | xargs ldd | grep "=>" | awk '{print $$3}' | grep "^/" | sort | uniq | while read i; do cp -av -L --parents $$i rootfs/ && chmod 755 rootfs/$$i; done rm -f rootfs/linuxrc rootfs/lib64/*.la rootfs/lib/*.la rootfs/usr/lib64/*.la rootfs/usr/lib/*.la rm -rf rootfs/usr/share rootfs/usr/include rootfs/usr/lib/pkgconfig find -type d \! -perm -u=w -exec chmod u+w {} \; - find rootfs -type f -perm -o+x -print | xargs strip -g - - install -m 755 $(srcdir)/init rootfs/init - install -m 755 $(srcdir)/functions rootfs/etc/functions - install -m 755 $(srcdir)/dhcp-script rootfs/sbin/ - install -m 755 $(srcdir)/detect rootfs/sbin/ - install -m 755 $(srcdir)/transporthandler rootfs/sbin/ - install -m 755 $(srcdir)/provisionhandler rootfs/sbin/ - install -m 755 $(srcdir)/wwlogger rootfs/sbin/ + find rootfs -type f -perm -o+x -print | xargs strip -pg + + install -p -m 755 $(srcdir)/init rootfs/init + touch -r $(srcdir)/transporthandler rootfs/init + install -p -m 755 $(srcdir)/functions rootfs/etc/functions + install -p -m 755 $(srcdir)/dhcp-script rootfs/sbin/ + install -p -m 755 $(srcdir)/detect rootfs/sbin/ + install -p -m 755 $(srcdir)/transporthandler rootfs/sbin/ + install -p -m 755 $(srcdir)/provisionhandler rootfs/sbin/ + install -p -m 755 $(srcdir)/wwlogger rootfs/sbin/ ln -s transporthandler rootfs/sbin/wwgetvnfs ln -s transporthandler rootfs/sbin/wwgetscript ln -s transporthandler rootfs/sbin/wwgetnodeconfig @@ -183,7 +184,8 @@ rootfs: busybox e2fsprogs libarchive parted initramfs.cpio: rootfs install -m 644 $(srcdir)/devs.cpio initramfs.cpio - cd rootfs/; find . | cpio -o -H newc -A -F ../initramfs.cpio + find rootfs/ -type d -o -type l | xargs touch -h -r devs.cpio + cd rootfs/; find . | cpio -o -H newc --reproducible -A -F ../initramfs.cpio install-data-local: initramfs.cpio install -d -m 755 $(DESTDIR)/$(WAREWULF_STATEDIR)/warewulf/initramfs/ diff --git a/provision/initramfs/capabilities/provision-adhoc/Makefile.am b/provision/initramfs/capabilities/provision-adhoc/Makefile.am index 74a78cb..d37ab73 100644 --- a/provision/initramfs/capabilities/provision-adhoc/Makefile.am +++ b/provision/initramfs/capabilities/provision-adhoc/Makefile.am @@ -9,11 +9,12 @@ rootfs: mkdir -p rootfs/warewulf/provision/ @ for i in $(METHODSCRIPTS); do \ echo "install -m 755 $$i rootfs/warewulf/provision/$$i" ; \ - install -m 755 $(srcdir)/$$i rootfs/warewulf/provision/$$i; \ + install -p -m 755 $(srcdir)/$$i rootfs/warewulf/provision/$$i; \ done capability.cpio: rootfs - cd rootfs/; find . | cpio -o -H newc -F ../capability.cpio + find rootfs/ -type d | xargs touch -r $(word 1,$(METHODSCRIPTS)); + cd rootfs/; find . | cpio -o -H newc --reproducible -F ../capability.cpio install-data-local: capability.cpio install -d -m 755 $(DESTDIR)/$(WAREWULF_STATEDIR)/warewulf/initramfs/$(MACHINE)/capabilities diff --git a/provision/initramfs/capabilities/provision-files/Makefile.am b/provision/initramfs/capabilities/provision-files/Makefile.am index aef501a..d4dcc96 100644 --- a/provision/initramfs/capabilities/provision-files/Makefile.am +++ b/provision/initramfs/capabilities/provision-files/Makefile.am @@ -9,11 +9,12 @@ rootfs: mkdir -p rootfs/warewulf/provision/ @ for i in $(METHODSCRIPTS); do \ echo "install -m 755 $$i rootfs/warewulf/provision/$$i" ; \ - install -m 755 $(srcdir)/$$i rootfs/warewulf/provision/$$i; \ + install -p -m 755 $(srcdir)/$$i rootfs/warewulf/provision/$$i; \ done capability.cpio: rootfs - cd rootfs/; find . | cpio -o -H newc -F ../capability.cpio + find rootfs/ -type d | xargs touch -r $(word 1,$(METHODSCRIPTS)); + cd rootfs/; find . | cpio -o -H newc --reproducible -F ../capability.cpio install-data-local: capability.cpio install -d -m 755 $(DESTDIR)/$(WAREWULF_STATEDIR)/warewulf/initramfs/$(MACHINE)/capabilities diff --git a/provision/initramfs/capabilities/provision-selinux/Makefile.am b/provision/initramfs/capabilities/provision-selinux/Makefile.am index e98a3b1..53d96dc 100644 --- a/provision/initramfs/capabilities/provision-selinux/Makefile.am +++ b/provision/initramfs/capabilities/provision-selinux/Makefile.am @@ -9,11 +9,12 @@ rootfs: mkdir -p rootfs/warewulf/provision/ @ for i in $(METHODSCRIPTS); do \ echo "install -m 755 $$i rootfs/warewulf/provision/$$i" ; \ - install -m 755 $(srcdir)/$$i rootfs/warewulf/provision/$$i; \ + install -p -m 755 $(srcdir)/$$i rootfs/warewulf/provision/$$i; \ done capability.cpio: rootfs - cd rootfs/; find . | cpio -o -H newc -F ../capability.cpio + find rootfs/ -type d | xargs touch -r $(word 1,$(METHODSCRIPTS)); + cd rootfs/; find . | cpio -o -H newc --reproducible -F ../capability.cpio install-data-local: capability.cpio install -d -m 755 $(DESTDIR)/$(WAREWULF_STATEDIR)/warewulf/initramfs/$(MACHINE)/capabilities diff --git a/provision/initramfs/capabilities/provision-unionfs/Makefile.am b/provision/initramfs/capabilities/provision-unionfs/Makefile.am index 2e045af..eb67e2e 100644 --- a/provision/initramfs/capabilities/provision-unionfs/Makefile.am +++ b/provision/initramfs/capabilities/provision-unionfs/Makefile.am @@ -36,7 +36,8 @@ rootfs: unionfs find rootfs -type f -perm -o+x -print | xargs strip -g capability.cpio: rootfs - cd rootfs/; find . | cpio -o -H newc -F ../capability.cpio + find rootfs/ -type d | xargs touch -r unionfs; + cd rootfs/; find . | cpio -o -H newc --reproducible -F ../capability.cpio install-data-local: capability.cpio install -d -m 755 $(DESTDIR)/$(WAREWULF_STATEDIR)/warewulf/initramfs/$(MACHINE)/capabilities diff --git a/provision/initramfs/capabilities/provision-vnfs/Makefile.am b/provision/initramfs/capabilities/provision-vnfs/Makefile.am index 8f72707..742c23e 100644 --- a/provision/initramfs/capabilities/provision-vnfs/Makefile.am +++ b/provision/initramfs/capabilities/provision-vnfs/Makefile.am @@ -9,11 +9,13 @@ rootfs: mkdir -p rootfs/warewulf/provision/ @ for i in $(METHODSCRIPTS); do \ echo "install -m 755 $$i rootfs/warewulf/provision/$$i" ; \ - install -m 755 $(srcdir)/$$i rootfs/warewulf/provision/$$i; \ + install -p -m 755 $(srcdir)/$$i rootfs/warewulf/provision/$$i; \ done capability.cpio: rootfs - cd rootfs/; find . | cpio -o -H newc -F ../capability.cpio + find rootfs/ -type d | xargs touch -r $(word 1,$(METHODSCRIPTS)); + find rootfs/ -name 50-config -o -name 70-kernelmodules | xargs touch -r $(word 1,$(METHODSCRIPTS)); + cd rootfs/; find . | cpio -o -H newc --reproducible -F ../capability.cpio install-data-local: capability.cpio install -d -m 755 $(DESTDIR)/$(WAREWULF_STATEDIR)/warewulf/initramfs/$(MACHINE)/capabilities diff --git a/provision/initramfs/capabilities/setup-filesystems/Makefile.am b/provision/initramfs/capabilities/setup-filesystems/Makefile.am index 5ecb8ab..69f536b 100644 --- a/provision/initramfs/capabilities/setup-filesystems/Makefile.am +++ b/provision/initramfs/capabilities/setup-filesystems/Makefile.am @@ -9,11 +9,12 @@ rootfs: mkdir -p rootfs/warewulf/provision/ @ for i in $(METHODSCRIPTS); do \ echo "install -m 755 $$i rootfs/warewulf/provision/$$i" ; \ - install -m 755 $(srcdir)/$$i rootfs/warewulf/provision/$$i; \ + install -p -m 755 $(srcdir)/$$i rootfs/warewulf/provision/$$i; \ done capability.cpio: rootfs - cd rootfs/; find . | cpio -o -H newc -F ../capability.cpio + find rootfs/ -type d | xargs touch -r $(word 1,$(METHODSCRIPTS)); + cd rootfs/; find . | cpio -o -H newc --reproducible -F ../capability.cpio install-data-local: capability.cpio install -d -m 755 $(DESTDIR)/$(WAREWULF_STATEDIR)/warewulf/initramfs/$(MACHINE)/capabilities diff --git a/provision/initramfs/capabilities/transport-http/Makefile.am b/provision/initramfs/capabilities/transport-http/Makefile.am index ad36b10..6353324 100644 --- a/provision/initramfs/capabilities/transport-http/Makefile.am +++ b/provision/initramfs/capabilities/transport-http/Makefile.am @@ -12,11 +12,12 @@ rootfs: mkdir -p rootfs/warewulf/transports/$(TRANSPORT_NAME) @ for i in $(METHODSCRIPTS); do \ echo "install -m 755 $$i rootfs/warewulf/transports/$(TRANSPORT_NAME)/$$i" ; \ - install -m 755 $(srcdir)/$$i rootfs/warewulf/transports/$(TRANSPORT_NAME)/$$i; \ + install -p -m 755 $(srcdir)/$$i rootfs/warewulf/transports/$(TRANSPORT_NAME)/$$i; \ done capability.cpio: rootfs - cd rootfs/; find . | cpio -o -H newc -F ../capability.cpio + find rootfs/ -type d | xargs touch -r $(word 1,$(METHODSCRIPTS)); + cd rootfs/; find . | cpio -o -H newc --reproducible -F ../capability.cpio install-data-local: capability.cpio install -d -m 755 $(DESTDIR)/$(WAREWULF_STATEDIR)/warewulf/initramfs/$(MACHINE)/capabilities
participants (1)
-
Source-Sync