Diff of the two buildlogs: -- --- b1/build.log 2024-05-31 18:41:51.862972578 +0000 +++ b2/build.log 2024-05-31 18:43:01.240026496 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Fri May 31 06:38:13 -12 2024 -I: pbuilder-time-stamp: 1717180693 +I: Current time: Fri Jul 4 15:04:55 +14 2025 +I: pbuilder-time-stamp: 1751591095 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-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/1582086/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/851202/tmp/hooks/D01_modify_environment starting +debug: Running on ionos15-amd64. +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 Jul 4 01:05 /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/851202/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/851202/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='amd64' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=20 ' - DISTRIBUTION='unstable' - HOME='/root' - HOST_ARCH='amd64' + 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]="x86_64-pc-linux-gnu") + 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=amd64 + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=42 ' + DIRSTACK=() + DISTRIBUTION=unstable + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=x86_64 + HOST_ARCH=amd64 IFS=' ' - INVOCATION_ID='51757e1aea264b679e6b2ceb4f8fd664' - 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='1582086' - PS1='# ' - PS2='> ' + INVOCATION_ID=7526e6fdc9484d90806d4b6e7bc422cc + LANG=C + LANGUAGE=et_EE:et + LC_ALL=C + MACHTYPE=x86_64-pc-linux-gnu + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnu + 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=851202 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.J6LeSgtE/pbuilderrc_ffig --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.J6LeSgtE/b1 --logfile b1/build.log ruby-puppetlabs-spec-helper_7.0.5-1.dsc' - SUDO_GID='111' - SUDO_UID='106' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://46.16.76.132:3128' + 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.J6LeSgtE/pbuilderrc_tir8 --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.J6LeSgtE/b2 --logfile b2/build.log ruby-puppetlabs-spec-helper_7.0.5-1.dsc' + SUDO_GID=111 + SUDO_UID=106 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://213.165.73.152:3128 I: uname -a - Linux ionos11-amd64 6.1.0-21-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.90-1 (2024-05-03) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.7.12+bpo-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.7.12-1~bpo12+1 (2024-05-06) x86_64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 May 27 07:42 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/1582086/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Jun 30 14:05 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/851202/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -282,7 +314,7 @@ Get: 150 http://deb.debian.org/debian unstable/main amd64 ruby-rspec all 3.13.0c0e0m0s1-2 [5184 B] Get: 151 http://deb.debian.org/debian unstable/main amd64 ruby-rspec-puppet all 4.0.2+ds-1 [46.4 kB] Get: 152 http://deb.debian.org/debian unstable/main amd64 ruby-sync all 0.5.0-2 [5540 B] -Fetched 45.8 MB in 3s (16.9 MB/s) +Fetched 45.8 MB in 3s (13.9 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 ... 19719 files and directories currently installed.) @@ -787,8 +819,8 @@ Setting up tzdata (2024a-4) ... Current default time zone: 'Etc/UTC' -Local time is now: Fri May 31 18:40:19 UTC 2024. -Universal Time is now: Fri May 31 18:40:19 UTC 2024. +Local time is now: Fri Jul 4 01:05:37 UTC 2025. +Universal Time is now: Fri Jul 4 01:05:37 UTC 2025. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up autotools-dev (20220109.1) ... @@ -931,7 +963,11 @@ fakeroot is already the newest version (1.34-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/851202/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for unstable +I: user script /srv/workspace/pbuilder/851202/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 @@ -961,13 +997,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/d20240531-1643811-8mgvt9/gemspec +/usr/bin/ruby3.1 -S gem build --config-file /dev/null --verbose /tmp/d20250704-882270-apq82d/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/d20240531-1643811-8mgvt9/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/d20250704-882270-apq82d/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 @@ -1011,24 +1047,84 @@ 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/x86_64-linux-gnu/ruby/gems/3.1.0:/usr/share/rubygems-integration/3.1.0:/usr/share/rubygems-integration/all:/usr/lib/x86_64-linux-gnu/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 7339 +Randomized with seed 21924 + +PuppetlabsSpec::PuppetInternals + .function_method + accepts an injected scope + returns nil if the function doesn't exist + .node + accepts facts via options for rspec-puppet + defaults to a name of testinghost + can have a defined name + can have a defined environment + .compiler + can have a defined node + .resource + defaults to a name of testing + can have a defined type + defaults to a type of hostclass + can have a defined name + +rake check:symlinks + when there are symlinks under vendor/ + runs without raising an error + when there are regular files + 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 symlinks under a directory listed in .gitignore + runs without raising an error + when there are no files + runs without raising an error + when there are symlinks under a directory listed in .pdkignore + runs without raising an error + when there is a symlink present + raises an error + +rake check:test_file + when there are .pp files under tests/ + raises an error + when there is no tests/ directory + runs without raising an error + when there are no .pp files under tests/ + runs without raising an error PuppetlabsSpecHelper::Tasks::FixtureHelpers + .fixtures + 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 puppet version + includes the fixture if the puppet version matches + excludes the fixture if the puppet version does not match + when file contains no fixtures + raises an error + when file specifies repository fixtures + returns the hash + when file is missing + returns basic directories per category + when file specifies fixtures + returns the hash + when file specifies defaults + returns the hash .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 readable + when the name has a null value + 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 the name has a null value - behaves like module name from working directory - determines the module name from the working directory name when it contains invalid JSON behaves like module name from working directory determines the module name from the working directory name @@ -1038,78 +1134,18 @@ when it is not readable behaves like module name from working directory determines the module name from the working directory name - .fixtures - when file is malformed - raises an error - when file specifies puppet version - includes the fixture if the puppet version matches - excludes the fixture if the puppet version does not match - when file specifies repository fixtures - returns the hash - when file is empty - returns basic directories per category - when file is missing - returns basic directories per category - when file contains no fixtures - raises an error - when file specifies defaults - returns the hash - when file specifies fixtures - returns the hash - when file specifies repository fixtures with an invalid git ref - raises an ArgumentError + when metadata.json does not exist + behaves like module name from working directory + determines the module name from the working directory name rake - is expected to match /spec_prep/ is expected to be success + is expected to match /spec_prep/ -rake check:symlinks - when there are symlinks under a directory listed in .pdkignore - 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 .git/ - runs without raising an error - when there are symlinks under .bundle/ - runs without raising an error - when there are no 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 vendor/ - runs without raising an error - -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 - -PuppetlabsSpec::PuppetInternals - .node - can have a defined environment - can have a defined name - defaults to a name of testinghost - accepts facts via options for rspec-puppet - .compiler - can have a defined node - .resource - defaults to a name of testing - can have a defined name - defaults to a type of hostclass - can have a defined type - .function_method - accepts an injected scope - returns nil if the function doesn't exist - -Finished in 5.1 seconds (files took 4.55 seconds to load) +Finished in 1.26 seconds (files took 1.92 seconds to load) 41 examples, 0 failures -Randomized with seed 7339 +Randomized with seed 21924 ┌──────────────────────────────────────────────────────────────────────────────┐ @@ -1143,12 +1179,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/851202/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/851202/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/1582086 and its subdirectories -I: Current time: Fri May 31 06:41:51 -12 2024 -I: pbuilder-time-stamp: 1717180911 +I: removing directory /srv/workspace/pbuilder/851202 and its subdirectories +I: Current time: Fri Jul 4 15:06:00 +14 2025 +I: pbuilder-time-stamp: 1751591160