Diff of the two buildlogs: -- --- b1/build.log 2025-03-09 18:40:33.924543711 +0000 +++ b2/build.log 2025-03-09 18:43:46.079890892 +0000 @@ -1,6 +1,7 @@ +W: cgroups are not available on the host, not using them. I: pbuilder: network access will be disabled during build -I: Current time: Sun Mar 9 06:36:56 -12 2025 -I: pbuilder-time-stamp: 1741545416 +I: Current time: Sun Apr 12 15:03:35 +14 2026 +I: pbuilder-time-stamp: 1775955815 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration @@ -29,52 +30,83 @@ dpkg-source: info: applying fix-timebomb-ftbfs.patch I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/3549721/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/2264608/tmp/hooks/D01_modify_environment starting +debug: Running on codethink03-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 Apr 12 01:03 /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/2264608/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/2264608/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]="37" [3]="1" [4]="release" [5]="aarch64-unknown-linux-gnu") + BASH_VERSION='5.2.37(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='unstable' - HOME='/root' - HOST_ARCH='arm64' + DIRSTACK=() + DISTRIBUTION=unstable + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=aarch64 + HOST_ARCH=arm64 IFS=' ' - INVOCATION_ID='d68846614cb3479591c60912dcafbb1b' - 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='3549721' - PS1='# ' - PS2='> ' + 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=2264608 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.p6ELv1Xn/pbuilderrc_mrND --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.p6ELv1Xn/b1 --logfile b1/build.log notary_0.7.0+git20240416.9d2b3b3+ds1-3.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.p6ELv1Xn/pbuilderrc_E3bX --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.p6ELv1Xn/b2 --logfile b2/build.log notary_0.7.0+git20240416.9d2b3b3+ds1-3.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-31-cloud-arm64 #1 SMP Debian 6.1.128-1 (2025-02-07) aarch64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-31-cloud-arm64 #1 SMP Debian 6.1.128-1 (2025-02-07) aarch64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Mar 4 11:20 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/3549721/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Mar 4 2025 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/2264608/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -404,7 +436,7 @@ Get: 236 http://deb.debian.org/debian unstable/main arm64 protobuf-compiler arm64 3.21.12-10+b6 [84.9 kB] Get: 237 http://deb.debian.org/debian unstable/main arm64 protoc-gen-go-1-5 arm64 1.5.4-1 [1235 kB] Get: 238 http://deb.debian.org/debian unstable/main arm64 protoc-gen-go-grpc arm64 1.64.0-6+b1 [1192 kB] -Fetched 164 MB in 1s (127 MB/s) +Fetched 164 MB in 1s (247 MB/s) Preconfiguring packages ... Selecting previously unselected package golang-golang-x-sys-dev. (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 ... 19897 files and directories currently installed.) @@ -1180,8 +1212,8 @@ Setting up tzdata (2025a-2) ... Current default time zone: 'Etc/UTC' -Local time is now: Sun Mar 9 18:38:16 UTC 2025. -Universal Time is now: Sun Mar 9 18:38:16 UTC 2025. +Local time is now: Sun Apr 12 01:04:20 UTC 2026. +Universal Time is now: Sun Apr 12 01:04:20 UTC 2026. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up golang-github-cespare-xxhash-dev (2.3.0-1) ... @@ -1377,7 +1409,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/notary-0.7.0+git20240416.9d2b3b3+ds1/ && 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 > ../notary_0.7.0+git20240416.9d2b3b3+ds1-3_source.changes +I: user script /srv/workspace/pbuilder/2264608/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for unstable +I: user script /srv/workspace/pbuilder/2264608/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/notary-0.7.0+git20240416.9d2b3b3+ds1/ && 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 > ../notary_0.7.0+git20240416.9d2b3b3+ds1-3_source.changes dpkg-buildpackage: info: source package notary dpkg-buildpackage: info: source version 0.7.0+git20240416.9d2b3b3+ds1-3 dpkg-buildpackage: info: source distribution unstable @@ -1664,31 +1700,31 @@ cd _build && go install -trimpath -v -p 12 -tags pkcs11 github.com/theupdateframework/notary github.com/theupdateframework/notary/client github.com/theupdateframework/notary/client/changelist github.com/theupdateframework/notary/cmd/escrow github.com/theupdateframework/notary/cmd/notary github.com/theupdateframework/notary/cmd/notary-server github.com/theupdateframework/notary/cmd/notary-signer github.com/theupdateframework/notary/cryptoservice github.com/theupdateframework/notary/passphrase github.com/theupdateframework/notary/proto github.com/theupdateframework/notary/server github.com/theupdateframework/notary/server/errors github.com/theupdateframework/notary/server/handlers github.com/theupdateframework/notary/server/snapshot github.com/theupdateframework/notary/server/storage github.com/theupdateframework/notary/server/timestamp github.com/theupdateframework/notary/signer github.com/theupdateframework/notary/signer/api github.com/theupdateframework/notary/signer/client github.com/theupdateframework/notary/signer/keydbstore github.com/theupdateframework/notary/storage github.com/theupdateframework/notary/storage/rethinkdb github.com/theupdateframework/notary/trustmanager github.com/theupdateframework/notary/trustmanager/remoteks github.com/theupdateframework/notary/trustmanager/yubikey github.com/theupdateframework/notary/trustpinning github.com/theupdateframework/notary/tuf github.com/theupdateframework/notary/tuf/data github.com/theupdateframework/notary/tuf/signed github.com/theupdateframework/notary/tuf/testutils github.com/theupdateframework/notary/tuf/testutils/interfaces github.com/theupdateframework/notary/tuf/testutils/keys github.com/theupdateframework/notary/tuf/utils github.com/theupdateframework/notary/tuf/validation github.com/theupdateframework/notary/utils github.com/theupdateframework/notary/version internal/asan internal/byteorder -internal/coverage/rtcov -internal/unsafeheader -internal/goos -internal/godebugs internal/profilerecord -internal/msan internal/goexperiment -internal/goarch +internal/godebugs +internal/unsafeheader +internal/coverage/rtcov +internal/msan math/bits -unicode/utf8 +internal/goos +internal/goarch internal/runtime/syscall +unicode/utf8 +sync/atomic unicode internal/cpu internal/itoa +internal/abi +internal/runtime/math +internal/chacha8rand cmp +math crypto/internal/fips140/alias -sync/atomic crypto/internal/fips140deps/byteorder -encoding -internal/chacha8rand -internal/abi -internal/runtime/math crypto/internal/fips140/subtle +encoding unicode/utf16 -math log/internal crypto/internal/boring/sig vendor/golang.org/x/crypto/cryptobyte/asn1 @@ -1698,88 +1734,87 @@ github.com/pelletier/go-toml/v2/internal/characters google.golang.org/protobuf/internal/flags google.golang.org/protobuf/internal/set +google.golang.org/grpc/serviceconfig internal/bytealg internal/runtime/atomic internal/runtime/sys crypto/internal/fips140deps/cpu -google.golang.org/grpc/serviceconfig github.com/klauspost/compress/internal/le github.com/theupdateframework/notary/version github.com/lib/pq/oid -internal/runtime/exithook internal/stringslite -internal/race +internal/runtime/exithook github.com/klauspost/compress +internal/race internal/runtime/maps internal/sync runtime internal/reflectlite sync iter +crypto/subtle weak runtime/metrics -crypto/subtle slices maps +errors +sort internal/bisect internal/testlog internal/singleflight -errors -sort unique github.com/spf13/viper/internal/encoding google.golang.org/protobuf/internal/pragma -runtime/cgo io strconv internal/oserror path +runtime/cgo math/rand/v2 +syscall vendor/golang.org/x/net/dns/dnsmessage github.com/hashicorp/hcl/hcl/strconv -internal/godebug google.golang.org/grpc/internal/buffer -syscall -github.com/beorn7/perks/quantile +internal/godebug hash bytes -strings -crypto/internal/randutil -hash/crc32 -hash/fnv -hash/adler32 crypto/internal/fips140deps/godebug -math/rand crypto reflect -golang.org/x/crypto/blowfish net/netip -encoding/base32 -vendor/golang.org/x/text/transform +math/rand +strings +github.com/beorn7/perks/quantile +hash/crc32 +crypto/internal/randutil golang.org/x/text/transform +hash/adler32 +vendor/golang.org/x/text/transform +hash/fnv +golang.org/x/crypto/blowfish +encoding/base32 github.com/dvsekhvalnov/jose2go/padding +golang.org/x/text/runes +google.golang.org/grpc/internal/grpcrand +internal/syscall/unix +internal/syscall/execenv +time crypto/internal/fips140 -crypto/internal/impl bufio regexp/syntax +net/http/internal/ascii +crypto/internal/impl +html +github.com/munnerz/goautoneg +net/http/internal/testcert crypto/internal/fips140/sha256 crypto/internal/fips140/sha3 -internal/syscall/unix -time -golang.org/x/text/runes crypto/internal/fips140/sha512 crypto/tls/internal/fips140tls -net/http/internal/ascii -internal/syscall/execenv -crypto/internal/fips140/hmac crypto/sha3 -regexp -html -google.golang.org/grpc/internal/grpcrand -github.com/munnerz/goautoneg -net/http/internal/testcert -crypto/internal/fips140/check +crypto/internal/fips140/hmac crypto/internal/fips140hash +crypto/internal/fips140/check crypto/internal/fips140/aes crypto/internal/fips140/nistec/fiat crypto/internal/fips140/edwards25519/field @@ -1788,211 +1823,211 @@ crypto/internal/fips140/tls12 crypto/internal/fips140/tls13 crypto/internal/fips140/edwards25519 -github.com/jinzhu/inflection -io/fs +regexp internal/poll context -github.com/bugsnag/bugsnag-go/headers google.golang.org/grpc/backoff google.golang.org/grpc/keepalive +github.com/bugsnag/bugsnag-go/headers +io/fs golang.org/x/net/context -gopkg.in/rethinkdb/rethinkdb-go.v6/vendor/gopkg.in/cenkalti/backoff.v2 google.golang.org/grpc/internal/backoff google.golang.org/grpc/internal/grpcsync +gopkg.in/rethinkdb/rethinkdb-go.v6/vendor/gopkg.in/cenkalti/backoff.v2 +github.com/jinzhu/inflection internal/filepathlite github.com/spf13/afero/internal/common embed -encoding/binary -internal/fmtsort google.golang.org/protobuf/internal/editiondefaults -os crypto/internal/fips140/nistec -encoding/base64 -filippo.io/edwards25519/field -vendor/golang.org/x/crypto/internal/poly1305 -github.com/cespare/xxhash -github.com/klauspost/compress/internal/snapref -golang.org/x/sys/unix -encoding/pem -github.com/dvsekhvalnov/jose2go/base64url -github.com/dvsekhvalnov/jose2go/compact -filippo.io/edwards25519 +os +encoding/binary +internal/fmtsort crypto/internal/sysrand -path/filepath -github.com/bugsnag/bugsnag-go/device -os/signal fmt +path/filepath io/ioutil -google.golang.org/protobuf/internal/detrand google.golang.org/grpc/internal/envconfig -github.com/prometheus/procfs/internal/util +github.com/bugsnag/bugsnag-go/device internal/sysinfo +os/signal +github.com/prometheus/procfs/internal/util +net crypto/internal/entropy crypto/internal/fips140/drbg +encoding/base64 +golang.org/x/sys/unix +vendor/golang.org/x/crypto/internal/poly1305 +google.golang.org/protobuf/internal/detrand +filippo.io/edwards25519/field +github.com/cespare/xxhash +github.com/klauspost/compress/internal/snapref crypto/internal/fips140only crypto/internal/fips140/aes/gcm +crypto/md5 +crypto/internal/fips140/ecdh +crypto/internal/fips140/ecdsa crypto/internal/fips140/rsa crypto/internal/fips140/ed25519 -github.com/spf13/afero/mem +encoding/pem crypto/internal/fips140/mlkem -os/exec -crypto/md5 +github.com/theupdateframework/notary crypto/rc4 -encoding/json +github.com/spf13/afero/mem +os/exec +filippo.io/edwards25519 +github.com/dvsekhvalnov/jose2go/base64url +github.com/dvsekhvalnov/jose2go/compact github.com/docker/go/canonical/json log -math/big crypto/cipher -github.com/theupdateframework/notary +math/big encoding/hex +encoding/json net/url mime mime/quotedprintable -crypto/internal/fips140/ecdh -crypto/internal/fips140/ecdsa compress/flate crypto/internal/boring crypto/des vendor/golang.org/x/crypto/chacha20 +vendor/golang.org/x/text/unicode/bidi +vendor/golang.org/x/text/unicode/norm +vendor/golang.org/x/net/http2/hpack crypto/ecdh crypto/sha512 crypto/sha256 crypto/aes crypto/sha1 crypto/hmac -vendor/golang.org/x/text/unicode/bidi -vendor/golang.org/x/text/unicode/norm vendor/golang.org/x/crypto/chacha20poly1305 golang.org/x/crypto/pbkdf2 -vendor/golang.org/x/net/http2/hpack net/http/internal +github.com/miekg/pkcs11 flag encoding/csv -compress/gzip golang.org/x/text/unicode/norm text/template/parse +compress/gzip +vendor/golang.org/x/text/secure/bidirule github.com/spf13/jwalterweatherman github.com/subosito/gotenv -vendor/golang.org/x/text/secure/bidirule +vendor/golang.org/x/net/idna github.com/hashicorp/hcl/hcl/token -github.com/theupdateframework/notary/tuf/validation +text/tabwriter +gopkg.in/ini.v1 github.com/hashicorp/hcl/hcl/ast github.com/hashicorp/hcl/hcl/scanner github.com/hashicorp/hcl/json/token -text/tabwriter -gopkg.in/ini.v1 -github.com/spf13/viper/internal/encoding/json -github.com/pelletier/go-toml/v2/internal/danger github.com/hashicorp/hcl/json/scanner -gopkg.in/yaml.v3 +github.com/pelletier/go-toml/v2/internal/danger github.com/pelletier/go-toml/v2/unstable github.com/hashicorp/hcl/hcl/parser -google.golang.org/protobuf/internal/errors github.com/hashicorp/hcl/json/parser -google.golang.org/protobuf/encoding/protowire -google.golang.org/protobuf/reflect/protoreflect github.com/hashicorp/hcl/hcl/printer github.com/hashicorp/hcl -vendor/golang.org/x/net/idna +text/template crypto/rand crypto/elliptic -github.com/sirupsen/logrus crypto/internal/boring/bbig encoding/asn1 crypto/dsa -github.com/fsnotify/fsnotify/internal github.com/docker/distribution/uuid crypto/rsa crypto/ed25519 -crypto/internal/hpke -github.com/fsnotify/fsnotify -text/template +github.com/theupdateframework/notary/tuf/validation golang.org/x/crypto/ed25519 +crypto/internal/hpke github.com/spf13/viper/internal/encoding/hcl +github.com/spf13/viper/internal/encoding/json github.com/pelletier/go-toml/v2/internal/tracker +gopkg.in/yaml.v3 +google.golang.org/protobuf/internal/errors +github.com/pelletier/go-toml/v2 go/token google.golang.org/protobuf/internal/version +google.golang.org/protobuf/encoding/protowire golang.org/x/net/internal/timeseries google.golang.org/grpc/internal/grpclog google.golang.org/grpc/attributes -github.com/pelletier/go-toml/v2 +google.golang.org/protobuf/reflect/protoreflect +google.golang.org/grpc/grpclog google.golang.org/grpc/internal/idle +html/template golang.org/x/text/unicode/bidi -google.golang.org/grpc/grpclog golang.org/x/net/http2/hpack +google.golang.org/grpc/connectivity github.com/pkg/errors github.com/bugsnag/panicwrap +github.com/bugsnag/bugsnag-go/errors database/sql/driver vendor/golang.org/x/crypto/cryptobyte crypto/x509/pkix -google.golang.org/protobuf/internal/descfmt -google.golang.org/protobuf/internal/descopts -google.golang.org/protobuf/internal/strs -google.golang.org/protobuf/internal/encoding/messageset -google.golang.org/protobuf/internal/genid -google.golang.org/protobuf/internal/order -net -github.com/miekg/pkcs11 -google.golang.org/protobuf/internal/encoding/text -google.golang.org/protobuf/reflect/protoregistry -google.golang.org/protobuf/runtime/protoiface -google.golang.org/grpc/connectivity -google.golang.org/protobuf/internal/encoding/json -golang.org/x/text/secure/bidirule -google.golang.org/protobuf/internal/protolazy -github.com/bugsnag/bugsnag-go/errors -crypto/ecdsa -golang.org/x/net/idna compress/zlib -google.golang.org/protobuf/internal/encoding/defval database/sql github.com/opencontainers/go-digest -google.golang.org/protobuf/proto +github.com/sirupsen/logrus +crypto/ecdsa +github.com/fsnotify/fsnotify/internal +github.com/distribution/reference +golang.org/x/text/secure/bidirule +github.com/fsnotify/fsnotify +golang.org/x/net/idna github.com/opencontainers/image-spec/specs-go -github.com/prometheus/procfs/internal/fs -html/template +github.com/opencontainers/image-spec/specs-go/v1 github.com/spf13/viper/internal/encoding/toml +github.com/prometheus/procfs/internal/fs runtime/debug github.com/klauspost/compress/fse golang.org/x/term -github.com/distribution/reference -github.com/opencontainers/image-spec/specs-go/v1 -github.com/spf13/viper/internal/encoding/yaml +github.com/spf13/cast golang.org/x/crypto/bcrypt github.com/lib/pq/scram +github.com/theupdateframework/notary/passphrase os/user +google.golang.org/protobuf/internal/descfmt +google.golang.org/protobuf/internal/descopts +google.golang.org/protobuf/internal/strs +google.golang.org/protobuf/internal/encoding/messageset +google.golang.org/protobuf/internal/genid +google.golang.org/protobuf/internal/order +google.golang.org/protobuf/runtime/protoiface +github.com/spf13/viper/internal/encoding/yaml +google.golang.org/protobuf/reflect/protoregistry github.com/klauspost/compress/huff0 +google.golang.org/protobuf/internal/encoding/text +google.golang.org/protobuf/internal/protolazy +google.golang.org/protobuf/internal/encoding/json +github.com/spf13/viper/internal/encoding/dotenv +github.com/spf13/viper/internal/encoding/ini go/scanner github.com/hailocab/go-hostpool github.com/opentracing/opentracing-go/log -github.com/theupdateframework/notary/passphrase gopkg.in/rethinkdb/rethinkdb-go.v6/encoding -google.golang.org/protobuf/internal/filedesc -google.golang.org/protobuf/encoding/prototext -google.golang.org/protobuf/encoding/protodelim go/ast gopkg.in/rethinkdb/rethinkdb-go.v6/types internal/profile +google.golang.org/protobuf/proto runtime/pprof -github.com/spf13/cast runtime/trace -github.com/klauspost/compress/zstd github.com/dvsekhvalnov/jose2go/arrays -github.com/davecgh/go-spew/spew github.com/dvsekhvalnov/jose2go/aes github.com/dvsekhvalnov/jose2go/kdf +github.com/davecgh/go-spew/spew +google.golang.org/protobuf/internal/encoding/defval github.com/pmezard/go-difflib/difflib github.com/stretchr/testify/assert/yaml +github.com/klauspost/compress/zstd testing -github.com/spf13/viper/internal/encoding/dotenv -github.com/spf13/viper/internal/encoding/ini +google.golang.org/protobuf/internal/filedesc +google.golang.org/protobuf/encoding/prototext +google.golang.org/protobuf/encoding/protodelim github.com/jinzhu/gorm google.golang.org/protobuf/internal/encoding/tag google.golang.org/protobuf/encoding/protojson google.golang.org/protobuf/internal/impl -google.golang.org/protobuf/internal/filetype -net/textproto crypto/x509 +net/textproto vendor/golang.org/x/net/http/httpproxy github.com/mitchellh/mapstructure github.com/spf13/pflag @@ -2001,114 +2036,115 @@ google.golang.org/grpc/internal/resolver/dns/internal github.com/google/uuid github.com/prometheus/procfs -google.golang.org/protobuf/runtime/protoimpl -google.golang.org/protobuf/types/known/emptypb -google.golang.org/protobuf/protoadapt -google.golang.org/protobuf/types/known/durationpb -google.golang.org/grpc/metadata mime/multipart vendor/golang.org/x/net/http/httpguts +google.golang.org/grpc/metadata google.golang.org/grpc/codes -github.com/golang/protobuf/ptypes/duration -github.com/golang/protobuf/ptypes/empty -google.golang.org/protobuf/types/known/timestamppb +golang.org/x/net/http/httpguts google.golang.org/grpc/internal/grpcutil google.golang.org/grpc/internal/balancerload -google.golang.org/protobuf/types/known/anypb -google.golang.org/grpc/internal/pretty -golang.org/x/net/http/httpguts -google.golang.org/grpc/encoding google.golang.org/grpc/stats -google.golang.org/grpc/encoding/proto -github.com/golang/protobuf/ptypes/timestamp google.golang.org/grpc/tap -github.com/prometheus/client_model/go +google.golang.org/grpc/encoding +github.com/theupdateframework/notary/tuf/data +crypto/tls +github.com/spf13/cobra +github.com/dvsekhvalnov/jose2go/keys/ecc +github.com/dvsekhvalnov/jose2go +github.com/theupdateframework/notary/client/changelist +github.com/theupdateframework/notary/tuf/utils +google.golang.org/protobuf/internal/filetype +google.golang.org/protobuf/runtime/protoimpl +google.golang.org/protobuf/types/known/emptypb +google.golang.org/protobuf/protoadapt +google.golang.org/protobuf/types/known/durationpb +google.golang.org/protobuf/types/known/timestamppb +google.golang.org/protobuf/types/known/anypb google.golang.org/protobuf/types/descriptorpb +github.com/golang/protobuf/ptypes/empty +github.com/golang/protobuf/ptypes/duration +github.com/golang/protobuf/ptypes/timestamp +github.com/prometheus/client_model/go +google.golang.org/grpc/encoding/proto +google.golang.org/grpc/internal/pretty google.golang.org/grpc/binarylog/grpc_binarylog_v1 google.golang.org/genproto/googleapis/rpc/status -google.golang.org/grpc/internal/status github.com/prometheus/common/model +google.golang.org/grpc/internal/status google.golang.org/grpc/status google.golang.org/grpc/internal/binarylog -github.com/theupdateframework/notary/tuf/data -crypto/tls -github.com/dvsekhvalnov/jose2go/keys/ecc github.com/prometheus/client_golang/prometheus/internal -github.com/dvsekhvalnov/jose2go -google.golang.org/protobuf/types/gofeaturespb google.golang.org/protobuf/internal/editionssupport -github.com/spf13/cobra -google.golang.org/protobuf/reflect/protodesc -github.com/theupdateframework/notary/client/changelist -github.com/theupdateframework/notary/tuf/utils -github.com/golang/protobuf/proto -gopkg.in/rethinkdb/rethinkdb-go.v6/ql2 +google.golang.org/protobuf/types/gofeaturespb net/http/httptrace google.golang.org/grpc/internal/credentials github.com/docker/go-connections/tlsconfig -github.com/docker/libtrust github.com/go-sql-driver/mysql +github.com/docker/libtrust github.com/lib/pq -net/http google.golang.org/grpc/credentials +net/http +google.golang.org/protobuf/reflect/protodesc google.golang.org/grpc/internal/channelz google.golang.org/grpc/resolver google.golang.org/grpc/credentials/insecure google.golang.org/grpc/peer google.golang.org/grpc/internal/metadata -google.golang.org/grpc/balancer/grpclb/state -google.golang.org/grpc/internal/transport/networktype google.golang.org/grpc/internal/resolver/passthrough +google.golang.org/grpc/internal/transport/networktype +google.golang.org/grpc/balancer/grpclb/state google.golang.org/grpc/internal/resolver/dns google.golang.org/grpc/internal/resolver/unix -google.golang.org/grpc/channelz google.golang.org/grpc/resolver/dns +google.golang.org/grpc/channelz google.golang.org/grpc/balancer google.golang.org/grpc/balancer/base google.golang.org/grpc/internal/serviceconfig -google.golang.org/grpc/internal/resolver +github.com/golang/protobuf/proto google.golang.org/grpc/balancer/roundrobin google.golang.org/grpc/internal/balancer/gracefulswitch +google.golang.org/grpc/internal/resolver +gopkg.in/rethinkdb/rethinkdb-go.v6/ql2 github.com/theupdateframework/notary/storage github.com/spf13/afero github.com/magiconair/properties -golang.org/x/net/trace -golang.org/x/net/http2 net/http/httputil +golang.org/x/net/http2 github.com/bugsnag/bugsnag-go/sessions github.com/gorilla/mux -github.com/docker/distribution/registry/client/auth/challenge github.com/docker/distribution/registry/api/errcode github.com/docker/distribution/registry/auth github.com/docker/distribution +github.com/docker/distribution/registry/client/auth/challenge +golang.org/x/net/trace github.com/docker/distribution/registry/client/transport expvar github.com/prometheus/common/expfmt github.com/bugsnag/bugsnag-go github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil/header +github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil github.com/theupdateframework/notary/server/errors -github.com/theupdateframework/notary/trustmanager github.com/opentracing/opentracing-go -github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil net/http/pprof github.com/docker/distribution/context -github.com/docker/distribution/registry/api/v2 -github.com/opentracing/opentracing-go/ext -net/http/httptest +github.com/theupdateframework/notary/trustmanager github.com/theupdateframework/notary/cryptoservice github.com/theupdateframework/notary/tuf/signed github.com/spf13/viper/internal/encoding/javaproperties -gopkg.in/rethinkdb/rethinkdb-go.v6 -github.com/Shopify/logrus-bugsnag +github.com/docker/distribution/registry/api/v2 +github.com/opentracing/opentracing-go/ext +net/http/httptest github.com/docker/distribution/health github.com/docker/distribution/registry/auth/htpasswd github.com/docker/distribution/registry/auth/token +github.com/Shopify/logrus-bugsnag +gopkg.in/rethinkdb/rethinkdb-go.v6 github.com/stretchr/testify/assert -github.com/prometheus/client_golang/prometheus -github.com/theupdateframework/notary/vendor/github.com/prometheus/client_golang/prometheus github.com/theupdateframework/notary/trustmanager/yubikey github.com/theupdateframework/notary/trustpinning github.com/theupdateframework/notary/tuf/testutils/keys +github.com/theupdateframework/notary/vendor/github.com/prometheus/client_golang/prometheus +github.com/prometheus/client_golang/prometheus github.com/theupdateframework/notary/tuf github.com/spf13/viper github.com/theupdateframework/notary/client @@ -2116,30 +2152,30 @@ github.com/theupdateframework/notary/utils github.com/stretchr/testify/require github.com/prometheus/client_golang/prometheus/promhttp -github.com/theupdateframework/notary/tuf/testutils/interfaces google.golang.org/grpc/internal/transport +github.com/theupdateframework/notary/tuf/testutils/interfaces github.com/theupdateframework/notary/storage/rethinkdb +github.com/docker/go-metrics github.com/theupdateframework/notary/server/storage github.com/theupdateframework/notary/signer/keydbstore -github.com/docker/go-metrics github.com/docker/distribution/metrics github.com/docker/distribution/registry/storage/cache -github.com/theupdateframework/notary/server/snapshot github.com/docker/distribution/registry/storage/cache/memory -github.com/theupdateframework/notary/server/timestamp github.com/docker/distribution/registry/client -github.com/theupdateframework/notary/server/handlers google.golang.org/grpc -github.com/theupdateframework/notary/server +github.com/theupdateframework/notary/server/snapshot github.com/docker/distribution/registry/client/auth +github.com/theupdateframework/notary/server/timestamp +github.com/theupdateframework/notary/server/handlers github.com/theupdateframework/notary/cmd/notary +github.com/theupdateframework/notary/server github.com/theupdateframework/notary/trustmanager/remoteks google.golang.org/grpc/health/grpc_health_v1 github.com/theupdateframework/notary/proto github.com/theupdateframework/notary/cmd/escrow -github.com/theupdateframework/notary/signer -github.com/theupdateframework/notary/signer/client google.golang.org/grpc/health +github.com/theupdateframework/notary/signer/client +github.com/theupdateframework/notary/signer github.com/theupdateframework/notary/signer/api github.com/theupdateframework/notary/cmd/notary-server github.com/theupdateframework/notary/cmd/notary-signer @@ -2148,17 +2184,17 @@ cd _build && go test -vet=off -v -p 12 github.com/theupdateframework/notary github.com/theupdateframework/notary/client github.com/theupdateframework/notary/client/changelist github.com/theupdateframework/notary/cmd/escrow github.com/theupdateframework/notary/cmd/notary github.com/theupdateframework/notary/cmd/notary-server github.com/theupdateframework/notary/cmd/notary-signer github.com/theupdateframework/notary/cryptoservice github.com/theupdateframework/notary/passphrase github.com/theupdateframework/notary/proto github.com/theupdateframework/notary/proto/github.com/theupdateframework/notary/proto github.com/theupdateframework/notary/server github.com/theupdateframework/notary/server/errors github.com/theupdateframework/notary/server/handlers github.com/theupdateframework/notary/server/snapshot github.com/theupdateframework/notary/server/storage github.com/theupdateframework/notary/server/timestamp github.com/theupdateframework/notary/signer github.com/theupdateframework/notary/signer/api github.com/theupdateframework/notary/signer/client github.com/theupdateframework/notary/signer/keydbstore github.com/theupdateframework/notary/storage github.com/theupdateframework/notary/storage/rethinkdb github.com/theupdateframework/notary/trustmanager github.com/theupdateframework/notary/trustmanager/remoteks github.com/theupdateframework/notary/trustmanager/remoteks/github.com/theupdateframework/notary/trustmanager/remoteks github.com/theupdateframework/notary/trustmanager/yubikey github.com/theupdateframework/notary/trustpinning github.com/theupdateframework/notary/tuf github.com/theupdateframework/notary/tuf/data github.com/theupdateframework/notary/tuf/signed github.com/theupdateframework/notary/tuf/testutils github.com/theupdateframework/notary/tuf/testutils/interfaces github.com/theupdateframework/notary/tuf/testutils/keys github.com/theupdateframework/notary/tuf/utils github.com/theupdateframework/notary/tuf/validation github.com/theupdateframework/notary/utils github.com/theupdateframework/notary/version ? github.com/theupdateframework/notary [no test files] === RUN Test0Dot1Migration ---- PASS: Test0Dot1Migration (0.06s) +--- PASS: Test0Dot1Migration (0.10s) === RUN Test0Dot3Migration ---- PASS: Test0Dot3Migration (0.00s) +--- PASS: Test0Dot3Migration (0.01s) === RUN Test0Dot1RepoFormat -time="2025-03-09T06:39:26-12:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" ---- PASS: Test0Dot1RepoFormat (0.22s) +time="2026-04-12T15:05:44+14:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +--- PASS: Test0Dot1RepoFormat (0.20s) === RUN Test0Dot3RepoFormat backwards_compatibility_test.go:248: Disable FTBFS timebomb. https://bugs.debian.org/1078632 --- SKIP: Test0Dot3RepoFormat (0.00s) === RUN TestDownloading0Dot1RepoFormat ---- PASS: TestDownloading0Dot1RepoFormat (0.02s) +--- PASS: TestDownloading0Dot1RepoFormat (0.01s) === RUN TestDownloading0Dot3RepoFormat backwards_compatibility_test.go:343: Disable FTBFS timebomb. https://bugs.debian.org/1078632 --- SKIP: TestDownloading0Dot3RepoFormat (0.00s) @@ -2171,21 +2207,21 @@ === RUN TestInitRepositoryManagedRolesIncludingTimestamp --- PASS: TestInitRepositoryManagedRolesIncludingTimestamp (0.01s) === RUN TestInitRepositoryWithCerts ---- PASS: TestInitRepositoryWithCerts (0.01s) +--- PASS: TestInitRepositoryWithCerts (0.02s) === RUN TestMatchKeyIDsWithPublicKeys ---- PASS: TestMatchKeyIDsWithPublicKeys (0.00s) +--- PASS: TestMatchKeyIDsWithPublicKeys (0.01s) === RUN TestInitRepositoryNeedsRemoteTimestampKey --- PASS: TestInitRepositoryNeedsRemoteTimestampKey (0.01s) === RUN TestInitRepositoryNeedsRemoteSnapshotKey ---- PASS: TestInitRepositoryNeedsRemoteSnapshotKey (0.01s) +--- PASS: TestInitRepositoryNeedsRemoteSnapshotKey (0.00s) === RUN TestInitRepoServerOnlyManagesTimestampKey ---- PASS: TestInitRepoServerOnlyManagesTimestampKey (0.06s) +--- PASS: TestInitRepoServerOnlyManagesTimestampKey (0.10s) === RUN TestInitRepoServerManagesTimestampAndSnapshotKeys ---- PASS: TestInitRepoServerManagesTimestampAndSnapshotKeys (0.08s) +--- PASS: TestInitRepoServerManagesTimestampAndSnapshotKeys (0.06s) === RUN TestInitRepoAttemptsExceeded --- PASS: TestInitRepoAttemptsExceeded (0.04s) === RUN TestInitRepoPasswordInvalid ---- PASS: TestInitRepoPasswordInvalid (0.01s) +--- PASS: TestInitRepoPasswordInvalid (0.00s) === RUN TestAddTargetToTargetRoleByDefault --- PASS: TestAddTargetToTargetRoleByDefault (0.02s) === RUN TestAddTargetToSpecifiedValidRoles @@ -2193,292 +2229,292 @@ === RUN TestAddTargetToSpecifiedInvalidRoles --- PASS: TestAddTargetToSpecifiedInvalidRoles (0.02s) === RUN TestAddTargetWithInvalidTarget ---- PASS: TestAddTargetWithInvalidTarget (0.02s) +--- PASS: TestAddTargetWithInvalidTarget (0.01s) === RUN TestAddTargetErrorWritingChanges --- PASS: TestAddTargetErrorWritingChanges (0.01s) === RUN TestRemoveTargetToTargetRoleByDefault ---- PASS: TestRemoveTargetToTargetRoleByDefault (0.03s) +--- PASS: TestRemoveTargetToTargetRoleByDefault (0.02s) === RUN TestRemoveTargetFromSpecifiedValidRoles --- PASS: TestRemoveTargetFromSpecifiedValidRoles (0.02s) === RUN TestRemoveTargetToSpecifiedInvalidRoles ---- PASS: TestRemoveTargetToSpecifiedInvalidRoles (0.02s) +--- PASS: TestRemoveTargetToSpecifiedInvalidRoles (0.04s) === RUN TestRemoveTargetErrorWritingChanges ---- PASS: TestRemoveTargetErrorWritingChanges (0.01s) +--- PASS: TestRemoveTargetErrorWritingChanges (0.02s) === RUN TestListTarget ---- PASS: TestListTarget (0.47s) +--- PASS: TestListTarget (0.31s) === RUN TestListTargetRestrictsDelegationPaths ---- PASS: TestListTargetRestrictsDelegationPaths (0.06s) +--- PASS: TestListTargetRestrictsDelegationPaths (0.05s) === RUN TestValidateRootKey --- PASS: TestValidateRootKey (0.05s) === RUN TestGetChangelist --- PASS: TestGetChangelist (0.03s) === RUN TestPublishBareRepo ---- PASS: TestPublishBareRepo (0.54s) +--- PASS: TestPublishBareRepo (0.32s) === RUN TestPublishUninitializedRepo -time="2025-03-09T06:39:28-12:00" level=info msg="No TUF data found locally or remotely - initializing repository docker.com/notary for the first time" +time="2026-04-12T15:05:46+14:00" level=info msg="No TUF data found locally or remotely - initializing repository docker.com/notary for the first time" --- PASS: TestPublishUninitializedRepo (0.05s) === RUN TestPublishClientHasSnapshotKey ---- PASS: TestPublishClientHasSnapshotKey (0.52s) +--- PASS: TestPublishClientHasSnapshotKey (0.27s) === RUN TestPublishAfterInitServerHasSnapshotKey ---- PASS: TestPublishAfterInitServerHasSnapshotKey (0.49s) +--- PASS: TestPublishAfterInitServerHasSnapshotKey (0.24s) === RUN TestPublishAfterPullServerHasSnapshotKey ---- PASS: TestPublishAfterPullServerHasSnapshotKey (0.10s) +--- PASS: TestPublishAfterPullServerHasSnapshotKey (0.08s) === RUN TestPublishNoOneHasSnapshotKey ---- PASS: TestPublishNoOneHasSnapshotKey (0.09s) +--- PASS: TestPublishNoOneHasSnapshotKey (0.06s) === RUN TestPublishSnapshotCorrupt ---- PASS: TestPublishSnapshotCorrupt (0.16s) +--- PASS: TestPublishSnapshotCorrupt (0.17s) === RUN TestPublishTargetsCorrupt ---- PASS: TestPublishTargetsCorrupt (0.09s) +--- PASS: TestPublishTargetsCorrupt (0.10s) === RUN TestPublishRootCorrupt -time="2025-03-09T06:39:29-12:00" level=error msg="Could not publish Repository since we could not update: invalid character 'h' in literal true (expecting 'r')" -time="2025-03-09T06:39:29-12:00" level=error msg="Could not publish Repository since we could not update: invalid character 'h' in literal true (expecting 'r')" ---- PASS: TestPublishRootCorrupt (0.05s) +time="2026-04-12T15:05:47+14:00" level=error msg="Could not publish Repository since we could not update: invalid character 'h' in literal true (expecting 'r')" +time="2026-04-12T15:05:47+14:00" level=error msg="Could not publish Repository since we could not update: invalid character 'h' in literal true (expecting 'r')" +--- PASS: TestPublishRootCorrupt (0.08s) === RUN TestPublishSnapshotLocalKeysCreatedFirst ---- PASS: TestPublishSnapshotLocalKeysCreatedFirst (0.00s) +--- PASS: TestPublishSnapshotLocalKeysCreatedFirst (0.02s) === RUN TestPublishDelegations --- PASS: TestPublishDelegations (0.16s) === RUN TestPublishDelegationsX509 ---- PASS: TestPublishDelegationsX509 (0.14s) +--- PASS: TestPublishDelegationsX509 (0.15s) === RUN TestPublishTargetsDelegationScopeFailIfNoKeys -time="2025-03-09T06:39:30-12:00" level=error msg="couldn't add target to targets/a/b: tuf: invalid role targets/a/b. delegation does not exist" -time="2025-03-09T06:39:30-12:00" level=error msg="couldn't add target to targets/a/b: tuf: invalid role targets/a/b. delegation does not exist" ---- PASS: TestPublishTargetsDelegationScopeFailIfNoKeys (0.12s) +time="2026-04-12T15:05:47+14:00" level=error msg="couldn't add target to targets/a/b: tuf: invalid role targets/a/b. delegation does not exist" +time="2026-04-12T15:05:47+14:00" level=error msg="couldn't add target to targets/a/b: tuf: invalid role targets/a/b. delegation does not exist" +--- PASS: TestPublishTargetsDelegationScopeFailIfNoKeys (0.21s) === RUN TestPublishTargetsDelegationSuccessLocallyHasRoles ---- PASS: TestPublishTargetsDelegationSuccessLocallyHasRoles (0.11s) +--- PASS: TestPublishTargetsDelegationSuccessLocallyHasRoles (0.17s) === RUN TestPublishTargetsDelegationNoTargetsKeyNeeded ---- PASS: TestPublishTargetsDelegationNoTargetsKeyNeeded (0.12s) +--- PASS: TestPublishTargetsDelegationNoTargetsKeyNeeded (0.17s) === RUN TestPublishTargetsDelegationSuccessNeedsToDownloadRoles ---- PASS: TestPublishTargetsDelegationSuccessNeedsToDownloadRoles (0.13s) +--- PASS: TestPublishTargetsDelegationSuccessNeedsToDownloadRoles (0.15s) === RUN TestPublishTargetsDelegationFromTwoRepos ---- PASS: TestPublishTargetsDelegationFromTwoRepos (0.12s) +--- PASS: TestPublishTargetsDelegationFromTwoRepos (0.13s) === RUN TestPublishRemoveDelegationKeyFromDelegationRole -time="2025-03-09T06:39:30-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-03-09T06:39:30-12:00" level=error msg="couldn't add target to targets/a: could not find necessary signing keys, at least one of these keys must be available: e15198fbfa69eda512ad9a93c8a8d68516e1a4f6ca7674a2866bd2b32ed4c8a7" +time="2026-04-12T15:05:48+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-04-12T15:05:48+14:00" level=error msg="couldn't add target to targets/a: could not find necessary signing keys, at least one of these keys must be available: c3c2a0e483754f5aff404d3e4e0215cf148cb629c7f125a5f46ac77274dfb052" --- PASS: TestPublishRemoveDelegationKeyFromDelegationRole (0.09s) === RUN TestPublishRemoveDelegation -time="2025-03-09T06:39:31-12:00" level=warning msg="role targets/a has fewer keys than its threshold of 1; it will not be usable until keys are added to it" -time="2025-03-09T06:39:31-12:00" level=warning msg="role targets/a has fewer keys than its threshold of 1; it will not be usable until keys are added to it" -time="2025-03-09T06:39:31-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-03-09T06:39:31-12:00" level=error msg="couldn't add target to targets/a: could not find necessary signing keys, at least one of these keys must be available: " ---- PASS: TestPublishRemoveDelegation (0.06s) +time="2026-04-12T15:05:48+14:00" level=warning msg="role targets/a has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +time="2026-04-12T15:05:48+14:00" level=warning msg="role targets/a has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +time="2026-04-12T15:05:48+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-04-12T15:05:48+14:00" level=error msg="couldn't add target to targets/a: could not find necessary signing keys, at least one of these keys must be available: " +--- PASS: TestPublishRemoveDelegation (0.08s) === RUN TestPublishSucceedsDespiteDelegationCorrupt ---- PASS: TestPublishSucceedsDespiteDelegationCorrupt (0.10s) +--- PASS: TestPublishSucceedsDespiteDelegationCorrupt (0.08s) === RUN TestRotateKeyInvalidRole --- PASS: TestRotateKeyInvalidRole (0.04s) === RUN TestRemoteRotationError ---- PASS: TestRemoteRotationError (0.02s) +--- PASS: TestRemoteRotationError (0.01s) === RUN TestRemoteRotationEndpointError ---- PASS: TestRemoteRotationEndpointError (0.03s) +--- PASS: TestRemoteRotationEndpointError (0.02s) === RUN TestRemoteRotationNoRootKey ---- PASS: TestRemoteRotationNoRootKey (0.07s) +--- PASS: TestRemoteRotationNoRootKey (0.04s) === RUN TestRemoteRotationNoInit -time="2025-03-09T06:39:31-12:00" level=info msg="No TUF data found locally or remotely - initializing repository docker.com/notary for the first time" ---- PASS: TestRemoteRotationNoInit (0.05s) +time="2026-04-12T15:05:48+14:00" level=info msg="No TUF data found locally or remotely - initializing repository docker.com/notary for the first time" +--- PASS: TestRemoteRotationNoInit (0.03s) === RUN TestRotateBeforePublishFromRemoteKeyToLocalKey ---- PASS: TestRotateBeforePublishFromRemoteKeyToLocalKey (0.16s) +--- PASS: TestRotateBeforePublishFromRemoteKeyToLocalKey (0.13s) === RUN TestRotateKeyAfterPublishNoServerManagementChange ---- PASS: TestRotateKeyAfterPublishNoServerManagementChange (0.32s) +--- PASS: TestRotateKeyAfterPublishNoServerManagementChange (0.41s) === RUN TestRotateKeyAfterPublishServerManagementChange ---- PASS: TestRotateKeyAfterPublishServerManagementChange (0.43s) +--- PASS: TestRotateKeyAfterPublishServerManagementChange (0.48s) === RUN TestRotateRootKey ---- PASS: TestRotateRootKey (0.14s) +--- PASS: TestRotateRootKey (0.15s) === RUN TestRotateRootMultiple ---- PASS: TestRotateRootMultiple (0.15s) +--- PASS: TestRotateRootMultiple (0.21s) === RUN TestRotateRootKeyProvided ---- PASS: TestRotateRootKeyProvided (0.16s) +--- PASS: TestRotateRootKeyProvided (0.15s) === RUN TestRotateRootKeyLegacySupport ---- PASS: TestRotateRootKeyLegacySupport (0.14s) +--- PASS: TestRotateRootKeyLegacySupport (0.21s) === RUN TestRemoteServerUnavailableNoLocalCache -time="2025-03-09T06:39:32-12:00" level=error msg="Could not publish Repository since we could not update: unable to reach trust server at this time: 500." ---- PASS: TestRemoteServerUnavailableNoLocalCache (0.00s) +time="2026-04-12T15:05:50+14:00" level=error msg="Could not publish Repository since we could not update: unable to reach trust server at this time: 500." +--- PASS: TestRemoteServerUnavailableNoLocalCache (0.01s) === RUN TestAddDelegationChangefileValid --- PASS: TestAddDelegationChangefileValid (0.01s) === RUN TestAddDelegationChangefileApplicable ---- PASS: TestAddDelegationChangefileApplicable (0.01s) +--- PASS: TestAddDelegationChangefileApplicable (0.02s) === RUN TestAddDelegationErrorWritingChanges --- PASS: TestAddDelegationErrorWritingChanges (0.01s) === RUN TestRemoveDelegationChangefileValid --- PASS: TestRemoveDelegationChangefileValid (0.01s) === RUN TestRemoveDelegationChangefileApplicable -time="2025-03-09T06:39:32-12:00" level=warning msg="role targets/a has fewer keys than its threshold of 1; it will not be usable until keys are added to it" -time="2025-03-09T06:39:32-12:00" level=warning msg="role targets/a has fewer keys than its threshold of 1; it will not be usable until keys are added to it" ---- PASS: TestRemoveDelegationChangefileApplicable (0.01s) +time="2026-04-12T15:05:50+14:00" level=warning msg="role targets/a has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +time="2026-04-12T15:05:50+14:00" level=warning msg="role targets/a has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +--- PASS: TestRemoveDelegationChangefileApplicable (0.02s) === RUN TestClearAllPathsDelegationChangefileApplicable --- PASS: TestClearAllPathsDelegationChangefileApplicable (0.01s) === RUN TestFullAddDelegationChangefileApplicable ---- PASS: TestFullAddDelegationChangefileApplicable (0.01s) +--- PASS: TestFullAddDelegationChangefileApplicable (0.02s) === RUN TestFullRemoveDelegationChangefileApplicable --- PASS: TestFullRemoveDelegationChangefileApplicable (0.01s) === RUN TestRemoveDelegationErrorWritingChanges ---- PASS: TestRemoveDelegationErrorWritingChanges (0.01s) +--- PASS: TestRemoveDelegationErrorWritingChanges (0.02s) === RUN TestClientInvalidURL --- PASS: TestClientInvalidURL (0.00s) === RUN TestPublishTargetsDelegationCanUseUserKeyWithArbitraryRole ---- PASS: TestPublishTargetsDelegationCanUseUserKeyWithArbitraryRole (0.18s) +--- PASS: TestPublishTargetsDelegationCanUseUserKeyWithArbitraryRole (0.21s) === RUN TestDeleteRepo ---- PASS: TestDeleteRepo (0.02s) +--- PASS: TestDeleteRepo (0.01s) === RUN TestDeleteRemoteRepo ---- PASS: TestDeleteRemoteRepo (0.10s) +--- PASS: TestDeleteRemoteRepo (0.08s) === RUN TestListRoles ---- PASS: TestListRoles (0.21s) +--- PASS: TestListRoles (0.18s) === RUN TestGetAllTargetInfo ---- PASS: TestGetAllTargetInfo (0.12s) +--- PASS: TestGetAllTargetInfo (0.09s) === RUN TestUpdateSucceedsEvenIfCannotWriteNewRepo -time="2025-03-09T06:39:33-12:00" level=error msg="could not save root to cache: Non-writable" ---- PASS: TestUpdateSucceedsEvenIfCannotWriteNewRepo (0.08s) +time="2026-04-12T15:05:51+14:00" level=error msg="could not save root to cache: Non-writable" +--- PASS: TestUpdateSucceedsEvenIfCannotWriteNewRepo (0.10s) === RUN TestUpdateSucceedsEvenIfCannotWriteExistingRepo ---- PASS: TestUpdateSucceedsEvenIfCannotWriteExistingRepo (0.32s) +--- PASS: TestUpdateSucceedsEvenIfCannotWriteExistingRepo (0.47s) === RUN TestUpdateInOfflineMode -time="2025-03-09T06:39:34-12:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" -time="2025-03-09T06:39:34-12:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +time="2026-04-12T15:05:51+14:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +time="2026-04-12T15:05:51+14:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" --- PASS: TestUpdateInOfflineMode (0.03s) === RUN TestUpdateReplacesCorruptOrMissingMetadata -time="2025-03-09T06:39:34-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:34-12:00" level=error msg="Metadata for root expired" ---- PASS: TestUpdateReplacesCorruptOrMissingMetadata (0.59s) +time="2026-04-12T15:05:52+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:05:52+14:00" level=error msg="Metadata for root expired" +--- PASS: TestUpdateReplacesCorruptOrMissingMetadata (0.64s) === RUN TestUpdateFailsIfServerRootKeyChangedWithoutMultiSign -time="2025-03-09T06:39:34-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:34-12:00" level=error msg="Metadata for root expired" ---- PASS: TestUpdateFailsIfServerRootKeyChangedWithoutMultiSign (0.04s) +time="2026-04-12T15:05:52+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:05:52+14:00" level=error msg="Metadata for root expired" +--- PASS: TestUpdateFailsIfServerRootKeyChangedWithoutMultiSign (0.07s) === RUN TestUpdateRemoteRootNotExistNoLocalCache ---- PASS: TestUpdateRemoteRootNotExistNoLocalCache (0.04s) +--- PASS: TestUpdateRemoteRootNotExistNoLocalCache (0.06s) === RUN TestUpdateRemoteRootNotExistCanUseLocalCache ---- PASS: TestUpdateRemoteRootNotExistCanUseLocalCache (0.05s) +--- PASS: TestUpdateRemoteRootNotExistCanUseLocalCache (0.06s) === RUN TestUpdateRemoteRootNotExistCannotUseLocalCache ---- PASS: TestUpdateRemoteRootNotExistCannotUseLocalCache (0.08s) +--- PASS: TestUpdateRemoteRootNotExistCannotUseLocalCache (0.09s) === RUN TestUpdateRemoteRoot50XNoLocalCache ---- PASS: TestUpdateRemoteRoot50XNoLocalCache (0.02s) +--- PASS: TestUpdateRemoteRoot50XNoLocalCache (0.05s) === RUN TestUpdateRemoteRoot50XCanUseLocalCache ---- PASS: TestUpdateRemoteRoot50XCanUseLocalCache (0.05s) +--- PASS: TestUpdateRemoteRoot50XCanUseLocalCache (0.14s) === RUN TestUpdateRemoteRoot50XCannotUseLocalCache ---- PASS: TestUpdateRemoteRoot50XCannotUseLocalCache (0.06s) +--- PASS: TestUpdateRemoteRoot50XCannotUseLocalCache (0.07s) === RUN TestUpdateNonRootRemoteMissingMetadataNoLocalCache ---- PASS: TestUpdateNonRootRemoteMissingMetadataNoLocalCache (0.12s) +--- PASS: TestUpdateNonRootRemoteMissingMetadataNoLocalCache (0.11s) === RUN TestUpdateNonRootRemoteMissingMetadataCanUseLocalCache -time="2025-03-09T06:39:35-12:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" ---- PASS: TestUpdateNonRootRemoteMissingMetadataCanUseLocalCache (0.21s) +time="2026-04-12T15:05:53+14:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +--- PASS: TestUpdateNonRootRemoteMissingMetadataCanUseLocalCache (0.13s) === RUN TestUpdateNonRootRemoteMissingMetadataCannotUseLocalCache -time="2025-03-09T06:39:35-12:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" ---- PASS: TestUpdateNonRootRemoteMissingMetadataCannotUseLocalCache (0.22s) +time="2026-04-12T15:05:53+14:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +--- PASS: TestUpdateNonRootRemoteMissingMetadataCannotUseLocalCache (0.19s) === RUN TestUpdateNonRootRemote50XNoLocalCache ---- PASS: TestUpdateNonRootRemote50XNoLocalCache (0.10s) +--- PASS: TestUpdateNonRootRemote50XNoLocalCache (0.21s) === RUN TestUpdateNonRootRemote50XCanUseLocalCache -time="2025-03-09T06:39:35-12:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" ---- PASS: TestUpdateNonRootRemote50XCanUseLocalCache (0.20s) +time="2026-04-12T15:05:53+14:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +--- PASS: TestUpdateNonRootRemote50XCanUseLocalCache (0.23s) === RUN TestUpdateNonRootRemote50XCannotUseLocalCache -time="2025-03-09T06:39:35-12:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" ---- PASS: TestUpdateNonRootRemote50XCannotUseLocalCache (0.20s) +time="2026-04-12T15:05:54+14:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +--- PASS: TestUpdateNonRootRemote50XCannotUseLocalCache (0.50s) === RUN TestUpdateRemoteChecksumWrongNoLocalCache ---- PASS: TestUpdateRemoteChecksumWrongNoLocalCache (0.13s) +--- PASS: TestUpdateRemoteChecksumWrongNoLocalCache (0.19s) === RUN TestUpdateRemoteChecksumWrongCanUseLocalCache ---- PASS: TestUpdateRemoteChecksumWrongCanUseLocalCache (0.21s) +--- PASS: TestUpdateRemoteChecksumWrongCanUseLocalCache (0.53s) === RUN TestUpdateRemoteChecksumWrongCannotUseLocalCache ---- PASS: TestUpdateRemoteChecksumWrongCannotUseLocalCache (0.38s) +--- PASS: TestUpdateRemoteChecksumWrongCannotUseLocalCache (0.47s) === RUN TestUpdateRootRemoteCorruptedNoLocalCache -time="2025-03-09T06:39:37-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:37-12:00" level=error msg="Metadata for root expired" ---- PASS: TestUpdateRootRemoteCorruptedNoLocalCache (0.66s) +time="2026-04-12T15:05:55+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:05:55+14:00" level=error msg="Metadata for root expired" +--- PASS: TestUpdateRootRemoteCorruptedNoLocalCache (0.46s) === RUN TestUpdateRootRemoteCorruptedCanUseLocalCache ---- PASS: TestUpdateRootRemoteCorruptedCanUseLocalCache (1.63s) +--- PASS: TestUpdateRootRemoteCorruptedCanUseLocalCache (1.18s) === RUN TestUpdateRootRemoteCorruptedCannotUseLocalCache -time="2025-03-09T06:39:39-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:39-12:00" level=error msg="Metadata for root expired" ---- PASS: TestUpdateRootRemoteCorruptedCannotUseLocalCache (1.45s) +time="2026-04-12T15:05:58+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:05:58+14:00" level=error msg="Metadata for root expired" +--- PASS: TestUpdateRootRemoteCorruptedCannotUseLocalCache (1.46s) === RUN TestUpdateNonRootRemoteCorruptedNoLocalCache -time="2025-03-09T06:39:40-12:00" level=error msg="Metadata for targets expired" -time="2025-03-09T06:39:40-12:00" level=error msg="Metadata for targets expired" -time="2025-03-09T06:39:40-12:00" level=error msg="Metadata for snapshot expired" -time="2025-03-09T06:39:40-12:00" level=error msg="Metadata for snapshot expired" -time="2025-03-09T06:39:41-12:00" level=error msg="Metadata for timestamp expired" -time="2025-03-09T06:39:41-12:00" level=error msg="Metadata for timestamp expired" -time="2025-03-09T06:39:41-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-03-09T06:39:41-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-03-09T06:39:41-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-03-09T06:39:41-12:00" level=error msg="Metadata for targets/a expired" -time="2025-03-09T06:39:41-12:00" level=warning msg="Error getting targets/a: targets/a expired at Thu Feb 8 06:39:41 -12 2024" -time="2025-03-09T06:39:41-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-03-09T06:39:41-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-03-09T06:39:41-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-03-09T06:39:41-12:00" level=error msg="Metadata for targets/a/b expired" -time="2025-03-09T06:39:41-12:00" level=warning msg="Error getting targets/a/b: targets/a/b expired at Thu Feb 8 06:39:41 -12 2024" -time="2025-03-09T06:39:41-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2025-03-09T06:39:41-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2025-03-09T06:39:41-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2025-03-09T06:39:41-12:00" level=error msg="Metadata for targets/b expired" -time="2025-03-09T06:39:41-12:00" level=warning msg="Error getting targets/b: targets/b expired at Thu Feb 8 06:39:41 -12 2024" ---- PASS: TestUpdateNonRootRemoteCorruptedNoLocalCache (1.56s) +time="2026-04-12T15:05:58+14:00" level=error msg="Metadata for targets expired" +time="2026-04-12T15:05:58+14:00" level=error msg="Metadata for targets expired" +time="2026-04-12T15:05:59+14:00" level=error msg="Metadata for snapshot expired" +time="2026-04-12T15:05:59+14:00" level=error msg="Metadata for snapshot expired" +time="2026-04-12T15:05:59+14:00" level=error msg="Metadata for timestamp expired" +time="2026-04-12T15:05:59+14:00" level=error msg="Metadata for timestamp expired" +time="2026-04-12T15:05:59+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-04-12T15:05:59+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-04-12T15:05:59+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-04-12T15:05:59+14:00" level=error msg="Metadata for targets/a expired" +time="2026-04-12T15:05:59+14:00" level=warning msg="Error getting targets/a: targets/a expired at Tue Mar 11 15:05:59 +14 2025" +time="2026-04-12T15:05:59+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2026-04-12T15:05:59+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2026-04-12T15:05:59+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2026-04-12T15:05:59+14:00" level=error msg="Metadata for targets/a/b expired" +time="2026-04-12T15:05:59+14:00" level=warning msg="Error getting targets/a/b: targets/a/b expired at Tue Mar 11 15:05:59 +14 2025" +time="2026-04-12T15:05:59+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2026-04-12T15:05:59+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2026-04-12T15:05:59+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2026-04-12T15:05:59+14:00" level=error msg="Metadata for targets/b expired" +time="2026-04-12T15:05:59+14:00" level=warning msg="Error getting targets/b: targets/b expired at Tue Mar 11 15:05:59 +14 2025" +--- PASS: TestUpdateNonRootRemoteCorruptedNoLocalCache (1.20s) === RUN TestUpdateNonRootRemoteCorruptedCanUseLocalCache -time="2025-03-09T06:39:43-12:00" level=error msg="Metadata for timestamp expired" -time="2025-03-09T06:39:43-12:00" level=error msg="Metadata for timestamp expired" ---- PASS: TestUpdateNonRootRemoteCorruptedCanUseLocalCache (2.23s) +time="2026-04-12T15:06:00+14:00" level=error msg="Metadata for timestamp expired" +time="2026-04-12T15:06:00+14:00" level=error msg="Metadata for timestamp expired" +--- PASS: TestUpdateNonRootRemoteCorruptedCanUseLocalCache (1.43s) === RUN TestUpdateNonRootRemoteCorruptedCannotUseLocalCache -time="2025-03-09T06:39:44-12:00" level=error msg="Metadata for targets expired" -time="2025-03-09T06:39:44-12:00" level=error msg="Metadata for snapshot expired" -time="2025-03-09T06:39:44-12:00" level=error msg="Metadata for snapshot expired" -time="2025-03-09T06:39:45-12:00" level=error msg="Metadata for timestamp expired" -time="2025-03-09T06:39:45-12:00" level=error msg="Metadata for timestamp expired" -time="2025-03-09T06:39:45-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-03-09T06:39:45-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-03-09T06:39:45-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-03-09T06:39:45-12:00" level=error msg="Metadata for targets/a expired" -time="2025-03-09T06:39:45-12:00" level=warning msg="Error getting targets/a: targets/a expired at Thu Feb 8 06:39:45 -12 2024" -time="2025-03-09T06:39:46-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-03-09T06:39:46-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-03-09T06:39:46-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-03-09T06:39:46-12:00" level=error msg="Metadata for targets/a/b expired" -time="2025-03-09T06:39:46-12:00" level=warning msg="Error getting targets/a/b: targets/a/b expired at Thu Feb 8 06:39:46 -12 2024" -time="2025-03-09T06:39:46-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2025-03-09T06:39:46-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2025-03-09T06:39:46-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2025-03-09T06:39:46-12:00" level=error msg="Metadata for targets/b expired" -time="2025-03-09T06:39:46-12:00" level=warning msg="Error getting targets/b: targets/b expired at Thu Feb 8 06:39:46 -12 2024" ---- PASS: TestUpdateNonRootRemoteCorruptedCannotUseLocalCache (2.57s) +time="2026-04-12T15:06:01+14:00" level=error msg="Metadata for targets expired" +time="2026-04-12T15:06:01+14:00" level=error msg="Metadata for snapshot expired" +time="2026-04-12T15:06:01+14:00" level=error msg="Metadata for snapshot expired" +time="2026-04-12T15:06:02+14:00" level=error msg="Metadata for timestamp expired" +time="2026-04-12T15:06:02+14:00" level=error msg="Metadata for timestamp expired" +time="2026-04-12T15:06:02+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-04-12T15:06:02+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-04-12T15:06:02+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-04-12T15:06:02+14:00" level=error msg="Metadata for targets/a expired" +time="2026-04-12T15:06:02+14:00" level=warning msg="Error getting targets/a: targets/a expired at Tue Mar 11 15:06:02 +14 2025" +time="2026-04-12T15:06:02+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2026-04-12T15:06:02+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2026-04-12T15:06:02+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2026-04-12T15:06:02+14:00" level=error msg="Metadata for targets/a/b expired" +time="2026-04-12T15:06:02+14:00" level=warning msg="Error getting targets/a/b: targets/a/b expired at Tue Mar 11 15:06:02 +14 2025" +time="2026-04-12T15:06:03+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2026-04-12T15:06:03+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2026-04-12T15:06:03+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2026-04-12T15:06:03+14:00" level=error msg="Metadata for targets/b expired" +time="2026-04-12T15:06:03+14:00" level=warning msg="Error getting targets/b: targets/b expired at Tue Mar 11 15:06:03 +14 2025" +--- PASS: TestUpdateNonRootRemoteCorruptedCannotUseLocalCache (2.10s) === RUN TestUpdateLocalAndRemoteRootCorrupt -time="2025-03-09T06:39:47-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:47-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:48-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:49-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:49-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:49-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:49-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:49-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:49-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:49-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:49-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:49-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:49-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:49-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:49-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:49-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:49-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:49-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:49-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:49-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:49-12:00" level=error msg="Metadata for root expired" -time="2025-03-09T06:39:49-12:00" level=error msg="Metadata for root expired" ---- PASS: TestUpdateLocalAndRemoteRootCorrupt (2.97s) +time="2026-04-12T15:06:04+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:06:04+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:06:05+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:06:05+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:06:05+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:06:05+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:06:05+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:06:05+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:06:05+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:06:05+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:06:05+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:06:05+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:06:05+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:06:05+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:06:05+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:06:05+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:06:05+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:06:05+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:06:05+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:06:05+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:06:05+14:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:06:05+14:00" level=error msg="Metadata for root expired" +--- PASS: TestUpdateLocalAndRemoteRootCorrupt (2.19s) === RUN TestUpdateRemoteKeyRotated -time="2025-03-09T06:39:50-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-03-09T06:39:50-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-03-09T06:39:50-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" ---- PASS: TestUpdateRemoteKeyRotated (0.57s) +time="2026-04-12T15:06:05+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-04-12T15:06:05+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2026-04-12T15:06:05+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +--- PASS: TestUpdateRemoteKeyRotated (0.22s) === RUN TestValidateRootRotationWithOldRole ---- PASS: TestValidateRootRotationWithOldRole (0.20s) +--- PASS: TestValidateRootRotationWithOldRole (0.10s) === RUN TestRootRoleInvariant ---- PASS: TestRootRoleInvariant (0.21s) +--- PASS: TestRootRoleInvariant (0.11s) === RUN TestBadIntermediateTransitions ---- PASS: TestBadIntermediateTransitions (0.07s) +--- PASS: TestBadIntermediateTransitions (0.03s) === RUN TestExpiredIntermediateTransitions -time="2025-03-09T06:39:50-12:00" level=warning msg="root is nearing expiry, you should re-sign the role metadata" ---- PASS: TestExpiredIntermediateTransitions (0.06s) +time="2026-04-12T15:06:06+14:00" level=warning msg="root is nearing expiry, you should re-sign the role metadata" +--- PASS: TestExpiredIntermediateTransitions (0.05s) === RUN TestDownloadTargetsLarge ---- PASS: TestDownloadTargetsLarge (3.88s) +--- PASS: TestDownloadTargetsLarge (2.93s) === RUN TestDownloadTargetsDeep --- PASS: TestDownloadTargetsDeep (0.03s) === RUN TestDownloadSnapshotLargeDelegationsMany ---- PASS: TestDownloadSnapshotLargeDelegationsMany (2.77s) +--- PASS: TestDownloadSnapshotLargeDelegationsMany (2.36s) === RUN TestRootOnDiskTrustPinning ---- PASS: TestRootOnDiskTrustPinning (0.01s) +--- PASS: TestRootOnDiskTrustPinning (0.03s) === RUN TestLoadTUFRepoBadURL --- PASS: TestLoadTUFRepoBadURL (0.00s) === RUN TestApplyTargetsChange @@ -2494,11 +2530,11 @@ === RUN TestApplyTargetsDelegationCreate2SharedKey --- PASS: TestApplyTargetsDelegationCreate2SharedKey (0.00s) === RUN TestApplyTargetsDelegationCreateEdit ---- PASS: TestApplyTargetsDelegationCreateEdit (0.01s) +--- PASS: TestApplyTargetsDelegationCreateEdit (0.00s) === RUN TestApplyTargetsDelegationEditNonExisting --- PASS: TestApplyTargetsDelegationEditNonExisting (0.00s) === RUN TestApplyTargetsDelegationCreateAlreadyExisting ---- PASS: TestApplyTargetsDelegationCreateAlreadyExisting (0.01s) +--- PASS: TestApplyTargetsDelegationCreateAlreadyExisting (0.00s) === RUN TestApplyTargetsDelegationAlreadyExistingMergePaths --- PASS: TestApplyTargetsDelegationAlreadyExistingMergePaths (0.00s) === RUN TestApplyTargetsDelegationInvalidRole @@ -2512,31 +2548,31 @@ === RUN TestApplyTargetsDelegationCreate2Deep --- PASS: TestApplyTargetsDelegationCreate2Deep (0.00s) === RUN TestApplyTargetsDelegationParentDoesntExist ---- PASS: TestApplyTargetsDelegationParentDoesntExist (0.01s) +--- PASS: TestApplyTargetsDelegationParentDoesntExist (0.00s) === RUN TestApplyChangelistCreatesDelegation --- PASS: TestApplyChangelistCreatesDelegation (0.00s) === RUN TestApplyChangelistTargetsToMultipleRoles --- PASS: TestApplyChangelistTargetsToMultipleRoles (0.00s) === RUN TestApplyChangelistTargetsFailsNonexistentRole -time="2025-03-09T06:39:57-12:00" level=error msg="couldn't add target to targets/level1/level2/level3/level4: tuf: invalid role targets/level1/level2/level3/level4. delegation does not exist" -time="2025-03-09T06:39:57-12:00" level=error msg="couldn't remove target from targets/level1/level2/level3/level4: tuf: invalid role targets/level1/level2/level3/level4. delegation does not exist" ---- PASS: TestApplyChangelistTargetsFailsNonexistentRole (0.01s) +time="2026-04-12T15:06:11+14:00" level=error msg="couldn't add target to targets/level1/level2/level3/level4: tuf: invalid role targets/level1/level2/level3/level4. delegation does not exist" +time="2026-04-12T15:06:11+14:00" level=error msg="couldn't remove target from targets/level1/level2/level3/level4: tuf: invalid role targets/level1/level2/level3/level4. delegation does not exist" +--- PASS: TestApplyChangelistTargetsFailsNonexistentRole (0.00s) === RUN TestChangeTargetMetaFailsInvalidRole -time="2025-03-09T06:39:57-12:00" level=error msg="couldn't add target to ruhroh: tuf: invalid role ruhroh. does not exist" +time="2026-04-12T15:06:11+14:00" level=error msg="couldn't add target to ruhroh: tuf: invalid role ruhroh. does not exist" --- PASS: TestChangeTargetMetaFailsInvalidRole (0.00s) === RUN TestChangeTargetMetaFailsIfPrefixError -time="2025-03-09T06:39:57-12:00" level=error msg="couldn't add target to targets/level1: could not add all targets" +time="2026-04-12T15:06:11+14:00" level=error msg="couldn't add target to targets/level1: could not add all targets" --- PASS: TestChangeTargetMetaFailsIfPrefixError (0.00s) === RUN TestAllNearExpiry ---- PASS: TestAllNearExpiry (0.01s) +--- PASS: TestAllNearExpiry (0.00s) === RUN TestAllNotNearExpiry --- PASS: TestAllNotNearExpiry (0.00s) === RUN TestRotateRemoteKeyOffline --- PASS: TestRotateRemoteKeyOffline (0.00s) PASS -ok github.com/theupdateframework/notary/client 31.203s +ok github.com/theupdateframework/notary/client 27.063s === RUN TestTUFDelegation ---- PASS: TestTUFDelegation (0.01s) +--- PASS: TestTUFDelegation (0.00s) === RUN TestMemChangelist --- PASS: TestMemChangelist (0.00s) === RUN TestMemChangeIterator @@ -2546,14 +2582,14 @@ === RUN TestAdd --- PASS: TestAdd (0.00s) === RUN TestErrorConditions -time="2025-03-09T06:39:26-12:00" level=warning msg="invalid character '\\x05' looking for beginning of value" +time="2026-04-12T15:05:44+14:00" level=warning msg="invalid character '\\x05' looking for beginning of value" --- PASS: TestErrorConditions (0.00s) === RUN TestListOrder --- PASS: TestListOrder (0.00s) === RUN TestFileChangeIterator --- PASS: TestFileChangeIterator (0.00s) PASS -ok github.com/theupdateframework/notary/client/changelist 0.052s +ok github.com/theupdateframework/notary/client/changelist 0.043s === RUN TestParseConfigError --- PASS: TestParseConfigError (0.00s) === RUN TestSetupGRPCServer @@ -2563,7 +2599,7 @@ === RUN TestSetupNetListener --- PASS: TestSetupNetListener (0.00s) PASS -ok github.com/theupdateframework/notary/cmd/escrow 0.057s +ok github.com/theupdateframework/notary/cmd/escrow 0.114s === RUN TestPurgeDelegationKeys Usage: delegation [command] @@ -2587,17 +2623,17 @@ Use "delegation [command] --help" for more information about a command. Removal of the following keys from all delegations in gun staged for next publish: - abc ---- PASS: TestPurgeDelegationKeys (0.00s) +--- PASS: TestPurgeDelegationKeys (0.01s) === RUN TestAddInvalidDelegationName --- PASS: TestAddInvalidDelegationName (0.00s) === RUN TestAddInvalidDelegationCert --- PASS: TestAddInvalidDelegationCert (0.00s) === RUN TestAddInvalidShortPubkeyCert ---- PASS: TestAddInvalidShortPubkeyCert (0.00s) +--- PASS: TestAddInvalidShortPubkeyCert (0.01s) === RUN TestRemoveInvalidDelegationName --- PASS: TestRemoveInvalidDelegationName (0.00s) === RUN TestRemoveAllInvalidDelegationName ---- PASS: TestRemoveAllInvalidDelegationName (0.01s) +--- PASS: TestRemoveAllInvalidDelegationName (0.00s) === RUN TestAddInvalidNumArgs Usage: delegation [command] @@ -2635,105 +2671,105 @@ Use "delegation [command] --help" for more information about a command. --- PASS: TestRemoveInvalidNumArgs (0.00s) === RUN TestInitWithRootKey ---- PASS: TestInitWithRootKey (0.14s) +--- PASS: TestInitWithRootKey (0.12s) === RUN TestInitWithRootCert integration_test.go:189: Disable FTBFS timebomb. https://bugs.debian.org/1078632 --- SKIP: TestInitWithRootCert (0.00s) === RUN TestClientTUFInteraction ---- PASS: TestClientTUFInteraction (0.18s) +--- PASS: TestClientTUFInteraction (0.22s) === RUN TestClientDeleteTUFInteraction -time="2025-03-09T06:39:27-12:00" level=error msg="could not reach https://invalid-server: Get \"https://invalid-server/v2/\": dial tcp: lookup invalid-server on [::1]:53: read udp [::1]:38220->[::1]:53: read: connection refused" ---- PASS: TestClientDeleteTUFInteraction (0.25s) +time="2026-04-12T15:05:46+14:00" level=error msg="could not reach https://invalid-server: Get \"https://invalid-server/v2/\": dial tcp: lookup invalid-server on [::1]:53: read udp [::1]:45646->[::1]:53: read: connection refused" +--- PASS: TestClientDeleteTUFInteraction (0.19s) === RUN TestClientTUFAddByHashInteraction ---- PASS: TestClientTUFAddByHashInteraction (0.33s) +--- PASS: TestClientTUFAddByHashInteraction (0.24s) === RUN TestClientDelegationsInteraction -time="2025-03-09T06:39:27-12:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" -time="2025-03-09T06:39:27-12:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" ---- PASS: TestClientDelegationsInteraction (0.76s) +time="2026-04-12T15:05:46+14:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +time="2026-04-12T15:05:46+14:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +--- PASS: TestClientDelegationsInteraction (0.81s) === RUN TestClientDelegationsPublishing ---- PASS: TestClientDelegationsPublishing (1.03s) +--- PASS: TestClientDelegationsPublishing (1.15s) === RUN TestClientKeyGenerationRotation ---- PASS: TestClientKeyGenerationRotation (0.90s) +--- PASS: TestClientKeyGenerationRotation (0.94s) === RUN TestKeyRotation ---- PASS: TestKeyRotation (0.14s) +--- PASS: TestKeyRotation (0.13s) === RUN TestKeyRotationNonRoot ---- PASS: TestKeyRotationNonRoot (0.15s) +--- PASS: TestKeyRotationNonRoot (0.12s) === RUN TestDefaultRootKeyGeneration --- PASS: TestDefaultRootKeyGeneration (0.00s) === RUN TestLogLevelFlags --- PASS: TestLogLevelFlags (0.00s) === RUN TestClientKeyPassphraseChange ---- PASS: TestClientKeyPassphraseChange (0.14s) +--- PASS: TestClientKeyPassphraseChange (0.13s) === RUN TestPurgeSingleKey Removal of the following keys from all delegations in gun staged for next publish: - - e9fd84dcb837e1835de2e09b81f9e54994de376d449f62aae55889ab396178fa ---- PASS: TestPurgeSingleKey (0.13s) + - eef0b333e2790d1776e3b3d99b0e7de5a5552c7aea26031ada193e8acaffa6c4 +--- PASS: TestPurgeSingleKey (0.12s) === RUN TestWitness -time="2025-03-09T06:39:30-12:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" -time="2025-03-09T06:39:31-12:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" -time="2025-03-09T06:39:31-12:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" -time="2025-03-09T06:39:31-12:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" -time="2025-03-09T06:39:31-12:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" -time="2025-03-09T06:39:31-12:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" -time="2025-03-09T06:39:31-12:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" ---- PASS: TestWitness (0.42s) +time="2026-04-12T15:05:50+14:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +time="2026-04-12T15:05:50+14:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +time="2026-04-12T15:05:50+14:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +time="2026-04-12T15:05:50+14:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +time="2026-04-12T15:05:50+14:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +time="2026-04-12T15:05:50+14:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +time="2026-04-12T15:05:50+14:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +--- PASS: TestWitness (0.48s) === RUN TestClientTUFInitWithAutoPublish -time="2025-03-09T06:39:31-12:00" level=error msg="could not reach https://notary-server-on-the-moon:12306: Get \"https://notary-server-on-the-moon:12306/v2/\": dial tcp: lookup notary-server-on-the-moon on [::1]:53: read udp [::1]:52265->[::1]:53: read: connection refused" ---- PASS: TestClientTUFInitWithAutoPublish (0.08s) +time="2026-04-12T15:05:50+14:00" level=error msg="could not reach https://notary-server-on-the-moon:12306: Get \"https://notary-server-on-the-moon:12306/v2/\": dial tcp: lookup notary-server-on-the-moon on [::1]:53: read udp [::1]:54085->[::1]:53: read: connection refused" +--- PASS: TestClientTUFInitWithAutoPublish (0.16s) === RUN TestClientTUFAddWithAutoPublish -time="2025-03-09T06:39:31-12:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:51732->[::1]:53: read: connection refused" -time="2025-03-09T06:39:31-12:00" level=error msg="Could not publish Repository since we could not update: client is offline" -time="2025-03-09T06:39:31-12:00" level=error msg="could not reach https://notary-server-on-the-moon:12306: Get \"https://notary-server-on-the-moon:12306/v2/\": dial tcp: lookup notary-server-on-the-moon on [::1]:53: read udp [::1]:39856->[::1]:53: read: connection refused" -time="2025-03-09T06:39:31-12:00" level=error msg="Could not publish Repository since we could not update: client is offline" +time="2026-04-12T15:05:50+14:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:54445->[::1]:53: read: connection refused" +time="2026-04-12T15:05:50+14:00" level=error msg="Could not publish Repository since we could not update: client is offline" +time="2026-04-12T15:05:50+14:00" level=error msg="could not reach https://notary-server-on-the-moon:12306: Get \"https://notary-server-on-the-moon:12306/v2/\": dial tcp: lookup notary-server-on-the-moon on [::1]:53: read udp [::1]:36466->[::1]:53: read: connection refused" +time="2026-04-12T15:05:50+14:00" level=error msg="Could not publish Repository since we could not update: client is offline" --- PASS: TestClientTUFAddWithAutoPublish (0.13s) === RUN TestClientTUFRemoveWithAutoPublish ---- PASS: TestClientTUFRemoveWithAutoPublish (0.25s) +--- PASS: TestClientTUFRemoveWithAutoPublish (0.23s) === RUN TestClientDelegationAddWithAutoPublish ---- PASS: TestClientDelegationAddWithAutoPublish (0.07s) +--- PASS: TestClientDelegationAddWithAutoPublish (0.16s) === RUN TestClientDelegationRemoveWithAutoPublish -time="2025-03-09T06:39:31-12:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" -time="2025-03-09T06:39:31-12:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" ---- PASS: TestClientDelegationRemoveWithAutoPublish (0.21s) +time="2026-04-12T15:05:51+14:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +time="2026-04-12T15:05:51+14:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +--- PASS: TestClientDelegationRemoveWithAutoPublish (0.24s) === RUN TestClientTUFAddByHashWithAutoPublish ---- PASS: TestClientTUFAddByHashWithAutoPublish (0.10s) +--- PASS: TestClientTUFAddByHashWithAutoPublish (0.09s) === RUN TestClientKeyImport -time="2025-03-09T06:39:32-12:00" level=warning msg="failed to import key to store: Invalid key generated, key may be encrypted and does not contain path header" -time="2025-03-09T06:39:32-12:00" level=warning msg="failed to import key () to store: Cannot have canonical role key without a gun, don't know what gun it belongs to" ---- PASS: TestClientKeyImport (0.05s) +time="2026-04-12T15:05:51+14:00" level=warning msg="failed to import key to store: Invalid key generated, key may be encrypted and does not contain path header" +time="2026-04-12T15:05:51+14:00" level=warning msg="failed to import key () to store: Cannot have canonical role key without a gun, don't know what gun it belongs to" +--- PASS: TestClientKeyImport (0.03s) === RUN TestAddDelImportKeyPublishFlow -time="2025-03-09T06:39:32-12:00" level=error msg="couldn't add target to targets/releases: could not find necessary signing keys, at least one of these keys must be available: 0570f9fdca00bdaf62f3f79bf84e70748ba2c8bff926f20dd996bac49e6164fc" ---- PASS: TestAddDelImportKeyPublishFlow (0.29s) +time="2026-04-12T15:05:51+14:00" level=error msg="couldn't add target to targets/releases: could not find necessary signing keys, at least one of these keys must be available: 0570f9fdca00bdaf62f3f79bf84e70748ba2c8bff926f20dd996bac49e6164fc" +--- PASS: TestAddDelImportKeyPublishFlow (0.22s) === RUN TestExportImportFlow ---- PASS: TestExportImportFlow (0.06s) +--- PASS: TestExportImportFlow (0.08s) === RUN TestDelegationKeyImportExport --- PASS: TestDelegationKeyImportExport (0.00s) === RUN TestImportKeysNoYubikey ---- PASS: TestImportKeysNoYubikey (0.00s) +--- PASS: TestImportKeysNoYubikey (0.01s) === RUN TestExportImportKeysNoYubikey ---- PASS: TestExportImportKeysNoYubikey (0.01s) +--- PASS: TestExportImportKeysNoYubikey (0.00s) === RUN TestRemoveIfNoKey --- PASS: TestRemoveIfNoKey (0.00s) === RUN TestRemoveOneKeyAbort --- PASS: TestRemoveOneKeyAbort (0.01s) === RUN TestRemoveOneKeyConfirm ---- PASS: TestRemoveOneKeyConfirm (0.01s) +--- PASS: TestRemoveOneKeyConfirm (0.00s) === RUN TestRemoveMultikeysInvalidInput --- PASS: TestRemoveMultikeysInvalidInput (0.00s) === RUN TestRemoveMultikeysAbortChoice ---- PASS: TestRemoveMultikeysAbortChoice (0.01s) +--- PASS: TestRemoveMultikeysAbortChoice (0.00s) === RUN TestRemoveMultikeysRemoveOnlyChosenKey --- PASS: TestRemoveMultikeysRemoveOnlyChosenKey (0.00s) === RUN TestRotateKeyInvalidRoles -time="2025-03-09T06:39:32-12:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:47703->[::1]:53: read: connection refused" -time="2025-03-09T06:39:32-12:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:58776->[::1]:53: read: connection refused" -time="2025-03-09T06:39:32-12:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:54821->[::1]:53: read: connection refused" -time="2025-03-09T06:39:32-12:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:47004->[::1]:53: read: connection refused" ---- PASS: TestRotateKeyInvalidRoles (0.01s) +time="2026-04-12T15:05:51+14:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:54200->[::1]:53: read: connection refused" +time="2026-04-12T15:05:51+14:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:45508->[::1]:53: read: connection refused" +time="2026-04-12T15:05:51+14:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:51114->[::1]:53: read: connection refused" +time="2026-04-12T15:05:51+14:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:41042->[::1]:53: read: connection refused" +--- PASS: TestRotateKeyInvalidRoles (0.00s) === RUN TestRotateKeyTargetCannotBeServerManaged -time="2025-03-09T06:39:32-12:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:58872->[::1]:53: read: connection refused" +time="2026-04-12T15:05:51+14:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:55481->[::1]:53: read: connection refused" --- PASS: TestRotateKeyTargetCannotBeServerManaged (0.00s) === RUN TestRotateKeyTimestampCannotBeLocallyManaged -time="2025-03-09T06:39:32-12:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:59917->[::1]:53: read: connection refused" +time="2026-04-12T15:05:51+14:00" level=error msg="could not reach https://notary-server:4443: Get \"https://notary-server:4443/v2/\": dial tcp: lookup notary-server on [::1]:53: read udp [::1]:45111->[::1]:53: read: connection refused" --- PASS: TestRotateKeyTimestampCannotBeLocallyManaged (0.00s) === RUN TestRotateKeyNoGUN Usage: @@ -2745,7 +2781,7 @@ === RUN TestRotateKeyBothKeys Successfully rotated targets key for repository docker.com/notary Successfully rotated snapshot key for repository docker.com/notary ---- PASS: TestRotateKeyBothKeys (0.08s) +--- PASS: TestRotateKeyBothKeys (0.09s) === RUN TestRotateKeyRootIsInteractive --- PASS: TestRotateKeyRootIsInteractive (0.02s) === RUN TestChangeKeyPassphraseInvalidID @@ -2766,7 +2802,7 @@ === RUN TestImportKeysNonexistentFile --- PASS: TestImportKeysNonexistentFile (0.00s) === RUN TestKeyGeneration -time="2025-03-09T06:39:32-12:00" level=warning msg="failed to import key () to store: Cannot have canonical role key without a gun, don't know what gun it belongs to" +time="2026-04-12T15:05:51+14:00" level=warning msg="failed to import key () to store: Cannot have canonical role key without a gun, don't know what gun it belongs to" --- PASS: TestKeyGeneration (0.01s) === RUN TestNotaryConfigFileDefault --- PASS: TestNotaryConfigFileDefault (0.00s) @@ -2777,19 +2813,19 @@ === RUN TestRemoteServerCommandLineFlagOverridesConfig --- PASS: TestRemoteServerCommandLineFlagOverridesConfig (0.00s) === RUN TestInvalidAddHashCommands ---- PASS: TestInvalidAddHashCommands (0.01s) +--- PASS: TestInvalidAddHashCommands (0.00s) === RUN TestConfigParsingErrorsPropagatedByCommands ---- PASS: TestConfigParsingErrorsPropagatedByCommands (0.00s) +--- PASS: TestConfigParsingErrorsPropagatedByCommands (0.01s) === RUN TestInsufficientArgumentsReturnsErrorAndPrintsUsage ---- PASS: TestInsufficientArgumentsReturnsErrorAndPrintsUsage (0.02s) +--- PASS: TestInsufficientArgumentsReturnsErrorAndPrintsUsage (0.01s) === RUN TestBareCommandPrintsUsageAndNoError ---- PASS: TestBareCommandPrintsUsageAndNoError (0.00s) +--- PASS: TestBareCommandPrintsUsageAndNoError (0.01s) === RUN TestConfigFileTLSCannotBeRelativeToCWD ---- PASS: TestConfigFileTLSCannotBeRelativeToCWD (0.02s) +--- PASS: TestConfigFileTLSCannotBeRelativeToCWD (0.01s) === RUN TestConfigFileTLSCanBeRelativeToConfigOrAbsolute --- PASS: TestConfigFileTLSCanBeRelativeToConfigOrAbsolute (0.08s) === RUN TestConfigFileOverridenByCmdLineFlags ---- PASS: TestConfigFileOverridenByCmdLineFlags (0.05s) +--- PASS: TestConfigFileOverridenByCmdLineFlags (0.06s) === RUN TestConfigFileTrustPinning --- PASS: TestConfigFileTrustPinning (0.00s) === RUN TestPassphraseRetrieverCaching @@ -2815,10 +2851,10 @@ === RUN TestImportRootCert --- PASS: TestImportRootCert (0.00s) === RUN TestTokenAuth -time="2025-03-09T06:39:32-12:00" level=error msg="could not reach https://localhost:9999: Get \"https://localhost:9999/v2/\": dial tcp 127.0.0.1:9999: connect: connection refused" +time="2026-04-12T15:05:52+14:00" level=error msg="could not reach https://localhost:9999: Get \"https://localhost:9999/v2/\": dial tcp 127.0.0.1:9999: connect: connection refused" --- PASS: TestTokenAuth (0.00s) === RUN TestAdminTokenAuth -time="2025-03-09T06:39:32-12:00" level=error msg="could not reach https://localhost:9999: Get \"https://localhost:9999/v2/\": dial tcp 127.0.0.1:9999: connect: connection refused" +time="2026-04-12T15:05:52+14:00" level=error msg="could not reach https://localhost:9999: Get \"https://localhost:9999/v2/\": dial tcp 127.0.0.1:9999: connect: connection refused" --- PASS: TestAdminTokenAuth (0.00s) === RUN TestTokenAuth200Status --- PASS: TestTokenAuth200Status (0.00s) @@ -2827,20 +2863,20 @@ === RUN TestTokenAuth401Status --- PASS: TestTokenAuth401Status (0.00s) === RUN TestAdminTokenAuth401Status ---- PASS: TestAdminTokenAuth401Status (0.01s) +--- PASS: TestAdminTokenAuth401Status (0.00s) === RUN TestTokenAuthNon200Non401Status -time="2025-03-09T06:39:32-12:00" level=error msg="could not reach http://127.0.0.1:36409: 404" +time="2026-04-12T15:05:52+14:00" level=error msg="could not reach http://127.0.0.1:35815: 404" --- PASS: TestTokenAuthNon200Non401Status (0.00s) === RUN TestAdminTokenAuthNon200Non401Status -time="2025-03-09T06:39:32-12:00" level=error msg="could not reach http://127.0.0.1:35899: 404" +time="2026-04-12T15:05:52+14:00" level=error msg="could not reach http://127.0.0.1:38537: 404" --- PASS: TestAdminTokenAuthNon200Non401Status (0.00s) === RUN TestConfigureRepo --- PASS: TestConfigureRepo (0.00s) === RUN TestConfigureRepoRW -Enter username: time="2025-03-09T06:39:32-12:00" level=error msg="error processing username input: EOF" ---- PASS: TestConfigureRepoRW (0.01s) +Enter username: time="2026-04-12T15:05:52+14:00" level=error msg="error processing username input: EOF" +--- PASS: TestConfigureRepoRW (0.00s) === RUN TestConfigureRepoAdmin -Enter username: time="2025-03-09T06:39:32-12:00" level=error msg="error processing username input: EOF" +Enter username: time="2026-04-12T15:05:52+14:00" level=error msg="error processing username input: EOF" --- PASS: TestConfigureRepoAdmin (0.00s) === RUN TestStatusUnstageAndReset Successfully reset specified changes for repository gun @@ -2851,13 +2887,13 @@ --- PASS: TestStatusUnstageAndReset (0.00s) === RUN TestGetTrustPinningErrors Pushing changes to gun ---- PASS: TestGetTrustPinningErrors (0.01s) +--- PASS: TestGetTrustPinningErrors (0.00s) === RUN TestPasswordStore -Enter username: time="2025-03-09T06:39:32-12:00" level=error msg="error processing username input: EOF" +Enter username: time="2026-04-12T15:05:52+14:00" level=error msg="error processing username input: EOF" --- PASS: TestPasswordStore (0.00s) === RUN TestPasswordStoreWithEnvvar -time="2025-03-09T06:39:32-12:00" level=error msg="Authentication string with zero-length username" -time="2025-03-09T06:39:32-12:00" level=error msg="Could not base64-decode authentication string" +time="2026-04-12T15:05:52+14:00" level=error msg="Authentication string with zero-length username" +time="2026-04-12T15:05:52+14:00" level=error msg="Could not base64-decode authentication string" --- PASS: TestPasswordStoreWithEnvvar (0.00s) === RUN TestGetPayload --- PASS: TestGetPayload (0.00s) @@ -2866,7 +2902,7 @@ === RUN TestHomeExpand --- PASS: TestHomeExpand (0.00s) PASS -ok github.com/theupdateframework/notary/cmd/notary 6.418s +ok github.com/theupdateframework/notary/cmd/notary 6.639s === RUN TestBootstrap --- PASS: TestBootstrap (0.00s) === RUN TestGetAddrAndTLSConfigInvalidTLS @@ -2882,44 +2918,44 @@ === RUN TestGetInvalidTrustService --- PASS: TestGetInvalidTrustService (0.00s) === RUN TestGetLocalTrustService -time="2025-03-09T06:39:28-12:00" level=info msg="Using local signing service, which requires ED25519. Ignoring all other trust_service parameters, including keyAlgorithm" +time="2026-04-12T15:05:45+14:00" level=info msg="Using local signing service, which requires ED25519. Ignoring all other trust_service parameters, including keyAlgorithm" --- PASS: TestGetLocalTrustService (0.00s) === RUN TestGetTrustServiceInvalidKeyAlgorithm --- PASS: TestGetTrustServiceInvalidKeyAlgorithm (0.00s) === RUN TestGetTrustServiceTLSMissingCertOrKey --- PASS: TestGetTrustServiceTLSMissingCertOrKey (0.00s) === RUN TestGetTrustServiceNoTLSConfig -time="2025-03-09T06:39:28-12:00" level=info msg="Using remote signing service" +time="2026-04-12T15:05:45+14:00" level=info msg="Using remote signing service" --- PASS: TestGetTrustServiceNoTLSConfig (0.00s) === RUN TestGetTrustServiceTLSSuccess -time="2025-03-09T06:39:28-12:00" level=info msg="Using remote signing service" +time="2026-04-12T15:05:45+14:00" level=info msg="Using remote signing service" --- PASS: TestGetTrustServiceTLSSuccess (0.00s) === RUN TestGetTrustServiceTLSFailure --- PASS: TestGetTrustServiceTLSFailure (0.00s) === RUN TestGetStoreInvalid -time="2025-03-09T06:39:28-12:00" level=info msg="Using asdf backend" +time="2026-04-12T15:05:45+14:00" level=info msg="Using asdf backend" --- PASS: TestGetStoreInvalid (0.00s) === RUN TestGetStoreDBStore -time="2025-03-09T06:39:28-12:00" level=info msg="Using sqlite3 backend" ---- PASS: TestGetStoreDBStore (0.01s) +time="2026-04-12T15:05:45+14:00" level=info msg="Using sqlite3 backend" +--- PASS: TestGetStoreDBStore (0.00s) === RUN TestGetStoreRethinkDBStoreConnectionFails -time="2025-03-09T06:39:28-12:00" level=info msg="Using rethinkdb backend" +time="2026-04-12T15:05:45+14:00" level=info msg="Using rethinkdb backend" --- PASS: TestGetStoreRethinkDBStoreConnectionFails (0.00s) === RUN TestGetMemoryStore -time="2025-03-09T06:39:28-12:00" level=info msg="Using memory backend" +time="2026-04-12T15:05:45+14:00" level=info msg="Using memory backend" --- PASS: TestGetMemoryStore (0.00s) === RUN TestGetCacheConfig --- PASS: TestGetCacheConfig (0.00s) === RUN TestGetGUNPRefixes --- PASS: TestGetGUNPRefixes (0.00s) === RUN TestSampleConfig -time="2025-03-09T06:39:28-12:00" level=info msg="Using remote signing service" -time="2025-03-09T06:39:28-12:00" level=info msg="Using sqlite3 backend" ---- PASS: TestSampleConfig (0.03s) +time="2026-04-12T15:05:45+14:00" level=info msg="Using remote signing service" +time="2026-04-12T15:05:45+14:00" level=info msg="Using sqlite3 backend" +--- PASS: TestSampleConfig (0.00s) PASS -ok github.com/theupdateframework/notary/cmd/notary-server 0.138s +ok github.com/theupdateframework/notary/cmd/notary-server 0.136s === RUN TestGetAddrAndTLSConfigInvalidTLS ---- PASS: TestGetAddrAndTLSConfigInvalidTLS (0.00s) +--- PASS: TestGetAddrAndTLSConfigInvalidTLS (0.02s) === RUN TestGetAddrAndTLSConfigNoGRPCAddr --- PASS: TestGetAddrAndTLSConfigNoGRPCAddr (0.00s) === RUN TestGetAddrAndTLSConfigSuccess @@ -2932,7 +2968,7 @@ main_test.go:121: DM - skipping malfunctioning test, fails on sbuild --- SKIP: TestSetupCryptoServicesRethinkDBStoreConnectionFails (0.00s) === RUN TestSetupCryptoServicesDBStoreSuccess ---- PASS: TestSetupCryptoServicesDBStoreSuccess (0.02s) +--- PASS: TestSetupCryptoServicesDBStoreSuccess (0.05s) === RUN TestSetupCryptoServicesMemoryStore --- PASS: TestSetupCryptoServicesMemoryStore (0.00s) === RUN TestSetupCryptoServicesInvalidStore @@ -2940,7 +2976,7 @@ === RUN TestSetupGRPCServerInvalidAddress --- PASS: TestSetupGRPCServerInvalidAddress (0.00s) === RUN TestSetupGRPCServerSuccess ---- PASS: TestSetupGRPCServerSuccess (0.01s) +--- PASS: TestSetupGRPCServerSuccess (0.00s) === RUN TestBootstrap --- PASS: TestBootstrap (0.00s) === RUN TestGetEnv @@ -2950,17 +2986,17 @@ === RUN TestSampleConfig --- PASS: TestSampleConfig (0.00s) PASS -ok github.com/theupdateframework/notary/cmd/notary-signer 0.121s +ok github.com/theupdateframework/notary/cmd/notary-signer 0.161s === RUN TestGenerateCertificate --- PASS: TestGenerateCertificate (0.00s) === RUN TestCryptoServiceWithNonEmptyGUN ---- PASS: TestCryptoServiceWithNonEmptyGUN (0.50s) +--- PASS: TestCryptoServiceWithNonEmptyGUN (0.67s) === RUN TestCryptoServiceWithEmptyGUN ---- PASS: TestCryptoServiceWithEmptyGUN (0.42s) +--- PASS: TestCryptoServiceWithEmptyGUN (0.55s) === RUN TestCryptoSignerInterfaceBehavior --- PASS: TestCryptoSignerInterfaceBehavior (0.00s) PASS -ok github.com/theupdateframework/notary/cryptoservice 0.973s +ok github.com/theupdateframework/notary/cryptoservice 1.272s === RUN TestGetPassphraseForUsingDelegationKey --- PASS: TestGetPassphraseForUsingDelegationKey (0.00s) === RUN TestGetPassphraseLimitsShortPassphrases @@ -2976,142 +3012,142 @@ === RUN TestGetPassphrase --- PASS: TestGetPassphrase (0.00s) PASS -ok github.com/theupdateframework/notary/passphrase 0.044s +ok github.com/theupdateframework/notary/passphrase 0.028s ? github.com/theupdateframework/notary/proto [no test files] ? github.com/theupdateframework/notary/proto/github.com/theupdateframework/notary/proto [no test files] === RUN TestValidationErrorFormat -time="2025-03-09T06:39:28-12:00" level=info msg="invalid update: Update sent by the client is invalid.: &{ErrBadHierarchy Metadata hierarchy is incomplete: no snapshot was included in update and server does not hold current snapshot key for repository}" go.version=go1.24.1 http.request.contenttype="multipart/form-data; boundary=720e4fbfea3f183a205c3fa2caafbf6eab125d901c2d61b2f7199b4958ef" http.request.host="127.0.0.1:37003" http.request.id=116e3f5e-6b93-4eba-82b0-441956929785 http.request.method=POST http.request.remoteaddr="127.0.0.1:51078" http.request.uri=/v2/docker.com/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 -time="2025-03-09T06:39:28-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype="multipart/form-data; boundary=720e4fbfea3f183a205c3fa2caafbf6eab125d901c2d61b2f7199b4958ef" http.request.host="127.0.0.1:37003" http.request.id=116e3f5e-6b93-4eba-82b0-441956929785 http.request.method=POST http.request.remoteaddr="127.0.0.1:51078" http.request.uri=/v2/docker.com/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration=6.326081ms http.response.status=400 http.response.written=260 ---- PASS: TestValidationErrorFormat (0.04s) +time="2026-04-12T15:05:49+14:00" level=info msg="invalid update: Update sent by the client is invalid.: &{ErrBadHierarchy Metadata hierarchy is incomplete: no snapshot was included in update and server does not hold current snapshot key for repository}" go.version=go1.24.1 http.request.contenttype="multipart/form-data; boundary=b51f128467a95c0abc6b2fb7791b1969d1da1e91a7d04df147b86a49afe5" http.request.host="127.0.0.1:44549" http.request.id=fb6b08c6-e35e-4142-8a60-1919ef8dcad4 http.request.method=POST http.request.remoteaddr="127.0.0.1:33530" http.request.uri=/v2/docker.com/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 +time="2026-04-12T15:05:49+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype="multipart/form-data; boundary=b51f128467a95c0abc6b2fb7791b1969d1da1e91a7d04df147b86a49afe5" http.request.host="127.0.0.1:44549" http.request.id=fb6b08c6-e35e-4142-8a60-1919ef8dcad4 http.request.method=POST http.request.remoteaddr="127.0.0.1:33530" http.request.uri=/v2/docker.com/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration=8.16656ms http.response.status=400 http.response.written=260 +--- PASS: TestValidationErrorFormat (0.03s) === RUN TestRunBadAddr --- PASS: TestRunBadAddr (0.00s) === RUN TestRepoPrefixMatches -time="2025-03-09T06:39:28-12:00" level=info msg="updated docker.io/notary to timestamp version 1, checksum 868a9b9bfc668c56e989359c286784b45acd3c6f5c5d9e010b5d0b1b2814c419" docker.io/notary=gun go.version=go1.24.1 http.request.contenttype="multipart/form-data; boundary=efe5e57252b08a045f04ab87f804d0b89d9a2f7675a23cf993070e178e60" http.request.host="127.0.0.1:39163" http.request.id=84850c61-bc64-4b09-ac59-c7d447118e37 http.request.method=POST http.request.remoteaddr="127.0.0.1:33768" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 -time="2025-03-09T06:39:28-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype="multipart/form-data; boundary=efe5e57252b08a045f04ab87f804d0b89d9a2f7675a23cf993070e178e60" http.request.host="127.0.0.1:39163" http.request.id=84850c61-bc64-4b09-ac59-c7d447118e37 http.request.method=POST http.request.remoteaddr="127.0.0.1:33768" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.duration=2.348495ms http.response.status=0 http.response.written=0 -time="2025-03-09T06:39:28-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:39163" http.request.id=1e12a5f0-f679-4f25-80a9-e954aa04ae02 http.request.method=GET http.request.remoteaddr="127.0.0.1:33768" http.request.uri=/v2/docker.io/notary/_trust/tuf/snapshot.json http.request.useragent=Go-http-client/1.1 http.response.duration="331.722µs" http.response.status=200 http.response.written=688 -time="2025-03-09T06:39:28-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:39163" http.request.id=efc02558-5c99-4cb2-aec1-f91e4353bf7b http.request.method=GET http.request.remoteaddr="127.0.0.1:33768" http.request.uri=/v2/docker.io/notary/_trust/tuf/snapshot.d914f03c19bb4622ae3a5658e41cb029490bebbc41023d70833e1533a8a54c98.json http.request.useragent=Go-http-client/1.1 http.response.duration="18.04µs" http.response.status=200 http.response.written=688 -time="2025-03-09T06:39:28-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:39163" http.request.id=5cb6ab38-5bf1-44af-bd97-17b63f520beb http.request.method=GET http.request.remoteaddr="127.0.0.1:33768" http.request.uri=/v2/docker.io/notary/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration="252.401µs" http.response.status=200 http.response.written=181 -time="2025-03-09T06:39:28-12:00" level=info msg="trust data deleted for docker.io/notary" docker.io/notary=gun go.version=go1.24.1 http.request.host="127.0.0.1:39163" http.request.id=5b469779-7c4b-4d43-a6dc-cca43aae3a70 http.request.method=DELETE http.request.remoteaddr="127.0.0.1:33768" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 -time="2025-03-09T06:39:28-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:39163" http.request.id=5b469779-7c4b-4d43-a6dc-cca43aae3a70 http.request.method=DELETE http.request.remoteaddr="127.0.0.1:33768" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.duration="31.28µs" http.response.status=0 http.response.written=0 +time="2026-04-12T15:05:49+14:00" level=info msg="updated docker.io/notary to timestamp version 1, checksum 4a592238ce71d52c3be7f9a42326f5dae9adbbc01886ee8f3681e7213f3dcf90" docker.io/notary=gun go.version=go1.24.1 http.request.contenttype="multipart/form-data; boundary=33588cf177862efc780d215d61a00eacd1cdac29e29b9fc5e9066123135b" http.request.host="127.0.0.1:39481" http.request.id=6eb8a2d7-69a8-49de-98b3-e68b7d98dee8 http.request.method=POST http.request.remoteaddr="127.0.0.1:51582" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 +time="2026-04-12T15:05:49+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype="multipart/form-data; boundary=33588cf177862efc780d215d61a00eacd1cdac29e29b9fc5e9066123135b" http.request.host="127.0.0.1:39481" http.request.id=6eb8a2d7-69a8-49de-98b3-e68b7d98dee8 http.request.method=POST http.request.remoteaddr="127.0.0.1:51582" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.duration=2.0516ms http.response.status=0 http.response.written=0 +time="2026-04-12T15:05:49+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:39481" http.request.id=6bbb94d6-efb6-49e5-b48f-c5eec776ad32 http.request.method=GET http.request.remoteaddr="127.0.0.1:51582" http.request.uri=/v2/docker.io/notary/_trust/tuf/snapshot.json http.request.useragent=Go-http-client/1.1 http.response.duration="314.4µs" http.response.status=200 http.response.written=688 +time="2026-04-12T15:05:49+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:39481" http.request.id=a0840fe2-402f-4340-80e9-9596390d1e5e http.request.method=GET http.request.remoteaddr="127.0.0.1:51582" http.request.uri=/v2/docker.io/notary/_trust/tuf/snapshot.565b8fe6ccbf0c1541378f345885be6db882515bf798aab8a39c24d771d094e9.json http.request.useragent=Go-http-client/1.1 http.response.duration="22.4µs" http.response.status=200 http.response.written=688 +time="2026-04-12T15:05:49+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:39481" http.request.id=eaef8133-a19b-4a87-b30d-29656d9be650 http.request.method=GET http.request.remoteaddr="127.0.0.1:51582" http.request.uri=/v2/docker.io/notary/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration="217.64µs" http.response.status=200 http.response.written=181 +time="2026-04-12T15:05:49+14:00" level=info msg="trust data deleted for docker.io/notary" docker.io/notary=gun go.version=go1.24.1 http.request.host="127.0.0.1:39481" http.request.id=d13f3117-44fb-4516-8f58-b78f41176520 http.request.method=DELETE http.request.remoteaddr="127.0.0.1:51582" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 +time="2026-04-12T15:05:49+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:39481" http.request.id=d13f3117-44fb-4516-8f58-b78f41176520 http.request.method=DELETE http.request.remoteaddr="127.0.0.1:51582" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.duration="27.16µs" http.response.status=0 http.response.written=0 --- PASS: TestRepoPrefixMatches (0.01s) === RUN TestRepoPrefixDoesNotMatch --- PASS: TestRepoPrefixDoesNotMatch (0.02s) === RUN TestMetricsEndpoint ---- PASS: TestMetricsEndpoint (0.04s) +--- PASS: TestMetricsEndpoint (0.08s) === RUN TestGetKeysEndpoint -time="2025-03-09T06:39:28-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.host="127.0.0.1:42835" http.request.id=9b337add-8c22-4298-ad3f-70bad31e222f http.request.method=GET http.request.remoteaddr="127.0.0.1:32770" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 -time="2025-03-09T06:39:28-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:42835" http.request.id=9b337add-8c22-4298-ad3f-70bad31e222f http.request.method=GET http.request.remoteaddr="127.0.0.1:32770" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="124.36µs" http.response.status=404 http.response.written=104 -time="2025-03-09T06:39:28-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:42835" http.request.id=134c89bb-6b16-4e9a-9cc8-b215eaf53f9c http.request.method=GET http.request.remoteaddr="127.0.0.1:32774" http.request.uri=/v2/gun/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration=4.202587ms http.response.status=200 http.response.written=103 -time="2025-03-09T06:39:28-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:42835" http.request.id=41adfb31-1ed7-4baf-a91b-0a2344c35f98 http.request.method=GET http.request.remoteaddr="127.0.0.1:32786" http.request.uri=/v2/gun/_trust/tuf/snapshot.key http.request.useragent=Go-http-client/1.1 http.response.duration="144.681µs" http.response.status=200 http.response.written=103 -time="2025-03-09T06:39:28-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.host="127.0.0.1:42835" http.request.id=2779065a-7cdb-4445-8f49-b467924c8119 http.request.method=GET http.request.remoteaddr="127.0.0.1:32800" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 -time="2025-03-09T06:39:28-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:42835" http.request.id=2779065a-7cdb-4445-8f49-b467924c8119 http.request.method=GET http.request.remoteaddr="127.0.0.1:32800" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="100.081µs" http.response.status=404 http.response.written=104 -time="2025-03-09T06:39:28-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.host="127.0.0.1:42835" http.request.id=b452f14e-d1df-4471-b8f1-38f73e75e569 http.request.method=GET http.request.remoteaddr="127.0.0.1:32802" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 -time="2025-03-09T06:39:28-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:42835" http.request.id=b452f14e-d1df-4471-b8f1-38f73e75e569 http.request.method=GET http.request.remoteaddr="127.0.0.1:32802" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="54.521µs" http.response.status=404 http.response.written=104 ---- PASS: TestGetKeysEndpoint (0.03s) +time="2026-04-12T15:05:49+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.host="127.0.0.1:35975" http.request.id=dbff4e41-3f64-4ad9-bd4e-ab486839a96e http.request.method=GET http.request.remoteaddr="127.0.0.1:42748" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 +time="2026-04-12T15:05:49+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:35975" http.request.id=dbff4e41-3f64-4ad9-bd4e-ab486839a96e http.request.method=GET http.request.remoteaddr="127.0.0.1:42748" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="117.88µs" http.response.status=404 http.response.written=104 +time="2026-04-12T15:05:49+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.host="127.0.0.1:35975" http.request.id=dace2af5-0a17-43b6-9fd0-a9a7ac3bcdac http.request.method=GET http.request.remoteaddr="127.0.0.1:42756" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 +time="2026-04-12T15:05:49+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:35975" http.request.id=dace2af5-0a17-43b6-9fd0-a9a7ac3bcdac http.request.method=GET http.request.remoteaddr="127.0.0.1:42756" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="64.16µs" http.response.status=404 http.response.written=104 +time="2026-04-12T15:05:49+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.host="127.0.0.1:35975" http.request.id=30ecd202-a141-492e-948e-c222c5b4bca9 http.request.method=GET http.request.remoteaddr="127.0.0.1:42762" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 +time="2026-04-12T15:05:49+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:35975" http.request.id=30ecd202-a141-492e-948e-c222c5b4bca9 http.request.method=GET http.request.remoteaddr="127.0.0.1:42762" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="59.12µs" http.response.status=404 http.response.written=104 +time="2026-04-12T15:05:49+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:35975" http.request.id=abff774b-c9a3-4ea2-8f46-a1c1c0336be5 http.request.method=GET http.request.remoteaddr="127.0.0.1:42772" http.request.uri=/v2/gun/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration=16.3886ms http.response.status=200 http.response.written=103 +time="2026-04-12T15:05:49+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:35975" http.request.id=6bddb83e-d31a-4d4a-9a92-ae4d3e348db2 http.request.method=GET http.request.remoteaddr="127.0.0.1:42776" http.request.uri=/v2/gun/_trust/tuf/snapshot.key http.request.useragent=Go-http-client/1.1 http.response.duration="148.88µs" http.response.status=200 http.response.written=103 +--- PASS: TestGetKeysEndpoint (0.04s) === RUN TestGetRoleByHash -time="2025-03-09T06:39:28-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:34485" http.request.id=9f62f042-37b9-47f4-90f5-78d8c751408b http.request.method=GET http.request.remoteaddr="127.0.0.1:58756" http.request.uri=/v2/gun/_trust/tuf/timestamp.fbda0141ce176c0e7b3856f9cef7c2139abf7679fe1dea6d80399fbd6a24b3b6.json http.request.useragent=Go-http-client/1.1 http.response.duration="51.92µs" http.response.status=200 http.response.written=120 ---- PASS: TestGetRoleByHash (0.00s) +time="2026-04-12T15:05:49+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:42543" http.request.id=3fad55d4-77fc-404f-8dda-3dfcbbe3c066 http.request.method=GET http.request.remoteaddr="127.0.0.1:34550" http.request.uri=/v2/gun/_trust/tuf/timestamp.488d9d2f1f7484687621b6284ad31fbc7cd9b1af605ade69c2a16381968fd178.json http.request.useragent=Go-http-client/1.1 http.response.duration="46.4µs" http.response.status=200 http.response.written=120 +--- PASS: TestGetRoleByHash (0.02s) === RUN TestGetRoleByVersion -time="2025-03-09T06:39:28-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:38445" http.request.id=41d201e7-7692-4e87-87b6-62bafe395481 http.request.method=GET http.request.remoteaddr="127.0.0.1:58596" http.request.uri=/v2/gun/_trust/tuf/1.timestamp.json http.request.useragent=Go-http-client/1.1 http.response.duration="59.56µs" http.response.status=200 http.response.written=120 ---- PASS: TestGetRoleByVersion (0.02s) +time="2026-04-12T15:05:49+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:42181" http.request.id=11c237c8-3beb-4a11-aa8c-7f0b6b8b39f7 http.request.method=GET http.request.remoteaddr="127.0.0.1:43776" http.request.uri=/v2/gun/_trust/tuf/1.timestamp.json http.request.useragent=Go-http-client/1.1 http.response.duration="55.44µs" http.response.status=200 http.response.written=120 +--- PASS: TestGetRoleByVersion (0.03s) === RUN TestGetCurrentRole -time="2025-03-09T06:39:28-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:41007" http.request.id=707ff121-a503-477e-8ef6-1598b5cb2525 http.request.method=GET http.request.remoteaddr="127.0.0.1:53756" http.request.uri=/v2/gun/_trust/tuf/timestamp.json http.request.useragent=Go-http-client/1.1 http.response.duration="318.482µs" http.response.status=200 http.response.written=500 ---- PASS: TestGetCurrentRole (0.01s) +time="2026-04-12T15:05:49+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:40783" http.request.id=e035a6ff-9edb-4a53-9395-ec25c4c1fa37 http.request.method=GET http.request.remoteaddr="127.0.0.1:34360" http.request.uri=/v2/gun/_trust/tuf/timestamp.json http.request.useragent=Go-http-client/1.1 http.response.duration="308.8µs" http.response.status=200 http.response.written=500 +--- PASS: TestGetCurrentRole (0.05s) === RUN TestRotateKeyEndpoint -time="2025-03-09T06:39:28-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:39503" http.request.id=a6c5e5ce-e095-4b4c-b2d4-9b8258aadbb2 http.request.method=POST http.request.remoteaddr="127.0.0.1:58036" http.request.uri=/v2/gun/_trust/tuf/snapshot.key http.request.useragent=Go-http-client/1.1 http.response.duration="182.202µs" http.response.status=200 http.response.written=103 -time="2025-03-09T06:39:28-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:39503" http.request.id=b8af1217-7382-42f9-8efb-d6be308fe014 http.request.method=POST http.request.remoteaddr="127.0.0.1:58042" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 -time="2025-03-09T06:39:28-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:39503" http.request.id=b8af1217-7382-42f9-8efb-d6be308fe014 http.request.method=POST http.request.remoteaddr="127.0.0.1:58042" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="72.48µs" http.response.status=404 http.response.written=104 -time="2025-03-09T06:39:28-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:39503" http.request.id=8b499770-aeba-4e79-89a0-c67b1a00143d http.request.method=POST http.request.remoteaddr="127.0.0.1:58046" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 -time="2025-03-09T06:39:28-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:39503" http.request.id=8b499770-aeba-4e79-89a0-c67b1a00143d http.request.method=POST http.request.remoteaddr="127.0.0.1:58046" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="51.56µs" http.response.status=404 http.response.written=104 -time="2025-03-09T06:39:28-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:39503" http.request.id=30684ce3-611e-4361-80ff-c51c93d0c161 http.request.method=POST http.request.remoteaddr="127.0.0.1:58056" http.request.uri=/v2/gun/_trust/tuf/targets/delegation.key http.request.useragent=Go-http-client/1.1 -time="2025-03-09T06:39:28-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:39503" http.request.id=30684ce3-611e-4361-80ff-c51c93d0c161 http.request.method=POST http.request.remoteaddr="127.0.0.1:58056" http.request.uri=/v2/gun/_trust/tuf/targets/delegation.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="47.84µs" http.response.status=404 http.response.written=104 -time="2025-03-09T06:39:28-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:39503" http.request.id=14e5720d-29fc-43d2-9f50-0123ab70928b http.request.method=POST http.request.remoteaddr="127.0.0.1:58060" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 -time="2025-03-09T06:39:28-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:39503" http.request.id=14e5720d-29fc-43d2-9f50-0123ab70928b http.request.method=POST http.request.remoteaddr="127.0.0.1:58060" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="47.56µs" http.response.status=404 http.response.written=104 -time="2025-03-09T06:39:28-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:39503" http.request.id=023aae68-e552-443a-823e-4273836fd578 http.request.method=POST http.request.remoteaddr="127.0.0.1:58070" http.request.uri=/v2/gun/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration="128.721µs" http.response.status=200 http.response.written=103 ---- PASS: TestRotateKeyEndpoint (0.02s) +time="2026-04-12T15:05:49+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:43979" http.request.id=7ce583c3-fa85-4868-909a-1a599e3eba9b http.request.method=POST http.request.remoteaddr="127.0.0.1:52296" http.request.uri=/v2/gun/_trust/tuf/targets/delegation.key http.request.useragent=Go-http-client/1.1 +time="2026-04-12T15:05:49+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:43979" http.request.id=7ce583c3-fa85-4868-909a-1a599e3eba9b http.request.method=POST http.request.remoteaddr="127.0.0.1:52296" http.request.uri=/v2/gun/_trust/tuf/targets/delegation.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="112.44µs" http.response.status=404 http.response.written=104 +time="2026-04-12T15:05:49+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:43979" http.request.id=4754ce85-0751-494c-babf-7bed14ad105c http.request.method=POST http.request.remoteaddr="127.0.0.1:52310" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 +time="2026-04-12T15:05:49+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:43979" http.request.id=4754ce85-0751-494c-babf-7bed14ad105c http.request.method=POST http.request.remoteaddr="127.0.0.1:52310" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="60.56µs" http.response.status=404 http.response.written=104 +time="2026-04-12T15:05:49+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:43979" http.request.id=17a33f1a-14c3-4cc0-addb-fc3ac396f6d6 http.request.method=POST http.request.remoteaddr="127.0.0.1:52316" http.request.uri=/v2/gun/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration="137.72µs" http.response.status=200 http.response.written=103 +time="2026-04-12T15:05:49+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:43979" http.request.id=6b7b79c4-f66e-4867-baa2-4dcbc52be65b http.request.method=POST http.request.remoteaddr="127.0.0.1:52332" http.request.uri=/v2/gun/_trust/tuf/snapshot.key http.request.useragent=Go-http-client/1.1 http.response.duration="127.76µs" http.response.status=200 http.response.written=103 +time="2026-04-12T15:05:49+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:43979" http.request.id=d091b520-9734-41c0-b12c-4f6d9201f6a6 http.request.method=POST http.request.remoteaddr="127.0.0.1:52336" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 +time="2026-04-12T15:05:49+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:43979" http.request.id=d091b520-9734-41c0-b12c-4f6d9201f6a6 http.request.method=POST http.request.remoteaddr="127.0.0.1:52336" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="61.56µs" http.response.status=404 http.response.written=104 +time="2026-04-12T15:05:49+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:43979" http.request.id=5e23be49-9a13-41ba-9ca0-58a3bcb453f6 http.request.method=POST http.request.remoteaddr="127.0.0.1:52338" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 +time="2026-04-12T15:05:49+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:43979" http.request.id=5e23be49-9a13-41ba-9ca0-58a3bcb453f6 http.request.method=POST http.request.remoteaddr="127.0.0.1:52338" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="56.84µs" http.response.status=404 http.response.written=104 +--- PASS: TestRotateKeyEndpoint (0.03s) PASS -ok github.com/theupdateframework/notary/server 0.282s +ok github.com/theupdateframework/notary/server 0.458s ? github.com/theupdateframework/notary/server/errors [no test files] === RUN Test_changefeed ---- PASS: Test_changefeed (0.01s) +--- PASS: Test_changefeed (0.00s) === RUN Test_checkChangefeedInputs -time="2025-03-09T06:39:28-12:00" level=error msg="500 GET unable to retrieve storage" -time="2025-03-09T06:39:28-12:00" level=error msg="400 GET invalid pageSize: not_a_number" +time="2026-04-12T15:05:50+14:00" level=error msg="500 GET unable to retrieve storage" +time="2026-04-12T15:05:50+14:00" level=error msg="400 GET invalid pageSize: not_a_number" --- PASS: Test_checkChangefeedInputs (0.00s) === RUN TestMainHandlerGet -time="2025-03-09T06:39:28-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:39719" http.request.id=cd483e0c-dbfc-439f-9c6f-a7c21ca13a3f http.request.method=GET http.request.remoteaddr="127.0.0.1:58080" http.request.uri=/ http.request.useragent=Go-http-client/1.1 http.response.duration="27.12µs" http.response.status=200 http.response.written=2 +time="2026-04-12T15:05:50+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:41775" http.request.id=1e42f8f0-8149-4cdf-b26d-d8d8a1ffd195 http.request.method=GET http.request.remoteaddr="127.0.0.1:37798" http.request.uri=/ http.request.useragent=Go-http-client/1.1 http.response.duration="28.68µs" http.response.status=200 http.response.written=2 --- PASS: TestMainHandlerGet (0.00s) === RUN TestMainHandlerNotGet -time="2025-03-09T06:39:28-12:00" level=info msg="generic not found: You have requested a resource that does not exist.: " go.version=go1.24.1 http.request.host="127.0.0.1:45539" http.request.id=52b148e5-15c2-45fc-a907-467209e0cc57 http.request.method=HEAD http.request.remoteaddr="127.0.0.1:42582" http.request.uri=/ http.request.useragent=Go-http-client/1.1 -time="2025-03-09T06:39:28-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:45539" http.request.id=52b148e5-15c2-45fc-a907-467209e0cc57 http.request.method=HEAD http.request.remoteaddr="127.0.0.1:42582" http.request.uri=/ http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="214.801µs" http.response.status=404 http.response.written=105 +time="2026-04-12T15:05:50+14:00" level=info msg="generic not found: You have requested a resource that does not exist.: " go.version=go1.24.1 http.request.host="127.0.0.1:43481" http.request.id=f0a3085d-a865-436e-8926-34128f34e17e http.request.method=HEAD http.request.remoteaddr="127.0.0.1:55420" http.request.uri=/ http.request.useragent=Go-http-client/1.1 +time="2026-04-12T15:05:50+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:43481" http.request.id=f0a3085d-a865-436e-8926-34128f34e17e http.request.method=HEAD http.request.remoteaddr="127.0.0.1:55420" http.request.uri=/ http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="222.08µs" http.response.status=404 http.response.written=105 --- PASS: TestMainHandlerNotGet (0.00s) === RUN TestKeyHandlersInvalidConfiguration -time="2025-03-09T06:39:28-12:00" level=error msg="500 GET key algorithm not configured" go.version=go1.24.1 gun=gun -time="2025-03-09T06:39:28-12:00" level=error msg="500 GET key algorithm not configured" go.version=go1.24.1 gun=gun -time="2025-03-09T06:39:28-12:00" level=error msg="500 GET storage not configured" go.version=go1.24.1 gun=gun -time="2025-03-09T06:39:28-12:00" level=error msg="500 GET storage not configured" go.version=go1.24.1 gun=gun -time="2025-03-09T06:39:28-12:00" level=error msg="500 GET crypto service not configured" go.version=go1.24.1 gun=gun -time="2025-03-09T06:39:28-12:00" level=error msg="500 GET crypto service not configured" go.version=go1.24.1 gun=gun -time="2025-03-09T06:39:28-12:00" level=error msg="500 POST crypto service not configured" go.version=go1.24.1 gun=gun -time="2025-03-09T06:39:28-12:00" level=error msg="500 POST crypto service not configured" go.version=go1.24.1 gun=gun -time="2025-03-09T06:39:28-12:00" level=error msg="500 POST key algorithm not configured" go.version=go1.24.1 gun=gun -time="2025-03-09T06:39:28-12:00" level=error msg="500 POST key algorithm not configured" go.version=go1.24.1 gun=gun -time="2025-03-09T06:39:28-12:00" level=error msg="500 POST storage not configured" go.version=go1.24.1 gun=gun -time="2025-03-09T06:39:28-12:00" level=error msg="500 POST storage not configured" go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=error msg="500 GET storage not configured" go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=error msg="500 GET storage not configured" go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=error msg="500 GET crypto service not configured" go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=error msg="500 GET crypto service not configured" go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=error msg="500 GET key algorithm not configured" go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=error msg="500 GET key algorithm not configured" go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=error msg="500 POST storage not configured" go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=error msg="500 POST storage not configured" go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=error msg="500 POST crypto service not configured" go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=error msg="500 POST crypto service not configured" go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=error msg="500 POST key algorithm not configured" go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=error msg="500 POST key algorithm not configured" go.version=go1.24.1 gun=gun --- PASS: TestKeyHandlersInvalidConfiguration (0.00s) === RUN TestKeyHandlersNoRoleOrRepo -time="2025-03-09T06:39:28-12:00" level=info msg="400 GET no gun in request" =gun go.version=go1.24.1 -time="2025-03-09T06:39:28-12:00" level=info msg="400 GET no gun in request" =gun go.version=go1.24.1 -time="2025-03-09T06:39:28-12:00" level=info msg="400 GET no role in request" go.version=go1.24.1 gun=gun -time="2025-03-09T06:39:28-12:00" level=info msg="400 GET no role in request" go.version=go1.24.1 gun=gun -time="2025-03-09T06:39:28-12:00" level=info msg="400 POST no gun in request" =gun go.version=go1.24.1 -time="2025-03-09T06:39:28-12:00" level=info msg="400 POST no gun in request" =gun go.version=go1.24.1 -time="2025-03-09T06:39:28-12:00" level=info msg="400 POST no role in request" go.version=go1.24.1 gun=gun -time="2025-03-09T06:39:28-12:00" level=info msg="400 POST no role in request" go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=info msg="400 GET no gun in request" =gun go.version=go1.24.1 +time="2026-04-12T15:05:50+14:00" level=info msg="400 GET no gun in request" =gun go.version=go1.24.1 +time="2026-04-12T15:05:50+14:00" level=info msg="400 GET no role in request" go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=info msg="400 GET no role in request" go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=info msg="400 POST no gun in request" =gun go.version=go1.24.1 +time="2026-04-12T15:05:50+14:00" level=info msg="400 POST no gun in request" =gun go.version=go1.24.1 +time="2026-04-12T15:05:50+14:00" level=info msg="400 POST no role in request" go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=info msg="400 POST no role in request" go.version=go1.24.1 gun=gun --- PASS: TestKeyHandlersNoRoleOrRepo (0.00s) === RUN TestKeyHandlersInvalidRole -time="2025-03-09T06:39:28-12:00" level=info msg="400 GET root key: " go.version=go1.24.1 gun=gun -time="2025-03-09T06:39:28-12:00" level=info msg="400 GET targets key: " go.version=go1.24.1 gun=gun -time="2025-03-09T06:39:28-12:00" level=info msg="400 GET targets/a key: " go.version=go1.24.1 gun=gun -time="2025-03-09T06:39:28-12:00" level=info msg="400 GET invalidrole key: " go.version=go1.24.1 gun=gun -time="2025-03-09T06:39:28-12:00" level=info msg="400 POST root key: " go.version=go1.24.1 gun=gun -time="2025-03-09T06:39:28-12:00" level=info msg="400 POST targets key: " go.version=go1.24.1 gun=gun -time="2025-03-09T06:39:28-12:00" level=info msg="400 POST targets/a key: " go.version=go1.24.1 gun=gun -time="2025-03-09T06:39:28-12:00" level=info msg="400 POST invalidrole key: " go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=info msg="400 GET root key: " go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=info msg="400 GET targets key: " go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=info msg="400 GET targets/a key: " go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=info msg="400 GET invalidrole key: " go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=info msg="400 POST root key: " go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=info msg="400 POST targets key: " go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=info msg="400 POST targets/a key: " go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=info msg="400 POST invalidrole key: " go.version=go1.24.1 gun=gun --- PASS: TestKeyHandlersInvalidRole (0.00s) === RUN TestGetKeyHandlerCreatesOnce --- PASS: TestGetKeyHandlerCreatesOnce (0.00s) === RUN TestKeyHandlersInvalidKeyAlgo -time="2025-03-09T06:39:28-12:00" level=error msg="500 GET timestamp key: only ED25519 supported by this cryptoservice" go.version=go1.24.1 gun=gun -time="2025-03-09T06:39:28-12:00" level=error msg="500 GET snapshot key: only ED25519 supported by this cryptoservice" go.version=go1.24.1 gun=gun -time="2025-03-09T06:39:28-12:00" level=error msg="500 POST timestamp key: only ED25519 supported by this cryptoservice" go.version=go1.24.1 gun=gun -time="2025-03-09T06:39:28-12:00" level=error msg="500 POST snapshot key: only ED25519 supported by this cryptoservice" go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=error msg="500 GET timestamp key: only ED25519 supported by this cryptoservice" go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=error msg="500 GET snapshot key: only ED25519 supported by this cryptoservice" go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=error msg="500 POST timestamp key: only ED25519 supported by this cryptoservice" go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=error msg="500 POST snapshot key: only ED25519 supported by this cryptoservice" go.version=go1.24.1 gun=gun --- PASS: TestKeyHandlersInvalidKeyAlgo (0.00s) === RUN TestRotateKeyHandlerSuccessfulRotation --- PASS: TestRotateKeyHandlerSuccessfulRotation (0.00s) === RUN TestGetHandlerRoot -time="2025-03-09T06:39:28-12:00" level=info msg="404 GET root role" go.version=go1.24.1 gun=gun ---- PASS: TestGetHandlerRoot (0.00s) +time="2026-04-12T15:05:50+14:00" level=info msg="404 GET root role" go.version=go1.24.1 gun=gun +--- PASS: TestGetHandlerRoot (0.01s) === RUN TestGetHandlerTimestamp ---- PASS: TestGetHandlerTimestamp (0.01s) +--- PASS: TestGetHandlerTimestamp (0.00s) === RUN TestGetHandlerSnapshot --- PASS: TestGetHandlerSnapshot (0.00s) === RUN TestGetHandler404 -time="2025-03-09T06:39:28-12:00" level=info msg="404 GET root role" go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=info msg="404 GET root role" go.version=go1.24.1 gun=gun --- PASS: TestGetHandler404 (0.00s) === RUN TestGetHandlerNilData -time="2025-03-09T06:39:28-12:00" level=info msg="404 GET root role" go.version=go1.24.1 gun=gun +time="2026-04-12T15:05:50+14:00" level=info msg="404 GET root role" go.version=go1.24.1 gun=gun --- PASS: TestGetHandlerNilData (0.00s) === RUN TestGetHandlerNoStorage -time="2025-03-09T06:39:28-12:00" level=error msg="500 GET: no storage exists" =gun go.version=go1.24.1 +time="2026-04-12T15:05:50+14:00" level=error msg="500 GET: no storage exists" =gun go.version=go1.24.1 --- PASS: TestGetHandlerNoStorage (0.00s) === RUN TestAtomicUpdateValidationFailurePropagated ---- PASS: TestAtomicUpdateValidationFailurePropagated (0.01s) +--- PASS: TestAtomicUpdateValidationFailurePropagated (0.02s) === RUN TestAtomicUpdateNonValidationFailureNotPropagated -time="2025-03-09T06:39:28-12:00" level=info msg="400 POST error validating update" go.version=go1.24.1 testGUN=gun ---- PASS: TestAtomicUpdateNonValidationFailureNotPropagated (0.01s) +time="2026-04-12T15:05:50+14:00" level=info msg="400 POST error validating update" go.version=go1.24.1 testGUN=gun +--- PASS: TestAtomicUpdateNonValidationFailureNotPropagated (0.00s) === RUN TestAtomicUpdateVersionErrorPropagated -time="2025-03-09T06:39:28-12:00" level=info msg="400 POST old version error" go.version=go1.24.1 testGUN=gun +time="2026-04-12T15:05:50+14:00" level=info msg="400 POST old version error" go.version=go1.24.1 testGUN=gun --- PASS: TestAtomicUpdateVersionErrorPropagated (0.01s) === RUN TestGetMaybeServerSignedNoCrypto --- PASS: TestGetMaybeServerSignedNoCrypto (0.00s) @@ -3124,34 +3160,34 @@ === RUN TestValidatePrevTimestamp --- PASS: TestValidatePrevTimestamp (0.01s) === RUN TestValidatePreviousTimestampCorrupt -time="2025-03-09T06:39:28-12:00" level=error msg="Failed to unmarshal existing timestamp for GUN docker.com/notary" +time="2026-04-12T15:05:50+14:00" level=error msg="Failed to unmarshal existing timestamp for GUN docker.com/notary" --- PASS: TestValidatePreviousTimestampCorrupt (0.01s) === RUN TestValidateGetCurrentTimestampBroken --- PASS: TestValidateGetCurrentTimestampBroken (0.01s) === RUN TestValidateNoNewRoot ---- PASS: TestValidateNoNewRoot (0.01s) +--- PASS: TestValidateNoNewRoot (0.02s) === RUN TestValidateNoNewTargets --- PASS: TestValidateNoNewTargets (0.01s) === RUN TestValidateOnlySnapshot --- PASS: TestValidateOnlySnapshot (0.01s) === RUN TestValidateOldRoot ---- PASS: TestValidateOldRoot (0.01s) +--- PASS: TestValidateOldRoot (0.02s) === RUN TestValidateOldRootCorrupt --- PASS: TestValidateOldRootCorrupt (0.00s) === RUN TestValidateOldRootCorruptRootRole ---- PASS: TestValidateOldRootCorruptRootRole (0.00s) +--- PASS: TestValidateOldRootCorruptRootRole (0.01s) === RUN TestValidateRootGetCurrentRootBroken ---- PASS: TestValidateRootGetCurrentRootBroken (0.01s) +--- PASS: TestValidateRootGetCurrentRootBroken (0.02s) === RUN TestValidateRootRotationWithOldSigs ---- PASS: TestValidateRootRotationWithOldSigs (0.03s) +--- PASS: TestValidateRootRotationWithOldSigs (0.06s) === RUN TestValidateRootRotationMultipleKeysThreshold1 ---- PASS: TestValidateRootRotationMultipleKeysThreshold1 (0.02s) +--- PASS: TestValidateRootRotationMultipleKeysThreshold1 (0.03s) === RUN TestRootRotationNotSignedWithOldKeysForOldRole ---- PASS: TestRootRotationNotSignedWithOldKeysForOldRole (0.05s) +--- PASS: TestRootRotationNotSignedWithOldKeysForOldRole (0.09s) === RUN TestRootRotationVersionIncrement ---- PASS: TestRootRotationVersionIncrement (0.02s) +--- PASS: TestRootRotationVersionIncrement (0.07s) === RUN TestValidateNoRoot ---- PASS: TestValidateNoRoot (0.01s) +--- PASS: TestValidateNoRoot (0.00s) === RUN TestValidateSnapshotMissingNoSnapshotKey --- PASS: TestValidateSnapshotMissingNoSnapshotKey (0.01s) === RUN TestValidateSnapshotGenerateNoPrev @@ -3159,10 +3195,10 @@ === RUN TestValidateSnapshotGenerateWithPrev --- PASS: TestValidateSnapshotGenerateWithPrev (0.01s) === RUN TestValidateSnapshotGeneratePrevCorrupt -time="2025-03-09T06:39:28-12:00" level=error msg="Failed to unmarshal existing snapshot for GUN docker.com/notary" +time="2026-04-12T15:05:50+14:00" level=error msg="Failed to unmarshal existing snapshot for GUN docker.com/notary" --- PASS: TestValidateSnapshotGeneratePrevCorrupt (0.01s) === RUN TestValidateSnapshotGenerateStoreGetCurrentSnapshotBroken ---- PASS: TestValidateSnapshotGenerateStoreGetCurrentSnapshotBroken (0.01s) +--- PASS: TestValidateSnapshotGenerateStoreGetCurrentSnapshotBroken (0.02s) === RUN TestValidateSnapshotGenerateNoTargets --- PASS: TestValidateSnapshotGenerateNoTargets (0.02s) === RUN TestValidateSnapshotGenerate @@ -3170,79 +3206,79 @@ === RUN TestValidateRootNoTimestampKey --- PASS: TestValidateRootNoTimestampKey (0.00s) === RUN TestValidateRootInvalidTimestampKey ---- PASS: TestValidateRootInvalidTimestampKey (0.01s) +--- PASS: TestValidateRootInvalidTimestampKey (0.00s) === RUN TestValidateRootInvalidTimestampThreshold ---- PASS: TestValidateRootInvalidTimestampThreshold (0.02s) +--- PASS: TestValidateRootInvalidTimestampThreshold (0.01s) === RUN TestValidateRootInvalidZeroThreshold ---- PASS: TestValidateRootInvalidZeroThreshold (0.05s) +--- PASS: TestValidateRootInvalidZeroThreshold (0.04s) === RUN TestValidateRootRoleMissing --- PASS: TestValidateRootRoleMissing (0.00s) === RUN TestValidateTargetsRoleMissing ---- PASS: TestValidateTargetsRoleMissing (0.01s) +--- PASS: TestValidateTargetsRoleMissing (0.00s) === RUN TestValidateSnapshotRoleMissing --- PASS: TestValidateSnapshotRoleMissing (0.01s) === RUN TestValidateRootSigMissing ---- PASS: TestValidateRootSigMissing (0.01s) +--- PASS: TestValidateRootSigMissing (0.00s) === RUN TestValidateTargetsSigMissing -time="2025-03-09T06:39:29-12:00" level=error msg="ErrBadTargets: tuf: data has no signatures" ---- PASS: TestValidateTargetsSigMissing (0.01s) +time="2026-04-12T15:05:51+14:00" level=error msg="ErrBadTargets: tuf: data has no signatures" +--- PASS: TestValidateTargetsSigMissing (0.02s) === RUN TestValidateSnapshotSigMissing --- PASS: TestValidateSnapshotSigMissing (0.01s) === RUN TestValidateRootCorrupt --- PASS: TestValidateRootCorrupt (0.00s) === RUN TestValidateTargetsCorrupt -time="2025-03-09T06:39:29-12:00" level=error msg="ErrBadTargets: invalid character '\\u0084' looking for beginning of value" ---- PASS: TestValidateTargetsCorrupt (0.02s) +time="2026-04-12T15:05:51+14:00" level=error msg="ErrBadTargets: invalid character '\\u0084' looking for beginning of value" +--- PASS: TestValidateTargetsCorrupt (0.00s) === RUN TestValidateSnapshotCorrupt ---- PASS: TestValidateSnapshotCorrupt (0.02s) +--- PASS: TestValidateSnapshotCorrupt (0.01s) === RUN TestValidateRootModifiedSize ---- PASS: TestValidateRootModifiedSize (0.01s) +--- PASS: TestValidateRootModifiedSize (0.00s) === RUN TestValidateTargetsModifiedSize --- PASS: TestValidateTargetsModifiedSize (0.02s) === RUN TestValidateRootModifiedHash ---- PASS: TestValidateRootModifiedHash (0.01s) +--- PASS: TestValidateRootModifiedHash (0.02s) === RUN TestValidateTargetsModifiedHash ---- PASS: TestValidateTargetsModifiedHash (0.02s) +--- PASS: TestValidateTargetsModifiedHash (0.01s) === RUN TestGenerateSnapshotRootNotLoaded --- PASS: TestGenerateSnapshotRootNotLoaded (0.00s) === RUN TestGenerateSnapshotNoKey ---- PASS: TestGenerateSnapshotNoKey (0.00s) +--- PASS: TestGenerateSnapshotNoKey (0.02s) === RUN TestLoadTargetsLoadsNothingIfNoUpdates ---- PASS: TestLoadTargetsLoadsNothingIfNoUpdates (0.00s) +--- PASS: TestLoadTargetsLoadsNothingIfNoUpdates (0.01s) === RUN TestValidateTargetsRequiresStoredParent -time="2025-03-09T06:39:29-12:00" level=error msg="ErrBadTargets: targets must be loaded first" +time="2026-04-12T15:05:51+14:00" level=error msg="ErrBadTargets: targets must be loaded first" --- PASS: TestValidateTargetsRequiresStoredParent (0.01s) === RUN TestValidateTargetsParentInUpdate -time="2025-03-09T06:39:29-12:00" level=error msg="ErrBadTargets: invalid character 'I' looking for beginning of value" ---- PASS: TestValidateTargetsParentInUpdate (0.02s) +time="2026-04-12T15:05:51+14:00" level=error msg="ErrBadTargets: invalid character 'I' looking for beginning of value" +--- PASS: TestValidateTargetsParentInUpdate (0.01s) === RUN TestValidateTargetsRoleNotInParent -time="2025-03-09T06:39:29-12:00" level=error msg="ErrBadTargets: tuf: invalid role targets/level1. delegation does not exist" -time="2025-03-09T06:39:29-12:00" level=error msg="ErrBadTargets: targets has already been loaded" -time="2025-03-09T06:39:29-12:00" level=error msg="ErrBadTargets: tuf: invalid role targets/level1. delegation does not exist" +time="2026-04-12T15:05:51+14:00" level=error msg="ErrBadTargets: tuf: invalid role targets/level1. delegation does not exist" +time="2026-04-12T15:05:51+14:00" level=error msg="ErrBadTargets: targets has already been loaded" +time="2026-04-12T15:05:51+14:00" level=error msg="ErrBadTargets: tuf: invalid role targets/level1. delegation does not exist" --- PASS: TestValidateTargetsRoleNotInParent (0.01s) PASS -ok github.com/theupdateframework/notary/server/handlers 0.789s +ok github.com/theupdateframework/notary/server/handlers 0.923s === RUN TestSnapshotExpired --- PASS: TestSnapshotExpired (0.00s) === RUN TestSnapshotNotExpired --- PASS: TestSnapshotNotExpired (0.00s) === RUN TestGetSnapshotKeyCreate ---- PASS: TestGetSnapshotKeyCreate (0.00s) +--- PASS: TestGetSnapshotKeyCreate (0.01s) === RUN TestGetSnapshotKeyCreateWithFailingStore -time="2025-03-09T06:39:30-12:00" level=error msg="Error when retrieving root role for GUN gun: failing store failed" +time="2026-04-12T15:05:50+14:00" level=error msg="Error when retrieving root role for GUN gun: failing store failed" --- PASS: TestGetSnapshotKeyCreateWithFailingStore (0.00s) === RUN TestGetSnapshotKeyCreateWithCorruptedStore -time="2025-03-09T06:39:30-12:00" level=error msg="Failed to unmarshal existing root for GUN gun to retrieve snapshot key ID" +time="2026-04-12T15:05:50+14:00" level=error msg="Failed to unmarshal existing root for GUN gun to retrieve snapshot key ID" --- PASS: TestGetSnapshotKeyCreateWithCorruptedStore (0.00s) === RUN TestGetSnapshotKeyCreateWithInvalidAlgo --- PASS: TestGetSnapshotKeyCreateWithInvalidAlgo (0.00s) === RUN TestGetSnapshotKeyExistingMetadata ---- PASS: TestGetSnapshotKeyExistingMetadata (0.01s) +--- PASS: TestGetSnapshotKeyExistingMetadata (0.02s) === RUN TestGetSnapshotNoPreviousSnapshot -time="2025-03-09T06:39:30-12:00" level=error msg="Failed to unmarshal existing snapshot for GUN gun" ---- PASS: TestGetSnapshotNoPreviousSnapshot (0.00s) +time="2026-04-12T15:05:50+14:00" level=error msg="Failed to unmarshal existing snapshot for GUN gun" +--- PASS: TestGetSnapshotNoPreviousSnapshot (0.01s) === RUN TestGetSnapshotReturnsPreviousSnapshotIfUnexpired ---- PASS: TestGetSnapshotReturnsPreviousSnapshotIfUnexpired (0.01s) +--- PASS: TestGetSnapshotReturnsPreviousSnapshotIfUnexpired (0.00s) === RUN TestGetSnapshotOldSnapshotExpired --- PASS: TestGetSnapshotOldSnapshotExpired (0.00s) === RUN TestCannotMakeNewSnapshotIfNoRoot @@ -3250,7 +3286,7 @@ === RUN TestCreateSnapshotNoKeyInCrypto --- PASS: TestCreateSnapshotNoKeyInCrypto (0.00s) PASS -ok github.com/theupdateframework/notary/server/snapshot 0.091s +ok github.com/theupdateframework/notary/server/snapshot 0.125s === RUN TestMemoryUpdateCurrentEmpty --- PASS: TestMemoryUpdateCurrentEmpty (0.00s) === RUN TestMemoryUpdateCurrentVersionCheckOldVersionExists @@ -3262,7 +3298,7 @@ === RUN TestMemoryUpdateManyConflictRollback --- PASS: TestMemoryUpdateManyConflictRollback (0.00s) === RUN TestMemoryDeleteSuccess ---- PASS: TestMemoryDeleteSuccess (0.00s) +--- PASS: TestMemoryDeleteSuccess (0.02s) === RUN TestGetCurrent --- PASS: TestGetCurrent (0.00s) === RUN TestGetChecksumNotFound @@ -3278,74 +3314,74 @@ === RUN TestSQLUpdateCurrentEmpty --- PASS: TestSQLUpdateCurrentEmpty (0.02s) === RUN TestSQLUpdateCurrentVersionCheckOldVersionExists ---- PASS: TestSQLUpdateCurrentVersionCheckOldVersionExists (0.00s) +--- PASS: TestSQLUpdateCurrentVersionCheckOldVersionExists (0.01s) === RUN TestSQLUpdateCurrentVersionCheckOldVersionNotExist ---- PASS: TestSQLUpdateCurrentVersionCheckOldVersionNotExist (0.01s) +--- PASS: TestSQLUpdateCurrentVersionCheckOldVersionNotExist (0.00s) === RUN TestSQLUpdateManyNoConflicts ---- PASS: TestSQLUpdateManyNoConflicts (0.02s) +--- PASS: TestSQLUpdateManyNoConflicts (0.04s) === RUN TestSQLUpdateManyConflictRollback --- PASS: TestSQLUpdateManyConflictRollback (0.02s) === RUN TestSQLDelete ---- PASS: TestSQLDelete (0.01s) +--- PASS: TestSQLDelete (0.03s) === RUN TestSQLDBCheckHealthTableMissing --- PASS: TestSQLDBCheckHealthTableMissing (0.00s) === RUN TestSQLDBCheckHealthDBConnectionFail ---- PASS: TestSQLDBCheckHealthDBConnectionFail (0.01s) +--- PASS: TestSQLDBCheckHealthDBConnectionFail (0.02s) === RUN TestSQLDBCheckHealthSucceeds --- PASS: TestSQLDBCheckHealthSucceeds (0.00s) === RUN TestSQLDBGetChecksum --- PASS: TestSQLDBGetChecksum (0.00s) === RUN TestSQLDBGetChecksumNotFound ---- PASS: TestSQLDBGetChecksumNotFound (0.00s) +--- PASS: TestSQLDBGetChecksumNotFound (0.01s) === RUN TestSQLTUFMetaStoreGetCurrent ---- PASS: TestSQLTUFMetaStoreGetCurrent (0.03s) +--- PASS: TestSQLTUFMetaStoreGetCurrent (0.04s) === RUN TestSQLGetChanges ---- PASS: TestSQLGetChanges (0.01s) +--- PASS: TestSQLGetChanges (0.07s) === RUN TestSQLDBGetVersion --- PASS: TestSQLDBGetVersion (0.00s) PASS -ok github.com/theupdateframework/notary/server/storage 0.186s +ok github.com/theupdateframework/notary/server/storage 0.420s === RUN TestTimestampExpired --- PASS: TestTimestampExpired (0.00s) === RUN TestTimestampNotExpired --- PASS: TestTimestampNotExpired (0.00s) === RUN TestGetTimestampKey ---- PASS: TestGetTimestampKey (0.01s) +--- PASS: TestGetTimestampKey (0.02s) === RUN TestGetTimestampNoPreviousTimestamp -time="2025-03-09T06:39:30-12:00" level=error msg="Failed to unmarshal existing timestamp" ---- PASS: TestGetTimestampNoPreviousTimestamp (0.01s) +time="2026-04-12T15:05:50+14:00" level=error msg="Failed to unmarshal existing timestamp" +--- PASS: TestGetTimestampNoPreviousTimestamp (0.02s) === RUN TestGetTimestampReturnsPreviousTimestampIfUnexpired ---- PASS: TestGetTimestampReturnsPreviousTimestampIfUnexpired (0.01s) +--- PASS: TestGetTimestampReturnsPreviousTimestampIfUnexpired (0.02s) === RUN TestGetTimestampOldTimestampExpired --- PASS: TestGetTimestampOldTimestampExpired (0.01s) === RUN TestCannotMakeNewTimestampIfNoRootOrSnapshot -time="2025-03-09T06:39:30-12:00" level=error msg="Failed to create a new timestamp" -time="2025-03-09T06:39:30-12:00" level=error msg="Failed to create a new timestamp" ---- PASS: TestCannotMakeNewTimestampIfNoRootOrSnapshot (0.01s) +time="2026-04-12T15:05:50+14:00" level=error msg="Failed to create a new timestamp" +time="2026-04-12T15:05:50+14:00" level=error msg="Failed to create a new timestamp" +--- PASS: TestCannotMakeNewTimestampIfNoRootOrSnapshot (0.03s) === RUN TestCreateTimestampNoKeyInCrypto -time="2025-03-09T06:39:30-12:00" level=error msg="Failed to create a new timestamp" ---- PASS: TestCreateTimestampNoKeyInCrypto (0.02s) +time="2026-04-12T15:05:50+14:00" level=error msg="Failed to create a new timestamp" +--- PASS: TestCreateTimestampNoKeyInCrypto (0.00s) === RUN TestGetTimestampKeyCreateWithFailingStore -time="2025-03-09T06:39:30-12:00" level=error msg="Error when retrieving root role for GUN gun: failing store failed" +time="2026-04-12T15:05:50+14:00" level=error msg="Error when retrieving root role for GUN gun: failing store failed" --- PASS: TestGetTimestampKeyCreateWithFailingStore (0.00s) === RUN TestGetTimestampKeyCreateWithCorruptedStore -time="2025-03-09T06:39:30-12:00" level=error msg="Failed to unmarshal existing root for GUN gun to retrieve timestamp key ID" +time="2026-04-12T15:05:50+14:00" level=error msg="Failed to unmarshal existing root for GUN gun to retrieve timestamp key ID" --- PASS: TestGetTimestampKeyCreateWithCorruptedStore (0.00s) === RUN TestGetTimestampKeyCreateWithInvalidAlgo --- PASS: TestGetTimestampKeyCreateWithInvalidAlgo (0.00s) === RUN TestGetTimestampKeyExistingMetadata ---- PASS: TestGetTimestampKeyExistingMetadata (0.02s) +--- PASS: TestGetTimestampKeyExistingMetadata (0.01s) PASS -ok github.com/theupdateframework/notary/server/timestamp 0.169s +ok github.com/theupdateframework/notary/server/timestamp 0.203s ? github.com/theupdateframework/notary/signer [no test files] ? github.com/theupdateframework/notary/signer/api [no test files] ? github.com/theupdateframework/notary/signer/client [no test files] === RUN TestGetSuccessPopulatesCache ---- PASS: TestGetSuccessPopulatesCache (0.00s) +--- PASS: TestGetSuccessPopulatesCache (0.01s) === RUN TestAddKeyPopulatesCacheIfSuccessful --- PASS: TestAddKeyPopulatesCacheIfSuccessful (0.00s) === RUN TestDeleteKeyRemovesKeyFromCache ---- PASS: TestDeleteKeyRemovesKeyFromCache (0.01s) +--- PASS: TestDeleteKeyRemovesKeyFromCache (0.00s) === RUN TestRDBPrivateKeyJSONUnmarshalling --- PASS: TestRDBPrivateKeyJSONUnmarshalling (0.00s) === RUN TestRDBPrivateKeyJSONUnmarshallingFailure @@ -3356,28 +3392,28 @@ === RUN TestSQLDBHealthCheckMissingTable --- PASS: TestSQLDBHealthCheckMissingTable (0.00s) === RUN TestSQLDBHealthCheckNoConnection ---- PASS: TestSQLDBHealthCheckNoConnection (0.00s) +--- PASS: TestSQLDBHealthCheckNoConnection (0.01s) === RUN TestSQLKeyCanOnlyBeAddedOnce ---- PASS: TestSQLKeyCanOnlyBeAddedOnce (0.04s) (/build/reproducible-path/notary-0.7.0+git20240416.9d2b3b3+ds1/_build/src/github.com/theupdateframework/notary/signer/keydbstore/sql_keydbstore.go:98) -[2025-03-09 06:39:31]  UNIQUE constraint failed: private_keys.key_id  +[2026-04-12 15:05:53]  UNIQUE constraint failed: private_keys.key_id  +--- PASS: TestSQLKeyCanOnlyBeAddedOnce (0.08s) === RUN TestSQLCreateDelete ---- PASS: TestSQLCreateDelete (0.05s) +--- PASS: TestSQLCreateDelete (0.12s) === RUN TestSQLKeyRotation --- PASS: TestSQLKeyRotation (0.08s) === RUN TestSQLSigningMarksKeyActive -time="2025-03-09T06:39:31-12:00" level=error msg="Key 83f7680141f02f798f5ae85c476f3125f2df516bc000a9e0ba237e8edf14c58f was just used to sign hash successful, db closed, error when trying to mark key as active: sql: database is closed" ---- PASS: TestSQLSigningMarksKeyActive (0.09s) -=== RUN TestSQLCreateKey +time="2026-04-12T15:05:53+14:00" level=error msg="Key 02ead996792408c0c6e1e0231602ff1bd9a685dcd76d5d151a4c7a1594e47dd3 was just used to sign hash successful, db closed, error when trying to mark key as active: sql: database is closed" (/build/reproducible-path/notary-0.7.0+git20240416.9d2b3b3+ds1/_build/src/github.com/theupdateframework/notary/signer/keydbstore/sql_keydbstore.go:197) -[2025-03-09 06:39:31]  sql: database is closed  ---- PASS: TestSQLCreateKey (0.10s) +[2026-04-12 15:05:53]  sql: database is closed  +--- PASS: TestSQLSigningMarksKeyActive (0.06s) +=== RUN TestSQLCreateKey +--- PASS: TestSQLCreateKey (0.06s) === RUN TestSQLUnimplementedInterfaceBehavior --- PASS: TestSQLUnimplementedInterfaceBehavior (0.02s) PASS -ok github.com/theupdateframework/notary/signer/keydbstore 0.468s +ok github.com/theupdateframework/notary/signer/keydbstore 0.554s === RUN TestSet --- PASS: TestSet (0.00s) === RUN TestSetWithNoParentDirectory @@ -3415,7 +3451,7 @@ === RUN TestHTTPStoreGetAllMeta --- PASS: TestHTTPStoreGetAllMeta (0.00s) === RUN TestSetSingleAndSetMultiMeta ---- PASS: TestSetSingleAndSetMultiMeta (0.01s) +--- PASS: TestSetSingleAndSetMultiMeta (0.00s) === RUN Test404Error --- PASS: Test404Error (0.00s) === RUN Test50XErrors @@ -3429,7 +3465,7 @@ === RUN TestTranslateErrorsLimitsErrorSize --- PASS: TestTranslateErrorsLimitsErrorSize (0.00s) === RUN TestHTTPStoreRemoveAll ---- PASS: TestHTTPStoreRemoveAll (0.01s) +--- PASS: TestHTTPStoreRemoveAll (0.00s) === RUN TestHTTPStoreRotateKey --- PASS: TestHTTPStoreRotateKey (0.00s) === RUN TestHTTPStoreGetKey @@ -3456,7 +3492,7 @@ === RUN TestMemoryStoreMetadata --- PASS: TestMemoryStoreMetadata (0.00s) PASS -ok github.com/theupdateframework/notary/storage 0.117s +ok github.com/theupdateframework/notary/storage 0.145s ? github.com/theupdateframework/notary/storage/rethinkdb [no test files] === RUN TestExportKeys --- PASS: TestExportKeys (0.00s) @@ -3471,106 +3507,106 @@ === RUN TestImportNoPath --- PASS: TestImportNoPath (0.00s) === RUN TestNonRootPathInference ---- PASS: TestNonRootPathInference (0.01s) +--- PASS: TestNonRootPathInference (0.00s) === RUN TestBlockHeaderPrecedenceRoleAndGun --- PASS: TestBlockHeaderPrecedenceRoleAndGun (0.00s) === RUN TestBlockHeaderPrecedenceGunFromPath ---- PASS: TestBlockHeaderPrecedenceGunFromPath (0.01s) +--- PASS: TestBlockHeaderPrecedenceGunFromPath (0.02s) === RUN TestImportKeys2InOneFile --- PASS: TestImportKeys2InOneFile (0.00s) === RUN TestImportKeys2InOneFileNoPath ---- PASS: TestImportKeys2InOneFileNoPath (0.01s) +--- PASS: TestImportKeys2InOneFileNoPath (0.00s) === RUN TestEncryptedKeyImportFail -time="2025-03-09T06:39:32-12:00" level=warning msg="failed to import key to store: Invalid key generated, key may be encrypted and does not contain path header" +time="2026-04-12T15:05:53+14:00" level=warning msg="failed to import key to store: Invalid key generated, key may be encrypted and does not contain path header" --- PASS: TestEncryptedKeyImportFail (0.00s) === RUN TestEncryptedKeyImportSuccess ---- PASS: TestEncryptedKeyImportSuccess (0.00s) +--- PASS: TestEncryptedKeyImportSuccess (0.03s) === RUN TestEncryption ---- PASS: TestEncryption (0.01s) +--- PASS: TestEncryption (0.00s) === RUN TestAddKey ---- PASS: TestAddKey (0.01s) +--- PASS: TestAddKey (0.03s) === RUN TestKeyStoreInternalState ---- PASS: TestKeyStoreInternalState (0.00s) +--- PASS: TestKeyStoreInternalState (0.02s) === RUN TestGet ---- PASS: TestGet (0.02s) +--- PASS: TestGet (0.03s) === RUN TestGetLegacyKey ---- PASS: TestGetLegacyKey (0.02s) +--- PASS: TestGetLegacyKey (0.00s) === RUN TestListKeys ---- PASS: TestListKeys (0.02s) +--- PASS: TestListKeys (0.04s) === RUN TestAddGetKeyMemStore --- PASS: TestAddGetKeyMemStore (0.00s) === RUN TestAddGetKeyInfoMemStore ---- PASS: TestAddGetKeyInfoMemStore (0.00s) +--- PASS: TestAddGetKeyInfoMemStore (0.01s) === RUN TestGetDecryptedWithTamperedCipherText -time="2025-03-09T06:39:32-12:00" level=error msg="PEM block is empty" ---- PASS: TestGetDecryptedWithTamperedCipherText (0.00s) +time="2026-04-12T15:05:53+14:00" level=error msg="PEM block is empty" +--- PASS: TestGetDecryptedWithTamperedCipherText (0.01s) === RUN TestGetDecryptedWithInvalidPassphrase --- PASS: TestGetDecryptedWithInvalidPassphrase (0.01s) === RUN TestGetDecryptedWithConsistentlyInvalidPassphrase ---- PASS: TestGetDecryptedWithConsistentlyInvalidPassphrase (0.04s) +--- PASS: TestGetDecryptedWithConsistentlyInvalidPassphrase (0.02s) === RUN TestRemoveKey ---- PASS: TestRemoveKey (0.01s) +--- PASS: TestRemoveKey (0.02s) === RUN TestKeysAreCached ---- PASS: TestKeysAreCached (0.00s) +--- PASS: TestKeysAreCached (0.01s) PASS -ok github.com/theupdateframework/notary/trustmanager 0.250s +ok github.com/theupdateframework/notary/trustmanager 0.307s === RUN TestRemoteStore -time="2025-03-09T06:39:33-12:00" level=info msg="listing files from localhost:9888" -time="2025-03-09T06:39:33-12:00" level=info msg="listing files from localhost:9888" ---- PASS: TestRemoteStore (0.09s) +time="2026-04-12T15:05:53+14:00" level=info msg="listing files from localhost:9888" +time="2026-04-12T15:05:53+14:00" level=info msg="listing files from localhost:9888" +--- PASS: TestRemoteStore (0.13s) === RUN TestErrors -time="2025-03-09T06:39:33-12:00" level=error msg="failed to store: test error" +time="2026-04-12T15:05:53+14:00" level=error msg="failed to store: test error" --- PASS: TestErrors (0.06s) === RUN TestNewGRPCStorage --- PASS: TestNewGRPCStorage (0.00s) === RUN TestGRPCStorage --- PASS: TestGRPCStorage (0.00s) PASS -ok github.com/theupdateframework/notary/trustmanager/remoteks 0.203s +ok github.com/theupdateframework/notary/trustmanager/remoteks 0.252s ? github.com/theupdateframework/notary/trustmanager/remoteks/github.com/theupdateframework/notary/trustmanager/remoteks [no test files] ? github.com/theupdateframework/notary/trustmanager/yubikey [no test files] === RUN TestWildcardMatch --- PASS: TestWildcardMatch (0.00s) === RUN TestValidateRoot -2025/03/09 06:39:35 [INFO] generate received request -2025/03/09 06:39:35 [INFO] received CSR -2025/03/09 06:39:35 [INFO] generating key: ecdsa-256 -2025/03/09 06:39:35 [INFO] encoded CSR -2025/03/09 06:39:35 [INFO] signed certificate with serial number 95415292170479858888929910828211268664591026138 -2025/03/09 06:39:35 [INFO] received CSR -2025/03/09 06:39:35 [INFO] generating key: ecdsa-256 -2025/03/09 06:39:35 [INFO] encoded CSR -2025/03/09 06:39:35 [INFO] signed certificate with serial number 31640408892174930303076464748089053761527619361 -2025/03/09 06:39:35 [INFO] received CSR -2025/03/09 06:39:35 [INFO] generating key: ecdsa-256 -2025/03/09 06:39:35 [INFO] encoded CSR -2025/03/09 06:39:35 [INFO] signed certificate with serial number 413815131475655474435822632390103881884918770737 ---- PASS: TestValidateRoot (0.04s) +2026/04/12 15:05:58 [INFO] generate received request +2026/04/12 15:05:58 [INFO] received CSR +2026/04/12 15:05:58 [INFO] generating key: ecdsa-256 +2026/04/12 15:05:58 [INFO] encoded CSR +2026/04/12 15:05:58 [INFO] signed certificate with serial number 126418576457817171649529915870290697462793468058 +2026/04/12 15:05:58 [INFO] received CSR +2026/04/12 15:05:58 [INFO] generating key: ecdsa-256 +2026/04/12 15:05:58 [INFO] encoded CSR +2026/04/12 15:05:58 [INFO] signed certificate with serial number 153242953495420839824065943619204041580138998954 +2026/04/12 15:05:58 [INFO] received CSR +2026/04/12 15:05:58 [INFO] generating key: ecdsa-256 +2026/04/12 15:05:58 [INFO] encoded CSR +2026/04/12 15:05:58 [INFO] signed certificate with serial number 401664046093230683547838893428269757125217341741 +--- PASS: TestValidateRoot (0.08s) === RUN TestValidateRootWithoutTOFUS --- PASS: TestValidateRootWithoutTOFUS (0.00s) === RUN TestValidateRootWithPinnedCert --- PASS: TestValidateRootWithPinnedCert (0.00s) === RUN TestValidateRootWithPinnedCertAndIntermediates ---- PASS: TestValidateRootWithPinnedCertAndIntermediates (0.01s) +--- PASS: TestValidateRootWithPinnedCertAndIntermediates (0.03s) === RUN TestValidateRootFailuresWithPinnedCert ---- PASS: TestValidateRootFailuresWithPinnedCert (0.01s) +--- PASS: TestValidateRootFailuresWithPinnedCert (0.00s) === RUN TestValidateRootWithPinnedCA ---- PASS: TestValidateRootWithPinnedCA (0.03s) +--- PASS: TestValidateRootWithPinnedCA (0.07s) === RUN TestValidateSuccessfulRootRotation ---- PASS: TestValidateSuccessfulRootRotation (0.05s) +--- PASS: TestValidateSuccessfulRootRotation (0.09s) === RUN TestValidateRootRotationMissingOrigSig ---- PASS: TestValidateRootRotationMissingOrigSig (0.04s) +--- PASS: TestValidateRootRotationMissingOrigSig (0.07s) === RUN TestValidateRootRotationMissingNewSig ---- PASS: TestValidateRootRotationMissingNewSig (0.04s) +--- PASS: TestValidateRootRotationMissingNewSig (0.05s) === RUN TestValidateRootRotationTrustPinning ---- PASS: TestValidateRootRotationTrustPinning (0.05s) +--- PASS: TestValidateRootRotationTrustPinning (0.07s) === RUN TestValidateRootRotationTrustPinningInvalidCA --- PASS: TestValidateRootRotationTrustPinningInvalidCA (0.04s) === RUN TestParsePEMPublicKey -time="2025-03-09T06:39:36-12:00" level=warning msg="certificate with CN notary is near expiry" ---- PASS: TestParsePEMPublicKey (0.00s) +time="2026-04-12T15:05:59+14:00" level=warning msg="certificate with CN notary is near expiry" +--- PASS: TestParsePEMPublicKey (0.01s) === RUN TestCheckingCertExpiry -time="2025-03-09T06:39:36-12:00" level=warning msg="certificate with CN notary is near expiry" +time="2026-04-12T15:05:59+14:00" level=warning msg="certificate with CN notary is near expiry" --- PASS: TestCheckingCertExpiry (0.01s) === RUN TestValidateRootWithExpiredIntermediate --- PASS: TestValidateRootWithExpiredIntermediate (0.00s) @@ -3579,20 +3615,20 @@ === RUN TestWildcardMatching --- PASS: TestWildcardMatching (0.00s) PASS -ok github.com/theupdateframework/notary/trustpinning 0.401s +ok github.com/theupdateframework/notary/trustpinning 0.649s === RUN TestInitSnapshotNoTargets --- PASS: TestInitSnapshotNoTargets (0.01s) === RUN TestInitRepo ---- PASS: TestInitRepo (0.00s) +--- PASS: TestInitRepo (0.04s) === RUN TestUpdateDelegations --- PASS: TestUpdateDelegations (0.00s) === RUN TestPurgeDelegationsKeyFromTop -time="2025-03-09T06:39:35-12:00" level=warning msg="role targets/sybil has fewer keys than its threshold of 1; it will not be usable until keys are added to it" -time="2025-03-09T06:39:35-12:00" level=warning msg="role targets/vimes/carrot has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +time="2026-04-12T15:05:58+14:00" level=warning msg="role targets/sybil has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +time="2026-04-12T15:05:58+14:00" level=warning msg="role targets/vimes/carrot has fewer keys than its threshold of 1; it will not be usable until keys are added to it" --- PASS: TestPurgeDelegationsKeyFromTop (0.00s) === RUN TestPurgeDelegationsKeyFromDeep -time="2025-03-09T06:39:35-12:00" level=warning msg="role targets/vimes/carrot has fewer keys than its threshold of 1; it will not be usable until keys are added to it" ---- PASS: TestPurgeDelegationsKeyFromDeep (0.00s) +time="2026-04-12T15:05:58+14:00" level=warning msg="role targets/vimes/carrot has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +--- PASS: TestPurgeDelegationsKeyFromDeep (0.01s) === RUN TestPurgeDelegationsKeyBadWildRole --- PASS: TestPurgeDelegationsKeyBadWildRole (0.00s) === RUN TestUpdateDelegationsParentMissing @@ -3604,12 +3640,12 @@ === RUN TestUpdateDelegationsRoleThatIsMissingDelegationKey --- PASS: TestUpdateDelegationsRoleThatIsMissingDelegationKey (0.00s) === RUN TestUpdateDelegationsNotEnoughKeys -time="2025-03-09T06:39:35-12:00" level=warning msg="role targets/role has fewer keys than its threshold of 2; it will not be usable until keys are added to it" +time="2026-04-12T15:05:58+14:00" level=warning msg="role targets/role has fewer keys than its threshold of 2; it will not be usable until keys are added to it" --- PASS: TestUpdateDelegationsNotEnoughKeys (0.00s) === RUN TestUpdateDelegationsAddKeyToRole --- PASS: TestUpdateDelegationsAddKeyToRole (0.00s) === RUN TestDeleteDelegations ---- PASS: TestDeleteDelegations (0.00s) +--- PASS: TestDeleteDelegations (0.01s) === RUN TestDeleteDelegationsRoleNotExistBecauseNoParentMeta --- PASS: TestDeleteDelegationsRoleNotExistBecauseNoParentMeta (0.00s) === RUN TestDeleteDelegationsRoleNotExist @@ -3627,7 +3663,7 @@ === RUN TestGetDelegationRoleAndMetadataExistDelegationDoesntExists --- PASS: TestGetDelegationRoleAndMetadataExistDelegationDoesntExists (0.00s) === RUN TestGetDelegationRoleAndMetadataDoesntExists ---- PASS: TestGetDelegationRoleAndMetadataDoesntExists (0.00s) +--- PASS: TestGetDelegationRoleAndMetadataDoesntExists (0.01s) === RUN TestGetDelegationParentMissing --- PASS: TestGetDelegationParentMissing (0.00s) === RUN TestAddTargetsRoleAndMetadataExist @@ -3645,11 +3681,11 @@ === RUN TestRemoveTargetsNoSigningKeys --- PASS: TestRemoveTargetsNoSigningKeys (0.00s) === RUN TestAddBaseKeysToRoot ---- PASS: TestAddBaseKeysToRoot (0.00s) +--- PASS: TestAddBaseKeysToRoot (0.01s) === RUN TestRemoveBaseKeysFromRoot --- PASS: TestRemoveBaseKeysFromRoot (0.00s) === RUN TestReplaceBaseKeysInRoot ---- PASS: TestReplaceBaseKeysInRoot (0.00s) +--- PASS: TestReplaceBaseKeysInRoot (0.03s) === RUN TestGetAllRoles --- PASS: TestGetAllRoles (0.00s) === RUN TestGetBaseRoles @@ -3671,13 +3707,13 @@ === RUN TestGetDelegationRoleKeyMissing --- PASS: TestGetDelegationRoleKeyMissing (0.00s) === RUN TestSignRootOldKeyCertExists ---- PASS: TestSignRootOldKeyCertExists (0.01s) +--- PASS: TestSignRootOldKeyCertExists (0.02s) === RUN TestSignRootOldKeyCertMissing ---- PASS: TestSignRootOldKeyCertMissing (0.02s) +--- PASS: TestSignRootOldKeyCertMissing (0.03s) === RUN TestRootKeyRotation ---- PASS: TestRootKeyRotation (0.06s) +--- PASS: TestRootKeyRotation (0.07s) === RUN TestBuilderLoadsValidRolesOnly ---- PASS: TestBuilderLoadsValidRolesOnly (0.01s) +--- PASS: TestBuilderLoadsValidRolesOnly (0.02s) === RUN TestBuilderOnlyAcceptsRootFirstWhenLoading --- PASS: TestBuilderOnlyAcceptsRootFirstWhenLoading (0.00s) === RUN TestBuilderOnlyAcceptsDelegationsAfterParent @@ -3685,27 +3721,27 @@ === RUN TestMarkingIsValid --- PASS: TestMarkingIsValid (0.01s) === RUN TestBuilderLoadInvalidDelegations ---- PASS: TestBuilderLoadInvalidDelegations (0.01s) +--- PASS: TestBuilderLoadInvalidDelegations (0.02s) === RUN TestBuilderLoadInvalidDelegationsOldVersion ---- PASS: TestBuilderLoadInvalidDelegationsOldVersion (0.01s) +--- PASS: TestBuilderLoadInvalidDelegationsOldVersion (0.00s) === RUN TestBuilderAcceptRoleOnce ---- PASS: TestBuilderAcceptRoleOnce (0.01s) +--- PASS: TestBuilderAcceptRoleOnce (0.00s) === RUN TestBuilderStopsAcceptingOrProducingDataOnceDone ---- PASS: TestBuilderStopsAcceptingOrProducingDataOnceDone (0.00s) +--- PASS: TestBuilderStopsAcceptingOrProducingDataOnceDone (0.01s) === RUN TestGenerateSnapshotInvalidOperations ---- PASS: TestGenerateSnapshotInvalidOperations (0.07s) +--- PASS: TestGenerateSnapshotInvalidOperations (0.06s) === RUN TestGenerateTimestampInvalidOperations --- PASS: TestGenerateTimestampInvalidOperations (0.05s) === RUN TestGetConsistentInfo ---- PASS: TestGetConsistentInfo (0.00s) +--- PASS: TestGetConsistentInfo (0.01s) === RUN TestTimestampPreAndPostChecksumming ---- PASS: TestTimestampPreAndPostChecksumming (0.01s) +--- PASS: TestTimestampPreAndPostChecksumming (0.02s) === RUN TestSnapshotLoadedFirstChecksumsOthers --- PASS: TestSnapshotLoadedFirstChecksumsOthers (0.01s) === RUN TestSnapshotLoadedAfterChecksumsOthersRetroactively --- PASS: TestSnapshotLoadedAfterChecksumsOthersRetroactively (0.03s) PASS -ok github.com/theupdateframework/notary/tuf 0.432s +ok github.com/theupdateframework/notary/tuf 0.584s === RUN TestMergeStrSlicesExclusive --- PASS: TestMergeStrSlicesExclusive (0.00s) === RUN TestMergeStrSlicesOverlap @@ -3755,7 +3791,7 @@ === RUN TestRootFromSignedValidatesRoleData --- PASS: TestRootFromSignedValidatesRoleData (0.01s) === RUN TestRootFromSignedValidatesRoleType ---- PASS: TestRootFromSignedValidatesRoleType (0.01s) +--- PASS: TestRootFromSignedValidatesRoleType (0.00s) === RUN TestRootFromSignedValidatesVersion --- PASS: TestRootFromSignedValidatesVersion (0.00s) === RUN TestSnapshotToSignedMarshalsSignedPortionWithCanonicalJSON @@ -3795,7 +3831,7 @@ === RUN TestTargetsFromSignedCopiesSignatures --- PASS: TestTargetsFromSignedCopiesSignatures (0.00s) === RUN TestTargetsFromSignedValidatesDelegations ---- PASS: TestTargetsFromSignedValidatesDelegations (0.00s) +--- PASS: TestTargetsFromSignedValidatesDelegations (0.01s) === RUN TestTargetsFromSignedValidatesRoleType --- PASS: TestTargetsFromSignedValidatesRoleType (0.00s) === RUN TestTargetsFromSignedValidatesRoleName @@ -3839,15 +3875,15 @@ === RUN TestFileMetaEquals --- PASS: TestFileMetaEquals (0.00s) PASS -ok github.com/theupdateframework/notary/tuf/data 0.061s +ok github.com/theupdateframework/notary/tuf/data 0.068s === RUN TestListKeys ---- PASS: TestListKeys (0.00s) +--- PASS: TestListKeys (0.01s) === RUN TestGetKeys --- PASS: TestGetKeys (0.00s) === RUN TestBasicSign --- PASS: TestBasicSign (0.00s) === RUN TestReSign ---- PASS: TestReSign (0.00s) +--- PASS: TestReSign (0.01s) === RUN TestMultiSign --- PASS: TestMultiSign (0.00s) === RUN TestSignReturnsNoSigs @@ -3869,15 +3905,15 @@ === RUN TestRSAPSSx509Verifier --- PASS: TestRSAPSSx509Verifier (0.00s) === RUN TestRSAPSSVerifierWithInvalidKeyType ---- PASS: TestRSAPSSVerifierWithInvalidKeyType (0.00s) +--- PASS: TestRSAPSSVerifierWithInvalidKeyType (0.01s) === RUN TestRSAPSSVerifierWithInvalidKeyLength ---- PASS: TestRSAPSSVerifierWithInvalidKeyLength (0.05s) +--- PASS: TestRSAPSSVerifierWithInvalidKeyLength (0.03s) === RUN TestRSAPSSVerifierWithInvalidKey --- PASS: TestRSAPSSVerifierWithInvalidKey (0.00s) === RUN TestRSAPSSVerifierWithInvalidSignature ---- PASS: TestRSAPSSVerifierWithInvalidSignature (0.01s) +--- PASS: TestRSAPSSVerifierWithInvalidSignature (0.00s) === RUN TestRSAPKCS1v15Verifier ---- PASS: TestRSAPKCS1v15Verifier (0.00s) +--- PASS: TestRSAPKCS1v15Verifier (0.01s) === RUN TestRSAPKCS1v15x509Verifier --- PASS: TestRSAPKCS1v15x509Verifier (0.00s) === RUN TestRSAPKCS1v15VerifierWithInvalidKeyType @@ -3885,12 +3921,12 @@ === RUN TestRSAPKCS1v15VerifierWithInvalidKey --- PASS: TestRSAPKCS1v15VerifierWithInvalidKey (0.00s) === RUN TestRSAPKCS1v15VerifierWithInvalidSignature -time="2025-03-09T06:39:36-12:00" level=error msg="Failed verification: crypto/rsa: verification error" +time="2026-04-12T15:05:58+14:00" level=error msg="Failed verification: crypto/rsa: verification error" --- PASS: TestRSAPKCS1v15VerifierWithInvalidSignature (0.01s) === RUN TestECDSAVerifier --- PASS: TestECDSAVerifier (0.00s) === RUN TestECDSAVerifierOtherCurves ---- PASS: TestECDSAVerifierOtherCurves (0.05s) +--- PASS: TestECDSAVerifierOtherCurves (0.06s) === RUN TestECDSAx509Verifier --- PASS: TestECDSAx509Verifier (0.00s) === RUN TestECDSAVerifierWithInvalidKeyType @@ -3928,70 +3964,70 @@ === RUN TestVerifyVersion --- PASS: TestVerifyVersion (0.00s) === RUN TestVerifyExpiry -time="2025-03-09T06:39:36-12:00" level=error msg="Metadata for root expired" +time="2026-04-12T15:05:59+14:00" level=error msg="Metadata for root expired" --- PASS: TestVerifyExpiry (0.00s) === RUN TestVerifyPublicKeyMatchesPrivateKeyHappyCase --- PASS: TestVerifyPublicKeyMatchesPrivateKeyHappyCase (0.00s) === RUN TestVerifyPublicKeyMatchesPrivateKeyFails --- PASS: TestVerifyPublicKeyMatchesPrivateKeyFails (0.00s) PASS -ok github.com/theupdateframework/notary/tuf/signed 0.244s +ok github.com/theupdateframework/notary/tuf/signed 0.199s === RUN TestNewSwizzler --- PASS: TestNewSwizzler (0.02s) === RUN TestSwizzlerSetInvalidJSON ---- PASS: TestSwizzlerSetInvalidJSON (0.00s) +--- PASS: TestSwizzlerSetInvalidJSON (0.02s) === RUN TestSwizzlerAddExtraSpace ---- PASS: TestSwizzlerAddExtraSpace (0.01s) +--- PASS: TestSwizzlerAddExtraSpace (0.03s) === RUN TestSwizzlerSetInvalidSigned ---- PASS: TestSwizzlerSetInvalidSigned (0.01s) +--- PASS: TestSwizzlerSetInvalidSigned (0.00s) === RUN TestSwizzlerSetInvalidSignedMeta ---- PASS: TestSwizzlerSetInvalidSignedMeta (0.01s) +--- PASS: TestSwizzlerSetInvalidSignedMeta (0.00s) === RUN TestSwizzlerSetInvalidMetadataType ---- PASS: TestSwizzlerSetInvalidMetadataType (0.01s) +--- PASS: TestSwizzlerSetInvalidMetadataType (0.02s) === RUN TestSwizzlerInvalidateMetadataSignatures --- PASS: TestSwizzlerInvalidateMetadataSignatures (0.00s) === RUN TestSwizzlerRemoveMetadata --- PASS: TestSwizzlerRemoveMetadata (0.00s) === RUN TestSwizzlerSignMetadataWithInvalidKey ---- PASS: TestSwizzlerSignMetadataWithInvalidKey (0.00s) +--- PASS: TestSwizzlerSignMetadataWithInvalidKey (0.02s) === RUN TestSwizzlerOffsetMetadataVersion ---- PASS: TestSwizzlerOffsetMetadataVersion (0.02s) +--- PASS: TestSwizzlerOffsetMetadataVersion (0.01s) === RUN TestSwizzlerExpireMetadata --- PASS: TestSwizzlerExpireMetadata (0.01s) === RUN TestSwizzlerSetThresholdBaseRole ---- PASS: TestSwizzlerSetThresholdBaseRole (0.01s) +--- PASS: TestSwizzlerSetThresholdBaseRole (0.02s) === RUN TestSwizzlerSetThresholdDelegatedRole ---- PASS: TestSwizzlerSetThresholdDelegatedRole (0.02s) +--- PASS: TestSwizzlerSetThresholdDelegatedRole (0.01s) === RUN TestSwizzlerChangeRootKey ---- PASS: TestSwizzlerChangeRootKey (0.01s) +--- PASS: TestSwizzlerChangeRootKey (0.03s) === RUN TestSwizzlerUpdateSnapshotHashesSpecifiedRoles --- PASS: TestSwizzlerUpdateSnapshotHashesSpecifiedRoles (0.01s) === RUN TestSwizzlerUpdateSnapshotHashesNoSpecifiedRoles ---- PASS: TestSwizzlerUpdateSnapshotHashesNoSpecifiedRoles (0.02s) +--- PASS: TestSwizzlerUpdateSnapshotHashesNoSpecifiedRoles (0.01s) === RUN TestSwizzlerUpdateTimestamp ---- PASS: TestSwizzlerUpdateTimestamp (0.01s) +--- PASS: TestSwizzlerUpdateTimestamp (0.04s) === RUN TestMissingSigningKey ---- PASS: TestMissingSigningKey (0.01s) +--- PASS: TestMissingSigningKey (0.00s) === RUN TestSwizzlerMutateRoot ---- PASS: TestSwizzlerMutateRoot (0.02s) +--- PASS: TestSwizzlerMutateRoot (0.01s) === RUN TestSwizzlerMutateTimestamp ---- PASS: TestSwizzlerMutateTimestamp (0.00s) +--- PASS: TestSwizzlerMutateTimestamp (0.01s) === RUN TestSwizzlerMutateSnapshot --- PASS: TestSwizzlerMutateSnapshot (0.01s) === RUN TestSwizzlerMutateTargets --- PASS: TestSwizzlerMutateTargets (0.01s) === RUN TestSwizzlerRotateKeyBaseRole ---- PASS: TestSwizzlerRotateKeyBaseRole (0.03s) +--- PASS: TestSwizzlerRotateKeyBaseRole (0.02s) === RUN TestSwizzlerRotateKeyDelegationRole --- PASS: TestSwizzlerRotateKeyDelegationRole (0.01s) PASS -ok github.com/theupdateframework/notary/tuf/testutils 0.316s +ok github.com/theupdateframework/notary/tuf/testutils 0.444s ? github.com/theupdateframework/notary/tuf/testutils/interfaces [no test files] ? github.com/theupdateframework/notary/tuf/testutils/keys [no test files] === RUN TestConvertTUFKeyToPKCS8 ---- PASS: TestConvertTUFKeyToPKCS8 (0.02s) +--- PASS: TestConvertTUFKeyToPKCS8 (0.03s) === RUN TestParsePKCS8ToTufKey ---- PASS: TestParsePKCS8ToTufKey (0.06s) +--- PASS: TestParsePKCS8ToTufKey (0.08s) === RUN TestPEMtoPEM --- PASS: TestPEMtoPEM (0.00s) === RUN TestRoleListLen @@ -4053,9 +4089,9 @@ === RUN TestValidateCertificateWithInvalidExpiry --- PASS: TestValidateCertificateWithInvalidExpiry (0.00s) === RUN TestValidateCertificateWithShortKey ---- PASS: TestValidateCertificateWithShortKey (0.15s) +--- PASS: TestValidateCertificateWithShortKey (0.03s) PASS -ok github.com/theupdateframework/notary/tuf/utils 0.304s +ok github.com/theupdateframework/notary/tuf/utils 0.192s === RUN TestNewSerializableErrorNonValidationError --- PASS: TestNewSerializableErrorNonValidationError (0.00s) === RUN TestNewSerializableErrorValidationError @@ -4071,9 +4107,9 @@ === RUN TestUnmarshalInvalidJSON --- PASS: TestUnmarshalInvalidJSON (0.00s) PASS -ok github.com/theupdateframework/notary/tuf/validation 0.040s +ok github.com/theupdateframework/notary/tuf/validation 0.032s === RUN TestSetSignalTrap ---- PASS: TestSetSignalTrap (0.01s) +--- PASS: TestSetSignalTrap (0.00s) === RUN TestLogLevelSignalHandle Attempt to increase log level failed, will remain at debug level, error: log level can not be set higher than Debug Successfully setting log level to debug @@ -4135,7 +4171,7 @@ === RUN TestParseTLSWithTLS --- PASS: TestParseTLSWithTLS (0.00s) === RUN TestParseTLSWithTLSRelativeToConfigFile ---- PASS: TestParseTLSWithTLSRelativeToConfigFile (0.00s) +--- PASS: TestParseTLSWithTLSRelativeToConfigFile (0.01s) === RUN TestParseTLSWithEnvironmentVariables --- PASS: TestParseTLSWithEnvironmentVariables (0.00s) === RUN TestParseViperWithInvalidFile @@ -4171,7 +4207,7 @@ === RUN TestDoAuthWildcardImage --- PASS: TestDoAuthWildcardImage (0.00s) PASS -ok github.com/theupdateframework/notary/utils 0.064s +ok github.com/theupdateframework/notary/utils 0.076s ? github.com/theupdateframework/notary/version [no test files] create-stamp debian/debhelper-build-stamp dh_testroot -O--builddirectory=/build/reproducible-path/notary-0.7.0\+git20240416.9d2b3b3\+ds1/_build -O--buildsystem=golang @@ -4209,8 +4245,8 @@ dpkg-gencontrol: warning: package notary: substitution variable ${misc:Static-Built-Using} unused, but is defined dh_md5sums -O--builddirectory=/build/reproducible-path/notary-0.7.0\+git20240416.9d2b3b3\+ds1/_build -O--buildsystem=golang dh_builddeb -O--builddirectory=/build/reproducible-path/notary-0.7.0\+git20240416.9d2b3b3\+ds1/_build -O--buildsystem=golang -dpkg-deb: building package 'notary-dbgsym' in '../notary-dbgsym_0.7.0+git20240416.9d2b3b3+ds1-3_arm64.deb'. dpkg-deb: building package 'notary' in '../notary_0.7.0+git20240416.9d2b3b3+ds1-3_arm64.deb'. +dpkg-deb: building package 'notary-dbgsym' in '../notary-dbgsym_0.7.0+git20240416.9d2b3b3+ds1-3_arm64.deb'. dpkg-deb: building package 'golang-github-docker-notary-dev' in '../golang-github-docker-notary-dev_0.7.0+git20240416.9d2b3b3+ds1-3_all.deb'. dpkg-genbuildinfo --build=binary -O../notary_0.7.0+git20240416.9d2b3b3+ds1-3_arm64.buildinfo dpkg-genchanges --build=binary -O../notary_0.7.0+git20240416.9d2b3b3+ds1-3_arm64.changes @@ -4219,12 +4255,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/2264608/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/2264608/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/3549721 and its subdirectories -I: Current time: Sun Mar 9 06:40:32 -12 2025 -I: pbuilder-time-stamp: 1741545632 +I: removing directory /srv/workspace/pbuilder/2264608 and its subdirectories +I: Current time: Sun Apr 12 15:06:42 +14 2026 +I: pbuilder-time-stamp: 1775956002