Diff of the two buildlogs: -- --- b1/build.log 2024-05-10 02:41:22.163570977 +0000 +++ b2/build.log 2024-05-10 02:42:29.232716146 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Thu May 9 14:39:29 -12 2024 -I: pbuilder-time-stamp: 1715308769 +I: Current time: Thu Jun 12 23:04:25 +14 2025 +I: pbuilder-time-stamp: 1749719065 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/trixie-reproducible-base.tgz] I: copying local configuration @@ -29,52 +29,84 @@ dpkg-source: info: applying 0002-skip-tests-that-access-homedir-and-internet.patch I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/2886898/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/591425/tmp/hooks/D01_modify_environment starting +debug: Running on codethink01-arm64. +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 Jun 12 09:04 /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/591425/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/591425/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='arm64' - DEBIAN_FRONTEND='noninteractive' + 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]="aarch64-unknown-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=arm64 + DEBIAN_FRONTEND=noninteractive DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=12 ' - DISTRIBUTION='trixie' - HOME='/root' - HOST_ARCH='arm64' + DIRSTACK=() + DISTRIBUTION=trixie + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=aarch64 + HOST_ARCH=arm64 IFS=' ' - INVOCATION_ID='321fa39926254795a73a6ba4bce49faf' - 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='2886898' - PS1='# ' - PS2='> ' + INVOCATION_ID=19cb328033de44dba7f6aeef05c5ed08 + LANG=C + LANGUAGE=nl_BE:nl + LC_ALL=C + MACHTYPE=aarch64-unknown-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=591425 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.9XvvQsVh/pbuilderrc_aSD3 --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.9XvvQsVh/b1 --logfile b1/build.log terraform-switcher_0.13.1308+ds-1.dsc' - SUDO_GID='109' - SUDO_UID='104' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://192.168.101.4: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.9XvvQsVh/pbuilderrc_eASJ --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.9XvvQsVh/b2 --logfile b2/build.log terraform-switcher_0.13.1308+ds-1.dsc' + SUDO_GID=109 + SUDO_UID=104 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://192.168.101.4:3128 I: uname -a - Linux codethink04-arm64 6.1.0-21-cloud-arm64 #1 SMP Debian 6.1.90-1 (2024-05-03) aarch64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-21-cloud-arm64 #1 SMP Debian 6.1.90-1 (2024-05-03) aarch64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 May 8 11:23 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/2886898/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Jun 10 17:47 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/591425/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -220,7 +252,7 @@ Get: 88 http://deb.debian.org/debian trixie/main arm64 golang-github-subosito-gotenv-dev all 1.3.0-1 [9340 B] Get: 89 http://deb.debian.org/debian trixie/main arm64 golang-gopkg-ini.v1-dev all 1.67.0-1 [39.9 kB] Get: 90 http://deb.debian.org/debian trixie/main arm64 golang-github-spf13-viper-dev all 1.12.0-1 [68.9 kB] -Fetched 71.2 MB in 1s (98.9 MB/s) +Fetched 71.2 MB in 0s (195 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package sensible-utils. (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 ... 19744 files and directories currently installed.) @@ -595,7 +627,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/terraform-switcher-0.13.1308+ds/ && 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 > ../terraform-switcher_0.13.1308+ds-1_source.changes +I: user script /srv/workspace/pbuilder/591425/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for trixie +I: user script /srv/workspace/pbuilder/591425/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/terraform-switcher-0.13.1308+ds/ && 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 > ../terraform-switcher_0.13.1308+ds-1_source.changes dpkg-buildpackage: info: source package terraform-switcher dpkg-buildpackage: info: source version 0.13.1308+ds-1 dpkg-buildpackage: info: source distribution unstable @@ -614,26 +650,26 @@ dh_auto_configure -O--builddirectory=_build -O--buildsystem=golang dh_auto_build -O--builddirectory=_build -O--buildsystem=golang cd _build && go install -trimpath -v -p 12 github.com/warrensbox/terraform-switcher github.com/warrensbox/terraform-switcher/lib -internal/unsafeheader -internal/coverage/rtcov internal/godebugs internal/itoa +unicode/utf8 +internal/goos internal/goarch +internal/race +internal/unsafeheader math/bits +internal/coverage/rtcov internal/goexperiment -unicode/utf8 -internal/race +sync/atomic +runtime/internal/math +internal/chacha8rand +internal/abi internal/cpu -internal/goos +runtime/internal/sys unicode -internal/abi -internal/chacha8rand -runtime/internal/math -cmp runtime/internal/syscall +cmp github.com/agext/levenshtein -runtime/internal/sys -sync/atomic encoding unicode/utf16 math @@ -642,17 +678,17 @@ container/list internal/nettrace log/internal -internal/bytealg -runtime/internal/atomic crypto/internal/alias crypto/subtle crypto/internal/boring/sig vendor/golang.org/x/crypto/cryptobyte/asn1 vendor/golang.org/x/crypto/internal/alias github.com/pelletier/go-toml/v2/internal/characters +runtime/internal/atomic +internal/bytealg runtime -sync internal/reflectlite +sync internal/testlog internal/bisect internal/singleflight @@ -662,26 +698,26 @@ sort internal/godebug strconv -io -internal/safefilepath -path internal/oserror github.com/hashicorp/hcl/hcl/strconv +math/rand +internal/intern +path +internal/safefilepath vendor/golang.org/x/net/dns/dnsmessage +io crypto/internal/nistec/fiat -syscall -math/rand reflect -strings -internal/intern -bytes +syscall +crypto/rc4 net/netip -crypto/internal/randutil -text/tabwriter +bytes hash -crypto/rc4 -hash/crc64 +text/tabwriter +crypto/internal/randutil +strings hash/crc32 +hash/crc64 crypto github.com/mitchellh/go-wordwrap golang.org/x/text/transform @@ -692,144 +728,144 @@ html golang.org/x/text/runes github.com/apparentlymart/go-textseg/textseg +regexp internal/syscall/unix time internal/syscall/execenv -regexp -internal/poll -io/fs -github.com/google/go-cmp/cmp/internal/diff -context -github.com/spf13/afero/internal/common -embed internal/fmtsort encoding/binary github.com/google/go-cmp/cmp/internal/function -os +io/fs +internal/poll +github.com/google/go-cmp/cmp/internal/diff +context encoding/base64 -golang.org/x/sys/unix -crypto/internal/edwards25519/field vendor/golang.org/x/crypto/internal/poly1305 +golang.org/x/sys/unix crypto/cipher -crypto/internal/nistec +crypto/internal/edwards25519/field crypto/md5 +github.com/spf13/afero/internal/common +embed encoding/pem +crypto/internal/nistec +os crypto/internal/boring -crypto/internal/edwards25519 crypto/des vendor/golang.org/x/crypto/chacha20 crypto/aes -crypto/sha256 crypto/sha512 crypto/hmac crypto/sha1 +crypto/sha256 +crypto/internal/edwards25519 vendor/golang.org/x/crypto/hkdf +vendor/golang.org/x/crypto/chacha20poly1305 +crypto/ecdh +io/ioutil fmt path/filepath -io/ioutil os/signal -vendor/golang.org/x/crypto/chacha20poly1305 -crypto/ecdh +net github.com/spf13/afero/mem os/exec github.com/mitchellh/go-homedir github.com/hashicorp/go-version encoding/json -github.com/zclconf/go-cty/cty/set math/big -golang.org/x/text/unicode/norm -runtime/debug github.com/google/go-cmp/cmp/internal/value -encoding/csv -github.com/hashicorp/hcl/hcl/token net/url -text/template/parse -github.com/manifoldco/promptui/list +github.com/hashicorp/hcl/hcl/token +encoding/csv +github.com/zclconf/go-cty/cty/set +runtime/debug +golang.org/x/text/unicode/norm github.com/hashicorp/hcl/hcl/ast github.com/hashicorp/hcl/hcl/scanner -github.com/google/go-cmp/cmp github.com/hashicorp/hcl/json/token +github.com/google/go-cmp/cmp +github.com/hashicorp/hcl/json/scanner +github.com/manifoldco/promptui/list github.com/manifoldco/promptui/screenbuf -net +text/template/parse +github.com/hashicorp/hcl/hcl/parser github.com/pborman/getopt log -github.com/hashicorp/hcl/json/scanner -compress/flate -github.com/hashicorp/hcl/hcl/parser github.com/hashicorp/hcl/json/parser +compress/flate encoding/hex -vendor/golang.org/x/text/unicode/bidi github.com/hashicorp/hcl +vendor/golang.org/x/text/unicode/bidi vendor/golang.org/x/text/unicode/norm -text/template +github.com/fsnotify/fsnotify vendor/golang.org/x/net/http2/hpack mime compress/gzip mime/quotedprintable +text/template net/http/internal github.com/spf13/jwalterweatherman +vendor/golang.org/x/text/secure/bidirule flag github.com/subosito/gotenv -vendor/golang.org/x/text/secure/bidirule github.com/hashicorp/hcl/hcl/printer gopkg.in/ini.v1 github.com/spf13/viper/internal/encoding/json github.com/pelletier/go-toml/v2/internal/danger gopkg.in/yaml.v3 archive/zip -github.com/pelletier/go-toml/v2/unstable -github.com/fsnotify/fsnotify -github.com/spf13/viper/internal/encoding/hcl os/user -vendor/golang.org/x/net/idna +github.com/pelletier/go-toml/v2/unstable github.com/zclconf/go-cty/cty crypto/rand crypto/elliptic crypto/internal/bigmod crypto/internal/boring/bbig encoding/asn1 -crypto/dsa crypto/ed25519 -html/template +crypto/dsa +vendor/golang.org/x/net/idna +github.com/spf13/viper/internal/encoding/hcl github.com/pelletier/go-toml/v2/internal/tracker -github.com/pelletier/go-toml/v2 crypto/rsa +html/template +github.com/pelletier/go-toml/v2 vendor/golang.org/x/crypto/cryptobyte crypto/x509/pkix crypto/ecdsa github.com/spf13/cast -github.com/spf13/viper/internal/encoding/toml github.com/spf13/viper/internal/encoding/yaml -github.com/spf13/viper/internal/encoding/dotenv -github.com/spf13/viper/internal/encoding/ini github.com/zclconf/go-cty/cty/convert github.com/zclconf/go-cty/cty/function +github.com/spf13/viper/internal/encoding/ini +github.com/spf13/viper/internal/encoding/dotenv +github.com/spf13/viper/internal/encoding/toml github.com/hashicorp/hcl/v2 github.com/zclconf/go-cty/cty/gocty github.com/zclconf/go-cty/cty/json -github.com/zclconf/go-cty/cty/function/stdlib github.com/hashicorp/hcl/v2/ext/customdecode +github.com/zclconf/go-cty/cty/function/stdlib github.com/hashicorp/hcl/v2/hclsyntax -github.com/hashicorp/hcl/v2/hclwrite -github.com/hashicorp/hcl/v2/json github.com/chzyer/readline github.com/mitchellh/mapstructure -net/textproto vendor/golang.org/x/net/http/httpproxy +net/textproto crypto/x509 github.com/spf13/pflag vendor/golang.org/x/net/http/httpguts mime/multipart +github.com/manifoldco/promptui +github.com/hashicorp/hcl/v2/json +github.com/hashicorp/hcl/v2/hclwrite +crypto/tls github.com/hashicorp/hcl/v2/hclparse github.com/hashicorp/hcl/v2/gohcl -crypto/tls github.com/hashicorp/terraform-config-inspect/tfconfig -github.com/manifoldco/promptui net/http/httptrace net/http -github.com/spf13/afero -github.com/magiconair/properties github.com/warrensbox/terraform-switcher/lib +github.com/magiconair/properties +github.com/spf13/afero github.com/spf13/viper/internal/encoding/javaproperties github.com/spf13/viper github.com/warrensbox/terraform-switcher @@ -837,11 +873,11 @@ cd _build && go test -vet=off -v -p 12 github.com/warrensbox/terraform-switcher github.com/warrensbox/terraform-switcher/lib === RUN TestMain === RUN TestMain/User_should_exist - main_test.go:19: Current user exist: /nonexistent/first-build [expected] + main_test.go:19: Current user exist: /nonexistent/second-build [expected] --- PASS: TestMain (0.00s) --- PASS: TestMain/User_should_exist (0.00s) PASS -ok github.com/warrensbox/terraform-switcher 0.052s +ok github.com/warrensbox/terraform-switcher 0.015s === RUN TestNewCommand command_test.go:17: Value returned is a pointer &{terraform} [expected] --- PASS: TestNewCommand (0.00s) @@ -889,12 +925,12 @@ === RUN TestConvertExecutableExt files_test.go:488: terraform converted to terraform on linux (expected) files_test.go:488: terraform.exe converted to terraform.exe on linux (expected) - files_test.go:488: /nonexistent/first-build/.terraform.versions_test/terraform converted to /nonexistent/first-build/.terraform.versions_test/terraform on linux (expected) - files_test.go:488: /nonexistent/first-build/.terraform.versions_test/terraform.exe converted to /nonexistent/first-build/.terraform.versions_test/terraform.exe on linux (expected) + files_test.go:488: /nonexistent/second-build/.terraform.versions_test/terraform converted to /nonexistent/second-build/.terraform.versions_test/terraform on linux (expected) + files_test.go:488: /nonexistent/second-build/.terraform.versions_test/terraform.exe converted to /nonexistent/second-build/.terraform.versions_test/terraform.exe on linux (expected) --- PASS: TestConvertExecutableExt (0.00s) === RUN TestInstall === RUN TestInstall/User_should_exist - install_test.go:34: Current user exist: /nonexistent/first-build [expected] + install_test.go:34: Current user exist: /nonexistent/second-build [expected] --- PASS: TestInstall (0.00s) --- PASS: TestInstall/User_should_exist (0.00s) === RUN TestGetTFList @@ -943,7 +979,7 @@ symlink_test.go:96: Debian package build disallows accessing $HOME --- SKIP: TestCheckSymlink (0.00s) PASS -ok github.com/warrensbox/terraform-switcher/lib 0.068s +ok github.com/warrensbox/terraform-switcher/lib 0.036s create-stamp debian/debhelper-build-stamp dh_testroot -O--builddirectory=_build -O--buildsystem=golang dh_prep -O--builddirectory=_build -O--buildsystem=golang @@ -970,8 +1006,8 @@ dh_gencontrol -O--builddirectory=_build -O--buildsystem=golang dh_md5sums -O--builddirectory=_build -O--buildsystem=golang dh_builddeb -O--builddirectory=_build -O--buildsystem=golang -dpkg-deb: building package 'terraform-switcher-dbgsym' in '../terraform-switcher-dbgsym_0.13.1308+ds-1_arm64.deb'. dpkg-deb: building package 'terraform-switcher' in '../terraform-switcher_0.13.1308+ds-1_arm64.deb'. +dpkg-deb: building package 'terraform-switcher-dbgsym' in '../terraform-switcher-dbgsym_0.13.1308+ds-1_arm64.deb'. dpkg-genbuildinfo --build=binary -O../terraform-switcher_0.13.1308+ds-1_arm64.buildinfo dpkg-genchanges --build=binary -O../terraform-switcher_0.13.1308+ds-1_arm64.changes dpkg-genchanges: info: binary-only upload (no source code included) @@ -979,12 +1015,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/591425/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/591425/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/2886898 and its subdirectories -I: Current time: Thu May 9 14:41:21 -12 2024 -I: pbuilder-time-stamp: 1715308881 +I: removing directory /srv/workspace/pbuilder/591425 and its subdirectories +I: Current time: Thu Jun 12 23:05:27 +14 2025 +I: pbuilder-time-stamp: 1749719127