Diff of the two buildlogs: -- --- b1/build.log 2024-05-08 17:40:47.542606870 +0000 +++ b2/build.log 2024-05-08 17:34:35.942428685 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Wed May 8 05:34:49 -12 2024 -I: pbuilder-time-stamp: 1715189689 +I: Current time: Thu May 9 07:30:54 +14 2024 +I: pbuilder-time-stamp: 1715189454 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/trixie-reproducible-base.tgz] I: copying local configuration @@ -27,52 +27,84 @@ dpkg-source: info: applying drop-rspec-github.patch I: using fakeroot in build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/22607/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/29773/tmp/hooks/D01_modify_environment starting +debug: Running on virt64z. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 May 8 17:31 /bin/sh -> /bin/bash +I: Setting pbuilder2's login shell to /bin/bash +I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other +I: user script /srv/workspace/pbuilder/29773/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/29773/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build/reproducible-path' - BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' - BUILDUSERNAME='pbuilder1' - BUILD_ARCH='armhf' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=3 ' - DISTRIBUTION='trixie' - HOME='/root' - HOST_ARCH='armhf' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="2" [2]="21" [3]="1" [4]="release" [5]="arm-unknown-linux-gnueabihf") + BASH_VERSION='5.2.21(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=armhf + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=4 ' + DIRSTACK=() + DISTRIBUTION=trixie + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=arm + HOST_ARCH=armhf IFS=' ' - INVOCATION_ID='fe8289a1f9964aeb9553b8f57d64035c' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - MAIL='/var/mail/root' - OPTIND='1' - PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' - PBCURRENTCOMMANDLINEOPERATION='build' - PBUILDER_OPERATION='build' - PBUILDER_PKGDATADIR='/usr/share/pbuilder' - PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' - PBUILDER_SYSCONFDIR='/etc' - PPID='22607' - PS1='# ' - PS2='> ' + INVOCATION_ID=bcb7b59131d143279e39c9f61b01a406 + LANG=C + LANGUAGE=it_CH:it + LC_ALL=C + MACHTYPE=arm-unknown-linux-gnueabihf + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnueabihf + PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + PBCURRENTCOMMANDLINEOPERATION=build + PBUILDER_OPERATION=build + PBUILDER_PKGDATADIR=/usr/share/pbuilder + PBUILDER_PKGLIBDIR=/usr/lib/pbuilder + PBUILDER_SYSCONFDIR=/etc + PIPESTATUS=([0]="0") + POSIXLY_CORRECT=y + PPID=29773 PS4='+ ' - PWD='/' - SHELL='/bin/bash' - SHLVL='2' - SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.nYsYnFdG/pbuilderrc_f9ff --distribution trixie --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.nYsYnFdG/b1 --logfile b1/build.log ruby-puppetlabs-spec-helper_7.0.5-1.dsc' - SUDO_GID='113' - SUDO_UID='107' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://10.0.0.15:3142/' + PWD=/ + SHELL=/bin/bash + SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix + SHLVL=3 + SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.nYsYnFdG/pbuilderrc_oCA3 --distribution trixie --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.nYsYnFdG/b2 --logfile b2/build.log ruby-puppetlabs-spec-helper_7.0.5-1.dsc' + SUDO_GID=110 + SUDO_UID=103 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://10.0.0.15:3142/ I: uname -a - Linux cbxi4a 6.1.0-21-armmp #1 SMP Debian 6.1.90-1 (2024-05-03) armv7l GNU/Linux + Linux i-capture-the-hostname 6.1.0-21-arm64 #1 SMP Debian 6.1.90-1 (2024-05-03) aarch64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 May 6 11:27 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/22607/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 May 8 11:25 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/29773/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -284,7 +316,7 @@ Get: 152 http://deb.debian.org/debian trixie/main armhf ruby-rspec all 3.13.0c0e0m0s1-2 [5184 B] Get: 153 http://deb.debian.org/debian trixie/main armhf ruby-rspec-puppet all 4.0.2+ds-1 [46.4 kB] Get: 154 http://deb.debian.org/debian trixie/main armhf ruby-sync all 0.5.0-2 [5540 B] -Fetched 48.3 MB in 4s (11.3 MB/s) +Fetched 48.3 MB in 1s (55.4 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package openssl. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19444 files and directories currently installed.) @@ -795,8 +827,8 @@ Setting up tzdata (2024a-4) ... Current default time zone: 'Etc/UTC' -Local time is now: Wed May 8 17:37:57 UTC 2024. -Universal Time is now: Wed May 8 17:37:57 UTC 2024. +Local time is now: Wed May 8 17:32:32 UTC 2024. +Universal Time is now: Wed May 8 17:32:32 UTC 2024. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up autotools-dev (20220109.1) ... @@ -941,7 +973,11 @@ fakeroot is already the newest version (1.33-1). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. I: Building the package -I: Running cd /build/reproducible-path/ruby-puppetlabs-spec-helper-7.0.5/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../ruby-puppetlabs-spec-helper_7.0.5-1_source.changes +I: user script /srv/workspace/pbuilder/29773/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for trixie +I: user script /srv/workspace/pbuilder/29773/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/ruby-puppetlabs-spec-helper-7.0.5/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../ruby-puppetlabs-spec-helper_7.0.5-1_source.changes dpkg-buildpackage: info: source package ruby-puppetlabs-spec-helper dpkg-buildpackage: info: source version 7.0.5-1 dpkg-buildpackage: info: source distribution unstable @@ -971,13 +1007,13 @@ dh_prep -O--buildsystem=ruby dh_auto_install --destdir=debian/ruby-puppetlabs-spec-helper/ -O--buildsystem=ruby dh_ruby --install /build/reproducible-path/ruby-puppetlabs-spec-helper-7.0.5/debian/ruby-puppetlabs-spec-helper -/usr/bin/ruby3.1 -S gem build --config-file /dev/null --verbose /tmp/d20240508-31704-ks5uvw/gemspec +/usr/bin/ruby3.1 -S gem build --config-file /dev/null --verbose /tmp/d20240509-8169-rk1c1f/gemspec Failed to load /dev/null because it doesn't contain valid YAML hash Successfully built RubyGem Name: puppetlabs_spec_helper Version: 7.0.5 File: puppetlabs_spec_helper-7.0.5.gem -/usr/bin/ruby3.1 -S gem install --config-file /dev/null --verbose --local --verbose --no-document --ignore-dependencies --install-dir debian/ruby-puppetlabs-spec-helper/usr/share/rubygems-integration/all /tmp/d20240508-31704-ks5uvw/puppetlabs_spec_helper-7.0.5.gem +/usr/bin/ruby3.1 -S gem install --config-file /dev/null --verbose --local --verbose --no-document --ignore-dependencies --install-dir debian/ruby-puppetlabs-spec-helper/usr/share/rubygems-integration/all /tmp/d20240509-8169-rk1c1f/puppetlabs_spec_helper-7.0.5.gem Failed to load /dev/null because it doesn't contain valid YAML hash /build/reproducible-path/ruby-puppetlabs-spec-helper-7.0.5/debian/ruby-puppetlabs-spec-helper/usr/share/rubygems-integration/all/gems/puppetlabs_spec_helper-7.0.5/lib/puppetlabs_spec_helper/module_spec_helper.rb /build/reproducible-path/ruby-puppetlabs-spec-helper-7.0.5/debian/ruby-puppetlabs-spec-helper/usr/share/rubygems-integration/all/gems/puppetlabs_spec_helper-7.0.5/lib/puppetlabs_spec_helper/puppet_spec_helper.rb @@ -1021,105 +1057,105 @@ RUBYLIB=. GEM_PATH=/build/reproducible-path/ruby-puppetlabs-spec-helper-7.0.5/debian/ruby-puppetlabs-spec-helper/usr/share/rubygems-integration/all:/build/reproducible-path/ruby-puppetlabs-spec-helper-7.0.5/debian/.debhelper/generated/_source/home/.local/share/gem/ruby/3.1.0:/var/lib/gems/3.1.0:/usr/local/lib/ruby/gems/3.1.0:/usr/lib/ruby/gems/3.1.0:/usr/lib/arm-linux-gnueabihf/ruby/gems/3.1.0:/usr/share/rubygems-integration/3.1.0:/usr/share/rubygems-integration/all:/usr/lib/arm-linux-gnueabihf/rubygems-integration/3.1.0 ruby3.1 -S rake --rakelibdir /gem2deb-nonexistent -f debian/ruby-tests.rake /usr/bin/ruby3.1 -I/usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib:/usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/exe/rspec --pattern ./spec/\*\*/\*_spec.rb --format documentation -Randomized with seed 49522 - -rake check:test_file - when there are .pp files under tests/ - raises an error - when there are no .pp files under tests/ - runs without raising an error - when there is no tests/ directory - runs without raising an error +Randomized with seed 21048 PuppetlabsSpecHelper::Tasks::FixtureHelpers + .fixtures + when file is malformed + raises an error + when file is missing + returns basic directories per category + when file specifies repository fixtures with an invalid git ref + raises an ArgumentError + when file specifies defaults + returns the hash + when file specifies fixtures + returns the hash + when file specifies puppet version + excludes the fixture if the puppet version does not match + includes the fixture if the puppet version matches + when file specifies repository fixtures + returns the hash + when file contains no fixtures + raises an error + when file is empty + returns basic directories per category .module_name + when metadata.json does not exist + behaves like module name from working directory + determines the module name from the working directory name when metadata.json does exist + when it is not readable + behaves like module name from working directory + determines the module name from the working directory name when it is readable - when the name has a null value + when it contains invalid JSON behaves like module name from working directory determines the module name from the working directory name when the name is blank behaves like module name from working directory determines the module name from the working directory name - when it contains a name value - behaves like module name from metadata - determines the module name from the module metadata when it does not contain a name value behaves like module name from working directory determines the module name from the working directory name - when it contains invalid JSON + when it contains a name value + behaves like module name from metadata + determines the module name from the module metadata + when the name has a null value behaves like module name from working directory determines the module name from the working directory name - when it is not readable - behaves like module name from working directory - determines the module name from the working directory name - when metadata.json does not exist - behaves like module name from working directory - determines the module name from the working directory name - .fixtures - when file contains no fixtures - raises an error - when file specifies repository fixtures - returns the hash - when file specifies repository fixtures with an invalid git ref - raises an ArgumentError - when file is empty - returns basic directories per category - when file is malformed - raises an error - when file specifies fixtures - returns the hash - when file specifies puppet version - excludes the fixture if the puppet version does not match - includes the fixture if the puppet version matches - when file is missing - returns basic directories per category - when file specifies defaults - returns the hash - -rake check:symlinks - when there are symlinks under a directory listed in .pdkignore - runs without raising an error - when there are no files - runs without raising an error - when there are symlinks under vendor/ - runs without raising an error - when there are symlinks under .git/ - runs without raising an error - when there are symlinks under .bundle/ - runs without raising an error - when there are regular files - runs without raising an error - when there is a symlink present - raises an error - when there are symlinks under a directory listed in .gitignore - runs without raising an error rake - is expected to match /spec_prep/ is expected to be success + is expected to match /spec_prep/ PuppetlabsSpec::PuppetInternals - .function_method - returns nil if the function doesn't exist - accepts an injected scope + .resource + defaults to a type of hostclass + can have a defined name + defaults to a name of testing + can have a defined type .compiler can have a defined node .node - accepts facts via options for rspec-puppet can have a defined environment + accepts facts via options for rspec-puppet defaults to a name of testinghost can have a defined name - .resource - defaults to a name of testing - defaults to a type of hostclass - can have a defined type - can have a defined name + .function_method + returns nil if the function doesn't exist + accepts an injected scope + +rake check:test_file + when there are no .pp files under tests/ + runs without raising an error + when there is no tests/ directory + runs without raising an error + when there are .pp files under tests/ + raises an error + +rake check:symlinks + when there are symlinks under .bundle/ + runs without raising an error + when there are symlinks under vendor/ + runs without raising an error + when there is a symlink present + raises an error + when there are regular files + runs without raising an error + when there are symlinks under a directory listed in .gitignore + runs without raising an error + when there are symlinks under a directory listed in .pdkignore + runs without raising an error + when there are symlinks under .git/ + runs without raising an error + when there are no files + runs without raising an error -Finished in 13.94 seconds (files took 16.49 seconds to load) +Finished in 5.6 seconds (files took 9.07 seconds to load) 41 examples, 0 failures -Randomized with seed 49522 +Randomized with seed 21048 ┌──────────────────────────────────────────────────────────────────────────────┐ @@ -1153,12 +1189,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: including full source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/29773/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/29773/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env -I: removing directory /srv/workspace/pbuilder/22607 and its subdirectories -I: Current time: Wed May 8 05:40:43 -12 2024 -I: pbuilder-time-stamp: 1715190043 +I: removing directory /srv/workspace/pbuilder/29773 and its subdirectories +I: Current time: Thu May 9 07:34:31 +14 2024 +I: pbuilder-time-stamp: 1715189671