Diff of the two buildlogs: -- --- b1/build.log 2025-10-19 09:06:24.290441082 +0000 +++ b2/build.log 2025-10-19 09:08:52.754623277 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Sat Oct 18 20:59:18 -12 2025 -I: pbuilder-time-stamp: 1760864358 +I: Current time: Sun Nov 22 05:29:36 +14 2026 +I: pbuilder-time-stamp: 1795274976 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/forky-reproducible-base.tgz] I: copying local configuration @@ -30,53 +30,85 @@ dpkg-source: info: applying fix-newer-viper.patch I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/4138065/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/378279/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 Nov 21 15:29 /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/378279/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/378279/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]="3" [2]="3" [3]="1" [4]="release" [5]="aarch64-unknown-linux-gnu") + BASH_VERSION='5.3.3(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='forky' - HOME='/root' - HOST_ARCH='arm64' + DIRSTACK=() + DISTRIBUTION=forky + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=aarch64 + HOST_ARCH=arm64 IFS=' ' - INVOCATION_ID='3c01c3beee6a460ca31a832d0a8c4b06' - 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='4138065' - PS1='# ' - PS2='> ' + INVOCATION_ID=238590f7a5cf41938869df7a00773019 + 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=378279 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.GNwNDRng/pbuilderrc_pfPr --distribution forky --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/forky-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.GNwNDRng/b1 --logfile b1/build.log notary_0.7.0+git20240416.9d2b3b3+ds1-4.dsc' - SUDO_GID='109' - SUDO_HOME='/var/lib/jenkins' - 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.GNwNDRng/pbuilderrc_G593 --distribution forky --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/forky-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.GNwNDRng/b2 --logfile b2/build.log notary_0.7.0+git20240416.9d2b3b3+ds1-4.dsc' + SUDO_GID=109 + SUDO_HOME=/var/lib/jenkins + 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.12.48+deb13-cloud-arm64 #1 SMP Debian 6.12.48-1 (2025-09-20) aarch64 GNU/Linux + Linux i-capture-the-hostname 6.12.48+deb13-cloud-arm64 #1 SMP Debian 6.12.48-1 (2025-09-20) aarch64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Aug 10 12:30 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/4138065/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Aug 10 2025 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/378279/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -410,7 +442,7 @@ Get: 240 http://deb.debian.org/debian forky/main arm64 protobuf-compiler arm64 3.21.12-14 [84.9 kB] Get: 241 http://deb.debian.org/debian forky/main arm64 protoc-gen-go-1-5 arm64 1.5.4-2 [1579 kB] Get: 242 http://deb.debian.org/debian forky/main arm64 protoc-gen-go-grpc arm64 1.66.3-2 [1526 kB] -Fetched 172 MB in 9s (18.8 MB/s) +Fetched 172 MB in 1s (119 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 ... 20000 files and directories currently installed.) @@ -1199,8 +1231,8 @@ Setting up tzdata (2025b-5) ... Current default time zone: 'Etc/UTC' -Local time is now: Sun Oct 19 09:02:42 UTC 2025. -Universal Time is now: Sun Oct 19 09:02:42 UTC 2025. +Local time is now: Sat Nov 21 15:30:15 UTC 2026. +Universal Time is now: Sat Nov 21 15:30:15 UTC 2026. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up golang-github-cespare-xxhash-dev (2.3.0-1) ... @@ -1399,7 +1431,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-4_source.changes +I: user script /srv/workspace/pbuilder/378279/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for forky +I: user script /srv/workspace/pbuilder/378279/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-4_source.changes dpkg-buildpackage: info: source package notary dpkg-buildpackage: info: source version 0.7.0+git20240416.9d2b3b3+ds1-4 dpkg-buildpackage: info: source distribution unstable @@ -1684,117 +1720,117 @@ src/github.com/theupdateframework/notary/utils/http_test.go src/github.com/theupdateframework/notary/version/version.go 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/profilerecord internal/goarch -internal/goos +internal/profilerecord internal/byteorder -internal/coverage/rtcov +internal/goos internal/godebugs -internal/goexperiment internal/msan -internal/asan +internal/coverage/rtcov internal/unsafeheader -internal/cpu +internal/goexperiment +internal/asan internal/runtime/syscall -internal/abi -internal/runtime/math math/bits -sync/atomic +internal/cpu unicode/utf8 -unicode +sync/atomic internal/itoa +unicode cmp crypto/internal/fips140/alias +internal/abi internal/chacha8rand +internal/runtime/math crypto/internal/fips140deps/byteorder +crypto/internal/fips140/subtle encoding unicode/utf16 -crypto/internal/fips140/subtle log/internal crypto/internal/boring/sig vendor/golang.org/x/crypto/cryptobyte/asn1 -internal/nettrace math -internal/bytealg -internal/runtime/atomic -internal/runtime/sys -crypto/internal/fips140deps/cpu +internal/nettrace container/list vendor/golang.org/x/crypto/internal/alias github.com/pelletier/go-toml/v2/internal/characters github.com/spf13/viper/internal/features log/slog/internal google.golang.org/protobuf/internal/flags +internal/runtime/atomic +internal/bytealg +internal/runtime/sys +crypto/internal/fips140deps/cpu google.golang.org/protobuf/internal/set google.golang.org/grpc/serviceconfig github.com/theupdateframework/notary/version github.com/lib/pq/oid -internal/runtime/exithook internal/stringslite +internal/runtime/exithook internal/race internal/sync internal/runtime/maps runtime -iter -sync +internal/reflectlite crypto/subtle -weak +sync runtime/metrics -internal/reflectlite -slices +iter +weak maps +slices errors sort internal/testlog internal/singleflight unique -github.com/sagikazarmark/locafero/internal/queue -log/slog/internal/buffer -google.golang.org/protobuf/internal/pragma internal/bisect io internal/oserror -strconv -runtime/cgo path -syscall math/rand/v2 +strconv vendor/golang.org/x/net/dns/dnsmessage +syscall +runtime/cgo github.com/go-viper/mapstructure/internal/errors +github.com/sagikazarmark/locafero/internal/queue +log/slog/internal/buffer +internal/godebug +google.golang.org/protobuf/internal/pragma google.golang.org/grpc/internal/buffer hash -internal/godebug bytes -internal/saferio -github.com/beorn7/perks/quantile -hash/crc32 +crypto/internal/fips140deps/godebug strings crypto/internal/randutil -crypto -crypto/internal/fips140deps/godebug -hash/fnv math/rand -net/netip reflect -vendor/golang.org/x/text/transform -golang.org/x/text/transform +crypto +net/netip +hash/crc32 +hash/fnv +internal/saferio hash/adler32 github.com/prometheus/client_golang/prometheus/promhttp/internal +github.com/beorn7/perks/quantile golang.org/x/crypto/blowfish encoding/base32 +vendor/golang.org/x/text/transform +golang.org/x/text/transform github.com/dvsekhvalnov/jose2go/padding -golang.org/x/text/runes -crypto/internal/fips140 -net/http/internal/testcert crypto/internal/impl +crypto/internal/fips140 bufio +regexp/syntax net/http/internal/ascii html -regexp/syntax +golang.org/x/text/runes github.com/munnerz/goautoneg +net/http/internal/testcert crypto/internal/fips140/sha256 -crypto/internal/fips140/sha512 crypto/internal/fips140/sha3 +crypto/internal/fips140/sha512 crypto/tls/internal/fips140tls internal/syscall/unix time @@ -1803,79 +1839,78 @@ crypto/internal/fips140/hmac crypto/internal/fips140hash crypto/internal/fips140/check +crypto/internal/fips140/nistec/fiat +crypto/internal/fips140/edwards25519/field crypto/internal/fips140/hkdf -crypto/internal/fips140/aes -crypto/internal/fips140/tls12 crypto/internal/fips140/bigmod -crypto/internal/fips140/edwards25519/field -crypto/internal/fips140/nistec/fiat +crypto/internal/fips140/tls12 +crypto/internal/fips140/aes crypto/internal/fips140/tls13 -regexp crypto/internal/fips140/edwards25519 -github.com/jinzhu/inflection +regexp io/fs internal/poll context google.golang.org/grpc/backoff -google.golang.org/grpc/keepalive github.com/bugsnag/bugsnag-go/headers -crypto/internal/fips140/nistec +google.golang.org/grpc/keepalive +github.com/jinzhu/inflection internal/filepathlite embed -github.com/spf13/afero/internal/common +golang.org/x/net/context google.golang.org/grpc/internal/backoff +github.com/spf13/afero/internal/common google.golang.org/grpc/internal/grpcsync -golang.org/x/net/context gopkg.in/rethinkdb/rethinkdb-go.v6/vendor/gopkg.in/cenkalti/backoff.v2 +crypto/internal/fips140/nistec google.golang.org/protobuf/internal/editiondefaults os -encoding/binary internal/fmtsort +encoding/binary crypto/internal/sysrand fmt +net path/filepath io/ioutil google.golang.org/grpc/internal/envconfig github.com/bugsnag/bugsnag-go/device os/signal -internal/sysinfo github.com/prometheus/procfs/internal/util -net -crypto/internal/entropy +internal/sysinfo +encoding/base64 golang.org/x/sys/unix -google.golang.org/protobuf/internal/detrand vendor/golang.org/x/crypto/internal/poly1305 -encoding/base64 +crypto/internal/entropy +google.golang.org/protobuf/internal/detrand filippo.io/edwards25519/field crypto/internal/fips140/drbg github.com/cespare/xxhash -encoding/pem github.com/dvsekhvalnov/jose2go/base64url -github.com/dvsekhvalnov/jose2go/compact +encoding/pem crypto/internal/fips140only -crypto/internal/fips140/ecdh crypto/internal/fips140/aes/gcm +crypto/internal/fips140/ecdh crypto/internal/fips140/ecdsa crypto/internal/fips140/rsa crypto/internal/fips140/ed25519 -crypto/md5 crypto/internal/fips140/mlkem -crypto/rc4 github.com/spf13/afero/mem +crypto/md5 +crypto/rc4 os/exec filippo.io/edwards25519 -github.com/theupdateframework/notary +github.com/dvsekhvalnov/jose2go/compact crypto/cipher -github.com/bugsnag/panicwrap -crypto/internal/boring +github.com/theupdateframework/notary crypto/des +crypto/internal/boring vendor/golang.org/x/crypto/chacha20 log +net/url encoding/json -encoding/hex math/big -net/url github.com/docker/go/canonical/json +encoding/hex crypto/ecdh crypto/sha512 crypto/sha256 @@ -1884,9 +1919,9 @@ crypto/hmac mime mime/quotedprintable -golang.org/x/crypto/pbkdf2 compress/flate vendor/golang.org/x/crypto/chacha20poly1305 +golang.org/x/crypto/pbkdf2 vendor/golang.org/x/text/unicode/bidi vendor/golang.org/x/text/unicode/norm vendor/golang.org/x/net/http2/hpack @@ -1894,91 +1929,92 @@ github.com/miekg/pkcs11 flag encoding/csv -compress/gzip -golang.org/x/text/unicode/norm vendor/golang.org/x/text/secure/bidirule +golang.org/x/text/unicode/norm +compress/gzip github.com/spf13/cast/internal text/template/parse github.com/subosito/gotenv github.com/pelletier/go-toml/v2/internal/danger go.yaml.in/yaml/v3 -github.com/pelletier/go-toml/v2/unstable google.golang.org/protobuf/internal/errors +github.com/pelletier/go-toml/v2/unstable go/token google.golang.org/protobuf/encoding/protowire -google.golang.org/protobuf/reflect/protoreflect vendor/golang.org/x/net/idna +google.golang.org/protobuf/reflect/protoreflect +google.golang.org/protobuf/internal/version github.com/pelletier/go-toml/v2/internal/tracker +golang.org/x/net/internal/timeseries +text/tabwriter +google.golang.org/grpc/attributes +text/template +github.com/theupdateframework/notary/tuf/validation +github.com/spf13/viper/internal/encoding/json crypto/rand crypto/elliptic -github.com/docker/distribution/uuid crypto/internal/boring/bbig encoding/asn1 -crypto/rsa crypto/dsa +github.com/docker/distribution/uuid +crypto/rsa +github.com/sirupsen/logrus crypto/ed25519 -github.com/theupdateframework/notary/tuf/validation crypto/internal/hpke golang.org/x/crypto/ed25519 -github.com/sirupsen/logrus github.com/fsnotify/fsnotify/internal -text/template -github.com/spf13/viper/internal/encoding/json github.com/pelletier/go-toml/v2 log/slog -google.golang.org/protobuf/internal/version -golang.org/x/net/internal/timeseries -text/tabwriter -github.com/fsnotify/fsnotify google.golang.org/grpc/grpclog/internal -google.golang.org/grpc/attributes google.golang.org/protobuf/internal/descfmt -vendor/golang.org/x/crypto/cryptobyte -crypto/x509/pkix google.golang.org/protobuf/internal/descopts +github.com/fsnotify/fsnotify google.golang.org/protobuf/internal/strs google.golang.org/protobuf/internal/encoding/messageset -google.golang.org/protobuf/internal/genid +vendor/golang.org/x/crypto/cryptobyte +crypto/x509/pkix google.golang.org/protobuf/internal/encoding/text +google.golang.org/protobuf/internal/genid google.golang.org/protobuf/internal/order google.golang.org/protobuf/reflect/protoregistry google.golang.org/protobuf/runtime/protoiface google.golang.org/grpc/grpclog google.golang.org/protobuf/internal/protolazy -crypto/ecdsa google.golang.org/protobuf/internal/encoding/json +google.golang.org/grpc/connectivity +google.golang.org/grpc/internal/grpclog +html/template +crypto/ecdsa google.golang.org/grpc/internal/idle golang.org/x/text/unicode/bidi -github.com/spf13/viper/internal/encoding/toml -golang.org/x/net/http2/hpack google.golang.org/protobuf/internal/encoding/defval -github.com/pkg/errors -google.golang.org/grpc/connectivity -html/template google.golang.org/protobuf/proto -google.golang.org/grpc/internal/grpclog +golang.org/x/net/http2/hpack +github.com/pkg/errors +github.com/bugsnag/panicwrap +github.com/spf13/viper/internal/encoding/yaml database/sql/driver +github.com/spf13/viper/internal/encoding/toml compress/zlib -github.com/opencontainers/go-digest github.com/bugsnag/bugsnag-go/errors +github.com/opencontainers/go-digest github.com/opencontainers/image-spec/specs-go -github.com/spf13/viper/internal/encoding/yaml github.com/prometheus/procfs/internal/fs runtime/debug +golang.org/x/crypto/bcrypt github.com/distribution/reference -github.com/opencontainers/image-spec/specs-go/v1 -database/sql golang.org/x/term -golang.org/x/crypto/bcrypt -github.com/lib/pq/scram golang.org/x/text/secure/bidirule +database/sql +github.com/opencontainers/image-spec/specs-go/v1 +github.com/lib/pq/scram os/user +golang.org/x/net/idna google.golang.org/protobuf/internal/filedesc google.golang.org/protobuf/encoding/prototext -golang.org/x/net/idna google.golang.org/protobuf/encoding/protodelim -go/scanner github.com/theupdateframework/notary/passphrase +go/scanner github.com/hailocab/go-hostpool github.com/opentracing/opentracing-go/log gopkg.in/rethinkdb/rethinkdb-go.v6/encoding @@ -1998,53 +2034,53 @@ google.golang.org/protobuf/internal/encoding/tag google.golang.org/protobuf/encoding/protojson google.golang.org/protobuf/internal/impl -github.com/jinzhu/gorm github.com/spf13/viper/internal/encoding/dotenv +github.com/jinzhu/gorm github.com/stretchr/testify/assert/yaml -google.golang.org/grpc/internal -google.golang.org/grpc/internal/resolver/dns/internal vendor/golang.org/x/net/http/httpproxy +google.golang.org/grpc/internal/resolver/dns/internal +google.golang.org/grpc/internal +github.com/go-viper/mapstructure crypto/x509 google.golang.org/grpc/internal/syscall -github.com/google/uuid net/textproto -github.com/go-viper/mapstructure +github.com/google/uuid github.com/spf13/pflag github.com/prometheus/procfs google.golang.org/grpc/experimental/stats google.golang.org/grpc/metadata -mime/multipart -vendor/golang.org/x/net/http/httpguts google.golang.org/grpc/codes google.golang.org/grpc/mem -golang.org/x/net/http/httpguts google.golang.org/grpc/internal/grpcutil -google.golang.org/grpc/internal/balancerload google.golang.org/grpc/stats -google.golang.org/grpc/tap -google.golang.org/grpc/internal/stats +google.golang.org/grpc/internal/balancerload +mime/multipart +vendor/golang.org/x/net/http/httpguts +golang.org/x/net/http/httpguts google.golang.org/grpc/encoding +google.golang.org/grpc/internal/stats +google.golang.org/grpc/tap github.com/theupdateframework/notary/tuf/data crypto/tls github.com/dvsekhvalnov/jose2go/keys/ecc github.com/dvsekhvalnov/jose2go github.com/spf13/cobra -github.com/theupdateframework/notary/client/changelist github.com/theupdateframework/notary/tuf/utils +github.com/theupdateframework/notary/client/changelist google.golang.org/protobuf/internal/filetype google.golang.org/protobuf/runtime/protoimpl -google.golang.org/protobuf/types/known/durationpb -google.golang.org/protobuf/types/descriptorpb -google.golang.org/protobuf/types/known/timestamppb 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 -github.com/golang/protobuf/ptypes/duration -github.com/golang/protobuf/ptypes/empty -google.golang.org/grpc/internal/pretty +google.golang.org/protobuf/types/descriptorpb google.golang.org/grpc/encoding/proto -github.com/golang/protobuf/ptypes/timestamp +google.golang.org/grpc/internal/pretty github.com/prometheus/client_model/go +github.com/golang/protobuf/ptypes/timestamp +github.com/golang/protobuf/ptypes/empty +github.com/golang/protobuf/ptypes/duration google.golang.org/genproto/googleapis/rpc/status google.golang.org/grpc/binarylog/grpc_binarylog_v1 google.golang.org/grpc/internal/status @@ -2055,104 +2091,104 @@ google.golang.org/protobuf/types/gofeaturespb google.golang.org/protobuf/reflect/protodesc github.com/prometheus/client_golang/prometheus/internal +net/http/httptrace google.golang.org/grpc/internal/credentials github.com/docker/go-connections/tlsconfig -net/http/httptrace -github.com/docker/libtrust github.com/go-sql-driver/mysql +github.com/docker/libtrust github.com/lib/pq -google.golang.org/grpc/credentials net/http -google.golang.org/grpc/internal/channelz +google.golang.org/grpc/credentials +github.com/golang/protobuf/proto google.golang.org/grpc/resolver +google.golang.org/grpc/internal/channelz google.golang.org/grpc/credentials/insecure google.golang.org/grpc/peer google.golang.org/grpc/internal/metadata -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/unix +google.golang.org/grpc/internal/resolver/passthrough google.golang.org/grpc/internal/resolver/dns -github.com/golang/protobuf/proto +google.golang.org/grpc/internal/resolver/unix 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/balancer/pickfirst google.golang.org/grpc/internal/serviceconfig -google.golang.org/grpc/balancer/base +google.golang.org/grpc/balancer/roundrobin google.golang.org/grpc/internal/resolver google.golang.org/grpc/internal/balancer/gracefulswitch -google.golang.org/grpc/balancer/roundrobin gopkg.in/rethinkdb/rethinkdb-go.v6/ql2 +github.com/spf13/afero golang.org/x/net/trace +net/http/httputil github.com/bugsnag/bugsnag-go/sessions -github.com/spf13/afero -github.com/docker/distribution +github.com/gorilla/mux +github.com/docker/distribution/registry/auth +github.com/docker/distribution/registry/api/errcode github.com/docker/distribution/registry/client/auth/challenge -golang.org/x/net/http2 github.com/docker/distribution/registry/client/transport -net/http/httputil -github.com/docker/distribution/registry/api/errcode +github.com/docker/distribution github.com/theupdateframework/notary/storage -github.com/docker/distribution/registry/auth -github.com/gorilla/mux +golang.org/x/net/http2 expvar github.com/prometheus/common/expfmt github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil/header github.com/bugsnag/bugsnag-go -github.com/opentracing/opentracing-go github.com/theupdateframework/notary/server/errors -github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil +github.com/opentracing/opentracing-go net/http/pprof +github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil +github.com/theupdateframework/notary/trustmanager net/http/httptest github.com/docker/distribution/context github.com/docker/distribution/registry/api/v2 -github.com/theupdateframework/notary/trustmanager github.com/opentracing/opentracing-go/ext -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/theupdateframework/notary/cryptoservice github.com/theupdateframework/notary/tuf/signed -github.com/theupdateframework/notary/vendor/github.com/prometheus/client_golang/prometheus -github.com/prometheus/client_golang/prometheus -github.com/sagikazarmark/locafero +github.com/stretchr/testify/assert +github.com/docker/distribution/health +github.com/docker/distribution/registry/auth/htpasswd +github.com/docker/distribution/registry/auth/token github.com/theupdateframework/notary/trustmanager/yubikey github.com/theupdateframework/notary/trustpinning github.com/theupdateframework/notary/tuf/testutils/keys +github.com/sagikazarmark/locafero +github.com/prometheus/client_golang/prometheus +github.com/theupdateframework/notary/vendor/github.com/prometheus/client_golang/prometheus github.com/spf13/viper github.com/theupdateframework/notary/tuf -github.com/theupdateframework/notary/client github.com/theupdateframework/notary/tuf/testutils -github.com/stretchr/testify/require +github.com/theupdateframework/notary/client github.com/theupdateframework/notary/utils +github.com/stretchr/testify/require +github.com/prometheus/client_golang/prometheus/promhttp github.com/theupdateframework/notary/storage/rethinkdb google.golang.org/grpc/internal/transport -github.com/prometheus/client_golang/prometheus/promhttp github.com/theupdateframework/notary/tuf/testutils/interfaces -github.com/theupdateframework/notary/server/storage github.com/theupdateframework/notary/signer/keydbstore +github.com/theupdateframework/notary/server/storage github.com/docker/go-metrics github.com/theupdateframework/notary/server/snapshot -github.com/theupdateframework/notary/server/timestamp github.com/docker/distribution/metrics -github.com/theupdateframework/notary/server/handlers +github.com/theupdateframework/notary/server/timestamp github.com/docker/distribution/registry/storage/cache +github.com/theupdateframework/notary/server/handlers github.com/docker/distribution/registry/storage/cache/memory github.com/docker/distribution/registry/client -google.golang.org/grpc github.com/theupdateframework/notary/server +google.golang.org/grpc github.com/docker/distribution/registry/client/auth github.com/theupdateframework/notary/cmd/notary -github.com/theupdateframework/notary/trustmanager/remoteks -github.com/theupdateframework/notary/proto google.golang.org/grpc/health/grpc_health_v1 -google.golang.org/grpc/health -github.com/theupdateframework/notary/signer/client +github.com/theupdateframework/notary/proto +github.com/theupdateframework/notary/trustmanager/remoteks github.com/theupdateframework/notary/signer +github.com/theupdateframework/notary/signer/client +google.golang.org/grpc/health github.com/theupdateframework/notary/cmd/escrow github.com/theupdateframework/notary/signer/api github.com/theupdateframework/notary/cmd/notary-server @@ -2162,17 +2198,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.02s) +--- PASS: Test0Dot1Migration (0.01s) === RUN Test0Dot3Migration ---- PASS: Test0Dot3Migration (0.01s) +--- PASS: Test0Dot3Migration (0.00s) === RUN Test0Dot1RepoFormat -time="2025-10-18T21:04:25-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.17s) +time="2026-11-22T05:31:00+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.09s) === RUN Test0Dot3RepoFormat backwards_compatibility_test.go:248: Disable FTBFS timebomb. https://bugs.debian.org/1078632 --- SKIP: Test0Dot3RepoFormat (0.00s) === RUN TestDownloading0Dot1RepoFormat ---- PASS: TestDownloading0Dot1RepoFormat (0.01s) +--- PASS: TestDownloading0Dot1RepoFormat (0.00s) === RUN TestDownloading0Dot3RepoFormat backwards_compatibility_test.go:343: Disable FTBFS timebomb. https://bugs.debian.org/1078632 --- SKIP: TestDownloading0Dot3RepoFormat (0.00s) @@ -2189,17 +2225,17 @@ === RUN TestMatchKeyIDsWithPublicKeys --- PASS: TestMatchKeyIDsWithPublicKeys (0.00s) === RUN TestInitRepositoryNeedsRemoteTimestampKey ---- PASS: TestInitRepositoryNeedsRemoteTimestampKey (0.03s) +--- PASS: TestInitRepositoryNeedsRemoteTimestampKey (0.00s) === RUN TestInitRepositoryNeedsRemoteSnapshotKey --- PASS: TestInitRepositoryNeedsRemoteSnapshotKey (0.00s) === RUN TestInitRepoServerOnlyManagesTimestampKey ---- PASS: TestInitRepoServerOnlyManagesTimestampKey (0.08s) +--- PASS: TestInitRepoServerOnlyManagesTimestampKey (0.04s) === RUN TestInitRepoServerManagesTimestampAndSnapshotKeys --- PASS: TestInitRepoServerManagesTimestampAndSnapshotKeys (0.06s) === RUN TestInitRepoAttemptsExceeded ---- PASS: TestInitRepoAttemptsExceeded (0.04s) +--- PASS: TestInitRepoAttemptsExceeded (0.02s) === RUN TestInitRepoPasswordInvalid ---- PASS: TestInitRepoPasswordInvalid (0.01s) +--- PASS: TestInitRepoPasswordInvalid (0.00s) === RUN TestAddTargetToTargetRoleByDefault --- PASS: TestAddTargetToTargetRoleByDefault (0.02s) === RUN TestAddTargetToSpecifiedValidRoles @@ -2211,99 +2247,99 @@ === RUN TestAddTargetErrorWritingChanges --- PASS: TestAddTargetErrorWritingChanges (0.01s) === RUN TestRemoveTargetToTargetRoleByDefault ---- PASS: TestRemoveTargetToTargetRoleByDefault (0.03s) +--- PASS: TestRemoveTargetToTargetRoleByDefault (0.01s) === RUN TestRemoveTargetFromSpecifiedValidRoles ---- PASS: TestRemoveTargetFromSpecifiedValidRoles (0.03s) +--- PASS: TestRemoveTargetFromSpecifiedValidRoles (0.02s) === RUN TestRemoveTargetToSpecifiedInvalidRoles ---- PASS: TestRemoveTargetToSpecifiedInvalidRoles (0.03s) +--- PASS: TestRemoveTargetToSpecifiedInvalidRoles (0.02s) === RUN TestRemoveTargetErrorWritingChanges --- PASS: TestRemoveTargetErrorWritingChanges (0.01s) === RUN TestListTarget ---- PASS: TestListTarget (0.32s) +--- PASS: TestListTarget (0.26s) === RUN TestListTargetRestrictsDelegationPaths ---- PASS: TestListTargetRestrictsDelegationPaths (0.07s) +--- PASS: TestListTargetRestrictsDelegationPaths (0.04s) === RUN TestValidateRootKey ---- PASS: TestValidateRootKey (0.06s) +--- PASS: TestValidateRootKey (0.03s) === RUN TestGetChangelist --- PASS: TestGetChangelist (0.04s) === RUN TestPublishBareRepo ---- PASS: TestPublishBareRepo (0.48s) +--- PASS: TestPublishBareRepo (0.34s) === RUN TestPublishUninitializedRepo -time="2025-10-18T21:04:27-12:00" level=info msg="No TUF data found locally or remotely - initializing repository docker.com/notary for the first time" ---- PASS: TestPublishUninitializedRepo (0.05s) +time="2026-11-22T05:31:01+14:00" level=info msg="No TUF data found locally or remotely - initializing repository docker.com/notary for the first time" +--- PASS: TestPublishUninitializedRepo (0.02s) === RUN TestPublishClientHasSnapshotKey ---- PASS: TestPublishClientHasSnapshotKey (0.34s) +--- PASS: TestPublishClientHasSnapshotKey (0.21s) === RUN TestPublishAfterInitServerHasSnapshotKey ---- PASS: TestPublishAfterInitServerHasSnapshotKey (0.31s) +--- PASS: TestPublishAfterInitServerHasSnapshotKey (0.20s) === RUN TestPublishAfterPullServerHasSnapshotKey ---- PASS: TestPublishAfterPullServerHasSnapshotKey (0.13s) +--- PASS: TestPublishAfterPullServerHasSnapshotKey (0.08s) === RUN TestPublishNoOneHasSnapshotKey ---- PASS: TestPublishNoOneHasSnapshotKey (0.07s) +--- PASS: TestPublishNoOneHasSnapshotKey (0.05s) === RUN TestPublishSnapshotCorrupt ---- PASS: TestPublishSnapshotCorrupt (0.28s) +--- PASS: TestPublishSnapshotCorrupt (0.09s) === RUN TestPublishTargetsCorrupt ---- PASS: TestPublishTargetsCorrupt (0.28s) +--- PASS: TestPublishTargetsCorrupt (0.05s) === RUN TestPublishRootCorrupt -time="2025-10-18T21:04: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-10-18T21:04: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.66s) +time="2026-11-22T05:31:02+14:00" level=error msg="Could not publish Repository since we could not update: invalid character 'h' in literal true (expecting 'r')" +time="2026-11-22T05:31:02+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.03s) === RUN TestPublishSnapshotLocalKeysCreatedFirst ---- PASS: TestPublishSnapshotLocalKeysCreatedFirst (0.01s) +--- PASS: TestPublishSnapshotLocalKeysCreatedFirst (0.00s) === RUN TestPublishDelegations ---- PASS: TestPublishDelegations (2.19s) +--- PASS: TestPublishDelegations (0.07s) === RUN TestPublishDelegationsX509 ---- PASS: TestPublishDelegationsX509 (5.04s) +--- PASS: TestPublishDelegationsX509 (0.07s) === RUN TestPublishTargetsDelegationScopeFailIfNoKeys -time="2025-10-18T21:04:36-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-10-18T21:04:36-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.10s) +time="2026-11-22T05:31:02+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-11-22T05:31:02+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.06s) === RUN TestPublishTargetsDelegationSuccessLocallyHasRoles ---- PASS: TestPublishTargetsDelegationSuccessLocallyHasRoles (0.12s) +--- PASS: TestPublishTargetsDelegationSuccessLocallyHasRoles (0.06s) === RUN TestPublishTargetsDelegationNoTargetsKeyNeeded ---- PASS: TestPublishTargetsDelegationNoTargetsKeyNeeded (0.13s) +--- PASS: TestPublishTargetsDelegationNoTargetsKeyNeeded (0.09s) === RUN TestPublishTargetsDelegationSuccessNeedsToDownloadRoles ---- PASS: TestPublishTargetsDelegationSuccessNeedsToDownloadRoles (0.21s) +--- PASS: TestPublishTargetsDelegationSuccessNeedsToDownloadRoles (0.09s) === RUN TestPublishTargetsDelegationFromTwoRepos ---- PASS: TestPublishTargetsDelegationFromTwoRepos (0.10s) +--- PASS: TestPublishTargetsDelegationFromTwoRepos (0.08s) === RUN TestPublishRemoveDelegationKeyFromDelegationRole -time="2025-10-18T21:04:37-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-10-18T21:04:37-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: 30e6cb976c61280797833f1a6d5ef1347efa7381959765f61a8675123e629e5a" ---- PASS: TestPublishRemoveDelegationKeyFromDelegationRole (0.10s) +time="2026-11-22T05:31:03+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-11-22T05:31:03+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: cd9596090a765708661d1d19ad11e849e9f4f0ffb11d14bef72eef8e5cf582bf" +--- PASS: TestPublishRemoveDelegationKeyFromDelegationRole (0.04s) === RUN TestPublishRemoveDelegation -time="2025-10-18T21:04:37-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-10-18T21:04:37-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-10-18T21:04:37-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-10-18T21:04:37-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.13s) +time="2026-11-22T05:31:03+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-11-22T05:31:03+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-11-22T05:31:03+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-11-22T05:31:03+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.05s) === RUN TestPublishSucceedsDespiteDelegationCorrupt ---- PASS: TestPublishSucceedsDespiteDelegationCorrupt (1.51s) +--- PASS: TestPublishSucceedsDespiteDelegationCorrupt (0.05s) === RUN TestRotateKeyInvalidRole ---- PASS: TestRotateKeyInvalidRole (1.23s) +--- PASS: TestRotateKeyInvalidRole (0.04s) === RUN TestRemoteRotationError --- PASS: TestRemoteRotationError (0.01s) === RUN TestRemoteRotationEndpointError ---- PASS: TestRemoteRotationEndpointError (1.00s) +--- PASS: TestRemoteRotationEndpointError (0.02s) === RUN TestRemoteRotationNoRootKey ---- PASS: TestRemoteRotationNoRootKey (1.94s) +--- PASS: TestRemoteRotationNoRootKey (0.03s) === RUN TestRemoteRotationNoInit -time="2025-10-18T21:04:43-12:00" level=info msg="No TUF data found locally or remotely - initializing repository docker.com/notary for the first time" ---- PASS: TestRemoteRotationNoInit (0.61s) +time="2026-11-22T05:31:03+14:00" level=info msg="No TUF data found locally or remotely - initializing repository docker.com/notary for the first time" +--- PASS: TestRemoteRotationNoInit (0.02s) === RUN TestRotateBeforePublishFromRemoteKeyToLocalKey ---- PASS: TestRotateBeforePublishFromRemoteKeyToLocalKey (2.90s) +--- PASS: TestRotateBeforePublishFromRemoteKeyToLocalKey (0.08s) === RUN TestRotateKeyAfterPublishNoServerManagementChange ---- PASS: TestRotateKeyAfterPublishNoServerManagementChange (0.91s) +--- PASS: TestRotateKeyAfterPublishNoServerManagementChange (0.24s) === RUN TestRotateKeyAfterPublishServerManagementChange ---- PASS: TestRotateKeyAfterPublishServerManagementChange (0.43s) +--- PASS: TestRotateKeyAfterPublishServerManagementChange (0.26s) === RUN TestRotateRootKey ---- PASS: TestRotateRootKey (0.12s) +--- PASS: TestRotateRootKey (0.08s) === RUN TestRotateRootMultiple ---- PASS: TestRotateRootMultiple (0.14s) +--- PASS: TestRotateRootMultiple (0.10s) === RUN TestRotateRootKeyProvided ---- PASS: TestRotateRootKeyProvided (0.12s) +--- PASS: TestRotateRootKeyProvided (0.07s) === RUN TestRotateRootKeyLegacySupport ---- PASS: TestRotateRootKeyLegacySupport (0.15s) +--- PASS: TestRotateRootKeyLegacySupport (0.11s) === RUN TestRemoteServerUnavailableNoLocalCache -time="2025-10-18T21:04:48-12:00" level=error msg="Could not publish Repository since we could not update: unable to reach trust server at this time: 500." +time="2026-11-22T05:31:04+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.00s) === RUN TestAddDelegationChangefileValid --- PASS: TestAddDelegationChangefileValid (0.01s) @@ -2314,185 +2350,185 @@ === RUN TestRemoveDelegationChangefileValid --- PASS: TestRemoveDelegationChangefileValid (0.01s) === RUN TestRemoveDelegationChangefileApplicable -time="2025-10-18T21:04:48-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-10-18T21:04:48-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="2026-11-22T05:31:04+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-11-22T05:31:04+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.01s) === 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.02s) +--- PASS: TestRemoveDelegationErrorWritingChanges (0.01s) === RUN TestClientInvalidURL --- PASS: TestClientInvalidURL (0.00s) === RUN TestPublishTargetsDelegationCanUseUserKeyWithArbitraryRole ---- PASS: TestPublishTargetsDelegationCanUseUserKeyWithArbitraryRole (1.14s) +--- PASS: TestPublishTargetsDelegationCanUseUserKeyWithArbitraryRole (0.15s) === RUN TestDeleteRepo ---- PASS: TestDeleteRepo (0.04s) +--- PASS: TestDeleteRepo (0.01s) === RUN TestDeleteRemoteRepo ---- PASS: TestDeleteRemoteRepo (0.07s) +--- PASS: TestDeleteRemoteRepo (0.05s) === RUN TestListRoles ---- PASS: TestListRoles (0.17s) +--- PASS: TestListRoles (0.10s) === RUN TestGetAllTargetInfo ---- PASS: TestGetAllTargetInfo (0.49s) +--- PASS: TestGetAllTargetInfo (0.08s) === RUN TestUpdateSucceedsEvenIfCannotWriteNewRepo -time="2025-10-18T21:04:50-12:00" level=error msg="could not save root to cache: Non-writable" +time="2026-11-22T05:31:04+14:00" level=error msg="could not save root to cache: Non-writable" --- PASS: TestUpdateSucceedsEvenIfCannotWriteNewRepo (0.07s) === RUN TestUpdateSucceedsEvenIfCannotWriteExistingRepo ---- PASS: TestUpdateSucceedsEvenIfCannotWriteExistingRepo (0.45s) +--- PASS: TestUpdateSucceedsEvenIfCannotWriteExistingRepo (0.37s) === RUN TestUpdateInOfflineMode -time="2025-10-18T21:04:51-12:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" -time="2025-10-18T21:04:51-12:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +time="2026-11-22T05:31:05+14:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +time="2026-11-22T05:31:05+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-10-18T21:04:51-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:04:51-12:00" level=error msg="Metadata for root expired" ---- PASS: TestUpdateReplacesCorruptOrMissingMetadata (0.73s) +time="2026-11-22T05:31:05+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:05+14:00" level=error msg="Metadata for root expired" +--- PASS: TestUpdateReplacesCorruptOrMissingMetadata (0.77s) === RUN TestUpdateFailsIfServerRootKeyChangedWithoutMultiSign -time="2025-10-18T21:04:52-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:04:52-12:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:05+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:05+14:00" level=error msg="Metadata for root expired" --- PASS: TestUpdateFailsIfServerRootKeyChangedWithoutMultiSign (0.09s) === RUN TestUpdateRemoteRootNotExistNoLocalCache ---- PASS: TestUpdateRemoteRootNotExistNoLocalCache (0.04s) +--- PASS: TestUpdateRemoteRootNotExistNoLocalCache (0.03s) === RUN TestUpdateRemoteRootNotExistCanUseLocalCache ---- PASS: TestUpdateRemoteRootNotExistCanUseLocalCache (0.08s) +--- PASS: TestUpdateRemoteRootNotExistCanUseLocalCache (0.07s) === RUN TestUpdateRemoteRootNotExistCannotUseLocalCache ---- PASS: TestUpdateRemoteRootNotExistCannotUseLocalCache (0.06s) +--- PASS: TestUpdateRemoteRootNotExistCannotUseLocalCache (0.08s) === RUN TestUpdateRemoteRoot50XNoLocalCache ---- PASS: TestUpdateRemoteRoot50XNoLocalCache (0.01s) +--- PASS: TestUpdateRemoteRoot50XNoLocalCache (0.03s) === RUN TestUpdateRemoteRoot50XCanUseLocalCache --- PASS: TestUpdateRemoteRoot50XCanUseLocalCache (0.07s) === RUN TestUpdateRemoteRoot50XCannotUseLocalCache ---- PASS: TestUpdateRemoteRoot50XCannotUseLocalCache (0.06s) +--- PASS: TestUpdateRemoteRoot50XCannotUseLocalCache (0.08s) === RUN TestUpdateNonRootRemoteMissingMetadataNoLocalCache ---- PASS: TestUpdateNonRootRemoteMissingMetadataNoLocalCache (1.88s) +--- PASS: TestUpdateNonRootRemoteMissingMetadataNoLocalCache (0.17s) === RUN TestUpdateNonRootRemoteMissingMetadataCanUseLocalCache -time="2025-10-18T21:04:55-12:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" ---- PASS: TestUpdateNonRootRemoteMissingMetadataCanUseLocalCache (2.66s) +time="2026-11-22T05:31:06+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.23s) === RUN TestUpdateNonRootRemoteMissingMetadataCannotUseLocalCache -time="2025-10-18T21:04:57-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.31s) +time="2026-11-22T05:31:06+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.32s) === RUN TestUpdateNonRootRemote50XNoLocalCache ---- PASS: TestUpdateNonRootRemote50XNoLocalCache (0.14s) +--- PASS: TestUpdateNonRootRemote50XNoLocalCache (0.17s) === RUN TestUpdateNonRootRemote50XCanUseLocalCache -time="2025-10-18T21:04:57-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.21s) +time="2026-11-22T05:31:07+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-10-18T21:04:57-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.28s) +time="2026-11-22T05:31:07+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.30s) === RUN TestUpdateRemoteChecksumWrongNoLocalCache ---- PASS: TestUpdateRemoteChecksumWrongNoLocalCache (0.20s) +--- PASS: TestUpdateRemoteChecksumWrongNoLocalCache (0.21s) === RUN TestUpdateRemoteChecksumWrongCanUseLocalCache ---- PASS: TestUpdateRemoteChecksumWrongCanUseLocalCache (0.23s) +--- PASS: TestUpdateRemoteChecksumWrongCanUseLocalCache (0.31s) === RUN TestUpdateRemoteChecksumWrongCannotUseLocalCache ---- PASS: TestUpdateRemoteChecksumWrongCannotUseLocalCache (0.28s) +--- PASS: TestUpdateRemoteChecksumWrongCannotUseLocalCache (0.39s) === RUN TestUpdateRootRemoteCorruptedNoLocalCache -time="2025-10-18T21:04:58-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:04:58-12:00" level=error msg="Metadata for root expired" ---- PASS: TestUpdateRootRemoteCorruptedNoLocalCache (0.51s) +time="2026-11-22T05:31:08+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:08+14:00" level=error msg="Metadata for root expired" +--- PASS: TestUpdateRootRemoteCorruptedNoLocalCache (0.62s) === RUN TestUpdateRootRemoteCorruptedCanUseLocalCache ---- PASS: TestUpdateRootRemoteCorruptedCanUseLocalCache (1.11s) +--- PASS: TestUpdateRootRemoteCorruptedCanUseLocalCache (1.28s) === RUN TestUpdateRootRemoteCorruptedCannotUseLocalCache -time="2025-10-18T21:05:00-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:05:00-12:00" level=error msg="Metadata for root expired" ---- PASS: TestUpdateRootRemoteCorruptedCannotUseLocalCache (1.09s) +time="2026-11-22T05:31:11+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:11+14:00" level=error msg="Metadata for root expired" +--- PASS: TestUpdateRootRemoteCorruptedCannotUseLocalCache (1.46s) === RUN TestUpdateNonRootRemoteCorruptedNoLocalCache -time="2025-10-18T21:05:01-12:00" level=error msg="Metadata for targets expired" -time="2025-10-18T21:05:01-12:00" level=error msg="Metadata for targets expired" -time="2025-10-18T21:05:01-12:00" level=error msg="Metadata for snapshot expired" -time="2025-10-18T21:05:01-12:00" level=error msg="Metadata for snapshot expired" -time="2025-10-18T21:05:01-12:00" level=error msg="Metadata for timestamp expired" -time="2025-10-18T21:05:01-12:00" level=error msg="Metadata for timestamp expired" -time="2025-10-18T21:05:02-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-10-18T21:05:02-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-10-18T21:05:02-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-10-18T21:05:02-12:00" level=error msg="Metadata for targets/a expired" -time="2025-10-18T21:05:02-12:00" level=warning msg="Error getting targets/a: targets/a expired at Tue Sep 17 21:05:02 -12 2024" -time="2025-10-18T21:05:02-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-10-18T21:05:02-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-10-18T21:05:02-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-10-18T21:05:02-12:00" level=error msg="Metadata for targets/a/b expired" -time="2025-10-18T21:05:02-12:00" level=warning msg="Error getting targets/a/b: targets/a/b expired at Tue Sep 17 21:05:02 -12 2024" -time="2025-10-18T21:05:02-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2025-10-18T21:05:02-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2025-10-18T21:05:02-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2025-10-18T21:05:02-12:00" level=error msg="Metadata for targets/b expired" -time="2025-10-18T21:05:02-12:00" level=warning msg="Error getting targets/b: targets/b expired at Tue Sep 17 21:05:02 -12 2024" ---- PASS: TestUpdateNonRootRemoteCorruptedNoLocalCache (1.27s) +time="2026-11-22T05:31:12+14:00" level=error msg="Metadata for targets expired" +time="2026-11-22T05:31:12+14:00" level=error msg="Metadata for targets expired" +time="2026-11-22T05:31:12+14:00" level=error msg="Metadata for snapshot expired" +time="2026-11-22T05:31:12+14:00" level=error msg="Metadata for snapshot expired" +time="2026-11-22T05:31:12+14:00" level=error msg="Metadata for timestamp expired" +time="2026-11-22T05:31:12+14:00" level=error msg="Metadata for timestamp expired" +time="2026-11-22T05:31:12+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-11-22T05:31:12+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-11-22T05:31:12+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-11-22T05:31:12+14:00" level=error msg="Metadata for targets/a expired" +time="2026-11-22T05:31:12+14:00" level=warning msg="Error getting targets/a: targets/a expired at Tue Oct 21 05:31:12 +14 2025" +time="2026-11-22T05:31:13+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2026-11-22T05:31:13+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2026-11-22T05:31:13+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2026-11-22T05:31:13+14:00" level=error msg="Metadata for targets/a/b expired" +time="2026-11-22T05:31:13+14:00" level=warning msg="Error getting targets/a/b: targets/a/b expired at Tue Oct 21 05:31:13 +14 2025" +time="2026-11-22T05:31:13+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2026-11-22T05:31:13+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2026-11-22T05:31:13+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2026-11-22T05:31:13+14:00" level=error msg="Metadata for targets/b expired" +time="2026-11-22T05:31:13+14:00" level=warning msg="Error getting targets/b: targets/b expired at Tue Oct 21 05:31:13 +14 2025" +--- PASS: TestUpdateNonRootRemoteCorruptedNoLocalCache (1.65s) === RUN TestUpdateNonRootRemoteCorruptedCanUseLocalCache -time="2025-10-18T21:05:03-12:00" level=error msg="Metadata for timestamp expired" -time="2025-10-18T21:05:03-12:00" level=error msg="Metadata for timestamp expired" ---- PASS: TestUpdateNonRootRemoteCorruptedCanUseLocalCache (1.56s) +time="2026-11-22T05:31:14+14:00" level=error msg="Metadata for timestamp expired" +time="2026-11-22T05:31:14+14:00" level=error msg="Metadata for timestamp expired" +--- PASS: TestUpdateNonRootRemoteCorruptedCanUseLocalCache (2.22s) === RUN TestUpdateNonRootRemoteCorruptedCannotUseLocalCache -time="2025-10-18T21:05:04-12:00" level=error msg="Metadata for targets expired" -time="2025-10-18T21:05:04-12:00" level=error msg="Metadata for snapshot expired" -time="2025-10-18T21:05:04-12:00" level=error msg="Metadata for snapshot expired" -time="2025-10-18T21:05:05-12:00" level=error msg="Metadata for timestamp expired" -time="2025-10-18T21:05:05-12:00" level=error msg="Metadata for timestamp expired" -time="2025-10-18T21:05:05-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-10-18T21:05:05-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-10-18T21:05:05-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-10-18T21:05:05-12:00" level=error msg="Metadata for targets/a expired" -time="2025-10-18T21:05:05-12:00" level=warning msg="Error getting targets/a: targets/a expired at Tue Sep 17 21:05:05 -12 2024" -time="2025-10-18T21:05:05-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-10-18T21:05:05-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-10-18T21:05:05-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-10-18T21:05:05-12:00" level=error msg="Metadata for targets/a/b expired" -time="2025-10-18T21:05:05-12:00" level=warning msg="Error getting targets/a/b: targets/a/b expired at Tue Sep 17 21:05:05 -12 2024" -time="2025-10-18T21:05:06-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2025-10-18T21:05:06-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2025-10-18T21:05:06-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2025-10-18T21:05:06-12:00" level=error msg="Metadata for targets/b expired" -time="2025-10-18T21:05:06-12:00" level=warning msg="Error getting targets/b: targets/b expired at Tue Sep 17 21:05:06 -12 2024" ---- PASS: TestUpdateNonRootRemoteCorruptedCannotUseLocalCache (2.36s) +time="2026-11-22T05:31:16+14:00" level=error msg="Metadata for targets expired" +time="2026-11-22T05:31:16+14:00" level=error msg="Metadata for snapshot expired" +time="2026-11-22T05:31:16+14:00" level=error msg="Metadata for snapshot expired" +time="2026-11-22T05:31:17+14:00" level=error msg="Metadata for timestamp expired" +time="2026-11-22T05:31:17+14:00" level=error msg="Metadata for timestamp expired" +time="2026-11-22T05:31:17+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-11-22T05:31:17+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-11-22T05:31:17+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-11-22T05:31:17+14:00" level=error msg="Metadata for targets/a expired" +time="2026-11-22T05:31:17+14:00" level=warning msg="Error getting targets/a: targets/a expired at Tue Oct 21 05:31:17 +14 2025" +time="2026-11-22T05:31:18+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2026-11-22T05:31:18+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2026-11-22T05:31:18+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2026-11-22T05:31:18+14:00" level=error msg="Metadata for targets/a/b expired" +time="2026-11-22T05:31:18+14:00" level=warning msg="Error getting targets/a/b: targets/a/b expired at Tue Oct 21 05:31:18 +14 2025" +time="2026-11-22T05:31:18+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2026-11-22T05:31:18+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2026-11-22T05:31:18+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2026-11-22T05:31:18+14:00" level=error msg="Metadata for targets/b expired" +time="2026-11-22T05:31:18+14:00" level=warning msg="Error getting targets/b: targets/b expired at Tue Oct 21 05:31:18 +14 2025" +--- PASS: TestUpdateNonRootRemoteCorruptedCannotUseLocalCache (3.12s) === RUN TestUpdateLocalAndRemoteRootCorrupt -time="2025-10-18T21:05:09-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:05:10-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:05:11-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:05:11-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:05:11-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:05:11-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:05:11-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:05:11-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:05:11-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:05:11-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:05:11-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:05:11-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:05:11-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:05:11-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:05:11-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:05:11-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:05:11-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:05:12-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:05:12-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:05:12-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:05:12-12:00" level=error msg="Metadata for root expired" -time="2025-10-18T21:05:12-12:00" level=error msg="Metadata for root expired" ---- PASS: TestUpdateLocalAndRemoteRootCorrupt (5.51s) +time="2026-11-22T05:31:20+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:20+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:21+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:21+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:21+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:21+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:21+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:21+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:21+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:21+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:21+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:21+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:21+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:21+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:21+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:21+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:21+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:21+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:22+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:22+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:22+14:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:22+14:00" level=error msg="Metadata for root expired" +--- PASS: TestUpdateLocalAndRemoteRootCorrupt (3.08s) === RUN TestUpdateRemoteKeyRotated -time="2025-10-18T21:05:12-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-10-18T21:05:12-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-10-18T21:05:12-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" ---- PASS: TestUpdateRemoteKeyRotated (0.15s) +time="2026-11-22T05:31:22+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2026-11-22T05:31:22+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2026-11-22T05:31:22+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +--- PASS: TestUpdateRemoteKeyRotated (0.33s) === RUN TestValidateRootRotationWithOldRole ---- PASS: TestValidateRootRotationWithOldRole (0.08s) +--- PASS: TestValidateRootRotationWithOldRole (0.16s) === RUN TestRootRoleInvariant ---- PASS: TestRootRoleInvariant (0.07s) +--- PASS: TestRootRoleInvariant (0.13s) === RUN TestBadIntermediateTransitions ---- PASS: TestBadIntermediateTransitions (0.02s) +--- PASS: TestBadIntermediateTransitions (0.05s) === RUN TestExpiredIntermediateTransitions -time="2025-10-18T21:05:12-12:00" level=warning msg="root is nearing expiry, you should re-sign the role metadata" ---- PASS: TestExpiredIntermediateTransitions (0.03s) +time="2026-11-22T05:31:22+14:00" level=warning msg="root is nearing expiry, you should re-sign the role metadata" +--- PASS: TestExpiredIntermediateTransitions (0.06s) === RUN TestDownloadTargetsLarge ---- PASS: TestDownloadTargetsLarge (15.39s) +--- PASS: TestDownloadTargetsLarge (2.78s) === RUN TestDownloadTargetsDeep ---- PASS: TestDownloadTargetsDeep (0.04s) +--- PASS: TestDownloadTargetsDeep (0.02s) === RUN TestDownloadSnapshotLargeDelegationsMany ---- PASS: TestDownloadSnapshotLargeDelegationsMany (4.33s) +--- PASS: TestDownloadSnapshotLargeDelegationsMany (2.97s) === RUN TestRootOnDiskTrustPinning ---- PASS: TestRootOnDiskTrustPinning (0.04s) +--- PASS: TestRootOnDiskTrustPinning (0.01s) === RUN TestLoadTUFRepoBadURL --- PASS: TestLoadTUFRepoBadURL (0.00s) === RUN TestApplyTargetsChange @@ -2510,13 +2546,13 @@ === RUN TestApplyTargetsDelegationCreateEdit --- PASS: TestApplyTargetsDelegationCreateEdit (0.00s) === RUN TestApplyTargetsDelegationEditNonExisting ---- PASS: TestApplyTargetsDelegationEditNonExisting (0.01s) +--- PASS: TestApplyTargetsDelegationEditNonExisting (0.00s) === RUN TestApplyTargetsDelegationCreateAlreadyExisting --- PASS: TestApplyTargetsDelegationCreateAlreadyExisting (0.00s) === RUN TestApplyTargetsDelegationAlreadyExistingMergePaths --- PASS: TestApplyTargetsDelegationAlreadyExistingMergePaths (0.00s) === RUN TestApplyTargetsDelegationInvalidRole ---- PASS: TestApplyTargetsDelegationInvalidRole (0.01s) +--- PASS: TestApplyTargetsDelegationInvalidRole (0.00s) === RUN TestApplyTargetsDelegationInvalidJSONContent --- PASS: TestApplyTargetsDelegationInvalidJSONContent (0.00s) === RUN TestApplyTargetsDelegationInvalidAction @@ -2530,27 +2566,27 @@ === RUN TestApplyChangelistCreatesDelegation --- PASS: TestApplyChangelistCreatesDelegation (0.00s) === RUN TestApplyChangelistTargetsToMultipleRoles ---- PASS: TestApplyChangelistTargetsToMultipleRoles (0.01s) +--- PASS: TestApplyChangelistTargetsToMultipleRoles (0.00s) === RUN TestApplyChangelistTargetsFailsNonexistentRole -time="2025-10-18T21:05:32-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-10-18T21:05:32-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" +time="2026-11-22T05:31:28+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-11-22T05:31:28+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-10-18T21:05:32-12:00" level=error msg="couldn't add target to ruhroh: tuf: invalid role ruhroh. does not exist" +time="2026-11-22T05:31:28+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-10-18T21:05:32-12:00" level=error msg="couldn't add target to targets/level1: could not add all targets" ---- PASS: TestChangeTargetMetaFailsIfPrefixError (0.03s) +time="2026-11-22T05:31:28+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.00s) === RUN TestAllNotNearExpiry --- PASS: TestAllNotNearExpiry (0.00s) === RUN TestRotateRemoteKeyOffline ---- PASS: TestRotateRemoteKeyOffline (0.01s) +--- PASS: TestRotateRemoteKeyOffline (0.00s) PASS -ok github.com/theupdateframework/notary/client 66.687s +ok github.com/theupdateframework/notary/client 28.082s === RUN TestTUFDelegation ---- PASS: TestTUFDelegation (0.01s) +--- PASS: TestTUFDelegation (0.00s) === RUN TestMemChangelist --- PASS: TestMemChangelist (0.00s) === RUN TestMemChangeIterator @@ -2560,14 +2596,14 @@ === RUN TestAdd --- PASS: TestAdd (0.00s) === RUN TestErrorConditions -time="2025-10-18T21:04:25-12:00" level=warning msg="invalid character '\\x05' looking for beginning of value" +time="2026-11-22T05:31:00+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.056s +ok github.com/theupdateframework/notary/client/changelist 0.021s === RUN TestParseConfigError --- PASS: TestParseConfigError (0.00s) === RUN TestSetupGRPCServer @@ -2575,9 +2611,9 @@ === RUN TestSetupStorage --- PASS: TestSetupStorage (0.00s) === RUN TestSetupNetListener ---- PASS: TestSetupNetListener (0.01s) +--- PASS: TestSetupNetListener (0.00s) PASS -ok github.com/theupdateframework/notary/cmd/escrow 0.066s +ok github.com/theupdateframework/notary/cmd/escrow 0.042s === RUN TestPurgeDelegationKeys Usage: delegation [command] @@ -2603,7 +2639,7 @@ - abc --- PASS: TestPurgeDelegationKeys (0.00s) === RUN TestAddInvalidDelegationName ---- PASS: TestAddInvalidDelegationName (0.01s) +--- PASS: TestAddInvalidDelegationName (0.00s) === RUN TestAddInvalidDelegationCert --- PASS: TestAddInvalidDelegationCert (0.00s) === RUN TestAddInvalidShortPubkeyCert @@ -2649,80 +2685,80 @@ Use "delegation [command] --help" for more information about a command. --- PASS: TestRemoveInvalidNumArgs (0.00s) === RUN TestInitWithRootKey ---- PASS: TestInitWithRootKey (0.11s) +--- PASS: TestInitWithRootKey (0.05s) === RUN TestInitWithRootCert integration_test.go:189: Disable FTBFS timebomb. https://bugs.debian.org/1078632 --- SKIP: TestInitWithRootCert (0.00s) === RUN TestClientTUFInteraction ---- PASS: TestClientTUFInteraction (0.15s) +--- PASS: TestClientTUFInteraction (0.09s) === RUN TestClientDeleteTUFInteraction -time="2025-10-18T21:04:26-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]:35064->[::1]:53: read: connection refused" ---- PASS: TestClientDeleteTUFInteraction (0.15s) +time="2026-11-22T05:31:00+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]:58918->[::1]:53: read: connection refused" +--- PASS: TestClientDeleteTUFInteraction (0.12s) === RUN TestClientTUFAddByHashInteraction ---- PASS: TestClientTUFAddByHashInteraction (0.29s) +--- PASS: TestClientTUFAddByHashInteraction (0.19s) === RUN TestClientDelegationsInteraction -time="2025-10-18T21:04:26-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-10-18T21:04:26-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.63s) +time="2026-11-22T05:31:01+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-11-22T05:31:01+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.47s) === RUN TestClientDelegationsPublishing ---- PASS: TestClientDelegationsPublishing (1.24s) +--- PASS: TestClientDelegationsPublishing (0.52s) === RUN TestClientKeyGenerationRotation ---- PASS: TestClientKeyGenerationRotation (8.58s) +--- PASS: TestClientKeyGenerationRotation (0.44s) === RUN TestKeyRotation ---- PASS: TestKeyRotation (0.08s) +--- PASS: TestKeyRotation (0.06s) === RUN TestKeyRotationNonRoot ---- PASS: TestKeyRotationNonRoot (0.13s) +--- PASS: TestKeyRotationNonRoot (0.09s) === RUN TestDefaultRootKeyGeneration --- PASS: TestDefaultRootKeyGeneration (0.00s) === RUN TestLogLevelFlags --- PASS: TestLogLevelFlags (0.00s) === RUN TestClientKeyPassphraseChange ---- PASS: TestClientKeyPassphraseChange (0.11s) +--- PASS: TestClientKeyPassphraseChange (0.09s) === RUN TestPurgeSingleKey Removal of the following keys from all delegations in gun staged for next publish: - - fc25b2ebc9445f68dbae3cf43958d508a74a0b243ad61ef90ed8d8f47b15f88f ---- PASS: TestPurgeSingleKey (0.12s) + - 0a36fbb7751031162378714a02cff21b26402040c9383b5fe2dbad048a40321f +--- PASS: TestPurgeSingleKey (0.07s) === RUN TestWitness -time="2025-10-18T21:04:37-12:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" -time="2025-10-18T21:04:37-12:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" -time="2025-10-18T21:04:37-12:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" -time="2025-10-18T21:04:38-12:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" -time="2025-10-18T21:04:38-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-10-18T21:04:38-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-10-18T21:04:39-12:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" ---- PASS: TestWitness (2.02s) +time="2026-11-22T05:31:02+14:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +time="2026-11-22T05:31:02+14:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +time="2026-11-22T05:31:03+14:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +time="2026-11-22T05:31:03+14:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +time="2026-11-22T05:31:03+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-11-22T05:31:03+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-11-22T05:31:03+14:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +--- PASS: TestWitness (0.27s) === RUN TestClientTUFInitWithAutoPublish -time="2025-10-18T21:04:39-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]:36865->[::1]:53: read: connection refused" ---- PASS: TestClientTUFInitWithAutoPublish (2.02s) +time="2026-11-22T05:31:03+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]:39806->[::1]:53: read: connection refused" +--- PASS: TestClientTUFInitWithAutoPublish (0.06s) === RUN TestClientTUFAddWithAutoPublish -time="2025-10-18T21:04:42-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]:53179->[::1]:53: read: connection refused" -time="2025-10-18T21:04:42-12:00" level=error msg="Could not publish Repository since we could not update: client is offline" -time="2025-10-18T21:04:42-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]:43820->[::1]:53: read: connection refused" -time="2025-10-18T21:04:43-12:00" level=error msg="Could not publish Repository since we could not update: client is offline" ---- PASS: TestClientTUFAddWithAutoPublish (2.33s) +time="2026-11-22T05:31:03+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]:40312->[::1]:53: read: connection refused" +time="2026-11-22T05:31:03+14:00" level=error msg="Could not publish Repository since we could not update: client is offline" +time="2026-11-22T05:31:03+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]:57576->[::1]:53: read: connection refused" +time="2026-11-22T05:31:03+14:00" level=error msg="Could not publish Repository since we could not update: client is offline" +--- PASS: TestClientTUFAddWithAutoPublish (0.07s) === RUN TestClientTUFRemoveWithAutoPublish ---- PASS: TestClientTUFRemoveWithAutoPublish (0.35s) +--- PASS: TestClientTUFRemoveWithAutoPublish (0.12s) === RUN TestClientDelegationAddWithAutoPublish ---- PASS: TestClientDelegationAddWithAutoPublish (1.41s) +--- PASS: TestClientDelegationAddWithAutoPublish (0.06s) === RUN TestClientDelegationRemoveWithAutoPublish -time="2025-10-18T21:04:47-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-10-18T21:04:47-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 (2.09s) +time="2026-11-22T05:31:03+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-11-22T05:31:03+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.12s) === RUN TestClientTUFAddByHashWithAutoPublish ---- PASS: TestClientTUFAddByHashWithAutoPublish (0.09s) +--- PASS: TestClientTUFAddByHashWithAutoPublish (0.06s) === RUN TestClientKeyImport -time="2025-10-18T21:04:47-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-10-18T21:04:47-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.03s) +time="2026-11-22T05:31:03+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-11-22T05:31:03+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.02s) === RUN TestAddDelImportKeyPublishFlow -time="2025-10-18T21:04:47-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.23s) +time="2026-11-22T05:31:03+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.13s) === RUN TestExportImportFlow --- PASS: TestExportImportFlow (0.05s) === RUN TestDelegationKeyImportExport --- PASS: TestDelegationKeyImportExport (0.00s) === RUN TestImportKeysNoYubikey ---- PASS: TestImportKeysNoYubikey (0.00s) +--- PASS: TestImportKeysNoYubikey (0.01s) === RUN TestExportImportKeysNoYubikey --- PASS: TestExportImportKeysNoYubikey (0.01s) === RUN TestRemoveIfNoKey @@ -2738,16 +2774,16 @@ === RUN TestRemoveMultikeysRemoveOnlyChosenKey --- PASS: TestRemoveMultikeysRemoveOnlyChosenKey (0.00s) === RUN TestRotateKeyInvalidRoles -time="2025-10-18T21:04:47-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]:36401->[::1]:53: read: connection refused" -time="2025-10-18T21:04:47-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]:58541->[::1]:53: read: connection refused" -time="2025-10-18T21:04:47-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]:44045->[::1]:53: read: connection refused" -time="2025-10-18T21:04:47-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]:34673->[::1]:53: read: connection refused" +time="2026-11-22T05:31:03+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]:58190->[::1]:53: read: connection refused" +time="2026-11-22T05:31:03+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]:36515->[::1]:53: read: connection refused" +time="2026-11-22T05:31:03+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]:47871->[::1]:53: read: connection refused" +time="2026-11-22T05:31:03+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]:60200->[::1]:53: read: connection refused" --- PASS: TestRotateKeyInvalidRoles (0.00s) === RUN TestRotateKeyTargetCannotBeServerManaged -time="2025-10-18T21:04:47-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]:59416->[::1]:53: read: connection refused" +time="2026-11-22T05:31:03+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]:37798->[::1]:53: read: connection refused" --- PASS: TestRotateKeyTargetCannotBeServerManaged (0.00s) === RUN TestRotateKeyTimestampCannotBeLocallyManaged -time="2025-10-18T21:04:47-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]:58721->[::1]:53: read: connection refused" +time="2026-11-22T05:31:03+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]:39139->[::1]:53: read: connection refused" --- PASS: TestRotateKeyTimestampCannotBeLocallyManaged (0.00s) === RUN TestRotateKeyNoGUN Usage: @@ -2755,13 +2791,13 @@ === RUN TestRotateKeyRemoteServerManagesKey Successfully rotated snapshot key for repository docker.com/notary Successfully rotated timestamp key for repository docker.com/notary ---- PASS: TestRotateKeyRemoteServerManagesKey (0.06s) +--- PASS: TestRotateKeyRemoteServerManagesKey (0.07s) === RUN TestRotateKeyBothKeys Successfully rotated targets key for repository docker.com/notary Successfully rotated snapshot key for repository docker.com/notary ---- PASS: TestRotateKeyBothKeys (0.09s) +--- PASS: TestRotateKeyBothKeys (0.05s) === RUN TestRotateKeyRootIsInteractive ---- PASS: TestRotateKeyRootIsInteractive (0.02s) +--- PASS: TestRotateKeyRootIsInteractive (0.01s) === RUN TestChangeKeyPassphraseInvalidID --- PASS: TestChangeKeyPassphraseInvalidID (0.00s) === RUN TestChangeKeyPassphraseInvalidNumArgs @@ -2780,8 +2816,8 @@ === RUN TestImportKeysNonexistentFile --- PASS: TestImportKeysNonexistentFile (0.00s) === RUN TestKeyGeneration -time="2025-10-18T21:04:48-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: TestKeyGeneration (0.00s) +time="2026-11-22T05:31:03+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) === RUN TestRemoteServerDefault @@ -2793,17 +2829,17 @@ === RUN TestInvalidAddHashCommands --- PASS: TestInvalidAddHashCommands (0.00s) === RUN TestConfigParsingErrorsPropagatedByCommands ---- PASS: TestConfigParsingErrorsPropagatedByCommands (0.01s) +--- PASS: TestConfigParsingErrorsPropagatedByCommands (0.00s) === RUN TestInsufficientArgumentsReturnsErrorAndPrintsUsage --- PASS: TestInsufficientArgumentsReturnsErrorAndPrintsUsage (0.00s) === RUN TestBareCommandPrintsUsageAndNoError --- PASS: TestBareCommandPrintsUsageAndNoError (0.00s) === RUN TestConfigFileTLSCannotBeRelativeToCWD ---- PASS: TestConfigFileTLSCannotBeRelativeToCWD (0.00s) +--- PASS: TestConfigFileTLSCannotBeRelativeToCWD (0.01s) === RUN TestConfigFileTLSCanBeRelativeToConfigOrAbsolute ---- PASS: TestConfigFileTLSCanBeRelativeToConfigOrAbsolute (0.05s) +--- PASS: TestConfigFileTLSCanBeRelativeToConfigOrAbsolute (0.04s) === RUN TestConfigFileOverridenByCmdLineFlags ---- PASS: TestConfigFileOverridenByCmdLineFlags (0.05s) +--- PASS: TestConfigFileOverridenByCmdLineFlags (0.03s) === RUN TestConfigFileTrustPinning --- PASS: TestConfigFileTrustPinning (0.00s) === RUN TestPassphraseRetrieverCaching @@ -2817,7 +2853,7 @@ === RUN TestPrettyPrintZeroKeys --- PASS: TestPrettyPrintZeroKeys (0.00s) === RUN TestPrettyPrintRootAndSigningKeys ---- PASS: TestPrettyPrintRootAndSigningKeys (0.02s) +--- PASS: TestPrettyPrintRootAndSigningKeys (0.01s) === RUN TestPrettyPrintZeroTargets --- PASS: TestPrettyPrintZeroTargets (0.00s) === RUN TestPrettyPrintSortedTargets @@ -2829,10 +2865,10 @@ === RUN TestImportRootCert --- PASS: TestImportRootCert (0.00s) === RUN TestTokenAuth -time="2025-10-18T21:04:48-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-11-22T05:31:04+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-10-18T21:04:48-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-11-22T05:31:04+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) @@ -2843,18 +2879,18 @@ === RUN TestAdminTokenAuth401Status --- PASS: TestAdminTokenAuth401Status (0.00s) === RUN TestTokenAuthNon200Non401Status -time="2025-10-18T21:04:48-12:00" level=error msg="could not reach http://127.0.0.1:37473: 404" +time="2026-11-22T05:31:04+14:00" level=error msg="could not reach http://127.0.0.1:34213: 404" --- PASS: TestTokenAuthNon200Non401Status (0.00s) === RUN TestAdminTokenAuthNon200Non401Status -time="2025-10-18T21:04:48-12:00" level=error msg="could not reach http://127.0.0.1:40367: 404" +time="2026-11-22T05:31:04+14:00" level=error msg="could not reach http://127.0.0.1:33171: 404" --- PASS: TestAdminTokenAuthNon200Non401Status (0.00s) === RUN TestConfigureRepo --- PASS: TestConfigureRepo (0.00s) === RUN TestConfigureRepoRW -Enter username: time="2025-10-18T21:04:48-12:00" level=error msg="error processing username input: EOF" +Enter username: time="2026-11-22T05:31:04+14:00" level=error msg="error processing username input: EOF" --- PASS: TestConfigureRepoRW (0.00s) === RUN TestConfigureRepoAdmin -Enter username: time="2025-10-18T21:04:48-12:00" level=error msg="error processing username input: EOF" +Enter username: time="2026-11-22T05:31:04+14:00" level=error msg="error processing username input: EOF" --- PASS: TestConfigureRepoAdmin (0.00s) === RUN TestStatusUnstageAndReset Successfully reset specified changes for repository gun @@ -2867,11 +2903,11 @@ Pushing changes to gun --- PASS: TestGetTrustPinningErrors (0.00s) === RUN TestPasswordStore -Enter username: time="2025-10-18T21:04:48-12:00" level=error msg="error processing username input: EOF" +Enter username: time="2026-11-22T05:31:04+14:00" level=error msg="error processing username input: EOF" --- PASS: TestPasswordStore (0.00s) === RUN TestPasswordStoreWithEnvvar -time="2025-10-18T21:04:48-12:00" level=error msg="Authentication string with zero-length username" -time="2025-10-18T21:04:48-12:00" level=error msg="Could not base64-decode authentication string" +time="2026-11-22T05:31:04+14:00" level=error msg="Authentication string with zero-length username" +time="2026-11-22T05:31:04+14:00" level=error msg="Could not base64-decode authentication string" --- PASS: TestPasswordStoreWithEnvvar (0.00s) === RUN TestGetPayload --- PASS: TestGetPayload (0.00s) @@ -2880,7 +2916,7 @@ === RUN TestHomeExpand --- PASS: TestHomeExpand (0.00s) PASS -ok github.com/theupdateframework/notary/cmd/notary 22.663s +ok github.com/theupdateframework/notary/cmd/notary 3.485s === RUN TestBootstrap --- PASS: TestBootstrap (0.00s) === RUN TestGetAddrAndTLSConfigInvalidTLS @@ -2896,46 +2932,46 @@ === RUN TestGetInvalidTrustService --- PASS: TestGetInvalidTrustService (0.00s) === RUN TestGetLocalTrustService -time="2025-10-18T21:04:27-12:00" level=info msg="Using local signing service, which requires ED25519. Ignoring all other trust_service parameters, including keyAlgorithm" +time="2026-11-22T05:31:01+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-10-18T21:04:27-12:00" level=info msg="Using remote signing service" +time="2026-11-22T05:31:01+14:00" level=info msg="Using remote signing service" --- PASS: TestGetTrustServiceNoTLSConfig (0.00s) === RUN TestGetTrustServiceTLSSuccess -time="2025-10-18T21:04:27-12:00" level=info msg="Using remote signing service" +time="2026-11-22T05:31:01+14:00" level=info msg="Using remote signing service" --- PASS: TestGetTrustServiceTLSSuccess (0.00s) === RUN TestGetTrustServiceTLSFailure --- PASS: TestGetTrustServiceTLSFailure (0.00s) === RUN TestGetStoreInvalid -time="2025-10-18T21:04:27-12:00" level=info msg="Using asdf backend" +time="2026-11-22T05:31:01+14:00" level=info msg="Using asdf backend" --- PASS: TestGetStoreInvalid (0.00s) === RUN TestGetStoreDBStore -time="2025-10-18T21:04:27-12:00" level=info msg="Using sqlite3 backend" +time="2026-11-22T05:31:01+14:00" level=info msg="Using sqlite3 backend" --- PASS: TestGetStoreDBStore (0.00s) === RUN TestGetStoreRethinkDBStoreConnectionFails -time="2025-10-18T21:04:27-12:00" level=info msg="Using rethinkdb backend" +time="2026-11-22T05:31:01+14:00" level=info msg="Using rethinkdb backend" --- PASS: TestGetStoreRethinkDBStoreConnectionFails (0.00s) === RUN TestGetMemoryStore -time="2025-10-18T21:04:27-12:00" level=info msg="Using memory backend" +time="2026-11-22T05:31:01+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-10-18T21:04:27-12:00" level=info msg="Using remote signing service" -time="2025-10-18T21:04:27-12:00" level=info msg="Using sqlite3 backend" +time="2026-11-22T05:31:01+14:00" level=info msg="Using remote signing service" +time="2026-11-22T05:31:01+14:00" level=info msg="Using sqlite3 backend" --- PASS: TestSampleConfig (0.00s) PASS -ok github.com/theupdateframework/notary/cmd/notary-server 0.134s +ok github.com/theupdateframework/notary/cmd/notary-server 0.084s === RUN TestGetAddrAndTLSConfigInvalidTLS --- PASS: TestGetAddrAndTLSConfigInvalidTLS (0.00s) === RUN TestGetAddrAndTLSConfigNoGRPCAddr ---- PASS: TestGetAddrAndTLSConfigNoGRPCAddr (0.01s) +--- PASS: TestGetAddrAndTLSConfigNoGRPCAddr (0.00s) === RUN TestGetAddrAndTLSConfigSuccess --- PASS: TestGetAddrAndTLSConfigSuccess (0.00s) === RUN TestSetupCryptoServicesDBStoreNoDefaultAlias @@ -2964,17 +3000,17 @@ === RUN TestSampleConfig --- PASS: TestSampleConfig (0.00s) PASS -ok github.com/theupdateframework/notary/cmd/notary-signer 0.118s +ok github.com/theupdateframework/notary/cmd/notary-signer 0.093s === RUN TestGenerateCertificate --- PASS: TestGenerateCertificate (0.00s) === RUN TestCryptoServiceWithNonEmptyGUN ---- PASS: TestCryptoServiceWithNonEmptyGUN (2.42s) +--- PASS: TestCryptoServiceWithNonEmptyGUN (0.20s) === RUN TestCryptoServiceWithEmptyGUN ---- PASS: TestCryptoServiceWithEmptyGUN (0.59s) +--- PASS: TestCryptoServiceWithEmptyGUN (0.20s) === RUN TestCryptoSignerInterfaceBehavior --- PASS: TestCryptoSignerInterfaceBehavior (0.00s) PASS -ok github.com/theupdateframework/notary/cryptoservice 3.053s +ok github.com/theupdateframework/notary/cryptoservice 0.437s === RUN TestGetPassphraseForUsingDelegationKey --- PASS: TestGetPassphraseForUsingDelegationKey (0.00s) === RUN TestGetPassphraseLimitsShortPassphrases @@ -2990,143 +3026,143 @@ === RUN TestGetPassphrase --- PASS: TestGetPassphrase (0.00s) PASS -ok github.com/theupdateframework/notary/passphrase 0.015s +ok github.com/theupdateframework/notary/passphrase 0.023s ? 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-10-18T21:04:34-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.9 http.request.contenttype="multipart/form-data; boundary=e411cf1c966a6e7d28d8e80f02e9bb7afc884d0c51f58f1b08614bd15b0f" http.request.host="127.0.0.1:44203" http.request.id=93c7bc29-319f-4112-bfe0-11cf31b8d173 http.request.method=POST http.request.remoteaddr="127.0.0.1:47662" http.request.uri=/v2/docker.com/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 -time="2025-10-18T21:04:34-12:00" level=info msg="response completed" go.version=go1.24.9 http.request.contenttype="multipart/form-data; boundary=e411cf1c966a6e7d28d8e80f02e9bb7afc884d0c51f58f1b08614bd15b0f" http.request.host="127.0.0.1:44203" http.request.id=93c7bc29-319f-4112-bfe0-11cf31b8d173 http.request.method=POST http.request.remoteaddr="127.0.0.1:47662" 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=2.589696ms http.response.status=400 http.response.written=260 ---- PASS: TestValidationErrorFormat (0.02s) +time="2026-11-22T05:31:01+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.9 http.request.contenttype="multipart/form-data; boundary=a39c5d8fcb25bba5dccc7231b52ccce7e611a0533f4ff15966d3999c3856" http.request.host="127.0.0.1:45293" http.request.id=71b3fc6b-80ef-476e-853e-0add69ac4d52 http.request.method=POST http.request.remoteaddr="127.0.0.1:34842" http.request.uri=/v2/docker.com/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 +time="2026-11-22T05:31:01+14:00" level=info msg="response completed" go.version=go1.24.9 http.request.contenttype="multipart/form-data; boundary=a39c5d8fcb25bba5dccc7231b52ccce7e611a0533f4ff15966d3999c3856" http.request.host="127.0.0.1:45293" http.request.id=71b3fc6b-80ef-476e-853e-0add69ac4d52 http.request.method=POST http.request.remoteaddr="127.0.0.1:34842" 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=2.9294ms http.response.status=400 http.response.written=260 +--- PASS: TestValidationErrorFormat (0.01s) === RUN TestRunBadAddr --- PASS: TestRunBadAddr (0.00s) === RUN TestRepoPrefixMatches -time="2025-10-18T21:04:34-12:00" level=info msg="updated docker.io/notary to timestamp version 1, checksum 2f2bbd62abf7ec50783b07d4bae0623699dead43b4065cc1e3787becd34ad5cc" docker.io/notary=gun go.version=go1.24.9 http.request.contenttype="multipart/form-data; boundary=f628f95e7ae72f8000f6734f228669b196c5744a31e75e9a5c3edf896560" http.request.host="127.0.0.1:37169" http.request.id=39368859-62a7-47d6-98f5-41ef25593dd2 http.request.method=POST http.request.remoteaddr="127.0.0.1:44096" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 -time="2025-10-18T21:04:34-12:00" level=info msg="response completed" go.version=go1.24.9 http.request.contenttype="multipart/form-data; boundary=f628f95e7ae72f8000f6734f228669b196c5744a31e75e9a5c3edf896560" http.request.host="127.0.0.1:37169" http.request.id=39368859-62a7-47d6-98f5-41ef25593dd2 http.request.method=POST http.request.remoteaddr="127.0.0.1:44096" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.duration=2.020693ms http.response.status=0 http.response.written=0 -time="2025-10-18T21:04:34-12:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:37169" http.request.id=6b07d71b-e30e-40f1-a606-ca79521aa7e4 http.request.method=GET http.request.remoteaddr="127.0.0.1:44096" http.request.uri=/v2/docker.io/notary/_trust/tuf/snapshot.json http.request.useragent=Go-http-client/1.1 http.response.duration="281.682µs" http.response.status=200 http.response.written=686 -time="2025-10-18T21:04:34-12:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:37169" http.request.id=cb7de051-934e-4159-b040-cae0227e5501 http.request.method=GET http.request.remoteaddr="127.0.0.1:44096" http.request.uri=/v2/docker.io/notary/_trust/tuf/snapshot.a2d19209ba40c795ae9f20b23a78c025376f139211c23a70330de20d9fdfc7a7.json http.request.useragent=Go-http-client/1.1 http.response.duration="52.161µs" http.response.status=200 http.response.written=686 -time="2025-10-18T21:04:34-12:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:37169" http.request.id=5dd288e2-9b01-4874-b405-9d95dfea80e4 http.request.method=GET http.request.remoteaddr="127.0.0.1:44096" http.request.uri=/v2/docker.io/notary/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration="253.202µs" http.response.status=200 http.response.written=181 -time="2025-10-18T21:04:34-12:00" level=info msg="trust data deleted for docker.io/notary" docker.io/notary=gun go.version=go1.24.9 http.request.host="127.0.0.1:37169" http.request.id=975f5fd2-cde0-41a9-a81c-b4aa0251eab6 http.request.method=DELETE http.request.remoteaddr="127.0.0.1:44096" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 -time="2025-10-18T21:04:34-12:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:37169" http.request.id=975f5fd2-cde0-41a9-a81c-b4aa0251eab6 http.request.method=DELETE http.request.remoteaddr="127.0.0.1:44096" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.duration="26.92µs" http.response.status=0 http.response.written=0 ---- PASS: TestRepoPrefixMatches (0.01s) +time="2026-11-22T05:31:01+14:00" level=info msg="updated docker.io/notary to timestamp version 1, checksum 30a61a8e70d730b227345569f96767c5a553881694887d9a92de119ab684aee2" docker.io/notary=gun go.version=go1.24.9 http.request.contenttype="multipart/form-data; boundary=0d16c2daf8f56c32d3d8459a707ea9db611e5d01deada7832e41f475e115" http.request.host="127.0.0.1:36817" http.request.id=3dd75542-780f-4c15-8cf8-aff91487b4c3 http.request.method=POST http.request.remoteaddr="127.0.0.1:58728" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 +time="2026-11-22T05:31:01+14:00" level=info msg="response completed" go.version=go1.24.9 http.request.contenttype="multipart/form-data; boundary=0d16c2daf8f56c32d3d8459a707ea9db611e5d01deada7832e41f475e115" http.request.host="127.0.0.1:36817" http.request.id=3dd75542-780f-4c15-8cf8-aff91487b4c3 http.request.method=POST http.request.remoteaddr="127.0.0.1:58728" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.duration=2.12584ms http.response.status=0 http.response.written=0 +time="2026-11-22T05:31:01+14:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:36817" http.request.id=00467bad-9451-41ef-8def-9be7735e8636 http.request.method=GET http.request.remoteaddr="127.0.0.1:58728" http.request.uri=/v2/docker.io/notary/_trust/tuf/snapshot.json http.request.useragent=Go-http-client/1.1 http.response.duration="314.52µs" http.response.status=200 http.response.written=688 +time="2026-11-22T05:31:01+14:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:36817" http.request.id=1e1abeaa-004a-41b9-bb29-ee1d3b75af10 http.request.method=GET http.request.remoteaddr="127.0.0.1:58728" http.request.uri=/v2/docker.io/notary/_trust/tuf/snapshot.e809212ec6f85f4dca34a86438d237d768a5085541b84c0a18225e2bef07625e.json http.request.useragent=Go-http-client/1.1 http.response.duration="18.96µs" http.response.status=200 http.response.written=688 +time="2026-11-22T05:31:01+14:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:36817" http.request.id=60425b8d-7f9a-446a-9853-d5ed9dbcbe97 http.request.method=GET http.request.remoteaddr="127.0.0.1:58728" http.request.uri=/v2/docker.io/notary/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration="242.08µs" http.response.status=200 http.response.written=181 +time="2026-11-22T05:31:01+14:00" level=info msg="trust data deleted for docker.io/notary" docker.io/notary=gun go.version=go1.24.9 http.request.host="127.0.0.1:36817" http.request.id=e502dcfa-15c5-49d3-b937-46e7818228a0 http.request.method=DELETE http.request.remoteaddr="127.0.0.1:58728" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 +time="2026-11-22T05:31:01+14:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:36817" http.request.id=e502dcfa-15c5-49d3-b937-46e7818228a0 http.request.method=DELETE http.request.remoteaddr="127.0.0.1:58728" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.duration="34.88µs" http.response.status=0 http.response.written=0 +--- PASS: TestRepoPrefixMatches (0.02s) === RUN TestRepoPrefixDoesNotMatch ---- PASS: TestRepoPrefixDoesNotMatch (0.53s) +--- PASS: TestRepoPrefixDoesNotMatch (0.01s) === RUN TestMetricsEndpoint ---- PASS: TestMetricsEndpoint (1.34s) +--- PASS: TestMetricsEndpoint (0.00s) === RUN TestGetKeysEndpoint -time="2025-10-18T21:04:36-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.9 http.request.host="127.0.0.1:45295" http.request.id=dc5f2417-2e3e-406a-99ff-b8b7e9fef3e8 http.request.method=GET http.request.remoteaddr="127.0.0.1:51336" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 -time="2025-10-18T21:04:36-12:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:45295" http.request.id=dc5f2417-2e3e-406a-99ff-b8b7e9fef3e8 http.request.method=GET http.request.remoteaddr="127.0.0.1:51336" 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="191.521µs" http.response.status=404 http.response.written=104 -time="2025-10-18T21:04:36-12:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:45295" http.request.id=2e074b9d-4347-4df0-8bcc-63cbb6519024 http.request.method=GET http.request.remoteaddr="127.0.0.1:51338" http.request.uri=/v2/gun/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration=12.613682ms http.response.status=200 http.response.written=103 -time="2025-10-18T21:04:36-12:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:45295" http.request.id=297c7dcb-b7a5-4dd9-9351-949ed6ec3e79 http.request.method=GET http.request.remoteaddr="127.0.0.1:51340" http.request.uri=/v2/gun/_trust/tuf/snapshot.key http.request.useragent=Go-http-client/1.1 http.response.duration="211.842µs" http.response.status=200 http.response.written=103 -time="2025-10-18T21:04:36-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.9 http.request.host="127.0.0.1:45295" http.request.id=43e6a634-ceaa-4416-a43a-003dafa7a243 http.request.method=GET http.request.remoteaddr="127.0.0.1:51354" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 -time="2025-10-18T21:04:36-12:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:45295" http.request.id=43e6a634-ceaa-4416-a43a-003dafa7a243 http.request.method=GET http.request.remoteaddr="127.0.0.1:51354" 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="152.361µs" http.response.status=404 http.response.written=104 -time="2025-10-18T21:04:36-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.9 http.request.host="127.0.0.1:45295" http.request.id=d3c2fe69-bc28-4c35-9a10-fc63f9eea940 http.request.method=GET http.request.remoteaddr="127.0.0.1:51358" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 -time="2025-10-18T21:04:36-12:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:45295" http.request.id=d3c2fe69-bc28-4c35-9a10-fc63f9eea940 http.request.method=GET http.request.remoteaddr="127.0.0.1:51358" 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="106.84µs" http.response.status=404 http.response.written=104 ---- PASS: TestGetKeysEndpoint (0.02s) +time="2026-11-22T05:31:01+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.9 http.request.host="127.0.0.1:38877" http.request.id=0216a612-efaf-4b3c-b827-765a78dd9d9e http.request.method=GET http.request.remoteaddr="127.0.0.1:57566" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 +time="2026-11-22T05:31:01+14:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:38877" http.request.id=0216a612-efaf-4b3c-b827-765a78dd9d9e http.request.method=GET http.request.remoteaddr="127.0.0.1:57566" 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="100.24µs" http.response.status=404 http.response.written=104 +time="2026-11-22T05:31:01+14:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:38877" http.request.id=e1566332-6b51-4b03-876a-7bdf8d80124c http.request.method=GET http.request.remoteaddr="127.0.0.1:57572" http.request.uri=/v2/gun/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration=4.51048ms http.response.status=200 http.response.written=103 +time="2026-11-22T05:31:01+14:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:38877" http.request.id=ee41f8e8-eca7-47f2-8de0-26de56478bb5 http.request.method=GET http.request.remoteaddr="127.0.0.1:57578" http.request.uri=/v2/gun/_trust/tuf/snapshot.key http.request.useragent=Go-http-client/1.1 http.response.duration="149.68µs" http.response.status=200 http.response.written=103 +time="2026-11-22T05:31:01+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.9 http.request.host="127.0.0.1:38877" http.request.id=193285e6-ad92-48f0-83be-35b825217d45 http.request.method=GET http.request.remoteaddr="127.0.0.1:57586" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 +time="2026-11-22T05:31:01+14:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:38877" http.request.id=193285e6-ad92-48f0-83be-35b825217d45 http.request.method=GET http.request.remoteaddr="127.0.0.1:57586" 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="142.76µs" http.response.status=404 http.response.written=104 +time="2026-11-22T05:31:01+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.9 http.request.host="127.0.0.1:38877" http.request.id=e29c48f7-994d-485a-84ff-46958371c80f http.request.method=GET http.request.remoteaddr="127.0.0.1:57590" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 +time="2026-11-22T05:31:01+14:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:38877" http.request.id=e29c48f7-994d-485a-84ff-46958371c80f http.request.method=GET http.request.remoteaddr="127.0.0.1:57590" 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="107.88µs" http.response.status=404 http.response.written=104 +--- PASS: TestGetKeysEndpoint (0.01s) === RUN TestGetRoleByHash -time="2025-10-18T21:04:36-12:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:38751" http.request.id=c3d97660-1aaf-4f26-9c5c-16daeadbab0b http.request.method=GET http.request.remoteaddr="127.0.0.1:46322" http.request.uri=/v2/gun/_trust/tuf/timestamp.3ebde6965b8159e5aaf90b99ddfe99644b6f7bdd27ab9a615581246faa56c62d.json http.request.useragent=Go-http-client/1.1 http.response.duration="106.08µs" http.response.status=200 http.response.written=120 ---- PASS: TestGetRoleByHash (0.01s) +time="2026-11-22T05:31:01+14:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:35875" http.request.id=417cd1e7-7851-4ee7-895e-351eb0c00da8 http.request.method=GET http.request.remoteaddr="127.0.0.1:34704" http.request.uri=/v2/gun/_trust/tuf/timestamp.9d4fed89c566e2dfab4c29926365faa284e7ff7c2eecaded9f1a5426d89826a7.json http.request.useragent=Go-http-client/1.1 http.response.duration="101.76µs" http.response.status=200 http.response.written=120 +--- PASS: TestGetRoleByHash (0.00s) === RUN TestGetRoleByVersion -time="2025-10-18T21:04:36-12:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:40135" http.request.id=a13abb76-067c-4ea0-99a2-2316186e87a0 http.request.method=GET http.request.remoteaddr="127.0.0.1:34852" http.request.uri=/v2/gun/_trust/tuf/1.timestamp.json http.request.useragent=Go-http-client/1.1 http.response.duration="136.201µs" http.response.status=200 http.response.written=120 ---- PASS: TestGetRoleByVersion (0.36s) +time="2026-11-22T05:31:01+14:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:43097" http.request.id=7ddecd1b-e223-4fb8-8e8d-2b0cd7c09eb2 http.request.method=GET http.request.remoteaddr="127.0.0.1:60630" http.request.uri=/v2/gun/_trust/tuf/1.timestamp.json http.request.useragent=Go-http-client/1.1 http.response.duration="61.44µs" http.response.status=200 http.response.written=120 +--- PASS: TestGetRoleByVersion (0.00s) === RUN TestGetCurrentRole -time="2025-10-18T21:04:36-12:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:45873" http.request.id=0fdbfc75-3d26-4854-bd3c-7498da9a715a http.request.method=GET http.request.remoteaddr="127.0.0.1:58202" http.request.uri=/v2/gun/_trust/tuf/timestamp.json http.request.useragent=Go-http-client/1.1 http.response.duration="347.523µs" http.response.status=200 http.response.written=500 ---- PASS: TestGetCurrentRole (0.04s) +time="2026-11-22T05:31:01+14:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:45225" http.request.id=b698ea16-ddf7-48aa-bb48-f981457aebd6 http.request.method=GET http.request.remoteaddr="127.0.0.1:37394" http.request.uri=/v2/gun/_trust/tuf/timestamp.json http.request.useragent=Go-http-client/1.1 http.response.duration="422.56µs" http.response.status=200 http.response.written=500 +--- PASS: TestGetCurrentRole (0.01s) === RUN TestRotateKeyEndpoint -time="2025-10-18T21:04:36-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.9 http.request.contenttype=text/plain http.request.host="127.0.0.1:42977" http.request.id=a9b61e0a-7fc2-4fb6-b00f-3ced3b642f9b http.request.method=POST http.request.remoteaddr="127.0.0.1:33090" http.request.uri=/v2/gun/_trust/tuf/targets/delegation.key http.request.useragent=Go-http-client/1.1 -time="2025-10-18T21:04:36-12:00" level=info msg="response completed" go.version=go1.24.9 http.request.contenttype=text/plain http.request.host="127.0.0.1:42977" http.request.id=a9b61e0a-7fc2-4fb6-b00f-3ced3b642f9b http.request.method=POST http.request.remoteaddr="127.0.0.1:33090" 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="118.281µs" http.response.status=404 http.response.written=104 -time="2025-10-18T21:04:36-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.9 http.request.contenttype=text/plain http.request.host="127.0.0.1:42977" http.request.id=6141fcc5-0c50-49f7-b8f3-6644d80ddf77 http.request.method=POST http.request.remoteaddr="127.0.0.1:33098" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 -time="2025-10-18T21:04:36-12:00" level=info msg="response completed" go.version=go1.24.9 http.request.contenttype=text/plain http.request.host="127.0.0.1:42977" http.request.id=6141fcc5-0c50-49f7-b8f3-6644d80ddf77 http.request.method=POST http.request.remoteaddr="127.0.0.1:33098" 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="118.001µs" http.response.status=404 http.response.written=104 -time="2025-10-18T21:04:36-12:00" level=info msg="response completed" go.version=go1.24.9 http.request.contenttype=text/plain http.request.host="127.0.0.1:42977" http.request.id=3d61ad7e-87df-45d4-8c32-3d585577e4c4 http.request.method=POST http.request.remoteaddr="127.0.0.1:33112" http.request.uri=/v2/gun/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration="201.721µs" http.response.status=200 http.response.written=103 -time="2025-10-18T21:04:36-12:00" level=info msg="response completed" go.version=go1.24.9 http.request.contenttype=text/plain http.request.host="127.0.0.1:42977" http.request.id=9c829ad5-9c9e-4b2e-ba9a-edbcbd872daa http.request.method=POST http.request.remoteaddr="127.0.0.1:33114" http.request.uri=/v2/gun/_trust/tuf/snapshot.key http.request.useragent=Go-http-client/1.1 http.response.duration="121.041µs" http.response.status=200 http.response.written=103 -time="2025-10-18T21:04:36-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.9 http.request.contenttype=text/plain http.request.host="127.0.0.1:42977" http.request.id=8ec4f64f-90eb-4aa9-825e-3ee2c5011485 http.request.method=POST http.request.remoteaddr="127.0.0.1:33116" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 -time="2025-10-18T21:04:36-12:00" level=info msg="response completed" go.version=go1.24.9 http.request.contenttype=text/plain http.request.host="127.0.0.1:42977" http.request.id=8ec4f64f-90eb-4aa9-825e-3ee2c5011485 http.request.method=POST http.request.remoteaddr="127.0.0.1:33116" 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="65.64µs" http.response.status=404 http.response.written=104 -time="2025-10-18T21:04:36-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.9 http.request.contenttype=text/plain http.request.host="127.0.0.1:42977" http.request.id=579a45bc-c335-4d6a-bf50-2de80d36c89b http.request.method=POST http.request.remoteaddr="127.0.0.1:33124" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 -time="2025-10-18T21:04:36-12:00" level=info msg="response completed" go.version=go1.24.9 http.request.contenttype=text/plain http.request.host="127.0.0.1:42977" http.request.id=579a45bc-c335-4d6a-bf50-2de80d36c89b http.request.method=POST http.request.remoteaddr="127.0.0.1:33124" 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="46.08µs" http.response.status=404 http.response.written=104 ---- PASS: TestRotateKeyEndpoint (0.03s) +time="2026-11-22T05:31:01+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.9 http.request.contenttype=text/plain http.request.host="127.0.0.1:36127" http.request.id=d165e8c0-cdc9-4f1b-8ae2-fabc8b3467d3 http.request.method=POST http.request.remoteaddr="127.0.0.1:45126" http.request.uri=/v2/gun/_trust/tuf/targets/delegation.key http.request.useragent=Go-http-client/1.1 +time="2026-11-22T05:31:01+14:00" level=info msg="response completed" go.version=go1.24.9 http.request.contenttype=text/plain http.request.host="127.0.0.1:36127" http.request.id=d165e8c0-cdc9-4f1b-8ae2-fabc8b3467d3 http.request.method=POST http.request.remoteaddr="127.0.0.1:45126" 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="111.4µs" http.response.status=404 http.response.written=104 +time="2026-11-22T05:31:01+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.9 http.request.contenttype=text/plain http.request.host="127.0.0.1:36127" http.request.id=b3a454e5-a193-453e-98cb-95ff9949fbd9 http.request.method=POST http.request.remoteaddr="127.0.0.1:45140" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 +time="2026-11-22T05:31:01+14:00" level=info msg="response completed" go.version=go1.24.9 http.request.contenttype=text/plain http.request.host="127.0.0.1:36127" http.request.id=b3a454e5-a193-453e-98cb-95ff9949fbd9 http.request.method=POST http.request.remoteaddr="127.0.0.1:45140" 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="146.92µs" http.response.status=404 http.response.written=104 +time="2026-11-22T05:31:01+14:00" level=info msg="response completed" go.version=go1.24.9 http.request.contenttype=text/plain http.request.host="127.0.0.1:36127" http.request.id=1b242bdb-8dd7-4cbd-8256-675323f5a1ff http.request.method=POST http.request.remoteaddr="127.0.0.1:45144" http.request.uri=/v2/gun/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration="174.72µs" http.response.status=200 http.response.written=103 +time="2026-11-22T05:31:01+14:00" level=info msg="response completed" go.version=go1.24.9 http.request.contenttype=text/plain http.request.host="127.0.0.1:36127" http.request.id=59f466bc-13c6-4f9d-ae69-750f41b3fc42 http.request.method=POST http.request.remoteaddr="127.0.0.1:45156" http.request.uri=/v2/gun/_trust/tuf/snapshot.key http.request.useragent=Go-http-client/1.1 http.response.duration="137.68µs" http.response.status=200 http.response.written=103 +time="2026-11-22T05:31:01+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.9 http.request.contenttype=text/plain http.request.host="127.0.0.1:36127" http.request.id=d1d80f3f-081b-47ae-830d-bfb3d13b2df9 http.request.method=POST http.request.remoteaddr="127.0.0.1:45168" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 +time="2026-11-22T05:31:01+14:00" level=info msg="response completed" go.version=go1.24.9 http.request.contenttype=text/plain http.request.host="127.0.0.1:36127" http.request.id=d1d80f3f-081b-47ae-830d-bfb3d13b2df9 http.request.method=POST http.request.remoteaddr="127.0.0.1:45168" 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="68.4µs" http.response.status=404 http.response.written=104 +time="2026-11-22T05:31:01+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.9 http.request.contenttype=text/plain http.request.host="127.0.0.1:36127" http.request.id=50e0c478-ed74-4f7a-88a5-90ee61eb778c http.request.method=POST http.request.remoteaddr="127.0.0.1:45184" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 +time="2026-11-22T05:31:01+14:00" level=info msg="response completed" go.version=go1.24.9 http.request.contenttype=text/plain http.request.host="127.0.0.1:36127" http.request.id=50e0c478-ed74-4f7a-88a5-90ee61eb778c http.request.method=POST http.request.remoteaddr="127.0.0.1:45184" 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="58.24µs" http.response.status=404 http.response.written=104 +--- PASS: TestRotateKeyEndpoint (0.01s) PASS -ok github.com/theupdateframework/notary/server 2.458s +ok github.com/theupdateframework/notary/server 0.147s ? github.com/theupdateframework/notary/server/errors [no test files] === RUN Test_changefeed --- PASS: Test_changefeed (0.00s) === RUN Test_checkChangefeedInputs -time="2025-10-18T21:04:48-12:00" level=error msg="500 GET unable to retrieve storage" -time="2025-10-18T21:04:48-12:00" level=error msg="400 GET invalid pageSize: not_a_number" +time="2026-11-22T05:31:01+14:00" level=error msg="500 GET unable to retrieve storage" +time="2026-11-22T05:31:01+14:00" level=error msg="400 GET invalid pageSize: not_a_number" --- PASS: Test_checkChangefeedInputs (0.00s) === RUN TestMainHandlerGet -time="2025-10-18T21:04:48-12:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:37711" http.request.id=3db584b7-328c-451d-aebe-9dbaa58d3df5 http.request.method=GET http.request.remoteaddr="127.0.0.1:52290" http.request.uri=/ http.request.useragent=Go-http-client/1.1 http.response.duration="82.28µs" http.response.status=200 http.response.written=2 +time="2026-11-22T05:31:01+14:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:45999" http.request.id=80ca9983-999d-4b2c-84a7-d2e9cc512717 http.request.method=GET http.request.remoteaddr="127.0.0.1:32888" http.request.uri=/ http.request.useragent=Go-http-client/1.1 http.response.duration="60.52µs" http.response.status=200 http.response.written=2 --- PASS: TestMainHandlerGet (0.01s) === RUN TestMainHandlerNotGet -time="2025-10-18T21:04:48-12:00" level=info msg="generic not found: You have requested a resource that does not exist.: " go.version=go1.24.9 http.request.host="127.0.0.1:39233" http.request.id=5e52c4d1-4408-4662-99cc-efae2524c172 http.request.method=HEAD http.request.remoteaddr="127.0.0.1:45786" http.request.uri=/ http.request.useragent=Go-http-client/1.1 -time="2025-10-18T21:04:48-12:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:39233" http.request.id=5e52c4d1-4408-4662-99cc-efae2524c172 http.request.method=HEAD http.request.remoteaddr="127.0.0.1:45786" http.request.uri=/ http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="189.722µs" http.response.status=404 http.response.written=105 +time="2026-11-22T05:31:01+14:00" level=info msg="generic not found: You have requested a resource that does not exist.: " go.version=go1.24.9 http.request.host="127.0.0.1:42179" http.request.id=0b78978e-2e2f-4ce3-b54e-b9e7087c34f8 http.request.method=HEAD http.request.remoteaddr="127.0.0.1:49498" http.request.uri=/ http.request.useragent=Go-http-client/1.1 +time="2026-11-22T05:31:01+14:00" level=info msg="response completed" go.version=go1.24.9 http.request.host="127.0.0.1:42179" http.request.id=0b78978e-2e2f-4ce3-b54e-b9e7087c34f8 http.request.method=HEAD http.request.remoteaddr="127.0.0.1:49498" http.request.uri=/ http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="201.36µs" http.response.status=404 http.response.written=105 --- PASS: TestMainHandlerNotGet (0.00s) === RUN TestKeyHandlersInvalidConfiguration -time="2025-10-18T21:04:48-12:00" level=error msg="500 GET storage not configured" go.version=go1.24.9 gun=gun -time="2025-10-18T21:04:48-12:00" level=error msg="500 GET storage not configured" go.version=go1.24.9 gun=gun -time="2025-10-18T21:04:48-12:00" level=error msg="500 GET crypto service not configured" go.version=go1.24.9 gun=gun -time="2025-10-18T21:04:48-12:00" level=error msg="500 GET crypto service not configured" go.version=go1.24.9 gun=gun -time="2025-10-18T21:04:48-12:00" level=error msg="500 GET key algorithm not configured" go.version=go1.24.9 gun=gun -time="2025-10-18T21:04:48-12:00" level=error msg="500 GET key algorithm not configured" go.version=go1.24.9 gun=gun -time="2025-10-18T21:04:48-12:00" level=error msg="500 POST storage not configured" go.version=go1.24.9 gun=gun -time="2025-10-18T21:04:48-12:00" level=error msg="500 POST storage not configured" go.version=go1.24.9 gun=gun -time="2025-10-18T21:04:48-12:00" level=error msg="500 POST crypto service not configured" go.version=go1.24.9 gun=gun -time="2025-10-18T21:04:48-12:00" level=error msg="500 POST crypto service not configured" go.version=go1.24.9 gun=gun -time="2025-10-18T21:04:48-12:00" level=error msg="500 POST key algorithm not configured" go.version=go1.24.9 gun=gun -time="2025-10-18T21:04:48-12:00" level=error msg="500 POST key algorithm not configured" go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=error msg="500 GET storage not configured" go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=error msg="500 GET storage not configured" go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=error msg="500 GET crypto service not configured" go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=error msg="500 GET crypto service not configured" go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=error msg="500 GET key algorithm not configured" go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=error msg="500 GET key algorithm not configured" go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=error msg="500 POST storage not configured" go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=error msg="500 POST storage not configured" go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=error msg="500 POST crypto service not configured" go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=error msg="500 POST crypto service not configured" go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=error msg="500 POST key algorithm not configured" go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=error msg="500 POST key algorithm not configured" go.version=go1.24.9 gun=gun --- PASS: TestKeyHandlersInvalidConfiguration (0.00s) === RUN TestKeyHandlersNoRoleOrRepo -time="2025-10-18T21:04:48-12:00" level=info msg="400 GET no gun in request" =gun go.version=go1.24.9 -time="2025-10-18T21:04:48-12:00" level=info msg="400 GET no gun in request" =gun go.version=go1.24.9 -time="2025-10-18T21:04:48-12:00" level=info msg="400 GET no role in request" go.version=go1.24.9 gun=gun -time="2025-10-18T21:04:48-12:00" level=info msg="400 GET no role in request" go.version=go1.24.9 gun=gun -time="2025-10-18T21:04:48-12:00" level=info msg="400 POST no gun in request" =gun go.version=go1.24.9 -time="2025-10-18T21:04:48-12:00" level=info msg="400 POST no gun in request" =gun go.version=go1.24.9 -time="2025-10-18T21:04:48-12:00" level=info msg="400 POST no role in request" go.version=go1.24.9 gun=gun -time="2025-10-18T21:04:48-12:00" level=info msg="400 POST no role in request" go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=info msg="400 GET no gun in request" =gun go.version=go1.24.9 +time="2026-11-22T05:31:01+14:00" level=info msg="400 GET no gun in request" =gun go.version=go1.24.9 +time="2026-11-22T05:31:01+14:00" level=info msg="400 GET no role in request" go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=info msg="400 GET no role in request" go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=info msg="400 POST no gun in request" =gun go.version=go1.24.9 +time="2026-11-22T05:31:01+14:00" level=info msg="400 POST no gun in request" =gun go.version=go1.24.9 +time="2026-11-22T05:31:01+14:00" level=info msg="400 POST no role in request" go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=info msg="400 POST no role in request" go.version=go1.24.9 gun=gun --- PASS: TestKeyHandlersNoRoleOrRepo (0.00s) === RUN TestKeyHandlersInvalidRole -time="2025-10-18T21:04:48-12:00" level=info msg="400 GET root key: " go.version=go1.24.9 gun=gun -time="2025-10-18T21:04:48-12:00" level=info msg="400 GET targets key: " go.version=go1.24.9 gun=gun -time="2025-10-18T21:04:48-12:00" level=info msg="400 GET targets/a key: " go.version=go1.24.9 gun=gun -time="2025-10-18T21:04:48-12:00" level=info msg="400 GET invalidrole key: " go.version=go1.24.9 gun=gun -time="2025-10-18T21:04:48-12:00" level=info msg="400 POST root key: " go.version=go1.24.9 gun=gun -time="2025-10-18T21:04:48-12:00" level=info msg="400 POST targets key: " go.version=go1.24.9 gun=gun -time="2025-10-18T21:04:48-12:00" level=info msg="400 POST targets/a key: " go.version=go1.24.9 gun=gun -time="2025-10-18T21:04:48-12:00" level=info msg="400 POST invalidrole key: " go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=info msg="400 GET root key: " go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=info msg="400 GET targets key: " go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=info msg="400 GET targets/a key: " go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=info msg="400 GET invalidrole key: " go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=info msg="400 POST root key: " go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=info msg="400 POST targets key: " go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=info msg="400 POST targets/a key: " go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=info msg="400 POST invalidrole key: " go.version=go1.24.9 gun=gun --- PASS: TestKeyHandlersInvalidRole (0.00s) === RUN TestGetKeyHandlerCreatesOnce --- PASS: TestGetKeyHandlerCreatesOnce (0.00s) === RUN TestKeyHandlersInvalidKeyAlgo -time="2025-10-18T21:04:48-12:00" level=error msg="500 GET timestamp key: only ED25519 supported by this cryptoservice" go.version=go1.24.9 gun=gun -time="2025-10-18T21:04:48-12:00" level=error msg="500 GET snapshot key: only ED25519 supported by this cryptoservice" go.version=go1.24.9 gun=gun -time="2025-10-18T21:04:48-12:00" level=error msg="500 POST timestamp key: only ED25519 supported by this cryptoservice" go.version=go1.24.9 gun=gun -time="2025-10-18T21:04:48-12:00" level=error msg="500 POST snapshot key: only ED25519 supported by this cryptoservice" go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=error msg="500 GET timestamp key: only ED25519 supported by this cryptoservice" go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=error msg="500 GET snapshot key: only ED25519 supported by this cryptoservice" go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=error msg="500 POST timestamp key: only ED25519 supported by this cryptoservice" go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=error msg="500 POST snapshot key: only ED25519 supported by this cryptoservice" go.version=go1.24.9 gun=gun --- PASS: TestKeyHandlersInvalidKeyAlgo (0.00s) === RUN TestRotateKeyHandlerSuccessfulRotation --- PASS: TestRotateKeyHandlerSuccessfulRotation (0.00s) === RUN TestGetHandlerRoot -time="2025-10-18T21:04:48-12:00" level=info msg="404 GET root role" go.version=go1.24.9 gun=gun ---- PASS: TestGetHandlerRoot (0.01s) +time="2026-11-22T05:31:01+14:00" level=info msg="404 GET root role" go.version=go1.24.9 gun=gun +--- PASS: TestGetHandlerRoot (0.00s) === RUN TestGetHandlerTimestamp ---- PASS: TestGetHandlerTimestamp (0.01s) +--- PASS: TestGetHandlerTimestamp (0.00s) === RUN TestGetHandlerSnapshot --- PASS: TestGetHandlerSnapshot (0.00s) === RUN TestGetHandler404 -time="2025-10-18T21:04:48-12:00" level=info msg="404 GET root role" go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=info msg="404 GET root role" go.version=go1.24.9 gun=gun --- PASS: TestGetHandler404 (0.00s) === RUN TestGetHandlerNilData -time="2025-10-18T21:04:48-12:00" level=info msg="404 GET root role" go.version=go1.24.9 gun=gun +time="2026-11-22T05:31:01+14:00" level=info msg="404 GET root role" go.version=go1.24.9 gun=gun --- PASS: TestGetHandlerNilData (0.00s) === RUN TestGetHandlerNoStorage -time="2025-10-18T21:04:48-12:00" level=error msg="500 GET: no storage exists" =gun go.version=go1.24.9 ---- PASS: TestGetHandlerNoStorage (0.01s) +time="2026-11-22T05:31:01+14:00" level=error msg="500 GET: no storage exists" =gun go.version=go1.24.9 +--- PASS: TestGetHandlerNoStorage (0.00s) === RUN TestAtomicUpdateValidationFailurePropagated ---- PASS: TestAtomicUpdateValidationFailurePropagated (0.01s) +--- PASS: TestAtomicUpdateValidationFailurePropagated (0.02s) === RUN TestAtomicUpdateNonValidationFailureNotPropagated -time="2025-10-18T21:04:48-12:00" level=info msg="400 POST error validating update" go.version=go1.24.9 testGUN=gun +time="2026-11-22T05:31:01+14:00" level=info msg="400 POST error validating update" go.version=go1.24.9 testGUN=gun --- PASS: TestAtomicUpdateNonValidationFailureNotPropagated (0.00s) === RUN TestAtomicUpdateVersionErrorPropagated -time="2025-10-18T21:04:48-12:00" level=info msg="400 POST old version error" go.version=go1.24.9 testGUN=gun ---- PASS: TestAtomicUpdateVersionErrorPropagated (0.02s) +time="2026-11-22T05:31:01+14:00" level=info msg="400 POST old version error" go.version=go1.24.9 testGUN=gun +--- PASS: TestAtomicUpdateVersionErrorPropagated (0.01s) === RUN TestGetMaybeServerSignedNoCrypto --- PASS: TestGetMaybeServerSignedNoCrypto (0.00s) === RUN TestGetMaybeServerSignedNoKey @@ -3134,36 +3170,36 @@ === RUN TestValidateEmptyNew --- PASS: TestValidateEmptyNew (0.01s) === RUN TestValidateRootCanContainOnlyx509KeysWithRightGun ---- PASS: TestValidateRootCanContainOnlyx509KeysWithRightGun (0.02s) +--- PASS: TestValidateRootCanContainOnlyx509KeysWithRightGun (0.01s) === RUN TestValidatePrevTimestamp --- PASS: TestValidatePrevTimestamp (0.01s) === RUN TestValidatePreviousTimestampCorrupt -time="2025-10-18T21:04:48-12:00" level=error msg="Failed to unmarshal existing timestamp for GUN docker.com/notary" +time="2026-11-22T05:31:01+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) === RUN TestValidateNoNewTargets ---- PASS: TestValidateNoNewTargets (0.01s) +--- PASS: TestValidateNoNewTargets (0.00s) === RUN TestValidateOnlySnapshot --- PASS: TestValidateOnlySnapshot (0.01s) === RUN TestValidateOldRoot --- PASS: TestValidateOldRoot (0.01s) === RUN TestValidateOldRootCorrupt ---- PASS: TestValidateOldRootCorrupt (0.01s) +--- PASS: TestValidateOldRootCorrupt (0.00s) === RUN TestValidateOldRootCorruptRootRole ---- PASS: TestValidateOldRootCorruptRootRole (0.01s) +--- PASS: TestValidateOldRootCorruptRootRole (0.00s) === RUN TestValidateRootGetCurrentRootBroken ---- PASS: TestValidateRootGetCurrentRootBroken (0.01s) +--- PASS: TestValidateRootGetCurrentRootBroken (0.00s) === RUN TestValidateRootRotationWithOldSigs ---- PASS: TestValidateRootRotationWithOldSigs (0.05s) +--- PASS: TestValidateRootRotationWithOldSigs (0.02s) === RUN TestValidateRootRotationMultipleKeysThreshold1 ---- PASS: TestValidateRootRotationMultipleKeysThreshold1 (0.02s) +--- PASS: TestValidateRootRotationMultipleKeysThreshold1 (0.01s) === RUN TestRootRotationNotSignedWithOldKeysForOldRole ---- PASS: TestRootRotationNotSignedWithOldKeysForOldRole (0.04s) +--- PASS: TestRootRotationNotSignedWithOldKeysForOldRole (0.02s) === RUN TestRootRotationVersionIncrement ---- PASS: TestRootRotationVersionIncrement (0.02s) +--- PASS: TestRootRotationVersionIncrement (0.01s) === RUN TestValidateNoRoot --- PASS: TestValidateNoRoot (0.00s) === RUN TestValidateSnapshotMissingNoSnapshotKey @@ -3173,42 +3209,42 @@ === RUN TestValidateSnapshotGenerateWithPrev --- PASS: TestValidateSnapshotGenerateWithPrev (0.01s) === RUN TestValidateSnapshotGeneratePrevCorrupt -time="2025-10-18T21:04:48-12:00" level=error msg="Failed to unmarshal existing snapshot for GUN docker.com/notary" +time="2026-11-22T05:31:01+14:00" level=error msg="Failed to unmarshal existing snapshot for GUN docker.com/notary" --- PASS: TestValidateSnapshotGeneratePrevCorrupt (0.01s) === RUN TestValidateSnapshotGenerateStoreGetCurrentSnapshotBroken ---- PASS: TestValidateSnapshotGenerateStoreGetCurrentSnapshotBroken (0.02s) +--- PASS: TestValidateSnapshotGenerateStoreGetCurrentSnapshotBroken (0.01s) === RUN TestValidateSnapshotGenerateNoTargets --- PASS: TestValidateSnapshotGenerateNoTargets (0.01s) === RUN TestValidateSnapshotGenerate --- PASS: TestValidateSnapshotGenerate (0.01s) === RUN TestValidateRootNoTimestampKey ---- PASS: TestValidateRootNoTimestampKey (0.01s) +--- PASS: TestValidateRootNoTimestampKey (0.00s) === RUN TestValidateRootInvalidTimestampKey --- PASS: TestValidateRootInvalidTimestampKey (0.00s) === RUN TestValidateRootInvalidTimestampThreshold --- PASS: TestValidateRootInvalidTimestampThreshold (0.01s) === RUN TestValidateRootInvalidZeroThreshold ---- PASS: TestValidateRootInvalidZeroThreshold (0.03s) +--- PASS: TestValidateRootInvalidZeroThreshold (0.02s) === RUN TestValidateRootRoleMissing --- PASS: TestValidateRootRoleMissing (0.00s) === RUN TestValidateTargetsRoleMissing ---- PASS: TestValidateTargetsRoleMissing (0.01s) +--- PASS: TestValidateTargetsRoleMissing (0.00s) === RUN TestValidateSnapshotRoleMissing ---- PASS: TestValidateSnapshotRoleMissing (0.01s) +--- PASS: TestValidateSnapshotRoleMissing (0.00s) === RUN TestValidateRootSigMissing --- PASS: TestValidateRootSigMissing (0.00s) === RUN TestValidateTargetsSigMissing -time="2025-10-18T21:04:48-12:00" level=error msg="ErrBadTargets: tuf: data has no signatures" ---- PASS: TestValidateTargetsSigMissing (0.01s) +time="2026-11-22T05:31:01+14:00" level=error msg="ErrBadTargets: tuf: data has no signatures" +--- PASS: TestValidateTargetsSigMissing (0.00s) === RUN TestValidateSnapshotSigMissing --- PASS: TestValidateSnapshotSigMissing (0.01s) === RUN TestValidateRootCorrupt --- PASS: TestValidateRootCorrupt (0.00s) === RUN TestValidateTargetsCorrupt -time="2025-10-18T21:04:48-12:00" level=error msg="ErrBadTargets: invalid character '\\u0084' looking for beginning of value" ---- PASS: TestValidateTargetsCorrupt (0.00s) +time="2026-11-22T05:31:01+14:00" level=error msg="ErrBadTargets: invalid character '\\u0084' looking for beginning of value" +--- PASS: TestValidateTargetsCorrupt (0.01s) === RUN TestValidateSnapshotCorrupt ---- PASS: TestValidateSnapshotCorrupt (0.01s) +--- PASS: TestValidateSnapshotCorrupt (0.00s) === RUN TestValidateRootModifiedSize --- PASS: TestValidateRootModifiedSize (0.00s) === RUN TestValidateTargetsModifiedSize @@ -3220,51 +3256,51 @@ === RUN TestGenerateSnapshotRootNotLoaded --- PASS: TestGenerateSnapshotRootNotLoaded (0.00s) === RUN TestGenerateSnapshotNoKey ---- PASS: TestGenerateSnapshotNoKey (0.01s) +--- PASS: TestGenerateSnapshotNoKey (0.00s) === RUN TestLoadTargetsLoadsNothingIfNoUpdates ---- PASS: TestLoadTargetsLoadsNothingIfNoUpdates (0.01s) +--- PASS: TestLoadTargetsLoadsNothingIfNoUpdates (0.00s) === RUN TestValidateTargetsRequiresStoredParent -time="2025-10-18T21:04:48-12:00" level=error msg="ErrBadTargets: targets must be loaded first" +time="2026-11-22T05:31:01+14:00" level=error msg="ErrBadTargets: targets must be loaded first" --- PASS: TestValidateTargetsRequiresStoredParent (0.01s) === RUN TestValidateTargetsParentInUpdate -time="2025-10-18T21:04:48-12:00" level=error msg="ErrBadTargets: invalid character 'I' looking for beginning of value" +time="2026-11-22T05:31:01+14:00" level=error msg="ErrBadTargets: invalid character 'I' looking for beginning of value" --- PASS: TestValidateTargetsParentInUpdate (0.01s) === RUN TestValidateTargetsRoleNotInParent -time="2025-10-18T21:04:48-12:00" level=error msg="ErrBadTargets: tuf: invalid role targets/level1. delegation does not exist" -time="2025-10-18T21:04:48-12:00" level=error msg="ErrBadTargets: targets has already been loaded" -time="2025-10-18T21:04:48-12:00" level=error msg="ErrBadTargets: tuf: invalid role targets/level1. delegation does not exist" ---- PASS: TestValidateTargetsRoleNotInParent (0.02s) +time="2026-11-22T05:31:01+14:00" level=error msg="ErrBadTargets: tuf: invalid role targets/level1. delegation does not exist" +time="2026-11-22T05:31:01+14:00" level=error msg="ErrBadTargets: targets has already been loaded" +time="2026-11-22T05:31:01+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.754s +ok github.com/theupdateframework/notary/server/handlers 0.425s === RUN TestSnapshotExpired --- PASS: TestSnapshotExpired (0.00s) === RUN TestSnapshotNotExpired --- PASS: TestSnapshotNotExpired (0.00s) === RUN TestGetSnapshotKeyCreate ---- PASS: TestGetSnapshotKeyCreate (0.01s) +--- PASS: TestGetSnapshotKeyCreate (0.00s) === RUN TestGetSnapshotKeyCreateWithFailingStore -time="2025-10-18T21:04:48-12:00" level=error msg="Error when retrieving root role for GUN gun: failing store failed" +time="2026-11-22T05:31:02+14:00" level=error msg="Error when retrieving root role for GUN gun: failing store failed" --- PASS: TestGetSnapshotKeyCreateWithFailingStore (0.00s) === RUN TestGetSnapshotKeyCreateWithCorruptedStore -time="2025-10-18T21:04:48-12:00" level=error msg="Failed to unmarshal existing root for GUN gun to retrieve snapshot key ID" +time="2026-11-22T05:31:02+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.00s) === RUN TestGetSnapshotNoPreviousSnapshot -time="2025-10-18T21:04:48-12:00" level=error msg="Failed to unmarshal existing snapshot for GUN gun" +time="2026-11-22T05:31:02+14:00" level=error msg="Failed to unmarshal existing snapshot for GUN gun" --- PASS: TestGetSnapshotNoPreviousSnapshot (0.00s) === RUN TestGetSnapshotReturnsPreviousSnapshotIfUnexpired --- PASS: TestGetSnapshotReturnsPreviousSnapshotIfUnexpired (0.00s) === RUN TestGetSnapshotOldSnapshotExpired ---- PASS: TestGetSnapshotOldSnapshotExpired (0.01s) +--- PASS: TestGetSnapshotOldSnapshotExpired (0.00s) === RUN TestCannotMakeNewSnapshotIfNoRoot ---- PASS: TestCannotMakeNewSnapshotIfNoRoot (0.01s) +--- PASS: TestCannotMakeNewSnapshotIfNoRoot (0.00s) === RUN TestCreateSnapshotNoKeyInCrypto --- PASS: TestCreateSnapshotNoKeyInCrypto (0.00s) PASS -ok github.com/theupdateframework/notary/server/snapshot 0.102s +ok github.com/theupdateframework/notary/server/snapshot 0.050s === RUN TestMemoryUpdateCurrentEmpty --- PASS: TestMemoryUpdateCurrentEmpty (0.00s) === RUN TestMemoryUpdateCurrentVersionCheckOldVersionExists @@ -3292,13 +3328,13 @@ === RUN TestSQLUpdateCurrentEmpty --- PASS: TestSQLUpdateCurrentEmpty (0.01s) === RUN TestSQLUpdateCurrentVersionCheckOldVersionExists ---- PASS: TestSQLUpdateCurrentVersionCheckOldVersionExists (0.01s) +--- PASS: TestSQLUpdateCurrentVersionCheckOldVersionExists (0.00s) === RUN TestSQLUpdateCurrentVersionCheckOldVersionNotExist --- PASS: TestSQLUpdateCurrentVersionCheckOldVersionNotExist (0.00s) === RUN TestSQLUpdateManyNoConflicts --- PASS: TestSQLUpdateManyNoConflicts (0.01s) === RUN TestSQLUpdateManyConflictRollback ---- PASS: TestSQLUpdateManyConflictRollback (0.00s) +--- PASS: TestSQLUpdateManyConflictRollback (0.01s) === RUN TestSQLDelete --- PASS: TestSQLDelete (0.01s) === RUN TestSQLDBCheckHealthTableMissing @@ -3318,39 +3354,39 @@ === RUN TestSQLDBGetVersion --- PASS: TestSQLDBGetVersion (0.00s) PASS -ok github.com/theupdateframework/notary/server/storage 0.133s +ok github.com/theupdateframework/notary/server/storage 0.106s === RUN TestTimestampExpired --- PASS: TestTimestampExpired (0.00s) === RUN TestTimestampNotExpired --- PASS: TestTimestampNotExpired (0.00s) === RUN TestGetTimestampKey ---- PASS: TestGetTimestampKey (0.02s) +--- PASS: TestGetTimestampKey (0.01s) === RUN TestGetTimestampNoPreviousTimestamp -time="2025-10-18T21:04:48-12:00" level=error msg="Failed to unmarshal existing timestamp" +time="2026-11-22T05:31:02+14:00" level=error msg="Failed to unmarshal existing timestamp" --- PASS: TestGetTimestampNoPreviousTimestamp (0.00s) === RUN TestGetTimestampReturnsPreviousTimestampIfUnexpired ---- PASS: TestGetTimestampReturnsPreviousTimestampIfUnexpired (0.01s) +--- PASS: TestGetTimestampReturnsPreviousTimestampIfUnexpired (0.00s) === RUN TestGetTimestampOldTimestampExpired ---- PASS: TestGetTimestampOldTimestampExpired (0.01s) +--- PASS: TestGetTimestampOldTimestampExpired (0.00s) === RUN TestCannotMakeNewTimestampIfNoRootOrSnapshot -time="2025-10-18T21:04:48-12:00" level=error msg="Failed to create a new timestamp" -time="2025-10-18T21:04:48-12:00" level=error msg="Failed to create a new timestamp" ---- PASS: TestCannotMakeNewTimestampIfNoRootOrSnapshot (0.01s) +time="2026-11-22T05:31:02+14:00" level=error msg="Failed to create a new timestamp" +time="2026-11-22T05:31:02+14:00" level=error msg="Failed to create a new timestamp" +--- PASS: TestCannotMakeNewTimestampIfNoRootOrSnapshot (0.00s) === RUN TestCreateTimestampNoKeyInCrypto -time="2025-10-18T21:04:48-12:00" level=error msg="Failed to create a new timestamp" ---- PASS: TestCreateTimestampNoKeyInCrypto (0.02s) +time="2026-11-22T05:31:02+14:00" level=error msg="Failed to create a new timestamp" +--- PASS: TestCreateTimestampNoKeyInCrypto (0.01s) === RUN TestGetTimestampKeyCreateWithFailingStore -time="2025-10-18T21:04:48-12:00" level=error msg="Error when retrieving root role for GUN gun: failing store failed" +time="2026-11-22T05:31:02+14:00" level=error msg="Error when retrieving root role for GUN gun: failing store failed" --- PASS: TestGetTimestampKeyCreateWithFailingStore (0.00s) === RUN TestGetTimestampKeyCreateWithCorruptedStore -time="2025-10-18T21:04:48-12:00" level=error msg="Failed to unmarshal existing root for GUN gun to retrieve timestamp key ID" +time="2026-11-22T05:31:02+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.00s) PASS -ok github.com/theupdateframework/notary/server/timestamp 0.143s +ok github.com/theupdateframework/notary/server/timestamp 0.059s ? 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] @@ -3368,30 +3404,30 @@ `nodb` is not officially supported, running under compatibility mode. --- PASS: TestNewSQLKeyDBStorePropagatesDBError (0.00s) === RUN TestSQLDBHealthCheckMissingTable ---- PASS: TestSQLDBHealthCheckMissingTable (0.02s) +--- PASS: TestSQLDBHealthCheckMissingTable (0.00s) === RUN TestSQLDBHealthCheckNoConnection --- PASS: TestSQLDBHealthCheckNoConnection (0.00s) === RUN TestSQLKeyCanOnlyBeAddedOnce (/build/reproducible-path/notary-0.7.0+git20240416.9d2b3b3+ds1/_build/src/github.com/theupdateframework/notary/signer/keydbstore/sql_keydbstore.go:98) -[2025-10-18 21:04:51]  UNIQUE constraint failed: private_keys.key_id  ---- PASS: TestSQLKeyCanOnlyBeAddedOnce (0.09s) +[2026-11-22 05:31:02]  UNIQUE constraint failed: private_keys.key_id  +--- PASS: TestSQLKeyCanOnlyBeAddedOnce (0.02s) === RUN TestSQLCreateDelete ---- PASS: TestSQLCreateDelete (0.09s) +--- PASS: TestSQLCreateDelete (0.03s) === RUN TestSQLKeyRotation ---- PASS: TestSQLKeyRotation (0.06s) +--- PASS: TestSQLKeyRotation (0.02s) === RUN TestSQLSigningMarksKeyActive -time="2025-10-18T21:04:52-12:00" level=error msg="Key 2216b441ce911d6ea003fc259caddf12efcb0acf0b9e14d9e2f9bdeb4ad00cc1 was just used to sign hash successful, db closed, error when trying to mark key as active: sql: database is closed" ---- PASS: TestSQLSigningMarksKeyActive (0.08s) -=== RUN TestSQLCreateKey +time="2026-11-22T05:31:02+14:00" level=error msg="Key 4d37b2c333f4ed70fd67c823da967f6682d3bc5fe34ff125a10b8fedbcaabe32 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-10-18 21:04:52]  sql: database is closed  ---- PASS: TestSQLCreateKey (0.05s) +[2026-11-22 05:31:02]  sql: database is closed  +--- PASS: TestSQLSigningMarksKeyActive (0.04s) +=== RUN TestSQLCreateKey +--- PASS: TestSQLCreateKey (0.06s) === RUN TestSQLUnimplementedInterfaceBehavior ---- PASS: TestSQLUnimplementedInterfaceBehavior (0.02s) +--- PASS: TestSQLUnimplementedInterfaceBehavior (0.01s) PASS -ok github.com/theupdateframework/notary/signer/keydbstore 0.466s +ok github.com/theupdateframework/notary/signer/keydbstore 0.232s === RUN TestSet --- PASS: TestSet (0.00s) === RUN TestSetWithNoParentDirectory @@ -3427,7 +3463,7 @@ === RUN TestHTTPStoreGetSized --- PASS: TestHTTPStoreGetSized (0.00s) === RUN TestHTTPStoreGetAllMeta ---- PASS: TestHTTPStoreGetAllMeta (0.01s) +--- PASS: TestHTTPStoreGetAllMeta (0.00s) === RUN TestSetSingleAndSetMultiMeta --- PASS: TestSetSingleAndSetMultiMeta (0.00s) === RUN Test404Error @@ -3449,7 +3485,7 @@ === RUN TestHTTPStoreGetKey --- PASS: TestHTTPStoreGetKey (0.00s) === RUN TestHTTPStoreGetRotateKeySizeLimited ---- PASS: TestHTTPStoreGetRotateKeySizeLimited (0.01s) +--- PASS: TestHTTPStoreGetRotateKeySizeLimited (0.00s) === RUN TestHTTPOffline --- PASS: TestHTTPOffline (0.00s) === RUN TestErrServerUnavailable @@ -3470,7 +3506,7 @@ === RUN TestMemoryStoreMetadata --- PASS: TestMemoryStoreMetadata (0.00s) PASS -ok github.com/theupdateframework/notary/storage 0.051s +ok github.com/theupdateframework/notary/storage 0.032s ? github.com/theupdateframework/notary/storage/rethinkdb [no test files] === RUN TestExportKeys --- PASS: TestExportKeys (0.00s) @@ -3483,129 +3519,129 @@ === RUN TestImportKeys --- PASS: TestImportKeys (0.00s) === RUN TestImportNoPath ---- PASS: TestImportNoPath (0.01s) +--- PASS: TestImportNoPath (0.00s) === RUN TestNonRootPathInference --- PASS: TestNonRootPathInference (0.00s) === RUN TestBlockHeaderPrecedenceRoleAndGun ---- PASS: TestBlockHeaderPrecedenceRoleAndGun (0.02s) +--- PASS: TestBlockHeaderPrecedenceRoleAndGun (0.00s) === RUN TestBlockHeaderPrecedenceGunFromPath ---- PASS: TestBlockHeaderPrecedenceGunFromPath (0.01s) +--- PASS: TestBlockHeaderPrecedenceGunFromPath (0.00s) === RUN TestImportKeys2InOneFile --- PASS: TestImportKeys2InOneFile (0.00s) === RUN TestImportKeys2InOneFileNoPath ---- PASS: TestImportKeys2InOneFileNoPath (0.02s) +--- PASS: TestImportKeys2InOneFileNoPath (0.00s) === RUN TestEncryptedKeyImportFail -time="2025-10-18T21:04:52-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-11-22T05:31:03+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.02s) +--- PASS: TestEncryptedKeyImportSuccess (0.00s) === RUN TestEncryption --- PASS: TestEncryption (0.00s) === RUN TestAddKey --- PASS: TestAddKey (0.01s) === RUN TestKeyStoreInternalState ---- PASS: TestKeyStoreInternalState (0.02s) +--- PASS: TestKeyStoreInternalState (0.00s) === RUN TestGet ---- PASS: TestGet (0.04s) +--- PASS: TestGet (0.01s) === RUN TestGetLegacyKey --- PASS: TestGetLegacyKey (0.00s) === RUN TestListKeys ---- PASS: TestListKeys (0.02s) +--- PASS: TestListKeys (0.01s) === RUN TestAddGetKeyMemStore ---- PASS: TestAddGetKeyMemStore (0.01s) +--- PASS: TestAddGetKeyMemStore (0.00s) === RUN TestAddGetKeyInfoMemStore --- PASS: TestAddGetKeyInfoMemStore (0.00s) === RUN TestGetDecryptedWithTamperedCipherText -time="2025-10-18T21:04:52-12:00" level=error msg="PEM block is empty" ---- PASS: TestGetDecryptedWithTamperedCipherText (0.01s) +time="2026-11-22T05:31:03+14:00" level=error msg="PEM block is empty" +--- PASS: TestGetDecryptedWithTamperedCipherText (0.00s) === RUN TestGetDecryptedWithInvalidPassphrase ---- PASS: TestGetDecryptedWithInvalidPassphrase (0.02s) +--- PASS: TestGetDecryptedWithInvalidPassphrase (0.01s) === RUN TestGetDecryptedWithConsistentlyInvalidPassphrase ---- PASS: TestGetDecryptedWithConsistentlyInvalidPassphrase (0.03s) +--- PASS: TestGetDecryptedWithConsistentlyInvalidPassphrase (0.01s) === RUN TestRemoveKey --- PASS: TestRemoveKey (0.01s) === RUN TestKeysAreCached --- PASS: TestKeysAreCached (0.00s) PASS -ok github.com/theupdateframework/notary/trustmanager 0.358s +ok github.com/theupdateframework/notary/trustmanager 0.090s === RUN TestRemoteStore -time="2025-10-18T21:04:56-12:00" level=info msg="listing files from localhost:9888" -time="2025-10-18T21:04:56-12:00" level=info msg="listing files from localhost:9888" ---- PASS: TestRemoteStore (0.08s) +time="2026-11-22T05:31:03+14:00" level=info msg="listing files from localhost:9888" +time="2026-11-22T05:31:03+14:00" level=info msg="listing files from localhost:9888" +--- PASS: TestRemoteStore (0.04s) === RUN TestErrors -time="2025-10-18T21:04:56-12:00" level=error msg="failed to store: test error" ---- PASS: TestErrors (0.08s) +time="2026-11-22T05:31:03+14:00" level=error msg="failed to store: test error" +--- PASS: TestErrors (0.04s) === RUN TestNewGRPCStorage --- PASS: TestNewGRPCStorage (0.00s) === RUN TestGRPCStorage --- PASS: TestGRPCStorage (0.00s) PASS -ok github.com/theupdateframework/notary/trustmanager/remoteks 0.291s +ok github.com/theupdateframework/notary/trustmanager/remoteks 0.108s ? 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/10/18 21:04:59 [INFO] generate received request -2025/10/18 21:04:59 [INFO] received CSR -2025/10/18 21:04:59 [INFO] generating key: ecdsa-256 -2025/10/18 21:04:59 [INFO] encoded CSR -2025/10/18 21:04:59 [INFO] signed certificate with serial number 536798698889807171907628898384033628708666985349 -2025/10/18 21:04:59 [INFO] received CSR -2025/10/18 21:04:59 [INFO] generating key: ecdsa-256 -2025/10/18 21:04:59 [INFO] encoded CSR -2025/10/18 21:04:59 [INFO] signed certificate with serial number 672085079651146111806793625339292569688275064312 -2025/10/18 21:04:59 [INFO] received CSR -2025/10/18 21:04:59 [INFO] generating key: ecdsa-256 -2025/10/18 21:04:59 [INFO] encoded CSR -2025/10/18 21:04:59 [INFO] signed certificate with serial number 224895186955729166179849982016330490519027089316 +2026/11/22 05:31:05 [INFO] generate received request +2026/11/22 05:31:05 [INFO] received CSR +2026/11/22 05:31:05 [INFO] generating key: ecdsa-256 +2026/11/22 05:31:05 [INFO] encoded CSR +2026/11/22 05:31:05 [INFO] signed certificate with serial number 272121692396968695977727718241918711890270742525 +2026/11/22 05:31:05 [INFO] received CSR +2026/11/22 05:31:05 [INFO] generating key: ecdsa-256 +2026/11/22 05:31:05 [INFO] encoded CSR +2026/11/22 05:31:05 [INFO] signed certificate with serial number 724270225930728248550269349942528168909899127936 +2026/11/22 05:31:05 [INFO] received CSR +2026/11/22 05:31:05 [INFO] generating key: ecdsa-256 +2026/11/22 05:31:05 [INFO] encoded CSR +2026/11/22 05:31:05 [INFO] signed certificate with serial number 60611409664641706700767264684045939047585840327 --- PASS: TestValidateRoot (0.03s) === RUN TestValidateRootWithoutTOFUS --- PASS: TestValidateRootWithoutTOFUS (0.00s) === RUN TestValidateRootWithPinnedCert --- PASS: TestValidateRootWithPinnedCert (0.00s) === RUN TestValidateRootWithPinnedCertAndIntermediates ---- PASS: TestValidateRootWithPinnedCertAndIntermediates (0.03s) +--- PASS: TestValidateRootWithPinnedCertAndIntermediates (0.02s) === RUN TestValidateRootFailuresWithPinnedCert --- PASS: TestValidateRootFailuresWithPinnedCert (0.00s) === RUN TestValidateRootWithPinnedCA ---- PASS: TestValidateRootWithPinnedCA (0.02s) +--- PASS: TestValidateRootWithPinnedCA (0.04s) === RUN TestValidateSuccessfulRootRotation ---- PASS: TestValidateSuccessfulRootRotation (0.03s) +--- PASS: TestValidateSuccessfulRootRotation (0.05s) === RUN TestValidateRootRotationMissingOrigSig --- PASS: TestValidateRootRotationMissingOrigSig (0.03s) === RUN TestValidateRootRotationMissingNewSig --- PASS: TestValidateRootRotationMissingNewSig (0.02s) === RUN TestValidateRootRotationTrustPinning ---- PASS: TestValidateRootRotationTrustPinning (0.04s) +--- PASS: TestValidateRootRotationTrustPinning (0.02s) === RUN TestValidateRootRotationTrustPinningInvalidCA ---- PASS: TestValidateRootRotationTrustPinningInvalidCA (0.03s) +--- PASS: TestValidateRootRotationTrustPinningInvalidCA (0.02s) === RUN TestParsePEMPublicKey -time="2025-10-18T21:04:59-12:00" level=warning msg="certificate with CN notary is near expiry" +time="2026-11-22T05:31:05+14:00" level=warning msg="certificate with CN notary is near expiry" --- PASS: TestParsePEMPublicKey (0.00s) === RUN TestCheckingCertExpiry -time="2025-10-18T21:04:59-12:00" level=warning msg="certificate with CN notary is near expiry" +time="2026-11-22T05:31:05+14:00" level=warning msg="certificate with CN notary is near expiry" --- PASS: TestCheckingCertExpiry (0.00s) === RUN TestValidateRootWithExpiredIntermediate --- PASS: TestValidateRootWithExpiredIntermediate (0.01s) === RUN TestCheckingWildcardCert ---- PASS: TestCheckingWildcardCert (0.00s) +--- PASS: TestCheckingWildcardCert (0.01s) === RUN TestWildcardMatching --- PASS: TestWildcardMatching (0.00s) PASS -ok github.com/theupdateframework/notary/trustpinning 0.360s +ok github.com/theupdateframework/notary/trustpinning 0.317s === RUN TestInitSnapshotNoTargets --- PASS: TestInitSnapshotNoTargets (0.01s) === RUN TestInitRepo ---- PASS: TestInitRepo (0.00s) +--- PASS: TestInitRepo (0.01s) === RUN TestUpdateDelegations --- PASS: TestUpdateDelegations (0.00s) === RUN TestPurgeDelegationsKeyFromTop -time="2025-10-18T21:04:59-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-10-18T21:04:59-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-11-22T05:31:05+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-11-22T05:31:05+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-10-18T21:04:59-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-11-22T05:31:05+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.00s) === RUN TestPurgeDelegationsKeyBadWildRole --- PASS: TestPurgeDelegationsKeyBadWildRole (0.00s) @@ -3618,7 +3654,7 @@ === RUN TestUpdateDelegationsRoleThatIsMissingDelegationKey --- PASS: TestUpdateDelegationsRoleThatIsMissingDelegationKey (0.00s) === RUN TestUpdateDelegationsNotEnoughKeys -time="2025-10-18T21:04:59-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-11-22T05:31:05+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) @@ -3655,7 +3691,7 @@ === RUN TestRemoveExistingAndNonexistingTargets --- PASS: TestRemoveExistingAndNonexistingTargets (0.00s) === RUN TestRemoveTargetsRoleDoesntExist ---- PASS: TestRemoveTargetsRoleDoesntExist (0.01s) +--- PASS: TestRemoveTargetsRoleDoesntExist (0.00s) === RUN TestRemoveTargetsNoSigningKeys --- PASS: TestRemoveTargetsNoSigningKeys (0.00s) === RUN TestAddBaseKeysToRoot @@ -3685,41 +3721,41 @@ === RUN TestGetDelegationRoleKeyMissing --- PASS: TestGetDelegationRoleKeyMissing (0.00s) === RUN TestSignRootOldKeyCertExists ---- PASS: TestSignRootOldKeyCertExists (0.02s) +--- PASS: TestSignRootOldKeyCertExists (0.01s) === RUN TestSignRootOldKeyCertMissing ---- PASS: TestSignRootOldKeyCertMissing (0.02s) +--- PASS: TestSignRootOldKeyCertMissing (0.01s) === RUN TestRootKeyRotation ---- PASS: TestRootKeyRotation (0.04s) +--- PASS: TestRootKeyRotation (0.03s) === RUN TestBuilderLoadsValidRolesOnly ---- PASS: TestBuilderLoadsValidRolesOnly (0.01s) +--- PASS: TestBuilderLoadsValidRolesOnly (0.00s) === RUN TestBuilderOnlyAcceptsRootFirstWhenLoading --- PASS: TestBuilderOnlyAcceptsRootFirstWhenLoading (0.00s) === RUN TestBuilderOnlyAcceptsDelegationsAfterParent --- PASS: TestBuilderOnlyAcceptsDelegationsAfterParent (0.00s) === RUN TestMarkingIsValid ---- PASS: TestMarkingIsValid (0.01s) +--- PASS: TestMarkingIsValid (0.00s) === RUN TestBuilderLoadInvalidDelegations --- PASS: TestBuilderLoadInvalidDelegations (0.00s) === RUN TestBuilderLoadInvalidDelegationsOldVersion --- PASS: TestBuilderLoadInvalidDelegationsOldVersion (0.00s) === RUN TestBuilderAcceptRoleOnce ---- PASS: TestBuilderAcceptRoleOnce (0.00s) +--- PASS: TestBuilderAcceptRoleOnce (0.01s) === RUN TestBuilderStopsAcceptingOrProducingDataOnceDone --- PASS: TestBuilderStopsAcceptingOrProducingDataOnceDone (0.00s) === RUN TestGenerateSnapshotInvalidOperations --- PASS: TestGenerateSnapshotInvalidOperations (0.04s) === RUN TestGenerateTimestampInvalidOperations ---- PASS: TestGenerateTimestampInvalidOperations (0.04s) +--- PASS: TestGenerateTimestampInvalidOperations (0.02s) === RUN TestGetConsistentInfo ---- PASS: TestGetConsistentInfo (0.01s) +--- PASS: TestGetConsistentInfo (0.00s) === RUN TestTimestampPreAndPostChecksumming --- PASS: TestTimestampPreAndPostChecksumming (0.01s) === RUN TestSnapshotLoadedFirstChecksumsOthers ---- PASS: TestSnapshotLoadedFirstChecksumsOthers (0.02s) +--- PASS: TestSnapshotLoadedFirstChecksumsOthers (0.01s) === RUN TestSnapshotLoadedAfterChecksumsOthersRetroactively ---- PASS: TestSnapshotLoadedAfterChecksumsOthersRetroactively (0.02s) +--- PASS: TestSnapshotLoadedAfterChecksumsOthersRetroactively (0.01s) PASS -ok github.com/theupdateframework/notary/tuf 0.379s +ok github.com/theupdateframework/notary/tuf 0.272s === RUN TestMergeStrSlicesExclusive --- PASS: TestMergeStrSlicesExclusive (0.00s) === RUN TestMergeStrSlicesOverlap @@ -3809,7 +3845,7 @@ === RUN TestTargetsFromSignedCopiesSignatures --- PASS: TestTargetsFromSignedCopiesSignatures (0.00s) === RUN TestTargetsFromSignedValidatesDelegations ---- PASS: TestTargetsFromSignedValidatesDelegations (0.01s) +--- PASS: TestTargetsFromSignedValidatesDelegations (0.00s) === RUN TestTargetsFromSignedValidatesRoleType --- PASS: TestTargetsFromSignedValidatesRoleType (0.00s) === RUN TestTargetsFromSignedValidatesRoleName @@ -3853,17 +3889,17 @@ === RUN TestFileMetaEquals --- PASS: TestFileMetaEquals (0.00s) PASS -ok github.com/theupdateframework/notary/tuf/data 0.084s +ok github.com/theupdateframework/notary/tuf/data 0.064s === RUN TestListKeys ---- PASS: TestListKeys (0.02s) +--- PASS: TestListKeys (0.01s) === RUN TestGetKeys --- PASS: TestGetKeys (0.00s) === RUN TestBasicSign ---- PASS: TestBasicSign (0.01s) +--- PASS: TestBasicSign (0.00s) === RUN TestReSign --- PASS: TestReSign (0.00s) === RUN TestMultiSign ---- PASS: TestMultiSign (0.01s) +--- PASS: TestMultiSign (0.00s) === RUN TestSignReturnsNoSigs --- PASS: TestSignReturnsNoSigs (0.00s) === RUN TestSignWithX509 @@ -3873,25 +3909,25 @@ === RUN TestSignRemovesInvalidSig --- PASS: TestSignRemovesInvalidSig (0.00s) === RUN TestSignMinSignatures ---- PASS: TestSignMinSignatures (0.01s) +--- PASS: TestSignMinSignatures (0.00s) === RUN TestSignFailingKeys --- PASS: TestSignFailingKeys (0.00s) === RUN TestErrInsufficientSignaturesMessaging --- PASS: TestErrInsufficientSignaturesMessaging (0.00s) === RUN TestRSAPSSVerifier ---- PASS: TestRSAPSSVerifier (0.00s) +--- PASS: TestRSAPSSVerifier (0.01s) === RUN TestRSAPSSx509Verifier --- PASS: TestRSAPSSx509Verifier (0.00s) === RUN TestRSAPSSVerifierWithInvalidKeyType --- PASS: TestRSAPSSVerifierWithInvalidKeyType (0.00s) === RUN TestRSAPSSVerifierWithInvalidKeyLength ---- PASS: TestRSAPSSVerifierWithInvalidKeyLength (0.29s) +--- PASS: TestRSAPSSVerifierWithInvalidKeyLength (0.06s) === RUN TestRSAPSSVerifierWithInvalidKey --- PASS: TestRSAPSSVerifierWithInvalidKey (0.00s) === RUN TestRSAPSSVerifierWithInvalidSignature ---- PASS: TestRSAPSSVerifierWithInvalidSignature (0.01s) +--- PASS: TestRSAPSSVerifierWithInvalidSignature (0.00s) === RUN TestRSAPKCS1v15Verifier ---- PASS: TestRSAPKCS1v15Verifier (0.02s) +--- PASS: TestRSAPKCS1v15Verifier (0.00s) === RUN TestRSAPKCS1v15x509Verifier --- PASS: TestRSAPKCS1v15x509Verifier (0.00s) === RUN TestRSAPKCS1v15VerifierWithInvalidKeyType @@ -3899,12 +3935,12 @@ === RUN TestRSAPKCS1v15VerifierWithInvalidKey --- PASS: TestRSAPKCS1v15VerifierWithInvalidKey (0.00s) === RUN TestRSAPKCS1v15VerifierWithInvalidSignature -time="2025-10-18T21:04:59-12:00" level=error msg="Failed verification: crypto/rsa: verification error" ---- PASS: TestRSAPKCS1v15VerifierWithInvalidSignature (0.01s) +time="2026-11-22T05:31:05+14:00" level=error msg="Failed verification: crypto/rsa: verification error" +--- PASS: TestRSAPKCS1v15VerifierWithInvalidSignature (0.00s) === RUN TestECDSAVerifier --- PASS: TestECDSAVerifier (0.00s) === RUN TestECDSAVerifierOtherCurves ---- PASS: TestECDSAVerifierOtherCurves (0.07s) +--- PASS: TestECDSAVerifierOtherCurves (0.03s) === RUN TestECDSAx509Verifier --- PASS: TestECDSAx509Verifier (0.00s) === RUN TestECDSAVerifierWithInvalidKeyType @@ -3932,7 +3968,7 @@ === RUN TestIsValidNotExported --- PASS: TestIsValidNotExported (0.00s) === RUN TestMoreThanEnoughSigs ---- PASS: TestMoreThanEnoughSigs (0.01s) +--- PASS: TestMoreThanEnoughSigs (0.00s) === RUN TestValidSigWithIncorrectKeyID --- PASS: TestValidSigWithIncorrectKeyID (0.00s) === RUN TestDuplicateSigs @@ -3942,40 +3978,40 @@ === RUN TestVerifyVersion --- PASS: TestVerifyVersion (0.00s) === RUN TestVerifyExpiry -time="2025-10-18T21:05:00-12:00" level=error msg="Metadata for root expired" +time="2026-11-22T05:31:05+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.544s +ok github.com/theupdateframework/notary/tuf/signed 0.197s === RUN TestNewSwizzler ---- PASS: TestNewSwizzler (0.02s) +--- PASS: TestNewSwizzler (0.01s) === RUN TestSwizzlerSetInvalidJSON --- PASS: TestSwizzlerSetInvalidJSON (0.01s) === RUN TestSwizzlerAddExtraSpace --- PASS: TestSwizzlerAddExtraSpace (0.01s) === RUN TestSwizzlerSetInvalidSigned ---- PASS: TestSwizzlerSetInvalidSigned (0.02s) +--- PASS: TestSwizzlerSetInvalidSigned (0.01s) === RUN TestSwizzlerSetInvalidSignedMeta --- PASS: TestSwizzlerSetInvalidSignedMeta (0.01s) === RUN TestSwizzlerSetInvalidMetadataType ---- PASS: TestSwizzlerSetInvalidMetadataType (0.00s) +--- PASS: TestSwizzlerSetInvalidMetadataType (0.01s) === RUN TestSwizzlerInvalidateMetadataSignatures ---- PASS: TestSwizzlerInvalidateMetadataSignatures (0.02s) +--- PASS: TestSwizzlerInvalidateMetadataSignatures (0.01s) === RUN TestSwizzlerRemoveMetadata --- PASS: TestSwizzlerRemoveMetadata (0.01s) === RUN TestSwizzlerSignMetadataWithInvalidKey ---- PASS: TestSwizzlerSignMetadataWithInvalidKey (0.02s) +--- PASS: TestSwizzlerSignMetadataWithInvalidKey (0.01s) === RUN TestSwizzlerOffsetMetadataVersion ---- PASS: TestSwizzlerOffsetMetadataVersion (0.01s) +--- PASS: TestSwizzlerOffsetMetadataVersion (0.00s) === RUN TestSwizzlerExpireMetadata ---- PASS: TestSwizzlerExpireMetadata (0.00s) +--- PASS: TestSwizzlerExpireMetadata (0.01s) === RUN TestSwizzlerSetThresholdBaseRole --- PASS: TestSwizzlerSetThresholdBaseRole (0.01s) === RUN TestSwizzlerSetThresholdDelegatedRole ---- PASS: TestSwizzlerSetThresholdDelegatedRole (0.01s) +--- PASS: TestSwizzlerSetThresholdDelegatedRole (0.00s) === RUN TestSwizzlerChangeRootKey --- PASS: TestSwizzlerChangeRootKey (0.01s) === RUN TestSwizzlerUpdateSnapshotHashesSpecifiedRoles @@ -3983,29 +4019,29 @@ === RUN TestSwizzlerUpdateSnapshotHashesNoSpecifiedRoles --- PASS: TestSwizzlerUpdateSnapshotHashesNoSpecifiedRoles (0.01s) === RUN TestSwizzlerUpdateTimestamp ---- PASS: TestSwizzlerUpdateTimestamp (0.00s) +--- PASS: TestSwizzlerUpdateTimestamp (0.01s) === RUN TestMissingSigningKey ---- PASS: TestMissingSigningKey (0.01s) +--- PASS: TestMissingSigningKey (0.00s) === RUN TestSwizzlerMutateRoot ---- PASS: TestSwizzlerMutateRoot (0.01s) +--- PASS: TestSwizzlerMutateRoot (0.00s) === RUN TestSwizzlerMutateTimestamp ---- PASS: TestSwizzlerMutateTimestamp (0.01s) +--- PASS: TestSwizzlerMutateTimestamp (0.00s) === RUN TestSwizzlerMutateSnapshot ---- PASS: TestSwizzlerMutateSnapshot (0.01s) +--- PASS: TestSwizzlerMutateSnapshot (0.00s) === RUN TestSwizzlerMutateTargets ---- PASS: TestSwizzlerMutateTargets (0.01s) +--- PASS: TestSwizzlerMutateTargets (0.00s) === RUN TestSwizzlerRotateKeyBaseRole --- PASS: TestSwizzlerRotateKeyBaseRole (0.01s) === RUN TestSwizzlerRotateKeyDelegationRole ---- PASS: TestSwizzlerRotateKeyDelegationRole (0.00s) +--- PASS: TestSwizzlerRotateKeyDelegationRole (0.01s) PASS -ok github.com/theupdateframework/notary/tuf/testutils 0.325s +ok github.com/theupdateframework/notary/tuf/testutils 0.195s ? 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.03s) +--- PASS: TestConvertTUFKeyToPKCS8 (0.01s) === RUN TestParsePKCS8ToTufKey ---- PASS: TestParsePKCS8ToTufKey (0.08s) +--- PASS: TestParsePKCS8ToTufKey (0.03s) === RUN TestPEMtoPEM --- PASS: TestPEMtoPEM (0.00s) === RUN TestRoleListLen @@ -4051,7 +4087,7 @@ === RUN TestNewCertificate --- PASS: TestNewCertificate (0.00s) === RUN TestKeyOperations ---- PASS: TestKeyOperations (0.02s) +--- PASS: TestKeyOperations (0.01s) === RUN TestRSAX509PublickeyID --- PASS: TestRSAX509PublickeyID (0.00s) === RUN TestECDSAX509PublickeyID @@ -4067,9 +4103,9 @@ === RUN TestValidateCertificateWithInvalidExpiry --- PASS: TestValidateCertificateWithInvalidExpiry (0.00s) === RUN TestValidateCertificateWithShortKey ---- PASS: TestValidateCertificateWithShortKey (0.02s) +--- PASS: TestValidateCertificateWithShortKey (0.06s) PASS -ok github.com/theupdateframework/notary/tuf/utils 0.204s +ok github.com/theupdateframework/notary/tuf/utils 0.148s === RUN TestNewSerializableErrorNonValidationError --- PASS: TestNewSerializableErrorNonValidationError (0.00s) === RUN TestNewSerializableErrorValidationError @@ -4085,9 +4121,9 @@ === RUN TestUnmarshalInvalidJSON --- PASS: TestUnmarshalInvalidJSON (0.00s) PASS -ok github.com/theupdateframework/notary/tuf/validation 0.048s +ok github.com/theupdateframework/notary/tuf/validation 0.046s === 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 @@ -4159,7 +4195,7 @@ === RUN TestAdjustLogLevel --- PASS: TestAdjustLogLevel (0.00s) === RUN TestRootHandlerFactory ---- PASS: TestRootHandlerFactory (0.01s) +--- PASS: TestRootHandlerFactory (0.00s) === RUN TestRootHandlerError --- PASS: TestRootHandlerError (0.00s) === RUN TestWrapWithCacheHeaderNilCacheControlConfig @@ -4185,7 +4221,7 @@ === RUN TestDoAuthWildcardImage --- PASS: TestDoAuthWildcardImage (0.00s) PASS -ok github.com/theupdateframework/notary/utils 0.097s +ok github.com/theupdateframework/notary/utils 0.070s ? 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 @@ -4224,8 +4260,8 @@ 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-4_arm64.deb'. -dpkg-deb: building package 'golang-github-docker-notary-dev' in '../golang-github-docker-notary-dev_0.7.0+git20240416.9d2b3b3+ds1-4_all.deb'. dpkg-deb: building package 'notary' in '../notary_0.7.0+git20240416.9d2b3b3+ds1-4_arm64.deb'. +dpkg-deb: building package 'golang-github-docker-notary-dev' in '../golang-github-docker-notary-dev_0.7.0+git20240416.9d2b3b3+ds1-4_all.deb'. dpkg-genbuildinfo --build=binary -O../notary_0.7.0+git20240416.9d2b3b3+ds1-4_arm64.buildinfo dpkg-genchanges --build=binary -O../notary_0.7.0+git20240416.9d2b3b3+ds1-4_arm64.changes dpkg-genchanges: info: binary-only upload (no source code included) @@ -4233,12 +4269,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/378279/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/378279/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/4138065 and its subdirectories -I: Current time: Sat Oct 18 21:06:23 -12 2025 -I: pbuilder-time-stamp: 1760864783 +I: removing directory /srv/workspace/pbuilder/378279 and its subdirectories +I: Current time: Sun Nov 22 05:31:52 +14 2026 +I: pbuilder-time-stamp: 1795275112