Diff of the two buildlogs: -- --- b1/build.log 2025-03-08 01:09:06.903986173 +0000 +++ b2/build.log 2025-03-08 01:24:13.839078710 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Thu Apr 9 19:29:13 -12 2026 -I: pbuilder-time-stamp: 1775806153 +I: Current time: Sat Mar 8 15:09:11 +14 2025 +I: pbuilder-time-stamp: 1741396151 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/trixie-reproducible-base.tgz] I: copying local configuration @@ -30,54 +30,86 @@ dpkg-source: info: applying fix-timebomb-ftbfs.patch I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/76206/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/22901/tmp/hooks/D01_modify_environment starting +debug: Running on ionos12-i386. +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 Mar 8 01:09 /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/22901/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/22901/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='i386' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=22 ' - DISTRIBUTION='trixie' - HOME='/root' - HOST_ARCH='i386' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="2" [2]="37" [3]="1" [4]="release" [5]="i686-pc-linux-gnu") + BASH_VERSION='5.2.37(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=i386 + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=10 ' + DIRSTACK=() + DISTRIBUTION=trixie + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=i686 + HOST_ARCH=i386 IFS=' ' - INVOCATION_ID='a980bbc638944cec8a370afcb1006a2b' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - LD_LIBRARY_PATH='/usr/lib/libeatmydata' - LD_PRELOAD='libeatmydata.so' - 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='76206' - PS1='# ' - PS2='> ' + INVOCATION_ID=cc7dbeff25234077977c9b257f3c9182 + LANG=C + LANGUAGE=de_CH:de + LC_ALL=C + LD_LIBRARY_PATH=/usr/lib/libeatmydata + LD_PRELOAD=libeatmydata.so + MACHTYPE=i686-pc-linux-gnu + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnu + PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + PBCURRENTCOMMANDLINEOPERATION=build + PBUILDER_OPERATION=build + PBUILDER_PKGDATADIR=/usr/share/pbuilder + PBUILDER_PKGLIBDIR=/usr/lib/pbuilder + PBUILDER_SYSCONFDIR=/etc + PIPESTATUS=([0]="0") + POSIXLY_CORRECT=y + PPID=22901 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.hRrtKaPQ/pbuilderrc_xfyA --distribution trixie --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.hRrtKaPQ/b1 --logfile b1/build.log notary_0.7.0+git20240416.9d2b3b3+ds1-3.dsc' - SUDO_GID='112' - SUDO_UID='107' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://213.165.73.152: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.hRrtKaPQ/pbuilderrc_zilT --distribution trixie --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.hRrtKaPQ/b2 --logfile b2/build.log notary_0.7.0+git20240416.9d2b3b3+ds1-3.dsc' + SUDO_GID=112 + SUDO_UID=107 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://46.16.76.132:3128 I: uname -a - Linux ionos6-i386 6.1.0-31-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.128-1 (2025-02-07) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-31-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.128-1 (2025-02-07) x86_64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Nov 22 2024 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/76206/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Nov 22 14:40 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/22901/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -405,7 +437,7 @@ Get: 234 http://deb.debian.org/debian trixie/main i386 protobuf-compiler i386 3.21.12-10+b6 [84.9 kB] Get: 235 http://deb.debian.org/debian trixie/main i386 protoc-gen-go-1-5 i386 1.5.4-1 [1348 kB] Get: 236 http://deb.debian.org/debian trixie/main i386 protoc-gen-go-grpc i386 1.64.0-6+b1 [1303 kB] -Fetched 166 MB in 2s (76.1 MB/s) +Fetched 166 MB in 5s (31.6 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 ... 19787 files and directories currently installed.) @@ -1174,8 +1206,8 @@ Setting up tzdata (2025a-2) ... Current default time zone: 'Etc/UTC' -Local time is now: Fri Apr 10 07:29:47 UTC 2026. -Universal Time is now: Fri Apr 10 07:29:47 UTC 2026. +Local time is now: Sat Mar 8 01:12:18 UTC 2025. +Universal Time is now: Sat Mar 8 01:12:18 UTC 2025. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up golang-github-cespare-xxhash-dev (2.3.0-1) ... @@ -1370,7 +1402,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/notary-0.7.0+git20240416.9d2b3b3+ds1/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../notary_0.7.0+git20240416.9d2b3b3+ds1-3_source.changes +I: user script /srv/workspace/pbuilder/22901/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for trixie +I: user script /srv/workspace/pbuilder/22901/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/notary-0.7.0+git20240416.9d2b3b3+ds1/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../notary_0.7.0+git20240416.9d2b3b3+ds1-3_source.changes dpkg-buildpackage: info: source package notary dpkg-buildpackage: info: source version 0.7.0+git20240416.9d2b3b3+ds1-3 dpkg-buildpackage: info: source distribution unstable @@ -1654,355 +1690,355 @@ src/github.com/theupdateframework/notary/utils/http.go src/github.com/theupdateframework/notary/utils/http_test.go src/github.com/theupdateframework/notary/version/version.go - cd _build && go install -trimpath -v -p 22 -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 + cd _build && go install -trimpath -v -p 10 -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/goarch -internal/msan -internal/profilerecord -internal/goos -crypto/internal/fips140/alias -internal/coverage/rtcov -unicode/utf16 -unicode/utf8 +internal/godebugs +internal/byteorder internal/unsafeheader -math/bits +internal/coverage/rtcov +internal/goexperiment +internal/goos +internal/profilerecord internal/asan -encoding -internal/byteorder -internal/runtime/syscall -cmp -internal/godebugs -internal/cpu -internal/itoa +internal/msan +internal/runtime/math internal/runtime/atomic -unicode -internal/goexperiment +internal/cpu +internal/abi +internal/runtime/sys +internal/chacha8rand +internal/runtime/syscall sync/atomic +math/bits +unicode/utf8 +unicode +internal/itoa +cmp +crypto/internal/fips140/alias +crypto/internal/fips140deps/byteorder +encoding +unicode/utf16 +math log/internal crypto/internal/boring/sig vendor/golang.org/x/crypto/cryptobyte/asn1 +internal/runtime/exithook internal/nettrace +internal/bytealg +crypto/internal/fips140deps/cpu container/list vendor/golang.org/x/crypto/internal/alias -internal/runtime/math +github.com/pelletier/go-toml/v2/internal/characters google.golang.org/protobuf/internal/flags +google.golang.org/protobuf/internal/set google.golang.org/grpc/serviceconfig github.com/theupdateframework/notary/version -internal/runtime/sys -internal/abi github.com/lib/pq/oid -internal/chacha8rand -crypto/internal/fips140deps/byteorder -github.com/pelletier/go-toml/v2/internal/characters -google.golang.org/protobuf/internal/set -math -internal/runtime/exithook -crypto/internal/fips140deps/cpu -internal/bytealg internal/stringslite internal/race internal/sync internal/runtime/maps github.com/klauspost/compress runtime +internal/reflectlite iter -weak +sync crypto/internal/fips140/subtle -internal/reflectlite +weak runtime/metrics -sync maps slices crypto/subtle -errors -sort internal/bisect -internal/testlog internal/singleflight -github.com/spf13/viper/internal/encoding +internal/testlog unique +github.com/spf13/viper/internal/encoding google.golang.org/protobuf/internal/pragma runtime/cgo +errors +sort +internal/godebug +io internal/oserror +strconv path +hash github.com/hashicorp/hcl/hcl/strconv -vendor/golang.org/x/net/dns/dnsmessage -google.golang.org/grpc/internal/buffer -io +bytes math/rand/v2 -strconv +crypto/internal/fips140deps/godebug +strings +vendor/golang.org/x/net/dns/dnsmessage syscall -hash -crypto/internal/randutil hash/fnv -internal/godebug hash/crc32 -bytes -strings -hash/adler32 -github.com/beorn7/perks/quantile +math/rand crypto -net/netip -encoding/base32 -golang.org/x/crypto/blowfish +crypto/internal/randutil reflect -crypto/internal/impl -net/http/internal/ascii -github.com/munnerz/goautoneg -net/http/internal/testcert -crypto/internal/fips140deps/godebug -html -math/rand -regexp/syntax +net/netip +google.golang.org/grpc/internal/buffer +hash/adler32 +github.com/beorn7/perks/quantile vendor/golang.org/x/text/transform -bufio golang.org/x/text/transform -github.com/dvsekhvalnov/jose2go/padding +google.golang.org/grpc/internal/grpcrand +golang.org/x/crypto/blowfish crypto/internal/fips140 +bufio +crypto/internal/impl +regexp/syntax crypto/internal/fips140/sha256 -crypto/tls/internal/fips140tls -crypto/internal/fips140/sha512 crypto/internal/fips140/sha3 +crypto/internal/fips140/sha512 +crypto/tls/internal/fips140tls +net/http/internal/ascii golang.org/x/text/runes -google.golang.org/grpc/internal/grpcrand +html +github.com/munnerz/goautoneg +encoding/base32 +github.com/dvsekhvalnov/jose2go/padding +net/http/internal/testcert crypto/internal/fips140/hmac crypto/sha3 crypto/internal/fips140/check crypto/internal/fips140hash -crypto/internal/fips140/hkdf -crypto/internal/fips140/tls12 crypto/internal/fips140/edwards25519/field -crypto/internal/fips140/bigmod crypto/internal/fips140/aes -internal/syscall/execenv -internal/syscall/unix -time +crypto/internal/fips140/bigmod crypto/internal/fips140/nistec/fiat -regexp +crypto/internal/fips140/hkdf +crypto/internal/fips140/tls12 crypto/internal/fips140/tls13 crypto/internal/fips140/edwards25519 +regexp +internal/syscall/unix +time +internal/syscall/execenv github.com/jinzhu/inflection -io/fs -github.com/bugsnag/bugsnag-go/headers google.golang.org/grpc/backoff google.golang.org/grpc/keepalive -context +io/fs internal/poll -google.golang.org/grpc/internal/backoff +context +github.com/bugsnag/bugsnag-go/headers +internal/fmtsort +encoding/binary +github.com/spf13/afero/internal/common +embed +internal/filepathlite golang.org/x/net/context +google.golang.org/grpc/internal/backoff google.golang.org/grpc/internal/grpcsync gopkg.in/rethinkdb/rethinkdb-go.v6/vendor/gopkg.in/cenkalti/backoff.v2 -github.com/spf13/afero/internal/common -internal/filepathlite -embed google.golang.org/protobuf/internal/editiondefaults os -internal/fmtsort -encoding/binary crypto/internal/fips140/nistec encoding/base64 -github.com/klauspost/compress/internal/le -filippo.io/edwards25519/field vendor/golang.org/x/crypto/internal/poly1305 +github.com/klauspost/compress/internal/le github.com/cespare/xxhash +filippo.io/edwards25519/field github.com/klauspost/compress/internal/snapref golang.org/x/sys/unix filippo.io/edwards25519 -encoding/pem github.com/dvsekhvalnov/jose2go/base64url +encoding/pem github.com/dvsekhvalnov/jose2go/compact crypto/internal/sysrand -io/ioutil -fmt +path/filepath google.golang.org/protobuf/internal/detrand +io/ioutil google.golang.org/grpc/internal/envconfig -path/filepath +fmt +net github.com/bugsnag/bugsnag-go/device -internal/sysinfo +crypto/internal/entropy os/signal github.com/prometheus/procfs/internal/util -net -crypto/internal/entropy +internal/sysinfo crypto/internal/fips140/drbg crypto/internal/fips140only -crypto/internal/fips140/ed25519 crypto/internal/fips140/aes/gcm +crypto/internal/fips140/ed25519 crypto/internal/fips140/rsa crypto/internal/fips140/mlkem github.com/spf13/afero/mem -os/exec -crypto/rc4 crypto/md5 crypto/cipher -github.com/theupdateframework/notary -github.com/bugsnag/panicwrap crypto/internal/fips140/ecdh crypto/internal/fips140/ecdsa +crypto/rc4 +os/exec +github.com/theupdateframework/notary +vendor/golang.org/x/crypto/chacha20 crypto/internal/boring crypto/des -vendor/golang.org/x/crypto/chacha20 -crypto/aes -crypto/sha256 -crypto/hmac crypto/sha512 -crypto/sha1 +crypto/sha256 crypto/ecdh +crypto/aes +crypto/sha1 +crypto/hmac +vendor/golang.org/x/crypto/chacha20poly1305 +github.com/docker/go/canonical/json log encoding/json -github.com/docker/go/canonical/json -compress/flate -vendor/golang.org/x/net/http2/hpack encoding/hex -mime +math/big net/url +golang.org/x/crypto/pbkdf2 +mime mime/quotedprintable -math/big +compress/flate +vendor/golang.org/x/text/unicode/bidi vendor/golang.org/x/text/unicode/norm +vendor/golang.org/x/net/http2/hpack +compress/gzip net/http/internal github.com/miekg/pkcs11 -vendor/golang.org/x/crypto/chacha20poly1305 flag encoding/csv -golang.org/x/crypto/pbkdf2 -text/template/parse golang.org/x/text/unicode/norm +vendor/golang.org/x/text/secure/bidirule +github.com/fsnotify/fsnotify/internal +text/template/parse +github.com/spf13/jwalterweatherman +github.com/fsnotify/fsnotify github.com/subosito/gotenv github.com/hashicorp/hcl/hcl/token text/tabwriter +github.com/hashicorp/hcl/hcl/ast +crypto/rand +crypto/elliptic +crypto/internal/boring/bbig +encoding/asn1 +crypto/dsa +github.com/docker/distribution/uuid +crypto/rsa +crypto/ed25519 +crypto/internal/hpke +github.com/sirupsen/logrus +golang.org/x/crypto/ed25519 +github.com/theupdateframework/notary/tuf/validation +vendor/golang.org/x/net/idna +text/template +github.com/hashicorp/hcl/hcl/scanner +github.com/hashicorp/hcl/json/token gopkg.in/ini.v1 +github.com/hashicorp/hcl/json/scanner +vendor/golang.org/x/crypto/cryptobyte +crypto/x509/pkix +github.com/hashicorp/hcl/hcl/parser +github.com/hashicorp/hcl/json/parser +github.com/spf13/viper/internal/encoding/json github.com/pelletier/go-toml/v2/internal/danger +github.com/hashicorp/hcl/hcl/printer +github.com/pelletier/go-toml/v2/unstable +github.com/hashicorp/hcl +crypto/ecdsa gopkg.in/yaml.v3 google.golang.org/protobuf/internal/errors +google.golang.org/protobuf/encoding/protowire +github.com/pelletier/go-toml/v2/internal/tracker +github.com/spf13/viper/internal/encoding/hcl go/token google.golang.org/protobuf/internal/version -vendor/golang.org/x/text/unicode/bidi -github.com/spf13/jwalterweatherman -google.golang.org/protobuf/encoding/protowire -github.com/hashicorp/hcl/hcl/ast -github.com/hashicorp/hcl/hcl/scanner -github.com/hashicorp/hcl/json/token -github.com/pelletier/go-toml/v2/unstable -golang.org/x/net/internal/timeseries -github.com/hashicorp/hcl/json/scanner google.golang.org/protobuf/reflect/protoreflect +golang.org/x/net/internal/timeseries +github.com/pelletier/go-toml/v2 +html/template google.golang.org/grpc/internal/grpclog -compress/gzip google.golang.org/grpc/attributes -github.com/hashicorp/hcl/hcl/parser google.golang.org/grpc/internal/idle -golang.org/x/text/unicode/bidi golang.org/x/net/http2/hpack -github.com/hashicorp/hcl/json/parser -database/sql/driver +golang.org/x/text/unicode/bidi +google.golang.org/grpc/grpclog github.com/pkg/errors -compress/zlib -github.com/hashicorp/hcl/hcl/printer +google.golang.org/grpc/connectivity +github.com/bugsnag/panicwrap github.com/bugsnag/bugsnag-go/errors -github.com/pelletier/go-toml/v2/internal/tracker +database/sql/driver +github.com/spf13/cast +compress/zlib github.com/opencontainers/go-digest -github.com/opencontainers/image-spec/specs-go -github.com/hashicorp/hcl -vendor/golang.org/x/text/secure/bidirule -github.com/prometheus/procfs/internal/fs -database/sql -runtime/debug -github.com/klauspost/compress/fse -os/user -go/scanner -github.com/distribution/reference -github.com/opencontainers/image-spec/specs-go/v1 -text/template -github.com/hailocab/go-hostpool -github.com/opentracing/opentracing-go/log -gopkg.in/rethinkdb/rethinkdb-go.v6/encoding -gopkg.in/rethinkdb/rethinkdb-go.v6/types golang.org/x/text/secure/bidirule -vendor/golang.org/x/net/idna -internal/profile -go/ast -github.com/fsnotify/fsnotify/internal -golang.org/x/term -runtime/pprof -runtime/trace -golang.org/x/net/idna -github.com/theupdateframework/notary/tuf/validation -github.com/sirupsen/logrus -github.com/spf13/viper/internal/encoding/hcl -github.com/spf13/viper/internal/encoding/json -github.com/pelletier/go-toml/v2 -github.com/davecgh/go-spew/spew +database/sql google.golang.org/protobuf/internal/descfmt -google.golang.org/grpc/grpclog google.golang.org/protobuf/internal/descopts google.golang.org/protobuf/internal/strs google.golang.org/protobuf/internal/encoding/messageset -github.com/fsnotify/fsnotify -google.golang.org/protobuf/internal/encoding/text google.golang.org/protobuf/internal/genid -crypto/rand -crypto/elliptic -crypto/internal/boring/bbig -github.com/docker/distribution/uuid -encoding/asn1 -crypto/rsa -crypto/dsa -crypto/ed25519 -crypto/internal/hpke +github.com/spf13/viper/internal/encoding/toml google.golang.org/protobuf/internal/order google.golang.org/protobuf/reflect/protoregistry -golang.org/x/crypto/ed25519 -google.golang.org/grpc/connectivity -google.golang.org/protobuf/internal/encoding/json -github.com/klauspost/compress/huff0 +google.golang.org/protobuf/internal/encoding/text +github.com/spf13/viper/internal/encoding/dotenv +github.com/spf13/viper/internal/encoding/ini google.golang.org/protobuf/runtime/protoiface -github.com/theupdateframework/notary/passphrase +google.golang.org/protobuf/internal/encoding/json +google.golang.org/protobuf/internal/protolazy +golang.org/x/net/idna +github.com/distribution/reference +google.golang.org/protobuf/proto +github.com/opencontainers/image-spec/specs-go +github.com/opencontainers/image-spec/specs-go/v1 google.golang.org/protobuf/internal/encoding/defval +github.com/spf13/viper/internal/encoding/yaml +github.com/prometheus/procfs/internal/fs +runtime/debug +golang.org/x/term +github.com/klauspost/compress/fse golang.org/x/crypto/bcrypt github.com/lib/pq/scram -github.com/dvsekhvalnov/jose2go/arrays -github.com/spf13/viper/internal/encoding/yaml -github.com/pmezard/go-difflib/difflib -github.com/stretchr/testify/assert/yaml -html/template -testing -google.golang.org/protobuf/internal/protolazy -github.com/dvsekhvalnov/jose2go/aes -github.com/dvsekhvalnov/jose2go/kdf -github.com/spf13/viper/internal/encoding/toml -google.golang.org/protobuf/proto -github.com/jinzhu/gorm -crypto/x509/pkix -vendor/golang.org/x/crypto/cryptobyte -github.com/klauspost/compress/zstd -crypto/ecdsa -google.golang.org/protobuf/encoding/protodelim -google.golang.org/protobuf/encoding/prototext +os/user +go/scanner +github.com/theupdateframework/notary/passphrase +github.com/hailocab/go-hostpool +github.com/opentracing/opentracing-go/log google.golang.org/protobuf/internal/filedesc -github.com/spf13/cast -github.com/spf13/viper/internal/encoding/dotenv -github.com/spf13/viper/internal/encoding/ini +google.golang.org/protobuf/encoding/prototext +google.golang.org/protobuf/encoding/protodelim +go/ast +github.com/klauspost/compress/huff0 +gopkg.in/rethinkdb/rethinkdb-go.v6/encoding +gopkg.in/rethinkdb/rethinkdb-go.v6/types +internal/profile +runtime/pprof +crypto/x509 +net/textproto +vendor/golang.org/x/net/http/httpproxy +github.com/mitchellh/mapstructure +github.com/spf13/pflag +mime/multipart +vendor/golang.org/x/net/http/httpguts +google.golang.org/grpc/internal google.golang.org/protobuf/internal/encoding/tag google.golang.org/protobuf/encoding/protojson -google.golang.org/protobuf/internal/impl -vendor/golang.org/x/net/http/httpproxy +golang.org/x/net/http/httpguts google.golang.org/grpc/internal/syscall +google.golang.org/grpc/metadata +google.golang.org/grpc/codes +google.golang.org/protobuf/internal/impl google.golang.org/grpc/internal/resolver/dns/internal -net/textproto -google.golang.org/grpc/internal -github.com/mitchellh/mapstructure -crypto/x509 github.com/google/uuid -github.com/spf13/pflag +google.golang.org/grpc/internal/grpcutil github.com/prometheus/procfs -google.golang.org/grpc/metadata -google.golang.org/grpc/codes -golang.org/x/net/http/httpguts -vendor/golang.org/x/net/http/httpguts -mime/multipart google.golang.org/grpc/internal/balancerload -google.golang.org/grpc/tap -google.golang.org/grpc/internal/grpcutil google.golang.org/grpc/stats google.golang.org/grpc/encoding +google.golang.org/grpc/tap +github.com/klauspost/compress/zstd +runtime/trace +github.com/jinzhu/gorm +github.com/dvsekhvalnov/jose2go/arrays +github.com/davecgh/go-spew/spew +github.com/dvsekhvalnov/jose2go/aes +github.com/dvsekhvalnov/jose2go/kdf +github.com/pmezard/go-difflib/difflib +github.com/stretchr/testify/assert/yaml +testing github.com/dvsekhvalnov/jose2go/keys/ecc github.com/theupdateframework/notary/tuf/data crypto/tls @@ -2010,526 +2046,526 @@ github.com/spf13/cobra github.com/theupdateframework/notary/client/changelist github.com/theupdateframework/notary/tuf/utils -google.golang.org/protobuf/internal/filetype -google.golang.org/protobuf/runtime/protoimpl -google.golang.org/protobuf/types/known/emptypb -google.golang.org/protobuf/protoadapt -google.golang.org/protobuf/types/known/timestamppb -google.golang.org/protobuf/types/known/durationpb -google.golang.org/protobuf/types/known/anypb -google.golang.org/protobuf/types/descriptorpb -google.golang.org/grpc/encoding/proto -google.golang.org/grpc/internal/pretty -github.com/golang/protobuf/ptypes/empty -github.com/golang/protobuf/ptypes/duration -github.com/golang/protobuf/ptypes/timestamp -github.com/prometheus/client_model/go -google.golang.org/genproto/googleapis/rpc/status -google.golang.org/grpc/binarylog/grpc_binarylog_v1 -google.golang.org/grpc/internal/status -google.golang.org/grpc/status -github.com/prometheus/common/model -google.golang.org/grpc/internal/binarylog +google.golang.org/grpc/internal/credentials net/http/httptrace github.com/docker/go-connections/tlsconfig -google.golang.org/grpc/internal/credentials github.com/docker/libtrust github.com/lib/pq github.com/go-sql-driver/mysql google.golang.org/grpc/credentials net/http -google.golang.org/grpc/peer +google.golang.org/protobuf/internal/filetype +google.golang.org/grpc/internal/channelz google.golang.org/grpc/credentials/insecure google.golang.org/grpc/resolver -google.golang.org/grpc/internal/channelz -google.golang.org/protobuf/internal/editionssupport -google.golang.org/protobuf/types/gofeaturespb -google.golang.org/grpc/internal/resolver/passthrough -google.golang.org/grpc/balancer/grpclb/state +google.golang.org/protobuf/runtime/protoimpl +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 -github.com/prometheus/client_golang/prometheus/internal -google.golang.org/protobuf/reflect/protodesc +google.golang.org/grpc/balancer/grpclb/state +google.golang.org/protobuf/types/known/emptypb +google.golang.org/protobuf/protoadapt +google.golang.org/protobuf/types/known/durationpb +google.golang.org/protobuf/types/known/timestamppb +google.golang.org/protobuf/types/known/anypb google.golang.org/grpc/internal/resolver/unix -google.golang.org/grpc/internal/resolver/dns -google.golang.org/grpc/resolver/dns +github.com/golang/protobuf/ptypes/empty +google.golang.org/grpc/encoding/proto google.golang.org/grpc/channelz +google.golang.org/grpc/internal/pretty google.golang.org/grpc/balancer +github.com/golang/protobuf/ptypes/duration +google.golang.org/genproto/googleapis/rpc/status +google.golang.org/grpc/internal/resolver/dns +google.golang.org/protobuf/types/descriptorpb +github.com/golang/protobuf/ptypes/timestamp +github.com/prometheus/client_model/go google.golang.org/grpc/balancer/base +google.golang.org/grpc/internal/status google.golang.org/grpc/internal/serviceconfig +google.golang.org/grpc/binarylog/grpc_binarylog_v1 +google.golang.org/grpc/resolver/dns google.golang.org/grpc/balancer/roundrobin google.golang.org/grpc/internal/balancer/gracefulswitch +google.golang.org/grpc/status google.golang.org/grpc/internal/resolver +github.com/prometheus/common/model +google.golang.org/grpc/internal/binarylog +google.golang.org/protobuf/internal/editionssupport +google.golang.org/protobuf/types/gofeaturespb +google.golang.org/protobuf/reflect/protodesc +github.com/prometheus/client_golang/prometheus/internal github.com/golang/protobuf/proto gopkg.in/rethinkdb/rethinkdb-go.v6/ql2 -github.com/docker/distribution/registry/auth -github.com/docker/distribution/registry/client/transport github.com/theupdateframework/notary/storage -net/http/pprof golang.org/x/net/trace -github.com/gorilla/mux -github.com/docker/distribution/registry/api/errcode -net/http/httptest +github.com/spf13/afero +github.com/magiconair/properties github.com/bugsnag/bugsnag-go/sessions -expvar -github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil/header -github.com/prometheus/common/expfmt -github.com/opentracing/opentracing-go -github.com/docker/distribution/registry/client/auth/challenge net/http/httputil -github.com/magiconair/properties -github.com/docker/distribution -github.com/spf13/afero +github.com/gorilla/mux +github.com/docker/distribution/registry/auth golang.org/x/net/http2 -github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil -github.com/theupdateframework/notary/server/errors -github.com/opentracing/opentracing-go/ext +github.com/docker/distribution/registry/api/errcode +github.com/docker/distribution +github.com/docker/distribution/registry/client/auth/challenge github.com/bugsnag/bugsnag-go -github.com/stretchr/testify/assert -gopkg.in/rethinkdb/rethinkdb-go.v6 +github.com/docker/distribution/registry/client/transport +expvar github.com/theupdateframework/notary/trustmanager github.com/docker/distribution/context github.com/docker/distribution/registry/api/v2 +github.com/prometheus/common/expfmt github.com/spf13/viper/internal/encoding/javaproperties +github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil/header 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/docker/distribution/registry/auth/htpasswd +github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil +github.com/Shopify/logrus-bugsnag +github.com/theupdateframework/notary/server/errors +github.com/opentracing/opentracing-go github.com/docker/distribution/health +github.com/docker/distribution/registry/auth/htpasswd github.com/docker/distribution/registry/auth/token -github.com/Shopify/logrus-bugsnag -github.com/theupdateframework/notary/trustpinning +net/http/pprof +net/http/httptest +github.com/spf13/viper +github.com/opentracing/opentracing-go/ext github.com/theupdateframework/notary/trustmanager/yubikey +github.com/theupdateframework/notary/trustpinning github.com/theupdateframework/notary/tuf/testutils/keys -github.com/spf13/viper +gopkg.in/rethinkdb/rethinkdb-go.v6 github.com/theupdateframework/notary/tuf -github.com/stretchr/testify/require +github.com/stretchr/testify/assert +github.com/theupdateframework/notary/vendor/github.com/prometheus/client_golang/prometheus +github.com/prometheus/client_golang/prometheus +github.com/theupdateframework/notary/utils github.com/theupdateframework/notary/tuf/testutils github.com/theupdateframework/notary/client -github.com/theupdateframework/notary/utils -github.com/theupdateframework/notary/tuf/testutils/interfaces +google.golang.org/grpc/internal/transport +github.com/stretchr/testify/require github.com/theupdateframework/notary/storage/rethinkdb +github.com/prometheus/client_golang/prometheus/promhttp github.com/theupdateframework/notary/signer/keydbstore github.com/theupdateframework/notary/server/storage -google.golang.org/grpc/internal/transport -github.com/prometheus/client_golang/prometheus/promhttp +github.com/theupdateframework/notary/tuf/testutils/interfaces github.com/docker/go-metrics +google.golang.org/grpc github.com/theupdateframework/notary/server/snapshot -github.com/theupdateframework/notary/server/timestamp -github.com/theupdateframework/notary/server/handlers github.com/docker/distribution/metrics +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 -google.golang.org/grpc -github.com/theupdateframework/notary/server github.com/docker/distribution/registry/client +github.com/theupdateframework/notary/server github.com/docker/distribution/registry/client/auth github.com/theupdateframework/notary/cmd/notary google.golang.org/grpc/health/grpc_health_v1 github.com/theupdateframework/notary/trustmanager/remoteks github.com/theupdateframework/notary/proto google.golang.org/grpc/health -github.com/theupdateframework/notary/signer/client -github.com/theupdateframework/notary/signer github.com/theupdateframework/notary/cmd/escrow +github.com/theupdateframework/notary/signer +github.com/theupdateframework/notary/signer/client github.com/theupdateframework/notary/signer/api github.com/theupdateframework/notary/cmd/notary-server github.com/theupdateframework/notary/cmd/notary-signer make[1]: Leaving directory '/build/reproducible-path/notary-0.7.0+git20240416.9d2b3b3+ds1' dh_auto_test -O--builddirectory=/build/reproducible-path/notary-0.7.0\+git20240416.9d2b3b3\+ds1/_build -O--buildsystem=golang - cd _build && go test -vet=off -v -p 22 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 + cd _build && go test -vet=off -v -p 10 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 (1.27s) +--- PASS: Test0Dot1Migration (0.20s) === RUN Test0Dot3Migration ---- PASS: Test0Dot3Migration (0.08s) +--- PASS: Test0Dot3Migration (0.22s) === RUN Test0Dot1RepoFormat -time="2026-04-09T19:30:35-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.44s) +time="2025-03-08T15:15:51+14:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +--- PASS: Test0Dot1RepoFormat (2.17s) === RUN Test0Dot3RepoFormat backwards_compatibility_test.go:248: Disable FTBFS timebomb. https://bugs.debian.org/1078632 --- SKIP: Test0Dot3RepoFormat (0.00s) === RUN TestDownloading0Dot1RepoFormat ---- PASS: TestDownloading0Dot1RepoFormat (0.02s) +--- PASS: TestDownloading0Dot1RepoFormat (0.06s) === RUN TestDownloading0Dot3RepoFormat backwards_compatibility_test.go:343: Disable FTBFS timebomb. https://bugs.debian.org/1078632 --- SKIP: TestDownloading0Dot3RepoFormat (0.00s) === RUN TestInitRepositoryManagedRolesIncludingRoot ---- PASS: TestInitRepositoryManagedRolesIncludingRoot (0.01s) +--- PASS: TestInitRepositoryManagedRolesIncludingRoot (0.04s) === RUN TestInitRepositoryManagedRolesInvalidRole ---- PASS: TestInitRepositoryManagedRolesInvalidRole (0.00s) +--- PASS: TestInitRepositoryManagedRolesInvalidRole (0.03s) === RUN TestInitRepositoryManagedRolesIncludingTargets ---- PASS: TestInitRepositoryManagedRolesIncludingTargets (0.00s) +--- PASS: TestInitRepositoryManagedRolesIncludingTargets (0.04s) === RUN TestInitRepositoryManagedRolesIncludingTimestamp ---- PASS: TestInitRepositoryManagedRolesIncludingTimestamp (0.04s) +--- PASS: TestInitRepositoryManagedRolesIncludingTimestamp (0.20s) === RUN TestInitRepositoryWithCerts ---- PASS: TestInitRepositoryWithCerts (0.05s) +--- PASS: TestInitRepositoryWithCerts (0.35s) === RUN TestMatchKeyIDsWithPublicKeys ---- PASS: TestMatchKeyIDsWithPublicKeys (0.01s) +--- PASS: TestMatchKeyIDsWithPublicKeys (0.08s) === RUN TestInitRepositoryNeedsRemoteTimestampKey ---- PASS: TestInitRepositoryNeedsRemoteTimestampKey (0.02s) +--- PASS: TestInitRepositoryNeedsRemoteTimestampKey (0.09s) === RUN TestInitRepositoryNeedsRemoteSnapshotKey ---- PASS: TestInitRepositoryNeedsRemoteSnapshotKey (0.01s) +--- PASS: TestInitRepositoryNeedsRemoteSnapshotKey (0.06s) === RUN TestInitRepoServerOnlyManagesTimestampKey ---- PASS: TestInitRepoServerOnlyManagesTimestampKey (0.18s) +--- PASS: TestInitRepoServerOnlyManagesTimestampKey (1.11s) === RUN TestInitRepoServerManagesTimestampAndSnapshotKeys ---- PASS: TestInitRepoServerManagesTimestampAndSnapshotKeys (0.15s) +--- PASS: TestInitRepoServerManagesTimestampAndSnapshotKeys (0.78s) === RUN TestInitRepoAttemptsExceeded ---- PASS: TestInitRepoAttemptsExceeded (0.09s) +--- PASS: TestInitRepoAttemptsExceeded (0.49s) === RUN TestInitRepoPasswordInvalid ---- PASS: TestInitRepoPasswordInvalid (0.02s) +--- PASS: TestInitRepoPasswordInvalid (0.10s) === RUN TestAddTargetToTargetRoleByDefault ---- PASS: TestAddTargetToTargetRoleByDefault (0.08s) +--- PASS: TestAddTargetToTargetRoleByDefault (0.38s) === RUN TestAddTargetToSpecifiedValidRoles ---- PASS: TestAddTargetToSpecifiedValidRoles (0.06s) +--- PASS: TestAddTargetToSpecifiedValidRoles (0.41s) === RUN TestAddTargetToSpecifiedInvalidRoles ---- PASS: TestAddTargetToSpecifiedInvalidRoles (0.08s) +--- PASS: TestAddTargetToSpecifiedInvalidRoles (0.34s) === RUN TestAddTargetWithInvalidTarget ---- PASS: TestAddTargetWithInvalidTarget (0.04s) +--- PASS: TestAddTargetWithInvalidTarget (0.44s) === RUN TestAddTargetErrorWritingChanges ---- PASS: TestAddTargetErrorWritingChanges (0.03s) +--- PASS: TestAddTargetErrorWritingChanges (0.16s) === RUN TestRemoveTargetToTargetRoleByDefault ---- PASS: TestRemoveTargetToTargetRoleByDefault (0.07s) +--- PASS: TestRemoveTargetToTargetRoleByDefault (0.41s) === RUN TestRemoveTargetFromSpecifiedValidRoles ---- PASS: TestRemoveTargetFromSpecifiedValidRoles (0.06s) +--- PASS: TestRemoveTargetFromSpecifiedValidRoles (0.24s) === RUN TestRemoveTargetToSpecifiedInvalidRoles ---- PASS: TestRemoveTargetToSpecifiedInvalidRoles (0.06s) +--- PASS: TestRemoveTargetToSpecifiedInvalidRoles (0.41s) === RUN TestRemoveTargetErrorWritingChanges ---- PASS: TestRemoveTargetErrorWritingChanges (0.03s) +--- PASS: TestRemoveTargetErrorWritingChanges (0.19s) === RUN TestListTarget ---- PASS: TestListTarget (0.83s) +--- PASS: TestListTarget (5.63s) === RUN TestListTargetRestrictsDelegationPaths ---- PASS: TestListTargetRestrictsDelegationPaths (0.15s) +--- PASS: TestListTargetRestrictsDelegationPaths (1.06s) === RUN TestValidateRootKey ---- PASS: TestValidateRootKey (0.07s) +--- PASS: TestValidateRootKey (0.50s) === RUN TestGetChangelist ---- PASS: TestGetChangelist (0.07s) +--- PASS: TestGetChangelist (0.44s) === RUN TestPublishBareRepo ---- PASS: TestPublishBareRepo (0.71s) +--- PASS: TestPublishBareRepo (4.37s) === RUN TestPublishUninitializedRepo -time="2026-04-09T19:30:38-12:00" level=info msg="No TUF data found locally or remotely - initializing repository docker.com/notary for the first time" ---- PASS: TestPublishUninitializedRepo (0.06s) +time="2025-03-08T15:16:11+14:00" level=info msg="No TUF data found locally or remotely - initializing repository docker.com/notary for the first time" +--- PASS: TestPublishUninitializedRepo (0.25s) === RUN TestPublishClientHasSnapshotKey ---- PASS: TestPublishClientHasSnapshotKey (0.72s) +--- PASS: TestPublishClientHasSnapshotKey (4.09s) === RUN TestPublishAfterInitServerHasSnapshotKey ---- PASS: TestPublishAfterInitServerHasSnapshotKey (0.72s) +--- PASS: TestPublishAfterInitServerHasSnapshotKey (4.09s) === RUN TestPublishAfterPullServerHasSnapshotKey ---- PASS: TestPublishAfterPullServerHasSnapshotKey (0.23s) +--- PASS: TestPublishAfterPullServerHasSnapshotKey (1.79s) === RUN TestPublishNoOneHasSnapshotKey ---- PASS: TestPublishNoOneHasSnapshotKey (0.13s) +--- PASS: TestPublishNoOneHasSnapshotKey (0.89s) === RUN TestPublishSnapshotCorrupt ---- PASS: TestPublishSnapshotCorrupt (0.39s) +--- PASS: TestPublishSnapshotCorrupt (2.41s) === RUN TestPublishTargetsCorrupt ---- PASS: TestPublishTargetsCorrupt (0.20s) +--- PASS: TestPublishTargetsCorrupt (1.13s) === RUN TestPublishRootCorrupt -time="2026-04-09T19:30:41-12:00" level=error msg="Could not publish Repository since we could not update: invalid character 'h' in literal true (expecting 'r')" -time="2026-04-09T19:30:41-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.15s) +time="2025-03-08T15:16:26+14:00" level=error msg="Could not publish Repository since we could not update: invalid character 'h' in literal true (expecting 'r')" +time="2025-03-08T15:16:27+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.72s) === RUN TestPublishSnapshotLocalKeysCreatedFirst ---- PASS: TestPublishSnapshotLocalKeysCreatedFirst (0.01s) +--- PASS: TestPublishSnapshotLocalKeysCreatedFirst (0.06s) === RUN TestPublishDelegations ---- PASS: TestPublishDelegations (0.27s) +--- PASS: TestPublishDelegations (1.30s) === RUN TestPublishDelegationsX509 ---- PASS: TestPublishDelegationsX509 (0.28s) +--- PASS: TestPublishDelegationsX509 (1.62s) === RUN TestPublishTargetsDelegationScopeFailIfNoKeys -time="2026-04-09T19:30:41-12:00" level=error msg="couldn't add target to targets/a/b: tuf: invalid role targets/a/b. delegation does not exist" -time="2026-04-09T19:30:41-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.24s) +time="2025-03-08T15:16:30+14:00" level=error msg="couldn't add target to targets/a/b: tuf: invalid role targets/a/b. delegation does not exist" +time="2025-03-08T15:16:31+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 (1.34s) === RUN TestPublishTargetsDelegationSuccessLocallyHasRoles ---- PASS: TestPublishTargetsDelegationSuccessLocallyHasRoles (0.26s) +--- PASS: TestPublishTargetsDelegationSuccessLocallyHasRoles (1.69s) === RUN TestPublishTargetsDelegationNoTargetsKeyNeeded ---- PASS: TestPublishTargetsDelegationNoTargetsKeyNeeded (0.32s) +--- PASS: TestPublishTargetsDelegationNoTargetsKeyNeeded (1.68s) === RUN TestPublishTargetsDelegationSuccessNeedsToDownloadRoles ---- PASS: TestPublishTargetsDelegationSuccessNeedsToDownloadRoles (0.30s) +--- PASS: TestPublishTargetsDelegationSuccessNeedsToDownloadRoles (1.64s) === RUN TestPublishTargetsDelegationFromTwoRepos ---- PASS: TestPublishTargetsDelegationFromTwoRepos (0.26s) +--- PASS: TestPublishTargetsDelegationFromTwoRepos (1.52s) === RUN TestPublishRemoveDelegationKeyFromDelegationRole -time="2026-04-09T19:30:43-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2026-04-09T19:30:43-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: a984da5ce1307866e042844dea64c087afb85ce32c65ce15b3aabad02406f404" ---- PASS: TestPublishRemoveDelegationKeyFromDelegationRole (0.17s) +time="2025-03-08T15:16:39+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2025-03-08T15:16:39+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: 33c9523a918730f2b15894de1062c06b882f75332049d70bfebc7020ca743797" +--- PASS: TestPublishRemoveDelegationKeyFromDelegationRole (1.08s) === RUN TestPublishRemoveDelegation -time="2026-04-09T19:30:43-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-04-09T19:30:43-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-04-09T19:30:43-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2026-04-09T19:30:43-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.17s) +time="2025-03-08T15:16:39+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="2025-03-08T15:16:39+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="2025-03-08T15:16:40+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2025-03-08T15:16:40+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.97s) === RUN TestPublishSucceedsDespiteDelegationCorrupt ---- PASS: TestPublishSucceedsDespiteDelegationCorrupt (0.22s) +--- PASS: TestPublishSucceedsDespiteDelegationCorrupt (1.45s) === RUN TestRotateKeyInvalidRole ---- PASS: TestRotateKeyInvalidRole (0.10s) +--- PASS: TestRotateKeyInvalidRole (0.47s) === RUN TestRemoteRotationError ---- PASS: TestRemoteRotationError (0.03s) +--- PASS: TestRemoteRotationError (0.14s) === RUN TestRemoteRotationEndpointError ---- PASS: TestRemoteRotationEndpointError (0.07s) +--- PASS: TestRemoteRotationEndpointError (0.50s) === RUN TestRemoteRotationNoRootKey ---- PASS: TestRemoteRotationNoRootKey (0.10s) +--- PASS: TestRemoteRotationNoRootKey (0.75s) === RUN TestRemoteRotationNoInit -time="2026-04-09T19:30:44-12:00" level=info msg="No TUF data found locally or remotely - initializing repository docker.com/notary for the first time" ---- PASS: TestRemoteRotationNoInit (0.06s) +time="2025-03-08T15:16:43+14:00" level=info msg="No TUF data found locally or remotely - initializing repository docker.com/notary for the first time" +--- PASS: TestRemoteRotationNoInit (0.42s) === RUN TestRotateBeforePublishFromRemoteKeyToLocalKey ---- PASS: TestRotateBeforePublishFromRemoteKeyToLocalKey (0.32s) +--- PASS: TestRotateBeforePublishFromRemoteKeyToLocalKey (2.35s) === RUN TestRotateKeyAfterPublishNoServerManagementChange ---- PASS: TestRotateKeyAfterPublishNoServerManagementChange (0.98s) +--- PASS: TestRotateKeyAfterPublishNoServerManagementChange (5.38s) === RUN TestRotateKeyAfterPublishServerManagementChange ---- PASS: TestRotateKeyAfterPublishServerManagementChange (1.03s) +--- PASS: TestRotateKeyAfterPublishServerManagementChange (5.08s) === RUN TestRotateRootKey ---- PASS: TestRotateRootKey (0.31s) +--- PASS: TestRotateRootKey (1.17s) === RUN TestRotateRootMultiple ---- PASS: TestRotateRootMultiple (0.43s) +--- PASS: TestRotateRootMultiple (1.14s) === RUN TestRotateRootKeyProvided ---- PASS: TestRotateRootKeyProvided (0.32s) +--- PASS: TestRotateRootKeyProvided (0.69s) === RUN TestRotateRootKeyLegacySupport ---- PASS: TestRotateRootKeyLegacySupport (0.49s) +--- PASS: TestRotateRootKeyLegacySupport (1.49s) === RUN TestRemoteServerUnavailableNoLocalCache -time="2026-04-09T19:30:47-12:00" level=error msg="Could not publish Repository since we could not update: unable to reach trust server at this time: 500." ---- PASS: TestRemoteServerUnavailableNoLocalCache (0.00s) +time="2025-03-08T15:17:01+14:00" level=error msg="Could not publish Repository since we could not update: unable to reach trust server at this time: 500." +--- PASS: TestRemoteServerUnavailableNoLocalCache (0.01s) === RUN TestAddDelegationChangefileValid ---- PASS: TestAddDelegationChangefileValid (0.03s) +--- PASS: TestAddDelegationChangefileValid (0.13s) === RUN TestAddDelegationChangefileApplicable ---- PASS: TestAddDelegationChangefileApplicable (0.04s) +--- PASS: TestAddDelegationChangefileApplicable (0.13s) === RUN TestAddDelegationErrorWritingChanges ---- PASS: TestAddDelegationErrorWritingChanges (0.03s) +--- PASS: TestAddDelegationErrorWritingChanges (0.14s) === RUN TestRemoveDelegationChangefileValid ---- PASS: TestRemoveDelegationChangefileValid (0.03s) +--- PASS: TestRemoveDelegationChangefileValid (0.12s) === RUN TestRemoveDelegationChangefileApplicable -time="2026-04-09T19:30: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-04-09T19:30: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" ---- PASS: TestRemoveDelegationChangefileApplicable (0.03s) +time="2025-03-08T15:17:01+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="2025-03-08T15:17:01+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.13s) === RUN TestClearAllPathsDelegationChangefileApplicable ---- PASS: TestClearAllPathsDelegationChangefileApplicable (0.03s) +--- PASS: TestClearAllPathsDelegationChangefileApplicable (0.12s) === RUN TestFullAddDelegationChangefileApplicable ---- PASS: TestFullAddDelegationChangefileApplicable (0.04s) +--- PASS: TestFullAddDelegationChangefileApplicable (0.16s) === RUN TestFullRemoveDelegationChangefileApplicable ---- PASS: TestFullRemoveDelegationChangefileApplicable (0.04s) +--- PASS: TestFullRemoveDelegationChangefileApplicable (0.14s) === RUN TestRemoveDelegationErrorWritingChanges ---- PASS: TestRemoveDelegationErrorWritingChanges (0.03s) +--- PASS: TestRemoveDelegationErrorWritingChanges (0.14s) === RUN TestClientInvalidURL --- PASS: TestClientInvalidURL (0.00s) === RUN TestPublishTargetsDelegationCanUseUserKeyWithArbitraryRole ---- PASS: TestPublishTargetsDelegationCanUseUserKeyWithArbitraryRole (0.58s) +--- PASS: TestPublishTargetsDelegationCanUseUserKeyWithArbitraryRole (2.62s) === RUN TestDeleteRepo ---- PASS: TestDeleteRepo (0.05s) +--- PASS: TestDeleteRepo (0.24s) === RUN TestDeleteRemoteRepo ---- PASS: TestDeleteRemoteRepo (0.17s) +--- PASS: TestDeleteRemoteRepo (0.84s) === RUN TestListRoles ---- PASS: TestListRoles (0.44s) +--- PASS: TestListRoles (1.99s) === RUN TestGetAllTargetInfo ---- PASS: TestGetAllTargetInfo (0.29s) +--- PASS: TestGetAllTargetInfo (1.13s) === RUN TestUpdateSucceedsEvenIfCannotWriteNewRepo -time="2026-04-09T19:30:49-12:00" level=error msg="could not save root to cache: Non-writable" ---- PASS: TestUpdateSucceedsEvenIfCannotWriteNewRepo (0.22s) +time="2025-03-08T15:17:09+14:00" level=error msg="could not save root to cache: Non-writable" +--- PASS: TestUpdateSucceedsEvenIfCannotWriteNewRepo (0.91s) === RUN TestUpdateSucceedsEvenIfCannotWriteExistingRepo ---- PASS: TestUpdateSucceedsEvenIfCannotWriteExistingRepo (0.94s) +--- PASS: TestUpdateSucceedsEvenIfCannotWriteExistingRepo (4.21s) === RUN TestUpdateInOfflineMode -time="2026-04-09T19:30: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-04-09T19:30:51-12:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" ---- PASS: TestUpdateInOfflineMode (0.09s) +time="2025-03-08T15:17:14+14:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +time="2025-03-08T15:17:14+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.49s) === RUN TestUpdateReplacesCorruptOrMissingMetadata -time="2026-04-09T19:30:51-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:30:51-12:00" level=error msg="Metadata for root expired" ---- PASS: TestUpdateReplacesCorruptOrMissingMetadata (1.89s) +time="2025-03-08T15:17:18+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:17:18+14:00" level=error msg="Metadata for root expired" +--- PASS: TestUpdateReplacesCorruptOrMissingMetadata (9.44s) === RUN TestUpdateFailsIfServerRootKeyChangedWithoutMultiSign -time="2026-04-09T19:30:53-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:30:53-12:00" level=error msg="Metadata for root expired" ---- PASS: TestUpdateFailsIfServerRootKeyChangedWithoutMultiSign (0.16s) +time="2025-03-08T15:17:24+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:17:24+14:00" level=error msg="Metadata for root expired" +--- PASS: TestUpdateFailsIfServerRootKeyChangedWithoutMultiSign (0.73s) === RUN TestUpdateRemoteRootNotExistNoLocalCache ---- PASS: TestUpdateRemoteRootNotExistNoLocalCache (0.08s) +--- PASS: TestUpdateRemoteRootNotExistNoLocalCache (0.39s) === RUN TestUpdateRemoteRootNotExistCanUseLocalCache ---- PASS: TestUpdateRemoteRootNotExistCanUseLocalCache (0.16s) +--- PASS: TestUpdateRemoteRootNotExistCanUseLocalCache (0.78s) === RUN TestUpdateRemoteRootNotExistCannotUseLocalCache ---- PASS: TestUpdateRemoteRootNotExistCannotUseLocalCache (0.17s) +--- PASS: TestUpdateRemoteRootNotExistCannotUseLocalCache (0.80s) === RUN TestUpdateRemoteRoot50XNoLocalCache ---- PASS: TestUpdateRemoteRoot50XNoLocalCache (0.08s) +--- PASS: TestUpdateRemoteRoot50XNoLocalCache (0.43s) === RUN TestUpdateRemoteRoot50XCanUseLocalCache ---- PASS: TestUpdateRemoteRoot50XCanUseLocalCache (0.16s) +--- PASS: TestUpdateRemoteRoot50XCanUseLocalCache (0.76s) === RUN TestUpdateRemoteRoot50XCannotUseLocalCache ---- PASS: TestUpdateRemoteRoot50XCannotUseLocalCache (0.17s) +--- PASS: TestUpdateRemoteRoot50XCannotUseLocalCache (0.78s) === RUN TestUpdateNonRootRemoteMissingMetadataNoLocalCache ---- PASS: TestUpdateNonRootRemoteMissingMetadataNoLocalCache (0.41s) +--- PASS: TestUpdateNonRootRemoteMissingMetadataNoLocalCache (1.79s) === RUN TestUpdateNonRootRemoteMissingMetadataCanUseLocalCache -time="2026-04-09T19:30:54-12:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" ---- PASS: TestUpdateNonRootRemoteMissingMetadataCanUseLocalCache (0.54s) +time="2025-03-08T15:17:31+14:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +--- PASS: TestUpdateNonRootRemoteMissingMetadataCanUseLocalCache (2.18s) === RUN TestUpdateNonRootRemoteMissingMetadataCannotUseLocalCache -time="2026-04-09T19:30:55-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.65s) +time="2025-03-08T15:17:34+14:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +--- PASS: TestUpdateNonRootRemoteMissingMetadataCannotUseLocalCache (2.92s) === RUN TestUpdateNonRootRemote50XNoLocalCache ---- PASS: TestUpdateNonRootRemote50XNoLocalCache (0.41s) +--- PASS: TestUpdateNonRootRemote50XNoLocalCache (1.81s) === RUN TestUpdateNonRootRemote50XCanUseLocalCache -time="2026-04-09T19:30:56-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.54s) +time="2025-03-08T15:17:38+14:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +--- PASS: TestUpdateNonRootRemote50XCanUseLocalCache (2.18s) === RUN TestUpdateNonRootRemote50XCannotUseLocalCache -time="2026-04-09T19:30:56-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.65s) +time="2025-03-08T15:17:41+14:00" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +--- PASS: TestUpdateNonRootRemote50XCannotUseLocalCache (3.39s) === RUN TestUpdateRemoteChecksumWrongNoLocalCache ---- PASS: TestUpdateRemoteChecksumWrongNoLocalCache (0.52s) +--- PASS: TestUpdateRemoteChecksumWrongNoLocalCache (3.17s) === RUN TestUpdateRemoteChecksumWrongCanUseLocalCache ---- PASS: TestUpdateRemoteChecksumWrongCanUseLocalCache (0.73s) +--- PASS: TestUpdateRemoteChecksumWrongCanUseLocalCache (5.56s) === RUN TestUpdateRemoteChecksumWrongCannotUseLocalCache ---- PASS: TestUpdateRemoteChecksumWrongCannotUseLocalCache (0.92s) +--- PASS: TestUpdateRemoteChecksumWrongCannotUseLocalCache (5.65s) === RUN TestUpdateRootRemoteCorruptedNoLocalCache -time="2026-04-09T19:31:00-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:31:00-12:00" level=error msg="Metadata for root expired" ---- PASS: TestUpdateRootRemoteCorruptedNoLocalCache (1.69s) +time="2025-03-08T15:18:02+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:18:03+14:00" level=error msg="Metadata for root expired" +--- PASS: TestUpdateRootRemoteCorruptedNoLocalCache (11.22s) === RUN TestUpdateRootRemoteCorruptedCanUseLocalCache ---- PASS: TestUpdateRootRemoteCorruptedCanUseLocalCache (3.18s) +--- PASS: TestUpdateRootRemoteCorruptedCanUseLocalCache (17.79s) === RUN TestUpdateRootRemoteCorruptedCannotUseLocalCache -time="2026-04-09T19:31:05-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:31:06-12:00" level=error msg="Metadata for root expired" ---- PASS: TestUpdateRootRemoteCorruptedCannotUseLocalCache (3.46s) +time="2025-03-08T15:18:35+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:18:36+14:00" level=error msg="Metadata for root expired" +--- PASS: TestUpdateRootRemoteCorruptedCannotUseLocalCache (18.41s) === RUN TestUpdateNonRootRemoteCorruptedNoLocalCache -time="2026-04-09T19:31:08-12:00" level=error msg="Metadata for targets expired" -time="2026-04-09T19:31:08-12:00" level=error msg="Metadata for targets expired" -time="2026-04-09T19:31:08-12:00" level=error msg="Metadata for snapshot expired" -time="2026-04-09T19:31:08-12:00" level=error msg="Metadata for snapshot expired" -time="2026-04-09T19:31:09-12:00" level=error msg="Metadata for timestamp expired" -time="2026-04-09T19:31:09-12:00" level=error msg="Metadata for timestamp expired" -time="2026-04-09T19:31:09-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2026-04-09T19:31:09-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2026-04-09T19:31:10-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2026-04-09T19:31:10-12:00" level=error msg="Metadata for targets/a expired" -time="2026-04-09T19:31:10-12:00" level=warning msg="Error getting targets/a: targets/a expired at Sat Mar 8 19:31:10 -12 2025" -time="2026-04-09T19:31:10-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2026-04-09T19:31:10-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2026-04-09T19:31:10-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2026-04-09T19:31:10-12:00" level=error msg="Metadata for targets/a/b expired" -time="2026-04-09T19:31:10-12:00" level=warning msg="Error getting targets/a/b: targets/a/b expired at Sat Mar 8 19:31:10 -12 2025" -time="2026-04-09T19:31:11-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2026-04-09T19:31:11-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2026-04-09T19:31:11-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2026-04-09T19:31:11-12:00" level=error msg="Metadata for targets/b expired" -time="2026-04-09T19:31:11-12:00" level=warning msg="Error getting targets/b: targets/b expired at Sat Mar 8 19:31:11 -12 2025" ---- PASS: TestUpdateNonRootRemoteCorruptedNoLocalCache (4.21s) +time="2025-03-08T15:18:48+14:00" level=error msg="Metadata for targets expired" +time="2025-03-08T15:18:48+14:00" level=error msg="Metadata for targets expired" +time="2025-03-08T15:18:51+14:00" level=error msg="Metadata for snapshot expired" +time="2025-03-08T15:18:51+14:00" level=error msg="Metadata for snapshot expired" +time="2025-03-08T15:18:54+14:00" level=error msg="Metadata for timestamp expired" +time="2025-03-08T15:18:54+14:00" level=error msg="Metadata for timestamp expired" +time="2025-03-08T15:18:56+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2025-03-08T15:18:56+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2025-03-08T15:18:57+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2025-03-08T15:18:57+14:00" level=error msg="Metadata for targets/a expired" +time="2025-03-08T15:18:57+14:00" level=warning msg="Error getting targets/a: targets/a expired at Wed Feb 7 15:18:57 +14 2024" +time="2025-03-08T15:18:59+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2025-03-08T15:19:00+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2025-03-08T15:19:00+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2025-03-08T15:19:00+14:00" level=error msg="Metadata for targets/a/b expired" +time="2025-03-08T15:19:00+14:00" level=warning msg="Error getting targets/a/b: targets/a/b expired at Wed Feb 7 15:19:00 +14 2024" +time="2025-03-08T15:19:03+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2025-03-08T15:19:04+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2025-03-08T15:19:04+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2025-03-08T15:19:04+14:00" level=error msg="Metadata for targets/b expired" +time="2025-03-08T15:19:04+14:00" level=warning msg="Error getting targets/b: targets/b expired at Wed Feb 7 15:19:04 +14 2024" +--- PASS: TestUpdateNonRootRemoteCorruptedNoLocalCache (21.84s) === RUN TestUpdateNonRootRemoteCorruptedCanUseLocalCache -time="2026-04-09T19:31:14-12:00" level=error msg="Metadata for timestamp expired" -time="2026-04-09T19:31:14-12:00" level=error msg="Metadata for timestamp expired" ---- PASS: TestUpdateNonRootRemoteCorruptedCanUseLocalCache (5.49s) +time="2025-03-08T15:19:19+14:00" level=error msg="Metadata for timestamp expired" +time="2025-03-08T15:19:19+14:00" level=error msg="Metadata for timestamp expired" +--- PASS: TestUpdateNonRootRemoteCorruptedCanUseLocalCache (28.59s) === RUN TestUpdateNonRootRemoteCorruptedCannotUseLocalCache -time="2026-04-09T19:31:18-12:00" level=error msg="Metadata for targets expired" -time="2026-04-09T19:31:19-12:00" level=error msg="Metadata for snapshot expired" -time="2026-04-09T19:31:19-12:00" level=error msg="Metadata for snapshot expired" -time="2026-04-09T19:31:20-12:00" level=error msg="Metadata for timestamp expired" -time="2026-04-09T19:31:20-12:00" level=error msg="Metadata for timestamp expired" -time="2026-04-09T19:31:20-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2026-04-09T19:31:20-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2026-04-09T19:31:21-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2026-04-09T19:31:21-12:00" level=error msg="Metadata for targets/a expired" -time="2026-04-09T19:31:21-12:00" level=warning msg="Error getting targets/a: targets/a expired at Sat Mar 8 19:31:21 -12 2025" -time="2026-04-09T19:31:21-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2026-04-09T19:31:22-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2026-04-09T19:31:22-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2026-04-09T19:31:22-12:00" level=error msg="Metadata for targets/a/b expired" -time="2026-04-09T19:31:22-12:00" level=warning msg="Error getting targets/a/b: targets/a/b expired at Sat Mar 8 19:31:22 -12 2025" -time="2026-04-09T19:31:23-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2026-04-09T19:31:23-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2026-04-09T19:31:23-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2026-04-09T19:31:23-12:00" level=error msg="Metadata for targets/b expired" -time="2026-04-09T19:31:23-12:00" level=warning msg="Error getting targets/b: targets/b expired at Sat Mar 8 19:31:23 -12 2025" ---- PASS: TestUpdateNonRootRemoteCorruptedCannotUseLocalCache (6.77s) +time="2025-03-08T15:19:41+14:00" level=error msg="Metadata for targets expired" +time="2025-03-08T15:19:46+14:00" level=error msg="Metadata for snapshot expired" +time="2025-03-08T15:19:46+14:00" level=error msg="Metadata for snapshot expired" +time="2025-03-08T15:19:51+14:00" level=error msg="Metadata for timestamp expired" +time="2025-03-08T15:19:51+14:00" level=error msg="Metadata for timestamp expired" +time="2025-03-08T15:19:54+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2025-03-08T15:19:55+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2025-03-08T15:19:56+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2025-03-08T15:19:57+14:00" level=error msg="Metadata for targets/a expired" +time="2025-03-08T15:19:57+14:00" level=warning msg="Error getting targets/a: targets/a expired at Wed Feb 7 15:19:56 +14 2024" +time="2025-03-08T15:20:01+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2025-03-08T15:20:01+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2025-03-08T15:20:02+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2025-03-08T15:20:03+14:00" level=error msg="Metadata for targets/a/b expired" +time="2025-03-08T15:20:03+14:00" level=warning msg="Error getting targets/a/b: targets/a/b expired at Wed Feb 7 15:20:02 +14 2024" +time="2025-03-08T15:20:06+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2025-03-08T15:20:07+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2025-03-08T15:20:08+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2025-03-08T15:20:09+14:00" level=error msg="Metadata for targets/b expired" +time="2025-03-08T15:20:09+14:00" level=warning msg="Error getting targets/b: targets/b expired at Wed Feb 7 15:20:08 +14 2024" +--- PASS: TestUpdateNonRootRemoteCorruptedCannotUseLocalCache (36.57s) === RUN TestUpdateLocalAndRemoteRootCorrupt -time="2026-04-09T19:31:26-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:31:26-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:31:30-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:31:30-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:31:30-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:31:30-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:31:30-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:31:30-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:31:30-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:31:30-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:31:30-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:31:30-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:31:30-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:31:30-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:31:31-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:31:31-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:31:31-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:31:31-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:31:31-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:31:31-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:31:31-12:00" level=error msg="Metadata for root expired" -time="2026-04-09T19:31:31-12:00" level=error msg="Metadata for root expired" ---- PASS: TestUpdateLocalAndRemoteRootCorrupt (7.41s) +time="2025-03-08T15:20:26+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:20:26+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:20:42+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:20:43+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:20:43+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:20:44+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:20:44+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:20:45+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:20:45+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:20:46+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:20:46+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:20:46+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:20:47+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:20:47+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:20:47+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:20:47+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:20:48+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:20:48+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:20:49+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:20:49+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:20:49+14:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:20:49+14:00" level=error msg="Metadata for root expired" +--- PASS: TestUpdateLocalAndRemoteRootCorrupt (37.67s) === RUN TestUpdateRemoteKeyRotated -time="2026-04-09T19:31:32-12:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2026-04-09T19:31:32-12:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2026-04-09T19:31:32-12:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" ---- PASS: TestUpdateRemoteKeyRotated (0.71s) +time="2025-03-08T15:20:51+14:00" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2025-03-08T15:20:51+14:00" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2025-03-08T15:20:52+14:00" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +--- PASS: TestUpdateRemoteKeyRotated (2.84s) === RUN TestValidateRootRotationWithOldRole ---- PASS: TestValidateRootRotationWithOldRole (0.33s) +--- PASS: TestValidateRootRotationWithOldRole (1.72s) === RUN TestRootRoleInvariant ---- PASS: TestRootRoleInvariant (0.29s) +--- PASS: TestRootRoleInvariant (1.59s) === RUN TestBadIntermediateTransitions ---- PASS: TestBadIntermediateTransitions (0.12s) +--- PASS: TestBadIntermediateTransitions (0.81s) === RUN TestExpiredIntermediateTransitions -time="2026-04-09T19:31:33-12:00" level=warning msg="root is nearing expiry, you should re-sign the role metadata" ---- PASS: TestExpiredIntermediateTransitions (0.14s) +time="2025-03-08T15:20:57+14:00" level=warning msg="root is nearing expiry, you should re-sign the role metadata" +--- PASS: TestExpiredIntermediateTransitions (0.94s) === RUN TestDownloadTargetsLarge ---- PASS: TestDownloadTargetsLarge (3.14s) +--- PASS: TestDownloadTargetsLarge (16.85s) === RUN TestDownloadTargetsDeep ---- PASS: TestDownloadTargetsDeep (0.09s) +--- PASS: TestDownloadTargetsDeep (0.43s) === RUN TestDownloadSnapshotLargeDelegationsMany ---- PASS: TestDownloadSnapshotLargeDelegationsMany (3.19s) +--- PASS: TestDownloadSnapshotLargeDelegationsMany (14.28s) === RUN TestRootOnDiskTrustPinning ---- PASS: TestRootOnDiskTrustPinning (0.07s) +--- PASS: TestRootOnDiskTrustPinning (0.29s) === RUN TestLoadTUFRepoBadURL ---- PASS: TestLoadTUFRepoBadURL (0.00s) +--- PASS: TestLoadTUFRepoBadURL (0.02s) === RUN TestApplyTargetsChange ---- PASS: TestApplyTargetsChange (0.01s) +--- PASS: TestApplyTargetsChange (0.03s) === RUN TestApplyAddTargetTwice ---- PASS: TestApplyAddTargetTwice (0.01s) +--- PASS: TestApplyAddTargetTwice (0.04s) === RUN TestApplyChangelist ---- PASS: TestApplyChangelist (0.01s) +--- PASS: TestApplyChangelist (0.04s) === RUN TestApplyChangelistMulti ---- PASS: TestApplyChangelistMulti (0.01s) +--- PASS: TestApplyChangelistMulti (0.04s) === RUN TestApplyTargetsDelegationCreateDelete ---- PASS: TestApplyTargetsDelegationCreateDelete (0.01s) +--- PASS: TestApplyTargetsDelegationCreateDelete (0.04s) === RUN TestApplyTargetsDelegationCreate2SharedKey ---- PASS: TestApplyTargetsDelegationCreate2SharedKey (0.01s) +--- PASS: TestApplyTargetsDelegationCreate2SharedKey (0.04s) === RUN TestApplyTargetsDelegationCreateEdit ---- PASS: TestApplyTargetsDelegationCreateEdit (0.01s) +--- PASS: TestApplyTargetsDelegationCreateEdit (0.04s) === RUN TestApplyTargetsDelegationEditNonExisting ---- PASS: TestApplyTargetsDelegationEditNonExisting (0.01s) +--- PASS: TestApplyTargetsDelegationEditNonExisting (0.04s) === RUN TestApplyTargetsDelegationCreateAlreadyExisting ---- PASS: TestApplyTargetsDelegationCreateAlreadyExisting (0.01s) +--- PASS: TestApplyTargetsDelegationCreateAlreadyExisting (0.04s) === RUN TestApplyTargetsDelegationAlreadyExistingMergePaths ---- PASS: TestApplyTargetsDelegationAlreadyExistingMergePaths (0.01s) +--- PASS: TestApplyTargetsDelegationAlreadyExistingMergePaths (0.04s) === RUN TestApplyTargetsDelegationInvalidRole ---- PASS: TestApplyTargetsDelegationInvalidRole (0.01s) +--- PASS: TestApplyTargetsDelegationInvalidRole (0.04s) === RUN TestApplyTargetsDelegationInvalidJSONContent ---- PASS: TestApplyTargetsDelegationInvalidJSONContent (0.01s) +--- PASS: TestApplyTargetsDelegationInvalidJSONContent (0.04s) === RUN TestApplyTargetsDelegationInvalidAction ---- PASS: TestApplyTargetsDelegationInvalidAction (0.01s) +--- PASS: TestApplyTargetsDelegationInvalidAction (0.03s) === RUN TestApplyTargetsChangeInvalidType ---- PASS: TestApplyTargetsChangeInvalidType (0.01s) +--- PASS: TestApplyTargetsChangeInvalidType (0.03s) === RUN TestApplyTargetsDelegationCreate2Deep ---- PASS: TestApplyTargetsDelegationCreate2Deep (0.01s) +--- PASS: TestApplyTargetsDelegationCreate2Deep (0.04s) === RUN TestApplyTargetsDelegationParentDoesntExist ---- PASS: TestApplyTargetsDelegationParentDoesntExist (0.01s) +--- PASS: TestApplyTargetsDelegationParentDoesntExist (0.04s) === RUN TestApplyChangelistCreatesDelegation ---- PASS: TestApplyChangelistCreatesDelegation (0.01s) +--- PASS: TestApplyChangelistCreatesDelegation (0.03s) === RUN TestApplyChangelistTargetsToMultipleRoles ---- PASS: TestApplyChangelistTargetsToMultipleRoles (0.01s) +--- PASS: TestApplyChangelistTargetsToMultipleRoles (0.04s) === RUN TestApplyChangelistTargetsFailsNonexistentRole -time="2026-04-09T19:31:39-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="2026-04-09T19:31:39-12:00" level=error msg="couldn't remove target from targets/level1/level2/level3/level4: tuf: invalid role targets/level1/level2/level3/level4. delegation does not exist" ---- PASS: TestApplyChangelistTargetsFailsNonexistentRole (0.01s) +time="2025-03-08T15:21:30+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="2025-03-08T15:21:30+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.04s) === RUN TestChangeTargetMetaFailsInvalidRole -time="2026-04-09T19:31:39-12:00" level=error msg="couldn't add target to ruhroh: tuf: invalid role ruhroh. does not exist" ---- PASS: TestChangeTargetMetaFailsInvalidRole (0.01s) +time="2025-03-08T15:21:30+14:00" level=error msg="couldn't add target to ruhroh: tuf: invalid role ruhroh. does not exist" +--- PASS: TestChangeTargetMetaFailsInvalidRole (0.07s) === RUN TestChangeTargetMetaFailsIfPrefixError -time="2026-04-09T19:31:39-12:00" level=error msg="couldn't add target to targets/level1: could not add all targets" ---- PASS: TestChangeTargetMetaFailsIfPrefixError (0.01s) +time="2025-03-08T15:21:30+14:00" level=error msg="couldn't add target to targets/level1: could not add all targets" +--- PASS: TestChangeTargetMetaFailsIfPrefixError (0.06s) === RUN TestAllNearExpiry ---- PASS: TestAllNearExpiry (0.01s) +--- PASS: TestAllNearExpiry (0.06s) === RUN TestAllNotNearExpiry ---- PASS: TestAllNotNearExpiry (0.01s) +--- PASS: TestAllNotNearExpiry (0.06s) === RUN TestRotateRemoteKeyOffline ---- PASS: TestRotateRemoteKeyOffline (0.00s) +--- PASS: TestRotateRemoteKeyOffline (0.01s) PASS -ok github.com/theupdateframework/notary/client 65.949s +ok github.com/theupdateframework/notary/client 339.698s === RUN TestTUFDelegation ---- PASS: TestTUFDelegation (0.02s) +--- PASS: TestTUFDelegation (0.08s) === RUN TestMemChangelist --- PASS: TestMemChangelist (0.00s) === RUN TestMemChangeIterator @@ -2537,16 +2573,16 @@ === RUN TestMemChangelistRemove --- PASS: TestMemChangelistRemove (0.00s) === RUN TestAdd ---- PASS: TestAdd (0.00s) +--- PASS: TestAdd (0.01s) === RUN TestErrorConditions -time="2026-04-09T19:30:33-12:00" level=warning msg="invalid character '\\x05' looking for beginning of value" ---- PASS: TestErrorConditions (0.00s) +time="2025-03-08T15:15:50+14:00" level=warning msg="invalid character '\\x05' looking for beginning of value" +--- PASS: TestErrorConditions (0.01s) === RUN TestListOrder --- PASS: TestListOrder (0.00s) === RUN TestFileChangeIterator --- PASS: TestFileChangeIterator (0.00s) PASS -ok github.com/theupdateframework/notary/client/changelist 0.027s +ok github.com/theupdateframework/notary/client/changelist 0.148s === RUN TestParseConfigError --- PASS: TestParseConfigError (0.00s) === RUN TestSetupGRPCServer @@ -2556,7 +2592,7 @@ === RUN TestSetupNetListener --- PASS: TestSetupNetListener (0.00s) PASS -ok github.com/theupdateframework/notary/cmd/escrow 0.008s +ok github.com/theupdateframework/notary/cmd/escrow 0.060s === RUN TestPurgeDelegationKeys Usage: delegation [command] @@ -2584,9 +2620,9 @@ === RUN TestAddInvalidDelegationName --- PASS: TestAddInvalidDelegationName (0.01s) === RUN TestAddInvalidDelegationCert ---- PASS: TestAddInvalidDelegationCert (0.00s) +--- PASS: TestAddInvalidDelegationCert (0.01s) === RUN TestAddInvalidShortPubkeyCert ---- PASS: TestAddInvalidShortPubkeyCert (0.00s) +--- PASS: TestAddInvalidShortPubkeyCert (0.01s) === RUN TestRemoveInvalidDelegationName --- PASS: TestRemoveInvalidDelegationName (0.00s) === RUN TestRemoveAllInvalidDelegationName @@ -2628,119 +2664,119 @@ Use "delegation [command] --help" for more information about a command. --- PASS: TestRemoveInvalidNumArgs (0.00s) === RUN TestInitWithRootKey ---- PASS: TestInitWithRootKey (0.26s) +--- PASS: TestInitWithRootKey (0.74s) === RUN TestInitWithRootCert integration_test.go:189: Disable FTBFS timebomb. https://bugs.debian.org/1078632 --- SKIP: TestInitWithRootCert (0.00s) === RUN TestClientTUFInteraction ---- PASS: TestClientTUFInteraction (0.51s) +--- PASS: TestClientTUFInteraction (1.90s) === RUN TestClientDeleteTUFInteraction -time="2026-04-09T19:30:35-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]:57615->[::1]:53: read: connection refused" ---- PASS: TestClientDeleteTUFInteraction (0.62s) +time="2025-03-08T15:15:55+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]:59482->[::1]:53: read: connection refused" +--- PASS: TestClientDeleteTUFInteraction (2.05s) === RUN TestClientTUFAddByHashInteraction ---- PASS: TestClientTUFAddByHashInteraction (0.73s) +--- PASS: TestClientTUFAddByHashInteraction (3.14s) === RUN TestClientDelegationsInteraction -time="2026-04-09T19:30:36-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="2026-04-09T19:30:36-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 (1.40s) +time="2025-03-08T15:16:02+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="2025-03-08T15:16:02+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 (7.67s) === RUN TestClientDelegationsPublishing ---- PASS: TestClientDelegationsPublishing (1.51s) +--- PASS: TestClientDelegationsPublishing (7.41s) === RUN TestClientKeyGenerationRotation ---- PASS: TestClientKeyGenerationRotation (1.66s) +--- PASS: TestClientKeyGenerationRotation (9.81s) === RUN TestKeyRotation ---- PASS: TestKeyRotation (0.22s) +--- PASS: TestKeyRotation (1.35s) === RUN TestKeyRotationNonRoot ---- PASS: TestKeyRotationNonRoot (0.32s) +--- PASS: TestKeyRotationNonRoot (2.09s) === RUN TestDefaultRootKeyGeneration ---- PASS: TestDefaultRootKeyGeneration (0.01s) +--- PASS: TestDefaultRootKeyGeneration (0.02s) === RUN TestLogLevelFlags --- PASS: TestLogLevelFlags (0.00s) === RUN TestClientKeyPassphraseChange ---- PASS: TestClientKeyPassphraseChange (0.23s) +--- PASS: TestClientKeyPassphraseChange (1.27s) === RUN TestPurgeSingleKey Removal of the following keys from all delegations in gun staged for next publish: - - 245df293d01c1b9f2c6da0b4a10f9eceb0c1a37b1e3bea17d66c8500d71d48bf ---- PASS: TestPurgeSingleKey (0.24s) + - edad0ded67205c68b9aa03de62a1df3288778db46c69b9ab8c977c360397e9e9 +--- PASS: TestPurgeSingleKey (1.44s) === RUN TestWitness -time="2026-04-09T19:30:42-12:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" -time="2026-04-09T19:30:42-12:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" -time="2026-04-09T19:30:42-12:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" -time="2026-04-09T19:30:42-12:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" -time="2026-04-09T19:30:42-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="2026-04-09T19:30:42-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="2026-04-09T19:30:42-12:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" ---- PASS: TestWitness (0.79s) +time="2025-03-08T15:16:32+14:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +time="2025-03-08T15:16:32+14:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +time="2025-03-08T15:16:33+14:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +time="2025-03-08T15:16:33+14:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +time="2025-03-08T15:16:34+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="2025-03-08T15:16:34+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="2025-03-08T15:16:34+14:00" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +--- PASS: TestWitness (3.86s) === RUN TestClientTUFInitWithAutoPublish -time="2026-04-09T19:30: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]:48184->[::1]:53: read: connection refused" ---- PASS: TestClientTUFInitWithAutoPublish (0.18s) +time="2025-03-08T15:16:34+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]:53483->[::1]:53: read: connection refused" +--- PASS: TestClientTUFInitWithAutoPublish (1.07s) === RUN TestClientTUFAddWithAutoPublish -time="2026-04-09T19:30: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]:59544->[::1]:53: read: connection refused" -time="2026-04-09T19:30:42-12:00" level=error msg="Could not publish Repository since we could not update: client is offline" -time="2026-04-09T19:30: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]:44492->[::1]:53: read: connection refused" -time="2026-04-09T19:30:42-12:00" level=error msg="Could not publish Repository since we could not update: client is offline" ---- PASS: TestClientTUFAddWithAutoPublish (0.19s) +time="2025-03-08T15:16:36+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]:54063->[::1]:53: read: connection refused" +time="2025-03-08T15:16:36+14:00" level=error msg="Could not publish Repository since we could not update: client is offline" +time="2025-03-08T15:16:36+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]:59723->[::1]:53: read: connection refused" +time="2025-03-08T15:16:36+14:00" level=error msg="Could not publish Repository since we could not update: client is offline" +--- PASS: TestClientTUFAddWithAutoPublish (1.35s) === RUN TestClientTUFRemoveWithAutoPublish ---- PASS: TestClientTUFRemoveWithAutoPublish (0.39s) +--- PASS: TestClientTUFRemoveWithAutoPublish (2.21s) === RUN TestClientDelegationAddWithAutoPublish ---- PASS: TestClientDelegationAddWithAutoPublish (0.18s) +--- PASS: TestClientDelegationAddWithAutoPublish (1.23s) === RUN TestClientDelegationRemoveWithAutoPublish -time="2026-04-09T19:30:43-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="2026-04-09T19:30:43-12:00" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" ---- PASS: TestClientDelegationRemoveWithAutoPublish (0.39s) +time="2025-03-08T15:16:42+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="2025-03-08T15:16:42+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 (2.72s) === RUN TestClientTUFAddByHashWithAutoPublish ---- PASS: TestClientTUFAddByHashWithAutoPublish (0.19s) +--- PASS: TestClientTUFAddByHashWithAutoPublish (1.38s) === RUN TestClientKeyImport -time="2026-04-09T19:30:44-12:00" level=warning msg="failed to import key to store: Invalid key generated, key may be encrypted and does not contain path header" -time="2026-04-09T19:30:44-12:00" level=warning msg="failed to import key () to store: Cannot have canonical role key without a gun, don't know what gun it belongs to" ---- PASS: TestClientKeyImport (0.05s) +time="2025-03-08T15:16:44+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="2025-03-08T15:16:44+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.47s) === RUN TestAddDelImportKeyPublishFlow -time="2026-04-09T19:30:44-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.44s) +time="2025-03-08T15:16:46+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 (2.56s) === RUN TestExportImportFlow ---- PASS: TestExportImportFlow (0.12s) +--- PASS: TestExportImportFlow (0.61s) === RUN TestDelegationKeyImportExport ---- PASS: TestDelegationKeyImportExport (0.01s) +--- PASS: TestDelegationKeyImportExport (0.05s) === RUN TestImportKeysNoYubikey ---- PASS: TestImportKeysNoYubikey (0.01s) +--- PASS: TestImportKeysNoYubikey (0.04s) === RUN TestExportImportKeysNoYubikey ---- PASS: TestExportImportKeysNoYubikey (0.01s) +--- PASS: TestExportImportKeysNoYubikey (0.05s) === RUN TestRemoveIfNoKey --- PASS: TestRemoveIfNoKey (0.00s) === RUN TestRemoveOneKeyAbort ---- PASS: TestRemoveOneKeyAbort (0.04s) +--- PASS: TestRemoveOneKeyAbort (0.09s) === RUN TestRemoveOneKeyConfirm ---- PASS: TestRemoveOneKeyConfirm (0.01s) +--- PASS: TestRemoveOneKeyConfirm (0.03s) === RUN TestRemoveMultikeysInvalidInput ---- PASS: TestRemoveMultikeysInvalidInput (0.01s) +--- PASS: TestRemoveMultikeysInvalidInput (0.03s) === RUN TestRemoveMultikeysAbortChoice ---- PASS: TestRemoveMultikeysAbortChoice (0.01s) +--- PASS: TestRemoveMultikeysAbortChoice (0.03s) === RUN TestRemoveMultikeysRemoveOnlyChosenKey ---- PASS: TestRemoveMultikeysRemoveOnlyChosenKey (0.01s) +--- PASS: TestRemoveMultikeysRemoveOnlyChosenKey (0.03s) === RUN TestRotateKeyInvalidRoles -time="2026-04-09T19:30:44-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]:44472->[::1]:53: read: connection refused" -time="2026-04-09T19:30:44-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]:58210->[::1]:53: read: connection refused" -time="2026-04-09T19:30:44-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]:40870->[::1]:53: read: connection refused" -time="2026-04-09T19:30:44-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]:35460->[::1]:53: read: connection refused" ---- PASS: TestRotateKeyInvalidRoles (0.00s) +time="2025-03-08T15:16:48+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]:56293->[::1]:53: read: connection refused" +time="2025-03-08T15:16:48+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]:37797->[::1]:53: read: connection refused" +time="2025-03-08T15:16:48+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]:46218->[::1]:53: read: connection refused" +time="2025-03-08T15:16:48+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]:47674->[::1]:53: read: connection refused" +--- PASS: TestRotateKeyInvalidRoles (0.02s) === RUN TestRotateKeyTargetCannotBeServerManaged -time="2026-04-09T19:30:44-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]:40973->[::1]:53: read: connection refused" +time="2025-03-08T15:16:48+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]:43238->[::1]:53: read: connection refused" --- PASS: TestRotateKeyTargetCannotBeServerManaged (0.00s) === RUN TestRotateKeyTimestampCannotBeLocallyManaged -time="2026-04-09T19:30:44-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]:41250->[::1]:53: read: connection refused" ---- PASS: TestRotateKeyTimestampCannotBeLocallyManaged (0.00s) +time="2025-03-08T15:16:48+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]:48670->[::1]:53: read: connection refused" +--- PASS: TestRotateKeyTimestampCannotBeLocallyManaged (0.01s) === RUN TestRotateKeyNoGUN Usage: --- PASS: TestRotateKeyNoGUN (0.00s) === RUN TestRotateKeyRemoteServerManagesKey Successfully rotated snapshot key for repository docker.com/notary Successfully rotated timestamp key for repository docker.com/notary ---- PASS: TestRotateKeyRemoteServerManagesKey (0.20s) +--- PASS: TestRotateKeyRemoteServerManagesKey (0.95s) === RUN TestRotateKeyBothKeys Successfully rotated targets key for repository docker.com/notary Successfully rotated snapshot key for repository docker.com/notary ---- PASS: TestRotateKeyBothKeys (0.16s) +--- PASS: TestRotateKeyBothKeys (0.90s) === RUN TestRotateKeyRootIsInteractive ---- PASS: TestRotateKeyRootIsInteractive (0.04s) +--- PASS: TestRotateKeyRootIsInteractive (0.19s) === RUN TestChangeKeyPassphraseInvalidID --- PASS: TestChangeKeyPassphraseInvalidID (0.00s) === RUN TestChangeKeyPassphraseInvalidNumArgs @@ -2749,18 +2785,18 @@ === RUN TestChangeKeyPassphraseNonexistentID --- PASS: TestChangeKeyPassphraseNonexistentID (0.00s) === RUN TestExportKeys ---- PASS: TestExportKeys (0.00s) +--- PASS: TestExportKeys (0.01s) === RUN TestExportKeysByGUN ---- PASS: TestExportKeysByGUN (0.00s) +--- PASS: TestExportKeysByGUN (0.01s) === RUN TestExportKeysByID ---- PASS: TestExportKeysByID (0.00s) +--- PASS: TestExportKeysByID (0.01s) === RUN TestExportKeysBadFlagCombo --- PASS: TestExportKeysBadFlagCombo (0.00s) === RUN TestImportKeysNonexistentFile --- PASS: TestImportKeysNonexistentFile (0.00s) === RUN TestKeyGeneration -time="2026-04-09T19:30:45-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.01s) +time="2025-03-08T15:16:50+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.07s) === RUN TestNotaryConfigFileDefault --- PASS: TestNotaryConfigFileDefault (0.00s) === RUN TestRemoteServerDefault @@ -2768,21 +2804,21 @@ === RUN TestRemoteServerUsesConfigFile --- PASS: TestRemoteServerUsesConfigFile (0.00s) === RUN TestRemoteServerCommandLineFlagOverridesConfig ---- PASS: TestRemoteServerCommandLineFlagOverridesConfig (0.00s) +--- PASS: TestRemoteServerCommandLineFlagOverridesConfig (0.01s) === RUN TestInvalidAddHashCommands ---- PASS: TestInvalidAddHashCommands (0.00s) +--- PASS: TestInvalidAddHashCommands (0.01s) === RUN TestConfigParsingErrorsPropagatedByCommands ---- PASS: TestConfigParsingErrorsPropagatedByCommands (0.00s) +--- PASS: TestConfigParsingErrorsPropagatedByCommands (0.03s) === RUN TestInsufficientArgumentsReturnsErrorAndPrintsUsage ---- PASS: TestInsufficientArgumentsReturnsErrorAndPrintsUsage (0.01s) +--- PASS: TestInsufficientArgumentsReturnsErrorAndPrintsUsage (0.04s) === RUN TestBareCommandPrintsUsageAndNoError ---- PASS: TestBareCommandPrintsUsageAndNoError (0.00s) +--- PASS: TestBareCommandPrintsUsageAndNoError (0.01s) === RUN TestConfigFileTLSCannotBeRelativeToCWD ---- PASS: TestConfigFileTLSCannotBeRelativeToCWD (0.00s) +--- PASS: TestConfigFileTLSCannotBeRelativeToCWD (0.05s) === RUN TestConfigFileTLSCanBeRelativeToConfigOrAbsolute ---- PASS: TestConfigFileTLSCanBeRelativeToConfigOrAbsolute (0.08s) +--- PASS: TestConfigFileTLSCanBeRelativeToConfigOrAbsolute (0.40s) === RUN TestConfigFileOverridenByCmdLineFlags ---- PASS: TestConfigFileOverridenByCmdLineFlags (0.08s) +--- PASS: TestConfigFileOverridenByCmdLineFlags (0.35s) === RUN TestConfigFileTrustPinning --- PASS: TestConfigFileTrustPinning (0.00s) === RUN TestPassphraseRetrieverCaching @@ -2796,7 +2832,7 @@ === RUN TestPrettyPrintZeroKeys --- PASS: TestPrettyPrintZeroKeys (0.00s) === RUN TestPrettyPrintRootAndSigningKeys ---- PASS: TestPrettyPrintRootAndSigningKeys (0.02s) +--- PASS: TestPrettyPrintRootAndSigningKeys (0.07s) === RUN TestPrettyPrintZeroTargets --- PASS: TestPrettyPrintZeroTargets (0.00s) === RUN TestPrettyPrintSortedTargets @@ -2808,10 +2844,10 @@ === RUN TestImportRootCert --- PASS: TestImportRootCert (0.00s) === RUN TestTokenAuth -time="2026-04-09T19:30:45-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="2025-03-08T15:16:51+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="2026-04-09T19:30:45-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="2025-03-08T15:16:51+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) @@ -2820,37 +2856,37 @@ === RUN TestTokenAuth401Status --- PASS: TestTokenAuth401Status (0.00s) === RUN TestAdminTokenAuth401Status ---- PASS: TestAdminTokenAuth401Status (0.00s) +--- PASS: TestAdminTokenAuth401Status (0.02s) === RUN TestTokenAuthNon200Non401Status -time="2026-04-09T19:30:45-12:00" level=error msg="could not reach http://127.0.0.1:40251: 404" ---- PASS: TestTokenAuthNon200Non401Status (0.00s) +time="2025-03-08T15:16:51+14:00" level=error msg="could not reach http://127.0.0.1:36771: 404" +--- PASS: TestTokenAuthNon200Non401Status (0.01s) === RUN TestAdminTokenAuthNon200Non401Status -time="2026-04-09T19:30:45-12:00" level=error msg="could not reach http://127.0.0.1:38325: 404" +time="2025-03-08T15:16:51+14:00" level=error msg="could not reach http://127.0.0.1:46063: 404" --- PASS: TestAdminTokenAuthNon200Non401Status (0.00s) === RUN TestConfigureRepo ---- PASS: TestConfigureRepo (0.00s) +--- PASS: TestConfigureRepo (0.01s) === RUN TestConfigureRepoRW -Enter username: time="2026-04-09T19:30:45-12:00" level=error msg="error processing username input: EOF" ---- PASS: TestConfigureRepoRW (0.00s) +Enter username: time="2025-03-08T15:16:51+14:00" level=error msg="error processing username input: EOF" +--- PASS: TestConfigureRepoRW (0.02s) === RUN TestConfigureRepoAdmin -Enter username: time="2026-04-09T19:30:45-12:00" level=error msg="error processing username input: EOF" ---- PASS: TestConfigureRepoAdmin (0.00s) +Enter username: time="2025-03-08T15:16:51+14:00" level=error msg="error processing username input: EOF" +--- PASS: TestConfigureRepoAdmin (0.02s) === RUN TestStatusUnstageAndReset Successfully reset specified changes for repository gun Addition of target "test1" by sha256 hash to repository "gun" staged for next publish. Addition of target "test2" by sha256 hash to repository "gun" staged for next publish. Addition of target "test3" by sha256 hash to repository "gun" staged for next publish. Addition of target "test4" by sha256 hash to repository "gun" staged for next publish. ---- PASS: TestStatusUnstageAndReset (0.00s) +--- PASS: TestStatusUnstageAndReset (0.02s) === RUN TestGetTrustPinningErrors Pushing changes to gun --- PASS: TestGetTrustPinningErrors (0.00s) === RUN TestPasswordStore -Enter username: time="2026-04-09T19:30:45-12:00" level=error msg="error processing username input: EOF" +Enter username: time="2025-03-08T15:16:51+14:00" level=error msg="error processing username input: EOF" --- PASS: TestPasswordStore (0.00s) === RUN TestPasswordStoreWithEnvvar -time="2026-04-09T19:30:45-12:00" level=error msg="Authentication string with zero-length username" -time="2026-04-09T19:30:45-12:00" level=error msg="Could not base64-decode authentication string" +time="2025-03-08T15:16:51+14:00" level=error msg="Authentication string with zero-length username" +time="2025-03-08T15:16:51+14:00" level=error msg="Could not base64-decode authentication string" --- PASS: TestPasswordStoreWithEnvvar (0.00s) === RUN TestGetPayload --- PASS: TestGetPayload (0.00s) @@ -2859,7 +2895,7 @@ === RUN TestHomeExpand --- PASS: TestHomeExpand (0.00s) PASS -ok github.com/theupdateframework/notary/cmd/notary 11.407s +ok github.com/theupdateframework/notary/cmd/notary 60.024s === RUN TestBootstrap --- PASS: TestBootstrap (0.00s) === RUN TestGetAddrAndTLSConfigInvalidTLS @@ -2867,54 +2903,54 @@ === RUN TestGetAddrAndTLSConfigNoHTTPAddr --- PASS: TestGetAddrAndTLSConfigNoHTTPAddr (0.00s) === RUN TestGetAddrAndTLSConfigSuccessWithTLS ---- PASS: TestGetAddrAndTLSConfigSuccessWithTLS (0.00s) +--- PASS: TestGetAddrAndTLSConfigSuccessWithTLS (0.01s) === RUN TestGetAddrAndTLSConfigSuccessWithoutTLS --- PASS: TestGetAddrAndTLSConfigSuccessWithoutTLS (0.00s) === RUN TestGetAddrAndTLSConfigWithClientTLS ---- PASS: TestGetAddrAndTLSConfigWithClientTLS (0.00s) +--- PASS: TestGetAddrAndTLSConfigWithClientTLS (0.01s) === RUN TestGetInvalidTrustService --- PASS: TestGetInvalidTrustService (0.00s) === RUN TestGetLocalTrustService -time="2026-04-09T19:30:34-12:00" level=info msg="Using local signing service, which requires ED25519. Ignoring all other trust_service parameters, including keyAlgorithm" +time="2025-03-08T15:16:02+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="2026-04-09T19:30:34-12:00" level=info msg="Using remote signing service" +time="2025-03-08T15:16:02+14:00" level=info msg="Using remote signing service" --- PASS: TestGetTrustServiceNoTLSConfig (0.00s) === RUN TestGetTrustServiceTLSSuccess -time="2026-04-09T19:30:34-12:00" level=info msg="Using remote signing service" ---- PASS: TestGetTrustServiceTLSSuccess (0.00s) +time="2025-03-08T15:16:02+14:00" level=info msg="Using remote signing service" +--- PASS: TestGetTrustServiceTLSSuccess (0.01s) === RUN TestGetTrustServiceTLSFailure --- PASS: TestGetTrustServiceTLSFailure (0.00s) === RUN TestGetStoreInvalid -time="2026-04-09T19:30:34-12:00" level=info msg="Using asdf backend" +time="2025-03-08T15:16:02+14:00" level=info msg="Using asdf backend" --- PASS: TestGetStoreInvalid (0.00s) === RUN TestGetStoreDBStore -time="2026-04-09T19:30:34-12:00" level=info msg="Using sqlite3 backend" +time="2025-03-08T15:16:02+14:00" level=info msg="Using sqlite3 backend" --- PASS: TestGetStoreDBStore (0.00s) === RUN TestGetStoreRethinkDBStoreConnectionFails -time="2026-04-09T19:30:34-12:00" level=info msg="Using rethinkdb backend" +time="2025-03-08T15:16:02+14:00" level=info msg="Using rethinkdb backend" --- PASS: TestGetStoreRethinkDBStoreConnectionFails (0.00s) === RUN TestGetMemoryStore -time="2026-04-09T19:30:34-12:00" level=info msg="Using memory backend" +time="2025-03-08T15:16:02+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="2026-04-09T19:30:34-12:00" level=info msg="Using remote signing service" -time="2026-04-09T19:30:34-12:00" level=info msg="Using sqlite3 backend" ---- PASS: TestSampleConfig (0.00s) +time="2025-03-08T15:16:02+14:00" level=info msg="Using remote signing service" +time="2025-03-08T15:16:02+14:00" level=info msg="Using sqlite3 backend" +--- PASS: TestSampleConfig (0.04s) PASS -ok github.com/theupdateframework/notary/cmd/notary-server 0.027s +ok github.com/theupdateframework/notary/cmd/notary-server 0.206s === RUN TestGetAddrAndTLSConfigInvalidTLS ---- PASS: TestGetAddrAndTLSConfigInvalidTLS (0.00s) +--- PASS: TestGetAddrAndTLSConfigInvalidTLS (0.01s) === RUN TestGetAddrAndTLSConfigNoGRPCAddr ---- PASS: TestGetAddrAndTLSConfigNoGRPCAddr (0.00s) +--- PASS: TestGetAddrAndTLSConfigNoGRPCAddr (0.01s) === RUN TestGetAddrAndTLSConfigSuccess --- PASS: TestGetAddrAndTLSConfigSuccess (0.00s) === RUN TestSetupCryptoServicesDBStoreNoDefaultAlias @@ -2925,7 +2961,7 @@ main_test.go:121: DM - skipping malfunctioning test, fails on sbuild --- SKIP: TestSetupCryptoServicesRethinkDBStoreConnectionFails (0.00s) === RUN TestSetupCryptoServicesDBStoreSuccess ---- PASS: TestSetupCryptoServicesDBStoreSuccess (0.55s) +--- PASS: TestSetupCryptoServicesDBStoreSuccess (0.18s) === RUN TestSetupCryptoServicesMemoryStore --- PASS: TestSetupCryptoServicesMemoryStore (0.01s) === RUN TestSetupCryptoServicesInvalidStore @@ -2941,19 +2977,19 @@ === RUN TestPassphraseRetrieverInvalid --- PASS: TestPassphraseRetrieverInvalid (0.00s) === RUN TestSampleConfig ---- PASS: TestSampleConfig (0.00s) +--- PASS: TestSampleConfig (0.01s) PASS -ok github.com/theupdateframework/notary/cmd/notary-signer 0.576s +ok github.com/theupdateframework/notary/cmd/notary-signer 0.276s === RUN TestGenerateCertificate ---- PASS: TestGenerateCertificate (0.01s) +--- PASS: TestGenerateCertificate (0.04s) === RUN TestCryptoServiceWithNonEmptyGUN ---- PASS: TestCryptoServiceWithNonEmptyGUN (0.97s) +--- PASS: TestCryptoServiceWithNonEmptyGUN (3.35s) === RUN TestCryptoServiceWithEmptyGUN ---- PASS: TestCryptoServiceWithEmptyGUN (0.67s) +--- PASS: TestCryptoServiceWithEmptyGUN (3.91s) === RUN TestCryptoSignerInterfaceBehavior ---- PASS: TestCryptoSignerInterfaceBehavior (0.01s) +--- PASS: TestCryptoSignerInterfaceBehavior (0.05s) PASS -ok github.com/theupdateframework/notary/cryptoservice 1.664s +ok github.com/theupdateframework/notary/cryptoservice 7.372s === RUN TestGetPassphraseForUsingDelegationKey --- PASS: TestGetPassphraseForUsingDelegationKey (0.00s) === RUN TestGetPassphraseLimitsShortPassphrases @@ -2969,281 +3005,281 @@ === RUN TestGetPassphrase --- PASS: TestGetPassphrase (0.00s) PASS -ok github.com/theupdateframework/notary/passphrase 0.010s +ok github.com/theupdateframework/notary/passphrase 0.048s ? github.com/theupdateframework/notary/proto [no test files] ? github.com/theupdateframework/notary/proto/github.com/theupdateframework/notary/proto [no test files] === RUN TestValidationErrorFormat -time="2026-04-09T19:30: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.1 http.request.contenttype="multipart/form-data; boundary=9489f39b699a9a00b6d7f40a9e97a0231e1a02113259ad000dc0a30d880b" http.request.host="127.0.0.1:39017" http.request.id=8143d2cc-ba13-420e-83ef-c106a67ef974 http.request.method=POST http.request.remoteaddr="127.0.0.1:37362" http.request.uri=/v2/docker.com/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 -time="2026-04-09T19:30:34-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype="multipart/form-data; boundary=9489f39b699a9a00b6d7f40a9e97a0231e1a02113259ad000dc0a30d880b" http.request.host="127.0.0.1:39017" http.request.id=8143d2cc-ba13-420e-83ef-c106a67ef974 http.request.method=POST http.request.remoteaddr="127.0.0.1:37362" 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=7.882695ms http.response.status=400 http.response.written=260 ---- PASS: TestValidationErrorFormat (0.04s) +time="2025-03-08T15:16:03+14:00" level=info msg="invalid update: Update sent by the client is invalid.: &{ErrBadHierarchy Metadata hierarchy is incomplete: no snapshot was included in update and server does not hold current snapshot key for repository}" go.version=go1.24.1 http.request.contenttype="multipart/form-data; boundary=2b6e7259a64a1b8e01b03751b136ac1a607b3396cb350491670e5a16e6b4" http.request.host="127.0.0.1:42145" http.request.id=7820c1eb-2cb4-4f72-b57f-a5558bd87413 http.request.method=POST http.request.remoteaddr="127.0.0.1:48058" http.request.uri=/v2/docker.com/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 +time="2025-03-08T15:16:03+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype="multipart/form-data; boundary=2b6e7259a64a1b8e01b03751b136ac1a607b3396cb350491670e5a16e6b4" http.request.host="127.0.0.1:42145" http.request.id=7820c1eb-2cb4-4f72-b57f-a5558bd87413 http.request.method=POST http.request.remoteaddr="127.0.0.1:48058" 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=42.568967ms http.response.status=400 http.response.written=260 +--- PASS: TestValidationErrorFormat (0.25s) === RUN TestRunBadAddr --- PASS: TestRunBadAddr (0.00s) === RUN TestRepoPrefixMatches -time="2026-04-09T19:30:34-12:00" level=info msg="updated docker.io/notary to timestamp version 1, checksum 4231a1c5a72e95538e71941a1d497b831a08e35a2dfe6c6b3f6e2845502dd3ae" docker.io/notary=gun go.version=go1.24.1 http.request.contenttype="multipart/form-data; boundary=0122849f1a3d7b9e561b9a882d0e5af988f13a5ff767c932e93ef8e366db" http.request.host="127.0.0.1:46601" http.request.id=31d05e40-9dff-4de2-b4ab-2ff3f702c538 http.request.method=POST http.request.remoteaddr="127.0.0.1:57594" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 -time="2026-04-09T19:30:34-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype="multipart/form-data; boundary=0122849f1a3d7b9e561b9a882d0e5af988f13a5ff767c932e93ef8e366db" http.request.host="127.0.0.1:46601" http.request.id=31d05e40-9dff-4de2-b4ab-2ff3f702c538 http.request.method=POST http.request.remoteaddr="127.0.0.1:57594" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.duration=23.674716ms http.response.status=0 http.response.written=0 -time="2026-04-09T19:30:34-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:46601" http.request.id=711ecdd5-be9c-4a55-bc12-c7bdfcaaa2ae http.request.method=GET http.request.remoteaddr="127.0.0.1:57594" http.request.uri=/v2/docker.io/notary/_trust/tuf/snapshot.json http.request.useragent=Go-http-client/1.1 http.response.duration="454.32µs" http.response.status=200 http.response.written=688 -time="2026-04-09T19:30:34-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:46601" http.request.id=835a5161-f5aa-4945-ab2c-0b4996f9f67c http.request.method=GET http.request.remoteaddr="127.0.0.1:57594" http.request.uri=/v2/docker.io/notary/_trust/tuf/snapshot.150484a2782c45f8a682e8974a7d4a171cd998c1573c23af34a731539e14c845.json http.request.useragent=Go-http-client/1.1 http.response.duration="52.507µs" http.response.status=200 http.response.written=688 -time="2026-04-09T19:30:34-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:46601" http.request.id=2d426726-1f79-48eb-9d2b-d4b908ab0d16 http.request.method=GET http.request.remoteaddr="127.0.0.1:57594" http.request.uri=/v2/docker.io/notary/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration="412.618µs" http.response.status=200 http.response.written=181 -time="2026-04-09T19:30:34-12:00" level=info msg="trust data deleted for docker.io/notary" docker.io/notary=gun go.version=go1.24.1 http.request.host="127.0.0.1:46601" http.request.id=53686b2c-fb34-49d0-a5ba-dd6494c4ca07 http.request.method=DELETE http.request.remoteaddr="127.0.0.1:57594" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 -time="2026-04-09T19:30:34-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:46601" http.request.id=53686b2c-fb34-49d0-a5ba-dd6494c4ca07 http.request.method=DELETE http.request.remoteaddr="127.0.0.1:57594" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.duration="52.087µs" http.response.status=0 http.response.written=0 ---- PASS: TestRepoPrefixMatches (0.06s) +time="2025-03-08T15:16:03+14:00" level=info msg="updated docker.io/notary to timestamp version 1, checksum 5ae6fb239971381d660cb22a388d0a7f9508cb465d1c5956f91b4541d61a0947" docker.io/notary=gun go.version=go1.24.1 http.request.contenttype="multipart/form-data; boundary=111c943491c2f76dd172a38844ddc74b7e119f6352d4c5a01863dab86ac3" http.request.host="127.0.0.1:37927" http.request.id=1b05c24b-32fe-4c3c-956b-1c08485eb404 http.request.method=POST http.request.remoteaddr="127.0.0.1:36536" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 +time="2025-03-08T15:16:03+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype="multipart/form-data; boundary=111c943491c2f76dd172a38844ddc74b7e119f6352d4c5a01863dab86ac3" http.request.host="127.0.0.1:37927" http.request.id=1b05c24b-32fe-4c3c-956b-1c08485eb404 http.request.method=POST http.request.remoteaddr="127.0.0.1:36536" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.duration=82.714628ms http.response.status=0 http.response.written=0 +time="2025-03-08T15:16:03+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:37927" http.request.id=8b186e5b-d54d-4c6b-bf33-611f9787f8a3 http.request.method=GET http.request.remoteaddr="127.0.0.1:36536" http.request.uri=/v2/docker.io/notary/_trust/tuf/snapshot.json http.request.useragent=Go-http-client/1.1 http.response.duration="844.381µs" http.response.status=200 http.response.written=688 +time="2025-03-08T15:16:03+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:37927" http.request.id=ff8cc828-e2c6-41ab-9c08-4eca48bc7f85 http.request.method=GET http.request.remoteaddr="127.0.0.1:36536" http.request.uri=/v2/docker.io/notary/_trust/tuf/snapshot.d2351b50922d37ba14b4967407f5d71d4076bd275102f1347e065e6e2a32241d.json http.request.useragent=Go-http-client/1.1 http.response.duration="54.392µs" http.response.status=200 http.response.written=688 +time="2025-03-08T15:16:03+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:37927" http.request.id=789fcab0-3aca-44e8-8bfa-78aa09b98924 http.request.method=GET http.request.remoteaddr="127.0.0.1:36536" http.request.uri=/v2/docker.io/notary/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration="619.462µs" http.response.status=200 http.response.written=181 +time="2025-03-08T15:16:03+14:00" level=info msg="trust data deleted for docker.io/notary" docker.io/notary=gun go.version=go1.24.1 http.request.host="127.0.0.1:37927" http.request.id=a380fc98-1ab8-4f06-bbdb-1866c92ee372 http.request.method=DELETE http.request.remoteaddr="127.0.0.1:36536" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 +time="2025-03-08T15:16:03+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:37927" http.request.id=a380fc98-1ab8-4f06-bbdb-1866c92ee372 http.request.method=DELETE http.request.remoteaddr="127.0.0.1:36536" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.duration="110.035µs" http.response.status=0 http.response.written=0 +--- PASS: TestRepoPrefixMatches (0.30s) === RUN TestRepoPrefixDoesNotMatch ---- PASS: TestRepoPrefixDoesNotMatch (0.03s) +--- PASS: TestRepoPrefixDoesNotMatch (0.22s) === RUN TestMetricsEndpoint ---- PASS: TestMetricsEndpoint (0.01s) +--- PASS: TestMetricsEndpoint (0.07s) === RUN TestGetKeysEndpoint -time="2026-04-09T19:30:34-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.host="127.0.0.1:41591" http.request.id=ec480eaa-c857-42ee-a064-2be7e5c96278 http.request.method=GET http.request.remoteaddr="127.0.0.1:40198" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 -time="2026-04-09T19:30:34-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:41591" http.request.id=ec480eaa-c857-42ee-a064-2be7e5c96278 http.request.method=GET http.request.remoteaddr="127.0.0.1:40198" 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="96.518µs" http.response.status=404 http.response.written=104 -time="2026-04-09T19:30:34-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.host="127.0.0.1:41591" http.request.id=85f2f5d4-d2df-4d08-b97f-b290d628c9ce http.request.method=GET http.request.remoteaddr="127.0.0.1:40210" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 -time="2026-04-09T19:30:34-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:41591" http.request.id=85f2f5d4-d2df-4d08-b97f-b290d628c9ce http.request.method=GET http.request.remoteaddr="127.0.0.1:40210" 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="70.94µs" http.response.status=404 http.response.written=104 -time="2026-04-09T19:30:34-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.host="127.0.0.1:41591" http.request.id=3d52288f-5b9e-4797-9a7f-a2458f493e4d http.request.method=GET http.request.remoteaddr="127.0.0.1:40214" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 -time="2026-04-09T19:30:34-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:41591" http.request.id=3d52288f-5b9e-4797-9a7f-a2458f493e4d http.request.method=GET http.request.remoteaddr="127.0.0.1:40214" 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="97.07µs" http.response.status=404 http.response.written=104 -time="2026-04-09T19:30:34-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:41591" http.request.id=52d73800-2edb-4c51-a243-15e37896ca69 http.request.method=GET http.request.remoteaddr="127.0.0.1:40226" http.request.uri=/v2/gun/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration=18.034715ms http.response.status=200 http.response.written=103 -time="2026-04-09T19:30:34-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:41591" http.request.id=252fabad-226d-45a6-8cde-dc3098775404 http.request.method=GET http.request.remoteaddr="127.0.0.1:40230" http.request.uri=/v2/gun/_trust/tuf/snapshot.key http.request.useragent=Go-http-client/1.1 http.response.duration="408.679µs" http.response.status=200 http.response.written=103 ---- PASS: TestGetKeysEndpoint (0.02s) +time="2025-03-08T15:16:03+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.host="127.0.0.1:36353" http.request.id=a01751b9-6ca6-49a7-b269-964ec3117820 http.request.method=GET http.request.remoteaddr="127.0.0.1:34432" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 +time="2025-03-08T15:16:03+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:36353" http.request.id=a01751b9-6ca6-49a7-b269-964ec3117820 http.request.method=GET http.request.remoteaddr="127.0.0.1:34432" 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="212.712µs" http.response.status=404 http.response.written=104 +time="2025-03-08T15:16:03+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.host="127.0.0.1:36353" http.request.id=26f9abec-fad0-4700-8160-b2fed8ae71ef http.request.method=GET http.request.remoteaddr="127.0.0.1:34444" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 +time="2025-03-08T15:16:03+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:36353" http.request.id=26f9abec-fad0-4700-8160-b2fed8ae71ef http.request.method=GET http.request.remoteaddr="127.0.0.1:34444" 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="145.589µs" http.response.status=404 http.response.written=104 +time="2025-03-08T15:16:04+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:36353" http.request.id=5a392f82-cef8-46fa-8b4d-82a20b3c93a2 http.request.method=GET http.request.remoteaddr="127.0.0.1:34458" http.request.uri=/v2/gun/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration=147.237687ms http.response.status=200 http.response.written=103 +time="2025-03-08T15:16:04+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:36353" http.request.id=5df4f77e-8eff-4522-8592-e3956ae7ef03 http.request.method=GET http.request.remoteaddr="127.0.0.1:34470" http.request.uri=/v2/gun/_trust/tuf/snapshot.key http.request.useragent=Go-http-client/1.1 http.response.duration="703.161µs" http.response.status=200 http.response.written=103 +time="2025-03-08T15:16:04+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.host="127.0.0.1:36353" http.request.id=c8925c3c-acad-4b49-a053-3411f5466951 http.request.method=GET http.request.remoteaddr="127.0.0.1:34474" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 +time="2025-03-08T15:16:04+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:36353" http.request.id=c8925c3c-acad-4b49-a053-3411f5466951 http.request.method=GET http.request.remoteaddr="127.0.0.1:34474" 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="115.678µs" http.response.status=404 http.response.written=104 +--- PASS: TestGetKeysEndpoint (0.18s) === RUN TestGetRoleByHash -time="2026-04-09T19:30:34-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:41725" http.request.id=61892abe-0d2c-4468-bd76-ccbc57af86fc http.request.method=GET http.request.remoteaddr="127.0.0.1:52430" http.request.uri=/v2/gun/_trust/tuf/timestamp.c8db6a070a3ed2d6b4e82f52c802a55c2e0c39338d0d6d557af4b4938a28f4da.json http.request.useragent=Go-http-client/1.1 http.response.duration="37.524µs" http.response.status=200 http.response.written=120 ---- PASS: TestGetRoleByHash (0.00s) +time="2025-03-08T15:16:04+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:40843" http.request.id=5d51604e-83bf-4cea-9351-8d88672a65cb http.request.method=GET http.request.remoteaddr="127.0.0.1:34658" http.request.uri=/v2/gun/_trust/tuf/timestamp.6f24e73c2c0e34905e0ddc24ae5f817e037c6b2184d41ef283939a7658e09fd6.json http.request.useragent=Go-http-client/1.1 http.response.duration="122.341µs" http.response.status=200 http.response.written=120 +--- PASS: TestGetRoleByHash (0.02s) === RUN TestGetRoleByVersion -time="2026-04-09T19:30:34-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:33409" http.request.id=c1426f73-3dc3-45cf-82d9-f1c45907a538 http.request.method=GET http.request.remoteaddr="127.0.0.1:38614" http.request.uri=/v2/gun/_trust/tuf/1.timestamp.json http.request.useragent=Go-http-client/1.1 http.response.duration="41.303µs" http.response.status=200 http.response.written=120 ---- PASS: TestGetRoleByVersion (0.00s) +time="2025-03-08T15:16:04+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:46101" http.request.id=aad392ca-23ec-4662-abd1-24f64718a881 http.request.method=GET http.request.remoteaddr="127.0.0.1:50106" http.request.uri=/v2/gun/_trust/tuf/1.timestamp.json http.request.useragent=Go-http-client/1.1 http.response.duration="94.808µs" http.response.status=200 http.response.written=120 +--- PASS: TestGetRoleByVersion (0.04s) === RUN TestGetCurrentRole -time="2026-04-09T19:30:34-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:34187" http.request.id=8df33529-6842-42f5-9a51-b611fd47ca01 http.request.method=GET http.request.remoteaddr="127.0.0.1:47628" http.request.uri=/v2/gun/_trust/tuf/timestamp.json http.request.useragent=Go-http-client/1.1 http.response.duration="392.021µs" http.response.status=200 http.response.written=500 ---- PASS: TestGetCurrentRole (0.03s) +time="2025-03-08T15:16:04+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:39631" http.request.id=eeaba5c4-06a7-4b42-83c2-155170038647 http.request.method=GET http.request.remoteaddr="127.0.0.1:50896" http.request.uri=/v2/gun/_trust/tuf/timestamp.json http.request.useragent=Go-http-client/1.1 http.response.duration="766.418µs" http.response.status=200 http.response.written=500 +--- PASS: TestGetCurrentRole (0.23s) === RUN TestRotateKeyEndpoint -time="2026-04-09T19:30:34-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:38161" http.request.id=2d7af41b-a4e8-4dfc-8728-5f30219d7762 http.request.method=POST http.request.remoteaddr="127.0.0.1:33520" http.request.uri=/v2/gun/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration="401.964µs" http.response.status=200 http.response.written=103 -time="2026-04-09T19:30:34-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:38161" http.request.id=c41a718e-e6bf-4a65-a4f4-edc25c97fd09 http.request.method=POST http.request.remoteaddr="127.0.0.1:33528" http.request.uri=/v2/gun/_trust/tuf/snapshot.key http.request.useragent=Go-http-client/1.1 http.response.duration="426.247µs" http.response.status=200 http.response.written=103 -time="2026-04-09T19:30:34-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:38161" http.request.id=b74f815c-ead4-4d4c-9d47-9353e5f1d44f http.request.method=POST http.request.remoteaddr="127.0.0.1:33532" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 -time="2026-04-09T19:30:34-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:38161" http.request.id=b74f815c-ead4-4d4c-9d47-9353e5f1d44f http.request.method=POST http.request.remoteaddr="127.0.0.1:33532" 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="104.159µs" http.response.status=404 http.response.written=104 -time="2026-04-09T19:30:34-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:38161" http.request.id=f83055bb-8df2-4aab-9ef3-1cde224ab693 http.request.method=POST http.request.remoteaddr="127.0.0.1:33546" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 -time="2026-04-09T19:30:34-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:38161" http.request.id=f83055bb-8df2-4aab-9ef3-1cde224ab693 http.request.method=POST http.request.remoteaddr="127.0.0.1:33546" 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="100.558µs" http.response.status=404 http.response.written=104 -time="2026-04-09T19:30:34-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:38161" http.request.id=3aa6c907-51e5-4808-b325-4067d747f855 http.request.method=POST http.request.remoteaddr="127.0.0.1:33558" http.request.uri=/v2/gun/_trust/tuf/targets/delegation.key http.request.useragent=Go-http-client/1.1 -time="2026-04-09T19:30:34-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:38161" http.request.id=3aa6c907-51e5-4808-b325-4067d747f855 http.request.method=POST http.request.remoteaddr="127.0.0.1:33558" 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="92.193µs" http.response.status=404 http.response.written=104 -time="2026-04-09T19:30:34-12:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:38161" http.request.id=2ead55aa-1c09-4883-ac64-cc24ffdbe392 http.request.method=POST http.request.remoteaddr="127.0.0.1:33566" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 -time="2026-04-09T19:30:34-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:38161" http.request.id=2ead55aa-1c09-4883-ac64-cc24ffdbe392 http.request.method=POST http.request.remoteaddr="127.0.0.1:33566" 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="79.017µs" http.response.status=404 http.response.written=104 ---- PASS: TestRotateKeyEndpoint (0.01s) +time="2025-03-08T15:16:04+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:43719" http.request.id=38736daf-ebb5-466a-80a1-82637602975b http.request.method=POST http.request.remoteaddr="127.0.0.1:52146" http.request.uri=/v2/gun/_trust/tuf/targets/delegation.key http.request.useragent=Go-http-client/1.1 +time="2025-03-08T15:16:04+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:43719" http.request.id=38736daf-ebb5-466a-80a1-82637602975b http.request.method=POST http.request.remoteaddr="127.0.0.1:52146" 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="161.782µs" http.response.status=404 http.response.written=104 +time="2025-03-08T15:16:04+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:43719" http.request.id=8e8d5bb8-ef3d-4054-90fa-9321dc569a40 http.request.method=POST http.request.remoteaddr="127.0.0.1:52150" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 +time="2025-03-08T15:16:04+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:43719" http.request.id=8e8d5bb8-ef3d-4054-90fa-9321dc569a40 http.request.method=POST http.request.remoteaddr="127.0.0.1:52150" 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="91.235µs" http.response.status=404 http.response.written=104 +time="2025-03-08T15:16:04+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:43719" http.request.id=5d3ae91f-b124-4312-ba74-efd97a82f270 http.request.method=POST http.request.remoteaddr="127.0.0.1:52158" http.request.uri=/v2/gun/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration="682.791µs" http.response.status=200 http.response.written=103 +time="2025-03-08T15:16:04+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:43719" http.request.id=3ecea396-f953-4c6e-bf5f-85ba0af774fe http.request.method=POST http.request.remoteaddr="127.0.0.1:52162" http.request.uri=/v2/gun/_trust/tuf/snapshot.key http.request.useragent=Go-http-client/1.1 http.response.duration=12.818621ms http.response.status=200 http.response.written=103 +time="2025-03-08T15:16:04+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:43719" http.request.id=beea453e-b3ea-4906-a077-572fc151bea0 http.request.method=POST http.request.remoteaddr="127.0.0.1:52176" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 +time="2025-03-08T15:16:04+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:43719" http.request.id=beea453e-b3ea-4906-a077-572fc151bea0 http.request.method=POST http.request.remoteaddr="127.0.0.1:52176" 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="168.787µs" http.response.status=404 http.response.written=104 +time="2025-03-08T15:16:04+14:00" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:43719" http.request.id=5e706cb0-f359-41d4-b94a-416a9b05b4f3 http.request.method=POST http.request.remoteaddr="127.0.0.1:52178" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 +time="2025-03-08T15:16:04+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.contenttype=text/plain http.request.host="127.0.0.1:43719" http.request.id=5e706cb0-f359-41d4-b94a-416a9b05b4f3 http.request.method=POST http.request.remoteaddr="127.0.0.1:52178" 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="94.864µs" http.response.status=404 http.response.written=104 +--- PASS: TestRotateKeyEndpoint (0.04s) PASS -ok github.com/theupdateframework/notary/server 0.319s +ok github.com/theupdateframework/notary/server 1.468s ? github.com/theupdateframework/notary/server/errors [no test files] === RUN Test_changefeed --- PASS: Test_changefeed (0.00s) === RUN Test_checkChangefeedInputs -time="2026-04-09T19:30:34-12:00" level=error msg="500 GET unable to retrieve storage" -time="2026-04-09T19:30:34-12:00" level=error msg="400 GET invalid pageSize: not_a_number" +time="2025-03-08T15:16:08+14:00" level=error msg="500 GET unable to retrieve storage" +time="2025-03-08T15:16:08+14:00" level=error msg="400 GET invalid pageSize: not_a_number" --- PASS: Test_checkChangefeedInputs (0.00s) === RUN TestMainHandlerGet -time="2026-04-09T19:30:34-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:36717" http.request.id=103010fa-ce9b-4028-848e-863347dd1ee9 http.request.method=GET http.request.remoteaddr="127.0.0.1:39734" http.request.uri=/ http.request.useragent=Go-http-client/1.1 http.response.duration="69.923µs" http.response.status=200 http.response.written=2 +time="2025-03-08T15:16:08+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:37243" http.request.id=dc7793fb-b311-44ff-8803-7182f4dd95ed http.request.method=GET http.request.remoteaddr="127.0.0.1:55340" http.request.uri=/ http.request.useragent=Go-http-client/1.1 http.response.duration="68.352µs" http.response.status=200 http.response.written=2 --- PASS: TestMainHandlerGet (0.00s) === RUN TestMainHandlerNotGet -time="2026-04-09T19:30:34-12:00" level=info msg="generic not found: You have requested a resource that does not exist.: " go.version=go1.24.1 http.request.host="127.0.0.1:45387" http.request.id=ecab019f-3744-4ace-a484-c18719a18998 http.request.method=HEAD http.request.remoteaddr="127.0.0.1:53246" http.request.uri=/ http.request.useragent=Go-http-client/1.1 -time="2026-04-09T19:30:34-12:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:45387" http.request.id=ecab019f-3744-4ace-a484-c18719a18998 http.request.method=HEAD http.request.remoteaddr="127.0.0.1:53246" http.request.uri=/ http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="235.981µs" http.response.status=404 http.response.written=105 ---- PASS: TestMainHandlerNotGet (0.00s) +time="2025-03-08T15:16:08+14:00" level=info msg="generic not found: You have requested a resource that does not exist.: " go.version=go1.24.1 http.request.host="127.0.0.1:35369" http.request.id=564f401f-37de-40db-a3ac-e30af9e3bf54 http.request.method=HEAD http.request.remoteaddr="127.0.0.1:36306" http.request.uri=/ http.request.useragent=Go-http-client/1.1 +time="2025-03-08T15:16:08+14:00" level=info msg="response completed" go.version=go1.24.1 http.request.host="127.0.0.1:35369" http.request.id=564f401f-37de-40db-a3ac-e30af9e3bf54 http.request.method=HEAD http.request.remoteaddr="127.0.0.1:36306" http.request.uri=/ http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="337.859µs" http.response.status=404 http.response.written=105 +--- PASS: TestMainHandlerNotGet (0.01s) === RUN TestKeyHandlersInvalidConfiguration -time="2026-04-09T19:30:34-12:00" level=error msg="500 GET storage not configured" go.version=go1.24.1 gun=gun -time="2026-04-09T19:30:34-12:00" level=error msg="500 GET storage not configured" go.version=go1.24.1 gun=gun -time="2026-04-09T19:30:34-12:00" level=error msg="500 GET crypto service not configured" go.version=go1.24.1 gun=gun -time="2026-04-09T19:30:34-12:00" level=error msg="500 GET crypto service not configured" go.version=go1.24.1 gun=gun -time="2026-04-09T19:30:34-12:00" level=error msg="500 GET key algorithm not configured" go.version=go1.24.1 gun=gun -time="2026-04-09T19:30:34-12:00" level=error msg="500 GET key algorithm not configured" go.version=go1.24.1 gun=gun -time="2026-04-09T19:30:34-12:00" level=error msg="500 POST storage not configured" go.version=go1.24.1 gun=gun -time="2026-04-09T19:30:34-12:00" level=error msg="500 POST storage not configured" go.version=go1.24.1 gun=gun -time="2026-04-09T19:30:34-12:00" level=error msg="500 POST crypto service not configured" go.version=go1.24.1 gun=gun -time="2026-04-09T19:30:34-12:00" level=error msg="500 POST crypto service not configured" go.version=go1.24.1 gun=gun -time="2026-04-09T19:30:34-12:00" level=error msg="500 POST key algorithm not configured" go.version=go1.24.1 gun=gun -time="2026-04-09T19:30:34-12:00" level=error msg="500 POST key algorithm not configured" go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=error msg="500 GET storage not configured" go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=error msg="500 GET storage not configured" go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=error msg="500 GET crypto service not configured" go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=error msg="500 GET crypto service not configured" go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=error msg="500 GET key algorithm not configured" go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=error msg="500 GET key algorithm not configured" go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=error msg="500 POST storage not configured" go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=error msg="500 POST storage not configured" go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=error msg="500 POST crypto service not configured" go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=error msg="500 POST crypto service not configured" go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=error msg="500 POST key algorithm not configured" go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=error msg="500 POST key algorithm not configured" go.version=go1.24.1 gun=gun --- PASS: TestKeyHandlersInvalidConfiguration (0.00s) === RUN TestKeyHandlersNoRoleOrRepo -time="2026-04-09T19:30:34-12:00" level=info msg="400 GET no gun in request" =gun go.version=go1.24.1 -time="2026-04-09T19:30:34-12:00" level=info msg="400 GET no gun in request" =gun go.version=go1.24.1 -time="2026-04-09T19:30:34-12:00" level=info msg="400 GET no role in request" go.version=go1.24.1 gun=gun -time="2026-04-09T19:30:34-12:00" level=info msg="400 GET no role in request" go.version=go1.24.1 gun=gun -time="2026-04-09T19:30:34-12:00" level=info msg="400 POST no gun in request" =gun go.version=go1.24.1 -time="2026-04-09T19:30:34-12:00" level=info msg="400 POST no gun in request" =gun go.version=go1.24.1 -time="2026-04-09T19:30:34-12:00" level=info msg="400 POST no role in request" go.version=go1.24.1 gun=gun -time="2026-04-09T19:30:34-12:00" level=info msg="400 POST no role in request" go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=info msg="400 GET no gun in request" =gun go.version=go1.24.1 +time="2025-03-08T15:16:08+14:00" level=info msg="400 GET no gun in request" =gun go.version=go1.24.1 +time="2025-03-08T15:16:08+14:00" level=info msg="400 GET no role in request" go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=info msg="400 GET no role in request" go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=info msg="400 POST no gun in request" =gun go.version=go1.24.1 +time="2025-03-08T15:16:08+14:00" level=info msg="400 POST no gun in request" =gun go.version=go1.24.1 +time="2025-03-08T15:16:08+14:00" level=info msg="400 POST no role in request" go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=info msg="400 POST no role in request" go.version=go1.24.1 gun=gun --- PASS: TestKeyHandlersNoRoleOrRepo (0.00s) === RUN TestKeyHandlersInvalidRole -time="2026-04-09T19:30:34-12:00" level=info msg="400 GET root key: " go.version=go1.24.1 gun=gun -time="2026-04-09T19:30:34-12:00" level=info msg="400 GET targets key: " go.version=go1.24.1 gun=gun -time="2026-04-09T19:30:34-12:00" level=info msg="400 GET targets/a key: " go.version=go1.24.1 gun=gun -time="2026-04-09T19:30:34-12:00" level=info msg="400 GET invalidrole key: " go.version=go1.24.1 gun=gun -time="2026-04-09T19:30:34-12:00" level=info msg="400 POST root key: " go.version=go1.24.1 gun=gun -time="2026-04-09T19:30:34-12:00" level=info msg="400 POST targets key: " go.version=go1.24.1 gun=gun -time="2026-04-09T19:30:34-12:00" level=info msg="400 POST targets/a key: " go.version=go1.24.1 gun=gun -time="2026-04-09T19:30:34-12:00" level=info msg="400 POST invalidrole key: " go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=info msg="400 GET root key: " go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=info msg="400 GET targets key: " go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=info msg="400 GET targets/a key: " go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=info msg="400 GET invalidrole key: " go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=info msg="400 POST root key: " go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=info msg="400 POST targets key: " go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=info msg="400 POST targets/a key: " go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=info msg="400 POST invalidrole key: " go.version=go1.24.1 gun=gun --- PASS: TestKeyHandlersInvalidRole (0.00s) === RUN TestGetKeyHandlerCreatesOnce ---- PASS: TestGetKeyHandlerCreatesOnce (0.02s) +--- PASS: TestGetKeyHandlerCreatesOnce (0.09s) === RUN TestKeyHandlersInvalidKeyAlgo -time="2026-04-09T19:30:34-12:00" level=error msg="500 GET timestamp key: only ED25519 supported by this cryptoservice" go.version=go1.24.1 gun=gun -time="2026-04-09T19:30:34-12:00" level=error msg="500 GET snapshot key: only ED25519 supported by this cryptoservice" go.version=go1.24.1 gun=gun -time="2026-04-09T19:30:34-12:00" level=error msg="500 POST timestamp key: only ED25519 supported by this cryptoservice" go.version=go1.24.1 gun=gun -time="2026-04-09T19:30:34-12:00" level=error msg="500 POST snapshot key: only ED25519 supported by this cryptoservice" go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=error msg="500 GET timestamp key: only ED25519 supported by this cryptoservice" go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=error msg="500 GET snapshot key: only ED25519 supported by this cryptoservice" go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=error msg="500 POST timestamp key: only ED25519 supported by this cryptoservice" go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=error msg="500 POST snapshot key: only ED25519 supported by this cryptoservice" go.version=go1.24.1 gun=gun --- PASS: TestKeyHandlersInvalidKeyAlgo (0.00s) === RUN TestRotateKeyHandlerSuccessfulRotation --- PASS: TestRotateKeyHandlerSuccessfulRotation (0.00s) === RUN TestGetHandlerRoot -time="2026-04-09T19:30:34-12:00" level=info msg="404 GET root role" go.version=go1.24.1 gun=gun ---- PASS: TestGetHandlerRoot (0.01s) +time="2025-03-08T15:16:08+14:00" level=info msg="404 GET root role" go.version=go1.24.1 gun=gun +--- PASS: TestGetHandlerRoot (0.06s) === RUN TestGetHandlerTimestamp ---- PASS: TestGetHandlerTimestamp (0.02s) +--- PASS: TestGetHandlerTimestamp (0.08s) === RUN TestGetHandlerSnapshot ---- PASS: TestGetHandlerSnapshot (0.02s) +--- PASS: TestGetHandlerSnapshot (0.08s) === RUN TestGetHandler404 -time="2026-04-09T19:30:34-12:00" level=info msg="404 GET root role" go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=info msg="404 GET root role" go.version=go1.24.1 gun=gun --- PASS: TestGetHandler404 (0.00s) === RUN TestGetHandlerNilData -time="2026-04-09T19:30:34-12:00" level=info msg="404 GET root role" go.version=go1.24.1 gun=gun +time="2025-03-08T15:16:08+14:00" level=info msg="404 GET root role" go.version=go1.24.1 gun=gun --- PASS: TestGetHandlerNilData (0.00s) === RUN TestGetHandlerNoStorage -time="2026-04-09T19:30:34-12:00" level=error msg="500 GET: no storage exists" =gun go.version=go1.24.1 +time="2025-03-08T15:16:08+14:00" level=error msg="500 GET: no storage exists" =gun go.version=go1.24.1 --- PASS: TestGetHandlerNoStorage (0.00s) === RUN TestAtomicUpdateValidationFailurePropagated ---- PASS: TestAtomicUpdateValidationFailurePropagated (0.04s) +--- PASS: TestAtomicUpdateValidationFailurePropagated (0.15s) === RUN TestAtomicUpdateNonValidationFailureNotPropagated -time="2026-04-09T19:30:34-12:00" level=info msg="400 POST error validating update" go.version=go1.24.1 testGUN=gun ---- PASS: TestAtomicUpdateNonValidationFailureNotPropagated (0.03s) +time="2025-03-08T15:16:09+14:00" level=info msg="400 POST error validating update" go.version=go1.24.1 testGUN=gun +--- PASS: TestAtomicUpdateNonValidationFailureNotPropagated (0.13s) === RUN TestAtomicUpdateVersionErrorPropagated -time="2026-04-09T19:30:34-12:00" level=info msg="400 POST old version error" go.version=go1.24.1 testGUN=gun ---- PASS: TestAtomicUpdateVersionErrorPropagated (0.04s) +time="2025-03-08T15:16:09+14:00" level=info msg="400 POST old version error" go.version=go1.24.1 testGUN=gun +--- PASS: TestAtomicUpdateVersionErrorPropagated (0.23s) === RUN TestGetMaybeServerSignedNoCrypto --- PASS: TestGetMaybeServerSignedNoCrypto (0.00s) === RUN TestGetMaybeServerSignedNoKey --- PASS: TestGetMaybeServerSignedNoKey (0.00s) === RUN TestValidateEmptyNew ---- PASS: TestValidateEmptyNew (0.05s) +--- PASS: TestValidateEmptyNew (0.19s) === RUN TestValidateRootCanContainOnlyx509KeysWithRightGun ---- PASS: TestValidateRootCanContainOnlyx509KeysWithRightGun (0.05s) +--- PASS: TestValidateRootCanContainOnlyx509KeysWithRightGun (0.25s) === RUN TestValidatePrevTimestamp ---- PASS: TestValidatePrevTimestamp (0.05s) +--- PASS: TestValidatePrevTimestamp (0.18s) === RUN TestValidatePreviousTimestampCorrupt -time="2026-04-09T19:30:35-12:00" level=error msg="Failed to unmarshal existing timestamp for GUN docker.com/notary" ---- PASS: TestValidatePreviousTimestampCorrupt (0.04s) +time="2025-03-08T15:16:10+14:00" level=error msg="Failed to unmarshal existing timestamp for GUN docker.com/notary" +--- PASS: TestValidatePreviousTimestampCorrupt (0.17s) === RUN TestValidateGetCurrentTimestampBroken ---- PASS: TestValidateGetCurrentTimestampBroken (0.04s) +--- PASS: TestValidateGetCurrentTimestampBroken (0.19s) === RUN TestValidateNoNewRoot ---- PASS: TestValidateNoNewRoot (0.04s) +--- PASS: TestValidateNoNewRoot (0.21s) === RUN TestValidateNoNewTargets ---- PASS: TestValidateNoNewTargets (0.04s) +--- PASS: TestValidateNoNewTargets (0.16s) === RUN TestValidateOnlySnapshot ---- PASS: TestValidateOnlySnapshot (0.04s) +--- PASS: TestValidateOnlySnapshot (0.17s) === RUN TestValidateOldRoot ---- PASS: TestValidateOldRoot (0.05s) +--- PASS: TestValidateOldRoot (0.25s) === RUN TestValidateOldRootCorrupt ---- PASS: TestValidateOldRootCorrupt (0.03s) +--- PASS: TestValidateOldRootCorrupt (0.13s) === RUN TestValidateOldRootCorruptRootRole ---- PASS: TestValidateOldRootCorruptRootRole (0.03s) +--- PASS: TestValidateOldRootCorruptRootRole (0.13s) === RUN TestValidateRootGetCurrentRootBroken ---- PASS: TestValidateRootGetCurrentRootBroken (0.03s) +--- PASS: TestValidateRootGetCurrentRootBroken (0.14s) === RUN TestValidateRootRotationWithOldSigs ---- PASS: TestValidateRootRotationWithOldSigs (0.13s) +--- PASS: TestValidateRootRotationWithOldSigs (0.64s) === RUN TestValidateRootRotationMultipleKeysThreshold1 ---- PASS: TestValidateRootRotationMultipleKeysThreshold1 (0.09s) +--- PASS: TestValidateRootRotationMultipleKeysThreshold1 (0.37s) === RUN TestRootRotationNotSignedWithOldKeysForOldRole ---- PASS: TestRootRotationNotSignedWithOldKeysForOldRole (0.13s) +--- PASS: TestRootRotationNotSignedWithOldKeysForOldRole (0.81s) === RUN TestRootRotationVersionIncrement ---- PASS: TestRootRotationVersionIncrement (0.07s) +--- PASS: TestRootRotationVersionIncrement (0.43s) === RUN TestValidateNoRoot ---- PASS: TestValidateNoRoot (0.03s) +--- PASS: TestValidateNoRoot (0.15s) === RUN TestValidateSnapshotMissingNoSnapshotKey ---- PASS: TestValidateSnapshotMissingNoSnapshotKey (0.04s) +--- PASS: TestValidateSnapshotMissingNoSnapshotKey (0.25s) === RUN TestValidateSnapshotGenerateNoPrev ---- PASS: TestValidateSnapshotGenerateNoPrev (0.05s) +--- PASS: TestValidateSnapshotGenerateNoPrev (0.36s) === RUN TestValidateSnapshotGenerateWithPrev ---- PASS: TestValidateSnapshotGenerateWithPrev (0.04s) +--- PASS: TestValidateSnapshotGenerateWithPrev (0.32s) === RUN TestValidateSnapshotGeneratePrevCorrupt -time="2026-04-09T19:30:35-12:00" level=error msg="Failed to unmarshal existing snapshot for GUN docker.com/notary" ---- PASS: TestValidateSnapshotGeneratePrevCorrupt (0.04s) +time="2025-03-08T15:16:15+14:00" level=error msg="Failed to unmarshal existing snapshot for GUN docker.com/notary" +--- PASS: TestValidateSnapshotGeneratePrevCorrupt (0.27s) === RUN TestValidateSnapshotGenerateStoreGetCurrentSnapshotBroken ---- PASS: TestValidateSnapshotGenerateStoreGetCurrentSnapshotBroken (0.05s) +--- PASS: TestValidateSnapshotGenerateStoreGetCurrentSnapshotBroken (0.26s) === RUN TestValidateSnapshotGenerateNoTargets ---- PASS: TestValidateSnapshotGenerateNoTargets (0.05s) +--- PASS: TestValidateSnapshotGenerateNoTargets (0.25s) === RUN TestValidateSnapshotGenerate ---- PASS: TestValidateSnapshotGenerate (0.04s) +--- PASS: TestValidateSnapshotGenerate (0.32s) === RUN TestValidateRootNoTimestampKey ---- PASS: TestValidateRootNoTimestampKey (0.03s) +--- PASS: TestValidateRootNoTimestampKey (0.24s) === RUN TestValidateRootInvalidTimestampKey ---- PASS: TestValidateRootInvalidTimestampKey (0.03s) +--- PASS: TestValidateRootInvalidTimestampKey (0.25s) === RUN TestValidateRootInvalidTimestampThreshold ---- PASS: TestValidateRootInvalidTimestampThreshold (0.04s) +--- PASS: TestValidateRootInvalidTimestampThreshold (0.28s) === RUN TestValidateRootInvalidZeroThreshold ---- PASS: TestValidateRootInvalidZeroThreshold (0.12s) +--- PASS: TestValidateRootInvalidZeroThreshold (0.76s) === RUN TestValidateRootRoleMissing ---- PASS: TestValidateRootRoleMissing (0.02s) +--- PASS: TestValidateRootRoleMissing (0.15s) === RUN TestValidateTargetsRoleMissing ---- PASS: TestValidateTargetsRoleMissing (0.02s) +--- PASS: TestValidateTargetsRoleMissing (0.16s) === RUN TestValidateSnapshotRoleMissing ---- PASS: TestValidateSnapshotRoleMissing (0.02s) +--- PASS: TestValidateSnapshotRoleMissing (0.19s) === RUN TestValidateRootSigMissing ---- PASS: TestValidateRootSigMissing (0.02s) +--- PASS: TestValidateRootSigMissing (0.20s) === RUN TestValidateTargetsSigMissing -time="2026-04-09T19:30:36-12:00" level=error msg="ErrBadTargets: tuf: data has no signatures" ---- PASS: TestValidateTargetsSigMissing (0.03s) +time="2025-03-08T15:16:18+14:00" level=error msg="ErrBadTargets: tuf: data has no signatures" +--- PASS: TestValidateTargetsSigMissing (0.23s) === RUN TestValidateSnapshotSigMissing ---- PASS: TestValidateSnapshotSigMissing (0.03s) +--- PASS: TestValidateSnapshotSigMissing (0.24s) === RUN TestValidateRootCorrupt ---- PASS: TestValidateRootCorrupt (0.03s) +--- PASS: TestValidateRootCorrupt (0.11s) === RUN TestValidateTargetsCorrupt -time="2026-04-09T19:30:36-12:00" level=error msg="ErrBadTargets: invalid character '\\u0084' looking for beginning of value" ---- PASS: TestValidateTargetsCorrupt (0.03s) +time="2025-03-08T15:16:19+14:00" level=error msg="ErrBadTargets: invalid character '\\u0084' looking for beginning of value" +--- PASS: TestValidateTargetsCorrupt (0.06s) === RUN TestValidateSnapshotCorrupt ---- PASS: TestValidateSnapshotCorrupt (0.03s) +--- PASS: TestValidateSnapshotCorrupt (0.07s) === RUN TestValidateRootModifiedSize ---- PASS: TestValidateRootModifiedSize (0.03s) +--- PASS: TestValidateRootModifiedSize (0.08s) === RUN TestValidateTargetsModifiedSize ---- PASS: TestValidateTargetsModifiedSize (0.04s) +--- PASS: TestValidateTargetsModifiedSize (0.09s) === RUN TestValidateRootModifiedHash ---- PASS: TestValidateRootModifiedHash (0.03s) +--- PASS: TestValidateRootModifiedHash (0.16s) === RUN TestValidateTargetsModifiedHash ---- PASS: TestValidateTargetsModifiedHash (0.03s) +--- PASS: TestValidateTargetsModifiedHash (0.13s) === RUN TestGenerateSnapshotRootNotLoaded --- PASS: TestGenerateSnapshotRootNotLoaded (0.00s) === RUN TestGenerateSnapshotNoKey ---- PASS: TestGenerateSnapshotNoKey (0.03s) +--- PASS: TestGenerateSnapshotNoKey (0.20s) === RUN TestLoadTargetsLoadsNothingIfNoUpdates ---- PASS: TestLoadTargetsLoadsNothingIfNoUpdates (0.03s) +--- PASS: TestLoadTargetsLoadsNothingIfNoUpdates (0.12s) === RUN TestValidateTargetsRequiresStoredParent -time="2026-04-09T19:30:36-12:00" level=error msg="ErrBadTargets: targets must be loaded first" ---- PASS: TestValidateTargetsRequiresStoredParent (0.04s) +time="2025-03-08T15:16:20+14:00" level=error msg="ErrBadTargets: targets must be loaded first" +--- PASS: TestValidateTargetsRequiresStoredParent (0.23s) === RUN TestValidateTargetsParentInUpdate -time="2026-04-09T19:30:36-12:00" level=error msg="ErrBadTargets: invalid character 'I' looking for beginning of value" ---- PASS: TestValidateTargetsParentInUpdate (0.04s) +time="2025-03-08T15:16:20+14:00" level=error msg="ErrBadTargets: invalid character 'I' looking for beginning of value" +--- PASS: TestValidateTargetsParentInUpdate (0.20s) === RUN TestValidateTargetsRoleNotInParent -time="2026-04-09T19:30:36-12:00" level=error msg="ErrBadTargets: tuf: invalid role targets/level1. delegation does not exist" -time="2026-04-09T19:30:36-12:00" level=error msg="ErrBadTargets: targets has already been loaded" -time="2026-04-09T19:30:36-12:00" level=error msg="ErrBadTargets: tuf: invalid role targets/level1. delegation does not exist" ---- PASS: TestValidateTargetsRoleNotInParent (0.05s) +time="2025-03-08T15:16:20+14:00" level=error msg="ErrBadTargets: tuf: invalid role targets/level1. delegation does not exist" +time="2025-03-08T15:16:20+14:00" level=error msg="ErrBadTargets: targets has already been loaded" +time="2025-03-08T15:16:20+14:00" level=error msg="ErrBadTargets: tuf: invalid role targets/level1. delegation does not exist" +--- PASS: TestValidateTargetsRoleNotInParent (0.22s) PASS -ok github.com/theupdateframework/notary/server/handlers 2.205s +ok github.com/theupdateframework/notary/server/handlers 11.926s === RUN TestSnapshotExpired --- PASS: TestSnapshotExpired (0.00s) === RUN TestSnapshotNotExpired --- PASS: TestSnapshotNotExpired (0.00s) === RUN TestGetSnapshotKeyCreate ---- PASS: TestGetSnapshotKeyCreate (0.03s) +--- PASS: TestGetSnapshotKeyCreate (0.08s) === RUN TestGetSnapshotKeyCreateWithFailingStore -time="2026-04-09T19:30:34-12:00" level=error msg="Error when retrieving root role for GUN gun: failing store failed" +time="2025-03-08T15:16:08+14:00" level=error msg="Error when retrieving root role for GUN gun: failing store failed" --- PASS: TestGetSnapshotKeyCreateWithFailingStore (0.00s) === RUN TestGetSnapshotKeyCreateWithCorruptedStore -time="2026-04-09T19:30:34-12:00" level=error msg="Failed to unmarshal existing root for GUN gun to retrieve snapshot key ID" +time="2025-03-08T15:16:08+14:00" level=error msg="Failed to unmarshal existing root for GUN gun to retrieve snapshot key ID" --- PASS: TestGetSnapshotKeyCreateWithCorruptedStore (0.00s) === RUN TestGetSnapshotKeyCreateWithInvalidAlgo --- PASS: TestGetSnapshotKeyCreateWithInvalidAlgo (0.00s) === RUN TestGetSnapshotKeyExistingMetadata ---- PASS: TestGetSnapshotKeyExistingMetadata (0.01s) +--- PASS: TestGetSnapshotKeyExistingMetadata (0.06s) === RUN TestGetSnapshotNoPreviousSnapshot -time="2026-04-09T19:30:34-12:00" level=error msg="Failed to unmarshal existing snapshot for GUN gun" ---- PASS: TestGetSnapshotNoPreviousSnapshot (0.01s) +time="2025-03-08T15:16:08+14:00" level=error msg="Failed to unmarshal existing snapshot for GUN gun" +--- PASS: TestGetSnapshotNoPreviousSnapshot (0.08s) === RUN TestGetSnapshotReturnsPreviousSnapshotIfUnexpired ---- PASS: TestGetSnapshotReturnsPreviousSnapshotIfUnexpired (0.01s) +--- PASS: TestGetSnapshotReturnsPreviousSnapshotIfUnexpired (0.07s) === RUN TestGetSnapshotOldSnapshotExpired ---- PASS: TestGetSnapshotOldSnapshotExpired (0.02s) +--- PASS: TestGetSnapshotOldSnapshotExpired (0.10s) === RUN TestCannotMakeNewSnapshotIfNoRoot ---- PASS: TestCannotMakeNewSnapshotIfNoRoot (0.01s) +--- PASS: TestCannotMakeNewSnapshotIfNoRoot (0.07s) === RUN TestCreateSnapshotNoKeyInCrypto ---- PASS: TestCreateSnapshotNoKeyInCrypto (0.02s) +--- PASS: TestCreateSnapshotNoKeyInCrypto (0.10s) PASS -ok github.com/theupdateframework/notary/server/snapshot 0.198s +ok github.com/theupdateframework/notary/server/snapshot 0.636s === RUN TestMemoryUpdateCurrentEmpty --- PASS: TestMemoryUpdateCurrentEmpty (0.00s) === RUN TestMemoryUpdateCurrentVersionCheckOldVersionExists @@ -3269,76 +3305,76 @@ === RUN TestRDBTUFFileJSONUnmarshallingFailure --- PASS: TestRDBTUFFileJSONUnmarshallingFailure (0.00s) === RUN TestSQLUpdateCurrentEmpty ---- PASS: TestSQLUpdateCurrentEmpty (0.55s) +--- PASS: TestSQLUpdateCurrentEmpty (0.24s) === RUN TestSQLUpdateCurrentVersionCheckOldVersionExists ---- PASS: TestSQLUpdateCurrentVersionCheckOldVersionExists (0.02s) +--- PASS: TestSQLUpdateCurrentVersionCheckOldVersionExists (0.14s) === RUN TestSQLUpdateCurrentVersionCheckOldVersionNotExist ---- PASS: TestSQLUpdateCurrentVersionCheckOldVersionNotExist (0.02s) +--- PASS: TestSQLUpdateCurrentVersionCheckOldVersionNotExist (0.14s) === RUN TestSQLUpdateManyNoConflicts ---- PASS: TestSQLUpdateManyNoConflicts (0.03s) +--- PASS: TestSQLUpdateManyNoConflicts (0.12s) === RUN TestSQLUpdateManyConflictRollback ---- PASS: TestSQLUpdateManyConflictRollback (0.01s) +--- PASS: TestSQLUpdateManyConflictRollback (0.10s) === RUN TestSQLDelete ---- PASS: TestSQLDelete (0.03s) +--- PASS: TestSQLDelete (0.18s) === RUN TestSQLDBCheckHealthTableMissing ---- PASS: TestSQLDBCheckHealthTableMissing (0.02s) +--- PASS: TestSQLDBCheckHealthTableMissing (0.11s) === RUN TestSQLDBCheckHealthDBConnectionFail ---- PASS: TestSQLDBCheckHealthDBConnectionFail (0.01s) +--- PASS: TestSQLDBCheckHealthDBConnectionFail (0.09s) === RUN TestSQLDBCheckHealthSucceeds ---- PASS: TestSQLDBCheckHealthSucceeds (0.01s) +--- PASS: TestSQLDBCheckHealthSucceeds (0.09s) === RUN TestSQLDBGetChecksum ---- PASS: TestSQLDBGetChecksum (0.02s) +--- PASS: TestSQLDBGetChecksum (0.14s) === RUN TestSQLDBGetChecksumNotFound ---- PASS: TestSQLDBGetChecksumNotFound (0.01s) +--- PASS: TestSQLDBGetChecksumNotFound (0.08s) === RUN TestSQLTUFMetaStoreGetCurrent ---- PASS: TestSQLTUFMetaStoreGetCurrent (0.07s) +--- PASS: TestSQLTUFMetaStoreGetCurrent (0.35s) === RUN TestSQLGetChanges ---- PASS: TestSQLGetChanges (0.03s) +--- PASS: TestSQLGetChanges (0.28s) === RUN TestSQLDBGetVersion ---- PASS: TestSQLDBGetVersion (0.01s) +--- PASS: TestSQLDBGetVersion (0.10s) PASS -ok github.com/theupdateframework/notary/server/storage 0.860s +ok github.com/theupdateframework/notary/server/storage 2.254s === RUN TestTimestampExpired --- PASS: TestTimestampExpired (0.00s) === RUN TestTimestampNotExpired --- PASS: TestTimestampNotExpired (0.00s) === RUN TestGetTimestampKey ---- PASS: TestGetTimestampKey (0.03s) +--- PASS: TestGetTimestampKey (0.08s) === RUN TestGetTimestampNoPreviousTimestamp -time="2026-04-09T19:30:34-12:00" level=error msg="Failed to unmarshal existing timestamp" ---- PASS: TestGetTimestampNoPreviousTimestamp (0.04s) +time="2025-03-08T15:16:12+14:00" level=error msg="Failed to unmarshal existing timestamp" +--- PASS: TestGetTimestampNoPreviousTimestamp (0.11s) === RUN TestGetTimestampReturnsPreviousTimestampIfUnexpired ---- PASS: TestGetTimestampReturnsPreviousTimestampIfUnexpired (0.04s) +--- PASS: TestGetTimestampReturnsPreviousTimestampIfUnexpired (0.11s) === RUN TestGetTimestampOldTimestampExpired ---- PASS: TestGetTimestampOldTimestampExpired (0.04s) +--- PASS: TestGetTimestampOldTimestampExpired (0.17s) === RUN TestCannotMakeNewTimestampIfNoRootOrSnapshot -time="2026-04-09T19:30:34-12:00" level=error msg="Failed to create a new timestamp" -time="2026-04-09T19:30:34-12:00" level=error msg="Failed to create a new timestamp" ---- PASS: TestCannotMakeNewTimestampIfNoRootOrSnapshot (0.03s) +time="2025-03-08T15:16:12+14:00" level=error msg="Failed to create a new timestamp" +time="2025-03-08T15:16:12+14:00" level=error msg="Failed to create a new timestamp" +--- PASS: TestCannotMakeNewTimestampIfNoRootOrSnapshot (0.13s) === RUN TestCreateTimestampNoKeyInCrypto -time="2026-04-09T19:30:34-12:00" level=error msg="Failed to create a new timestamp" ---- PASS: TestCreateTimestampNoKeyInCrypto (0.04s) +time="2025-03-08T15:16:12+14:00" level=error msg="Failed to create a new timestamp" +--- PASS: TestCreateTimestampNoKeyInCrypto (0.15s) === RUN TestGetTimestampKeyCreateWithFailingStore -time="2026-04-09T19:30:34-12:00" level=error msg="Error when retrieving root role for GUN gun: failing store failed" +time="2025-03-08T15:16:12+14:00" level=error msg="Error when retrieving root role for GUN gun: failing store failed" --- PASS: TestGetTimestampKeyCreateWithFailingStore (0.00s) === RUN TestGetTimestampKeyCreateWithCorruptedStore -time="2026-04-09T19:30:34-12:00" level=error msg="Failed to unmarshal existing root for GUN gun to retrieve timestamp key ID" +time="2025-03-08T15:16:12+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.01s) +--- PASS: TestGetTimestampKeyExistingMetadata (0.06s) PASS -ok github.com/theupdateframework/notary/server/timestamp 0.318s +ok github.com/theupdateframework/notary/server/timestamp 0.888s ? github.com/theupdateframework/notary/signer [no test files] ? github.com/theupdateframework/notary/signer/api [no test files] ? github.com/theupdateframework/notary/signer/client [no test files] === RUN TestGetSuccessPopulatesCache ---- PASS: TestGetSuccessPopulatesCache (0.01s) +--- PASS: TestGetSuccessPopulatesCache (0.03s) === RUN TestAddKeyPopulatesCacheIfSuccessful ---- PASS: TestAddKeyPopulatesCacheIfSuccessful (0.00s) +--- PASS: TestAddKeyPopulatesCacheIfSuccessful (0.03s) === RUN TestDeleteKeyRemovesKeyFromCache ---- PASS: TestDeleteKeyRemovesKeyFromCache (0.01s) +--- PASS: TestDeleteKeyRemovesKeyFromCache (0.04s) === RUN TestRDBPrivateKeyJSONUnmarshalling --- PASS: TestRDBPrivateKeyJSONUnmarshalling (0.00s) === RUN TestRDBPrivateKeyJSONUnmarshallingFailure @@ -3347,30 +3383,30 @@ `nodb` is not officially supported, running under compatibility mode. --- PASS: TestNewSQLKeyDBStorePropagatesDBError (0.00s) === RUN TestSQLDBHealthCheckMissingTable ---- PASS: TestSQLDBHealthCheckMissingTable (0.51s) +--- PASS: TestSQLDBHealthCheckMissingTable (0.10s) === RUN TestSQLDBHealthCheckNoConnection ---- PASS: TestSQLDBHealthCheckNoConnection (0.01s) +--- PASS: TestSQLDBHealthCheckNoConnection (0.06s) === RUN TestSQLKeyCanOnlyBeAddedOnce (/build/reproducible-path/notary-0.7.0+git20240416.9d2b3b3+ds1/_build/src/github.com/theupdateframework/notary/signer/keydbstore/sql_keydbstore.go:98) -[2026-04-09 19:30:35]  UNIQUE constraint failed: private_keys.key_id  ---- PASS: TestSQLKeyCanOnlyBeAddedOnce (0.08s) +[2025-03-08 15:16:19]  UNIQUE constraint failed: private_keys.key_id  +--- PASS: TestSQLKeyCanOnlyBeAddedOnce (0.48s) === RUN TestSQLCreateDelete ---- PASS: TestSQLCreateDelete (0.10s) +--- PASS: TestSQLCreateDelete (0.28s) === RUN TestSQLKeyRotation ---- PASS: TestSQLKeyRotation (0.11s) +--- PASS: TestSQLKeyRotation (0.40s) === RUN TestSQLSigningMarksKeyActive -time="2026-04-09T19:30:35-12:00" level=error msg="Key 6811918c6bc05122ffb4ad66e4c888e14d84f73f4f276c1e238c626568e46150 was just used to sign hash successful, db closed, error when trying to mark key as active: sql: database is closed" +time="2025-03-08T15:16:21+14:00" level=error msg="Key 185b9262ccbc7791b561d7441a2fbfccac2fe2953a0399f5cdc68960823427f4 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) -[2026-04-09 19:30:35]  sql: database is closed  ---- PASS: TestSQLSigningMarksKeyActive (0.16s) +[2025-03-08 15:16:21]  sql: database is closed  +--- PASS: TestSQLSigningMarksKeyActive (0.96s) === RUN TestSQLCreateKey ---- PASS: TestSQLCreateKey (0.14s) +--- PASS: TestSQLCreateKey (0.89s) === RUN TestSQLUnimplementedInterfaceBehavior ---- PASS: TestSQLUnimplementedInterfaceBehavior (0.04s) +--- PASS: TestSQLUnimplementedInterfaceBehavior (0.29s) PASS -ok github.com/theupdateframework/notary/signer/keydbstore 1.181s +ok github.com/theupdateframework/notary/signer/keydbstore 3.606s === RUN TestSet --- PASS: TestSet (0.00s) === RUN TestSetWithNoParentDirectory @@ -3390,7 +3426,7 @@ === RUN TestRemoveFile --- PASS: TestRemoveFile (0.00s) === RUN TestListFiles ---- PASS: TestListFiles (0.00s) +--- PASS: TestListFiles (0.01s) === RUN TestGetPath --- PASS: TestGetPath (0.00s) === RUN TestGetPathProtection @@ -3400,19 +3436,19 @@ === RUN TestCreateDirectory --- PASS: TestCreateDirectory (0.00s) === RUN TestCreatePrivateDirectory ---- PASS: TestCreatePrivateDirectory (0.00s) +--- PASS: TestCreatePrivateDirectory (0.01s) === RUN TestFileStoreConsistency ---- PASS: TestFileStoreConsistency (0.00s) +--- PASS: TestFileStoreConsistency (0.01s) === RUN TestHTTPStoreGetSized --- PASS: TestHTTPStoreGetSized (0.00s) === RUN TestHTTPStoreGetAllMeta --- PASS: TestHTTPStoreGetAllMeta (0.00s) === RUN TestSetSingleAndSetMultiMeta ---- PASS: TestSetSingleAndSetMultiMeta (0.00s) +--- PASS: TestSetSingleAndSetMultiMeta (0.01s) === RUN Test404Error --- PASS: Test404Error (0.00s) === RUN Test50XErrors ---- PASS: Test50XErrors (0.00s) +--- PASS: Test50XErrors (0.02s) === RUN Test400Error --- PASS: Test400Error (0.00s) === RUN TestTranslateErrorsParse400Errors @@ -3428,7 +3464,7 @@ === RUN TestHTTPStoreGetKey --- PASS: TestHTTPStoreGetKey (0.00s) === RUN TestHTTPStoreGetRotateKeySizeLimited ---- PASS: TestHTTPStoreGetRotateKeySizeLimited (0.01s) +--- PASS: TestHTTPStoreGetRotateKeySizeLimited (0.04s) === RUN TestHTTPOffline --- PASS: TestHTTPOffline (0.00s) === RUN TestErrServerUnavailable @@ -3449,7 +3485,7 @@ === RUN TestMemoryStoreMetadata --- PASS: TestMemoryStoreMetadata (0.00s) PASS -ok github.com/theupdateframework/notary/storage 0.035s +ok github.com/theupdateframework/notary/storage 0.152s ? github.com/theupdateframework/notary/storage/rethinkdb [no test files] === RUN TestExportKeys --- PASS: TestExportKeys (0.00s) @@ -3462,199 +3498,199 @@ === RUN TestImportKeys --- PASS: TestImportKeys (0.00s) === RUN TestImportNoPath ---- PASS: TestImportNoPath (0.01s) +--- PASS: TestImportNoPath (0.03s) === RUN TestNonRootPathInference ---- PASS: TestNonRootPathInference (0.01s) +--- PASS: TestNonRootPathInference (0.05s) === RUN TestBlockHeaderPrecedenceRoleAndGun ---- PASS: TestBlockHeaderPrecedenceRoleAndGun (0.01s) +--- PASS: TestBlockHeaderPrecedenceRoleAndGun (0.05s) === RUN TestBlockHeaderPrecedenceGunFromPath ---- PASS: TestBlockHeaderPrecedenceGunFromPath (0.01s) +--- PASS: TestBlockHeaderPrecedenceGunFromPath (0.04s) === RUN TestImportKeys2InOneFile --- PASS: TestImportKeys2InOneFile (0.00s) === RUN TestImportKeys2InOneFileNoPath ---- PASS: TestImportKeys2InOneFileNoPath (0.02s) +--- PASS: TestImportKeys2InOneFileNoPath (0.09s) === RUN TestEncryptedKeyImportFail -time="2026-04-09T19:30:34-12:00" level=warning msg="failed to import key to store: Invalid key generated, key may be encrypted and does not contain path header" +time="2025-03-08T15:16:18+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.01s) === RUN TestEncryptedKeyImportSuccess ---- PASS: TestEncryptedKeyImportSuccess (0.01s) +--- PASS: TestEncryptedKeyImportSuccess (0.02s) === RUN TestEncryption --- PASS: TestEncryption (0.02s) === RUN TestAddKey ---- PASS: TestAddKey (0.26s) +--- PASS: TestAddKey (0.05s) === RUN TestKeyStoreInternalState ---- PASS: TestKeyStoreInternalState (0.01s) +--- PASS: TestKeyStoreInternalState (0.02s) === RUN TestGet ---- PASS: TestGet (0.03s) +--- PASS: TestGet (0.06s) === RUN TestGetLegacyKey ---- PASS: TestGetLegacyKey (0.00s) +--- PASS: TestGetLegacyKey (0.01s) === RUN TestListKeys ---- PASS: TestListKeys (0.07s) +--- PASS: TestListKeys (0.05s) === RUN TestAddGetKeyMemStore ---- PASS: TestAddGetKeyMemStore (0.00s) +--- PASS: TestAddGetKeyMemStore (0.01s) === RUN TestAddGetKeyInfoMemStore ---- PASS: TestAddGetKeyInfoMemStore (0.01s) +--- PASS: TestAddGetKeyInfoMemStore (0.02s) === RUN TestGetDecryptedWithTamperedCipherText -time="2026-04-09T19:30:35-12:00" level=error msg="PEM block is empty" ---- PASS: TestGetDecryptedWithTamperedCipherText (0.00s) +time="2025-03-08T15:16:19+14:00" level=error msg="PEM block is empty" +--- PASS: TestGetDecryptedWithTamperedCipherText (0.01s) === RUN TestGetDecryptedWithInvalidPassphrase ---- PASS: TestGetDecryptedWithInvalidPassphrase (0.02s) +--- PASS: TestGetDecryptedWithInvalidPassphrase (0.08s) === RUN TestGetDecryptedWithConsistentlyInvalidPassphrase ---- PASS: TestGetDecryptedWithConsistentlyInvalidPassphrase (0.04s) +--- PASS: TestGetDecryptedWithConsistentlyInvalidPassphrase (0.27s) === RUN TestRemoveKey ---- PASS: TestRemoveKey (0.03s) +--- PASS: TestRemoveKey (0.16s) === RUN TestKeysAreCached ---- PASS: TestKeysAreCached (0.01s) +--- PASS: TestKeysAreCached (0.06s) PASS -ok github.com/theupdateframework/notary/trustmanager 0.601s +ok github.com/theupdateframework/notary/trustmanager 1.152s === RUN TestRemoteStore -time="2026-04-09T19:30:35-12:00" level=info msg="listing files from localhost:9888" -time="2026-04-09T19:30:35-12:00" level=info msg="listing files from localhost:9888" ---- PASS: TestRemoteStore (0.09s) +time="2025-03-08T15:16:19+14:00" level=info msg="listing files from localhost:9888" +time="2025-03-08T15:16:19+14:00" level=info msg="listing files from localhost:9888" +--- PASS: TestRemoteStore (0.49s) === RUN TestErrors -time="2026-04-09T19:30:36-12:00" level=error msg="failed to store: test error" ---- PASS: TestErrors (0.10s) +time="2025-03-08T15:16:19+14:00" level=error msg="failed to store: test error" +--- PASS: TestErrors (0.26s) === RUN TestNewGRPCStorage --- PASS: TestNewGRPCStorage (0.00s) === RUN TestGRPCStorage --- PASS: TestGRPCStorage (0.00s) PASS -ok github.com/theupdateframework/notary/trustmanager/remoteks 0.200s +ok github.com/theupdateframework/notary/trustmanager/remoteks 0.815s ? 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 -2026/04/09 19:30:36 [INFO] generate received request -2026/04/09 19:30:36 [INFO] received CSR -2026/04/09 19:30:36 [INFO] generating key: ecdsa-256 -2026/04/09 19:30:36 [INFO] encoded CSR -2026/04/09 19:30:36 [INFO] signed certificate with serial number 507928717732394096026483698291449481030310381019 -2026/04/09 19:30:36 [INFO] received CSR -2026/04/09 19:30:36 [INFO] generating key: ecdsa-256 -2026/04/09 19:30:36 [INFO] encoded CSR -2026/04/09 19:30:36 [INFO] signed certificate with serial number 119249911403442777497547225009662365604280008070 -2026/04/09 19:30:36 [INFO] received CSR -2026/04/09 19:30:36 [INFO] generating key: ecdsa-256 -2026/04/09 19:30:36 [INFO] encoded CSR -2026/04/09 19:30:36 [INFO] signed certificate with serial number 378887122153821477263829857664895923433506234796 ---- PASS: TestValidateRoot (0.08s) +2025/03/08 15:16:42 [INFO] generate received request +2025/03/08 15:16:42 [INFO] received CSR +2025/03/08 15:16:42 [INFO] generating key: ecdsa-256 +2025/03/08 15:16:42 [INFO] encoded CSR +2025/03/08 15:16:42 [INFO] signed certificate with serial number 470149050180729421370227690260604622253809026023 +2025/03/08 15:16:42 [INFO] received CSR +2025/03/08 15:16:42 [INFO] generating key: ecdsa-256 +2025/03/08 15:16:42 [INFO] encoded CSR +2025/03/08 15:16:42 [INFO] signed certificate with serial number 51344285326629868616169406904217204903184062381 +2025/03/08 15:16:42 [INFO] received CSR +2025/03/08 15:16:42 [INFO] generating key: ecdsa-256 +2025/03/08 15:16:42 [INFO] encoded CSR +2025/03/08 15:16:42 [INFO] signed certificate with serial number 662381243895156262048841783099186703145990693968 +--- PASS: TestValidateRoot (0.39s) === RUN TestValidateRootWithoutTOFUS --- PASS: TestValidateRootWithoutTOFUS (0.00s) === RUN TestValidateRootWithPinnedCert ---- PASS: TestValidateRootWithPinnedCert (0.01s) +--- PASS: TestValidateRootWithPinnedCert (0.04s) === RUN TestValidateRootWithPinnedCertAndIntermediates ---- PASS: TestValidateRootWithPinnedCertAndIntermediates (0.04s) +--- PASS: TestValidateRootWithPinnedCertAndIntermediates (0.17s) === RUN TestValidateRootFailuresWithPinnedCert ---- PASS: TestValidateRootFailuresWithPinnedCert (0.00s) +--- PASS: TestValidateRootFailuresWithPinnedCert (0.02s) === RUN TestValidateRootWithPinnedCA ---- PASS: TestValidateRootWithPinnedCA (0.06s) +--- PASS: TestValidateRootWithPinnedCA (0.31s) === RUN TestValidateSuccessfulRootRotation ---- PASS: TestValidateSuccessfulRootRotation (0.10s) +--- PASS: TestValidateSuccessfulRootRotation (0.43s) === RUN TestValidateRootRotationMissingOrigSig ---- PASS: TestValidateRootRotationMissingOrigSig (0.06s) +--- PASS: TestValidateRootRotationMissingOrigSig (0.55s) === RUN TestValidateRootRotationMissingNewSig ---- PASS: TestValidateRootRotationMissingNewSig (0.06s) +--- PASS: TestValidateRootRotationMissingNewSig (0.45s) === RUN TestValidateRootRotationTrustPinning ---- PASS: TestValidateRootRotationTrustPinning (0.06s) +--- PASS: TestValidateRootRotationTrustPinning (0.42s) === RUN TestValidateRootRotationTrustPinningInvalidCA ---- PASS: TestValidateRootRotationTrustPinningInvalidCA (0.05s) +--- PASS: TestValidateRootRotationTrustPinningInvalidCA (0.39s) === RUN TestParsePEMPublicKey -time="2026-04-09T19:30:36-12:00" level=warning msg="certificate with CN notary is near expiry" ---- PASS: TestParsePEMPublicKey (0.01s) +time="2025-03-08T15:16:45+14:00" level=warning msg="certificate with CN notary is near expiry" +--- PASS: TestParsePEMPublicKey (0.11s) === RUN TestCheckingCertExpiry -time="2026-04-09T19:30:36-12:00" level=warning msg="certificate with CN notary is near expiry" ---- PASS: TestCheckingCertExpiry (0.02s) +time="2025-03-08T15:16:45+14:00" level=warning msg="certificate with CN notary is near expiry" +--- PASS: TestCheckingCertExpiry (0.15s) === RUN TestValidateRootWithExpiredIntermediate ---- PASS: TestValidateRootWithExpiredIntermediate (0.01s) +--- PASS: TestValidateRootWithExpiredIntermediate (0.09s) === RUN TestCheckingWildcardCert ---- PASS: TestCheckingWildcardCert (0.01s) +--- PASS: TestCheckingWildcardCert (0.08s) === RUN TestWildcardMatching --- PASS: TestWildcardMatching (0.00s) PASS -ok github.com/theupdateframework/notary/trustpinning 0.593s +ok github.com/theupdateframework/notary/trustpinning 3.674s === RUN TestInitSnapshotNoTargets ---- PASS: TestInitSnapshotNoTargets (0.02s) +--- PASS: TestInitSnapshotNoTargets (0.08s) === RUN TestInitRepo ---- PASS: TestInitRepo (0.01s) +--- PASS: TestInitRepo (0.06s) === RUN TestUpdateDelegations ---- PASS: TestUpdateDelegations (0.00s) +--- PASS: TestUpdateDelegations (0.01s) === RUN TestPurgeDelegationsKeyFromTop -time="2026-04-09T19:30:36-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="2026-04-09T19:30:36-12:00" level=warning msg="role targets/vimes/carrot has fewer keys than its threshold of 1; it will not be usable until keys are added to it" ---- PASS: TestPurgeDelegationsKeyFromTop (0.00s) +time="2025-03-08T15:16:42+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="2025-03-08T15:16:42+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.01s) === RUN TestPurgeDelegationsKeyFromDeep -time="2026-04-09T19:30:36-12:00" level=warning msg="role targets/vimes/carrot has fewer keys than its threshold of 1; it will not be usable until keys are added to it" ---- PASS: TestPurgeDelegationsKeyFromDeep (0.00s) +time="2025-03-08T15:16:42+14:00" level=warning msg="role targets/vimes/carrot has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +--- PASS: TestPurgeDelegationsKeyFromDeep (0.01s) === RUN TestPurgeDelegationsKeyBadWildRole ---- PASS: TestPurgeDelegationsKeyBadWildRole (0.00s) +--- PASS: TestPurgeDelegationsKeyBadWildRole (0.01s) === RUN TestUpdateDelegationsParentMissing --- PASS: TestUpdateDelegationsParentMissing (0.00s) === RUN TestUpdateDelegationsMissingParentKey ---- PASS: TestUpdateDelegationsMissingParentKey (0.00s) +--- PASS: TestUpdateDelegationsMissingParentKey (0.01s) === RUN TestUpdateDelegationsInvalidRole ---- PASS: TestUpdateDelegationsInvalidRole (0.00s) +--- PASS: TestUpdateDelegationsInvalidRole (0.01s) === RUN TestUpdateDelegationsRoleThatIsMissingDelegationKey ---- PASS: TestUpdateDelegationsRoleThatIsMissingDelegationKey (0.00s) +--- PASS: TestUpdateDelegationsRoleThatIsMissingDelegationKey (0.01s) === RUN TestUpdateDelegationsNotEnoughKeys -time="2026-04-09T19:30:36-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" ---- PASS: TestUpdateDelegationsNotEnoughKeys (0.00s) +time="2025-03-08T15:16:42+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.01s) === RUN TestUpdateDelegationsAddKeyToRole ---- PASS: TestUpdateDelegationsAddKeyToRole (0.00s) +--- PASS: TestUpdateDelegationsAddKeyToRole (0.01s) === RUN TestDeleteDelegations ---- PASS: TestDeleteDelegations (0.00s) +--- PASS: TestDeleteDelegations (0.01s) === RUN TestDeleteDelegationsRoleNotExistBecauseNoParentMeta --- PASS: TestDeleteDelegationsRoleNotExistBecauseNoParentMeta (0.00s) === RUN TestDeleteDelegationsRoleNotExist --- PASS: TestDeleteDelegationsRoleNotExist (0.00s) === RUN TestDeleteDelegationsInvalidRole ---- PASS: TestDeleteDelegationsInvalidRole (0.00s) +--- PASS: TestDeleteDelegationsInvalidRole (0.01s) === RUN TestDeleteDelegationsParentMissing ---- PASS: TestDeleteDelegationsParentMissing (0.00s) +--- PASS: TestDeleteDelegationsParentMissing (0.01s) === RUN TestDeleteDelegationsMissingParentSigningKey --- PASS: TestDeleteDelegationsMissingParentSigningKey (0.00s) === RUN TestDeleteDelegationsMidSliceRole --- PASS: TestDeleteDelegationsMidSliceRole (0.00s) === RUN TestGetDelegationRoleAndMetadataExistDelegationExists ---- PASS: TestGetDelegationRoleAndMetadataExistDelegationExists (0.00s) +--- PASS: TestGetDelegationRoleAndMetadataExistDelegationExists (0.01s) === RUN TestGetDelegationRoleAndMetadataExistDelegationDoesntExists ---- PASS: TestGetDelegationRoleAndMetadataExistDelegationDoesntExists (0.00s) +--- PASS: TestGetDelegationRoleAndMetadataExistDelegationDoesntExists (0.01s) === RUN TestGetDelegationRoleAndMetadataDoesntExists ---- PASS: TestGetDelegationRoleAndMetadataDoesntExists (0.00s) +--- PASS: TestGetDelegationRoleAndMetadataDoesntExists (0.01s) === RUN TestGetDelegationParentMissing ---- PASS: TestGetDelegationParentMissing (0.00s) +--- PASS: TestGetDelegationParentMissing (0.01s) === RUN TestAddTargetsRoleAndMetadataExist ---- PASS: TestAddTargetsRoleAndMetadataExist (0.00s) +--- PASS: TestAddTargetsRoleAndMetadataExist (0.01s) === RUN TestAddTargetsRoleExistsAndMetadataDoesntExist --- PASS: TestAddTargetsRoleExistsAndMetadataDoesntExist (0.00s) === RUN TestAddTargetsRoleDoesntExist ---- PASS: TestAddTargetsRoleDoesntExist (0.00s) +--- PASS: TestAddTargetsRoleDoesntExist (0.01s) === RUN TestAddTargetsNoSigningKeys ---- PASS: TestAddTargetsNoSigningKeys (0.00s) +--- PASS: TestAddTargetsNoSigningKeys (0.01s) === RUN TestRemoveExistingAndNonexistingTargets ---- PASS: TestRemoveExistingAndNonexistingTargets (0.00s) +--- PASS: TestRemoveExistingAndNonexistingTargets (0.01s) === RUN TestRemoveTargetsRoleDoesntExist ---- PASS: TestRemoveTargetsRoleDoesntExist (0.00s) +--- PASS: TestRemoveTargetsRoleDoesntExist (0.01s) === RUN TestRemoveTargetsNoSigningKeys ---- PASS: TestRemoveTargetsNoSigningKeys (0.00s) +--- PASS: TestRemoveTargetsNoSigningKeys (0.01s) === RUN TestAddBaseKeysToRoot ---- PASS: TestAddBaseKeysToRoot (0.01s) +--- PASS: TestAddBaseKeysToRoot (0.03s) === RUN TestRemoveBaseKeysFromRoot ---- PASS: TestRemoveBaseKeysFromRoot (0.01s) +--- PASS: TestRemoveBaseKeysFromRoot (0.02s) === RUN TestReplaceBaseKeysInRoot ---- PASS: TestReplaceBaseKeysInRoot (0.02s) +--- PASS: TestReplaceBaseKeysInRoot (0.07s) === RUN TestGetAllRoles --- PASS: TestGetAllRoles (0.00s) === RUN TestGetBaseRoles ---- PASS: TestGetBaseRoles (0.00s) +--- PASS: TestGetBaseRoles (0.01s) === RUN TestGetBaseRolesInvalidName ---- PASS: TestGetBaseRolesInvalidName (0.00s) +--- PASS: TestGetBaseRolesInvalidName (0.01s) === RUN TestGetDelegationValidRoles ---- PASS: TestGetDelegationValidRoles (0.00s) +--- PASS: TestGetDelegationValidRoles (0.01s) === RUN TestGetDelegationRolesInvalidName ---- PASS: TestGetDelegationRolesInvalidName (0.00s) +--- PASS: TestGetDelegationRolesInvalidName (0.01s) === RUN TestGetDelegationRolesInvalidPaths ---- PASS: TestGetDelegationRolesInvalidPaths (0.00s) +--- PASS: TestGetDelegationRolesInvalidPaths (0.01s) === RUN TestDelegationRolesParent --- PASS: TestDelegationRolesParent (0.00s) === RUN TestGetBaseRoleEmptyRepo @@ -3662,43 +3698,43 @@ === RUN TestGetBaseRoleKeyMissing --- PASS: TestGetBaseRoleKeyMissing (0.00s) === RUN TestGetDelegationRoleKeyMissing ---- PASS: TestGetDelegationRoleKeyMissing (0.00s) +--- PASS: TestGetDelegationRoleKeyMissing (0.01s) === RUN TestSignRootOldKeyCertExists ---- PASS: TestSignRootOldKeyCertExists (0.05s) +--- PASS: TestSignRootOldKeyCertExists (0.23s) === RUN TestSignRootOldKeyCertMissing ---- PASS: TestSignRootOldKeyCertMissing (0.04s) +--- PASS: TestSignRootOldKeyCertMissing (0.23s) === RUN TestRootKeyRotation ---- PASS: TestRootKeyRotation (0.15s) +--- PASS: TestRootKeyRotation (0.93s) === RUN TestBuilderLoadsValidRolesOnly ---- PASS: TestBuilderLoadsValidRolesOnly (0.04s) +--- PASS: TestBuilderLoadsValidRolesOnly (0.28s) === RUN TestBuilderOnlyAcceptsRootFirstWhenLoading ---- PASS: TestBuilderOnlyAcceptsRootFirstWhenLoading (0.00s) +--- PASS: TestBuilderOnlyAcceptsRootFirstWhenLoading (0.02s) === RUN TestBuilderOnlyAcceptsDelegationsAfterParent ---- PASS: TestBuilderOnlyAcceptsDelegationsAfterParent (0.01s) +--- PASS: TestBuilderOnlyAcceptsDelegationsAfterParent (0.09s) === RUN TestMarkingIsValid ---- PASS: TestMarkingIsValid (0.02s) +--- PASS: TestMarkingIsValid (0.12s) === RUN TestBuilderLoadInvalidDelegations ---- PASS: TestBuilderLoadInvalidDelegations (0.03s) +--- PASS: TestBuilderLoadInvalidDelegations (0.07s) === RUN TestBuilderLoadInvalidDelegationsOldVersion ---- PASS: TestBuilderLoadInvalidDelegationsOldVersion (0.03s) +--- PASS: TestBuilderLoadInvalidDelegationsOldVersion (0.06s) === RUN TestBuilderAcceptRoleOnce ---- PASS: TestBuilderAcceptRoleOnce (0.02s) +--- PASS: TestBuilderAcceptRoleOnce (0.04s) === RUN TestBuilderStopsAcceptingOrProducingDataOnceDone ---- PASS: TestBuilderStopsAcceptingOrProducingDataOnceDone (0.01s) +--- PASS: TestBuilderStopsAcceptingOrProducingDataOnceDone (0.02s) === RUN TestGenerateSnapshotInvalidOperations ---- PASS: TestGenerateSnapshotInvalidOperations (0.13s) +--- PASS: TestGenerateSnapshotInvalidOperations (0.26s) === RUN TestGenerateTimestampInvalidOperations ---- PASS: TestGenerateTimestampInvalidOperations (0.10s) +--- PASS: TestGenerateTimestampInvalidOperations (0.49s) === RUN TestGetConsistentInfo ---- PASS: TestGetConsistentInfo (0.03s) +--- PASS: TestGetConsistentInfo (0.29s) === RUN TestTimestampPreAndPostChecksumming ---- PASS: TestTimestampPreAndPostChecksumming (0.05s) +--- PASS: TestTimestampPreAndPostChecksumming (0.41s) === RUN TestSnapshotLoadedFirstChecksumsOthers ---- PASS: TestSnapshotLoadedFirstChecksumsOthers (0.05s) +--- PASS: TestSnapshotLoadedFirstChecksumsOthers (0.35s) === RUN TestSnapshotLoadedAfterChecksumsOthersRetroactively ---- PASS: TestSnapshotLoadedAfterChecksumsOthersRetroactively (0.11s) +--- PASS: TestSnapshotLoadedAfterChecksumsOthersRetroactively (0.55s) PASS -ok github.com/theupdateframework/notary/tuf 1.004s +ok github.com/theupdateframework/notary/tuf 5.036s === RUN TestMergeStrSlicesExclusive --- PASS: TestMergeStrSlicesExclusive (0.00s) === RUN TestMergeStrSlicesOverlap @@ -3746,11 +3782,11 @@ === RUN TestRootFromSignedCopiesSignatures --- PASS: TestRootFromSignedCopiesSignatures (0.00s) === RUN TestRootFromSignedValidatesRoleData ---- PASS: TestRootFromSignedValidatesRoleData (0.01s) +--- PASS: TestRootFromSignedValidatesRoleData (0.03s) === RUN TestRootFromSignedValidatesRoleType --- PASS: TestRootFromSignedValidatesRoleType (0.00s) === RUN TestRootFromSignedValidatesVersion ---- PASS: TestRootFromSignedValidatesVersion (0.00s) +--- PASS: TestRootFromSignedValidatesVersion (0.01s) === RUN TestSnapshotToSignedMarshalsSignedPortionWithCanonicalJSON --- PASS: TestSnapshotToSignedMarshalsSignedPortionWithCanonicalJSON (0.00s) === RUN TestSnapshotToSignCopiesSignatures @@ -3788,7 +3824,7 @@ === RUN TestTargetsFromSignedCopiesSignatures --- PASS: TestTargetsFromSignedCopiesSignatures (0.00s) === RUN TestTargetsFromSignedValidatesDelegations ---- PASS: TestTargetsFromSignedValidatesDelegations (0.00s) +--- PASS: TestTargetsFromSignedValidatesDelegations (0.01s) === RUN TestTargetsFromSignedValidatesRoleType --- PASS: TestTargetsFromSignedValidatesRoleType (0.00s) === RUN TestTargetsFromSignedValidatesRoleName @@ -3832,159 +3868,159 @@ === RUN TestFileMetaEquals --- PASS: TestFileMetaEquals (0.00s) PASS -ok github.com/theupdateframework/notary/tuf/data 0.029s +ok github.com/theupdateframework/notary/tuf/data 0.124s === RUN TestListKeys ---- PASS: TestListKeys (0.02s) +--- PASS: TestListKeys (0.11s) === RUN TestGetKeys ---- PASS: TestGetKeys (0.00s) +--- PASS: TestGetKeys (0.01s) === RUN TestBasicSign --- PASS: TestBasicSign (0.00s) === RUN TestReSign ---- PASS: TestReSign (0.00s) +--- PASS: TestReSign (0.01s) === RUN TestMultiSign ---- PASS: TestMultiSign (0.01s) +--- PASS: TestMultiSign (0.04s) === RUN TestSignReturnsNoSigs --- PASS: TestSignReturnsNoSigs (0.00s) === RUN TestSignWithX509 ---- PASS: TestSignWithX509 (0.01s) +--- PASS: TestSignWithX509 (0.06s) === RUN TestSignRemovesValidSigByInvalidKey ---- PASS: TestSignRemovesValidSigByInvalidKey (0.00s) +--- PASS: TestSignRemovesValidSigByInvalidKey (0.02s) === RUN TestSignRemovesInvalidSig ---- PASS: TestSignRemovesInvalidSig (0.00s) +--- PASS: TestSignRemovesInvalidSig (0.01s) === RUN TestSignMinSignatures ---- PASS: TestSignMinSignatures (0.00s) +--- PASS: TestSignMinSignatures (0.01s) === RUN TestSignFailingKeys --- PASS: TestSignFailingKeys (0.00s) === RUN TestErrInsufficientSignaturesMessaging --- PASS: TestErrInsufficientSignaturesMessaging (0.00s) === RUN TestRSAPSSVerifier ---- PASS: TestRSAPSSVerifier (0.01s) +--- PASS: TestRSAPSSVerifier (0.05s) === RUN TestRSAPSSx509Verifier ---- PASS: TestRSAPSSx509Verifier (0.01s) +--- PASS: TestRSAPSSx509Verifier (0.02s) === RUN TestRSAPSSVerifierWithInvalidKeyType --- PASS: TestRSAPSSVerifierWithInvalidKeyType (0.00s) === RUN TestRSAPSSVerifierWithInvalidKeyLength ---- PASS: TestRSAPSSVerifierWithInvalidKeyLength (0.12s) +--- PASS: TestRSAPSSVerifierWithInvalidKeyLength (1.20s) === RUN TestRSAPSSVerifierWithInvalidKey --- PASS: TestRSAPSSVerifierWithInvalidKey (0.00s) === RUN TestRSAPSSVerifierWithInvalidSignature ---- PASS: TestRSAPSSVerifierWithInvalidSignature (0.01s) +--- PASS: TestRSAPSSVerifierWithInvalidSignature (0.08s) === RUN TestRSAPKCS1v15Verifier ---- PASS: TestRSAPKCS1v15Verifier (0.01s) +--- PASS: TestRSAPKCS1v15Verifier (0.07s) === RUN TestRSAPKCS1v15x509Verifier ---- PASS: TestRSAPKCS1v15x509Verifier (0.01s) +--- PASS: TestRSAPKCS1v15x509Verifier (0.04s) === RUN TestRSAPKCS1v15VerifierWithInvalidKeyType --- PASS: TestRSAPKCS1v15VerifierWithInvalidKeyType (0.00s) === RUN TestRSAPKCS1v15VerifierWithInvalidKey --- PASS: TestRSAPKCS1v15VerifierWithInvalidKey (0.00s) === RUN TestRSAPKCS1v15VerifierWithInvalidSignature -time="2026-04-09T19:30:36-12:00" level=error msg="Failed verification: crypto/rsa: verification error" ---- PASS: TestRSAPKCS1v15VerifierWithInvalidSignature (0.01s) +time="2025-03-08T15:16:43+14:00" level=error msg="Failed verification: crypto/rsa: verification error" +--- PASS: TestRSAPKCS1v15VerifierWithInvalidSignature (0.08s) === RUN TestECDSAVerifier ---- PASS: TestECDSAVerifier (0.00s) +--- PASS: TestECDSAVerifier (0.05s) === RUN TestECDSAVerifierOtherCurves ---- PASS: TestECDSAVerifierOtherCurves (0.25s) +--- PASS: TestECDSAVerifierOtherCurves (1.57s) === RUN TestECDSAx509Verifier ---- PASS: TestECDSAx509Verifier (0.00s) +--- PASS: TestECDSAx509Verifier (0.01s) === RUN TestECDSAVerifierWithInvalidKeyType --- PASS: TestECDSAVerifierWithInvalidKeyType (0.00s) === RUN TestECDSAVerifierWithInvalidKey --- PASS: TestECDSAVerifierWithInvalidKey (0.00s) === RUN TestECDSAVerifierWithInvalidSignature ---- PASS: TestECDSAVerifierWithInvalidSignature (0.00s) +--- PASS: TestECDSAVerifierWithInvalidSignature (0.02s) === RUN TestED25519VerifierInvalidKeyType --- PASS: TestED25519VerifierInvalidKeyType (0.00s) === RUN TestRSAPyCryptoVerifierInvalidKeyType --- PASS: TestRSAPyCryptoVerifierInvalidKeyType (0.00s) === RUN TestPyCryptoRSAPSSCompat ---- PASS: TestPyCryptoRSAPSSCompat (0.00s) +--- PASS: TestPyCryptoRSAPSSCompat (0.01s) === RUN TestPyNaCled25519Compat --- PASS: TestPyNaCled25519Compat (0.00s) === RUN TestRoleNoKeys ---- PASS: TestRoleNoKeys (0.00s) +--- PASS: TestRoleNoKeys (0.01s) === RUN TestNotEnoughSigs ---- PASS: TestNotEnoughSigs (0.00s) +--- PASS: TestNotEnoughSigs (0.01s) === RUN TestNoSigs --- PASS: TestNoSigs (0.00s) === RUN TestExactlyEnoughSigs ---- PASS: TestExactlyEnoughSigs (0.00s) +--- PASS: TestExactlyEnoughSigs (0.01s) === RUN TestIsValidNotExported ---- PASS: TestIsValidNotExported (0.00s) +--- PASS: TestIsValidNotExported (0.01s) === RUN TestMoreThanEnoughSigs ---- PASS: TestMoreThanEnoughSigs (0.00s) +--- PASS: TestMoreThanEnoughSigs (0.01s) === RUN TestValidSigWithIncorrectKeyID ---- PASS: TestValidSigWithIncorrectKeyID (0.00s) +--- PASS: TestValidSigWithIncorrectKeyID (0.01s) === RUN TestDuplicateSigs ---- PASS: TestDuplicateSigs (0.00s) +--- PASS: TestDuplicateSigs (0.01s) === RUN TestUnknownKeyBelowThreshold ---- PASS: TestUnknownKeyBelowThreshold (0.00s) +--- PASS: TestUnknownKeyBelowThreshold (0.01s) === RUN TestVerifyVersion --- PASS: TestVerifyVersion (0.00s) === RUN TestVerifyExpiry -time="2026-04-09T19:30:36-12:00" level=error msg="Metadata for root expired" +time="2025-03-08T15:16:45+14:00" level=error msg="Metadata for root expired" --- PASS: TestVerifyExpiry (0.00s) === RUN TestVerifyPublicKeyMatchesPrivateKeyHappyCase ---- PASS: TestVerifyPublicKeyMatchesPrivateKeyHappyCase (0.00s) +--- PASS: TestVerifyPublicKeyMatchesPrivateKeyHappyCase (0.01s) === RUN TestVerifyPublicKeyMatchesPrivateKeyFails ---- PASS: TestVerifyPublicKeyMatchesPrivateKeyFails (0.00s) +--- PASS: TestVerifyPublicKeyMatchesPrivateKeyFails (0.01s) PASS -ok github.com/theupdateframework/notary/tuf/signed 0.512s +ok github.com/theupdateframework/notary/tuf/signed 3.624s === RUN TestNewSwizzler ---- PASS: TestNewSwizzler (0.04s) +--- PASS: TestNewSwizzler (0.27s) === RUN TestSwizzlerSetInvalidJSON ---- PASS: TestSwizzlerSetInvalidJSON (0.03s) +--- PASS: TestSwizzlerSetInvalidJSON (0.29s) === RUN TestSwizzlerAddExtraSpace ---- PASS: TestSwizzlerAddExtraSpace (0.03s) +--- PASS: TestSwizzlerAddExtraSpace (0.30s) === RUN TestSwizzlerSetInvalidSigned ---- PASS: TestSwizzlerSetInvalidSigned (0.04s) +--- PASS: TestSwizzlerSetInvalidSigned (0.28s) === RUN TestSwizzlerSetInvalidSignedMeta ---- PASS: TestSwizzlerSetInvalidSignedMeta (0.04s) +--- PASS: TestSwizzlerSetInvalidSignedMeta (0.28s) === RUN TestSwizzlerSetInvalidMetadataType ---- PASS: TestSwizzlerSetInvalidMetadataType (0.03s) +--- PASS: TestSwizzlerSetInvalidMetadataType (0.30s) === RUN TestSwizzlerInvalidateMetadataSignatures ---- PASS: TestSwizzlerInvalidateMetadataSignatures (0.03s) +--- PASS: TestSwizzlerInvalidateMetadataSignatures (0.36s) === RUN TestSwizzlerRemoveMetadata ---- PASS: TestSwizzlerRemoveMetadata (0.03s) +--- PASS: TestSwizzlerRemoveMetadata (0.22s) === RUN TestSwizzlerSignMetadataWithInvalidKey ---- PASS: TestSwizzlerSignMetadataWithInvalidKey (0.04s) +--- PASS: TestSwizzlerSignMetadataWithInvalidKey (0.19s) === RUN TestSwizzlerOffsetMetadataVersion ---- PASS: TestSwizzlerOffsetMetadataVersion (0.04s) +--- PASS: TestSwizzlerOffsetMetadataVersion (0.27s) === RUN TestSwizzlerExpireMetadata ---- PASS: TestSwizzlerExpireMetadata (0.04s) +--- PASS: TestSwizzlerExpireMetadata (0.29s) === RUN TestSwizzlerSetThresholdBaseRole ---- PASS: TestSwizzlerSetThresholdBaseRole (0.04s) +--- PASS: TestSwizzlerSetThresholdBaseRole (0.27s) === RUN TestSwizzlerSetThresholdDelegatedRole ---- PASS: TestSwizzlerSetThresholdDelegatedRole (0.03s) +--- PASS: TestSwizzlerSetThresholdDelegatedRole (0.18s) === RUN TestSwizzlerChangeRootKey ---- PASS: TestSwizzlerChangeRootKey (0.05s) +--- PASS: TestSwizzlerChangeRootKey (0.23s) === RUN TestSwizzlerUpdateSnapshotHashesSpecifiedRoles ---- PASS: TestSwizzlerUpdateSnapshotHashesSpecifiedRoles (0.04s) +--- PASS: TestSwizzlerUpdateSnapshotHashesSpecifiedRoles (0.19s) === RUN TestSwizzlerUpdateSnapshotHashesNoSpecifiedRoles ---- PASS: TestSwizzlerUpdateSnapshotHashesNoSpecifiedRoles (0.04s) +--- PASS: TestSwizzlerUpdateSnapshotHashesNoSpecifiedRoles (0.18s) === RUN TestSwizzlerUpdateTimestamp ---- PASS: TestSwizzlerUpdateTimestamp (0.04s) +--- PASS: TestSwizzlerUpdateTimestamp (0.18s) === RUN TestMissingSigningKey ---- PASS: TestMissingSigningKey (0.04s) +--- PASS: TestMissingSigningKey (0.16s) === RUN TestSwizzlerMutateRoot ---- PASS: TestSwizzlerMutateRoot (0.04s) +--- PASS: TestSwizzlerMutateRoot (0.17s) === RUN TestSwizzlerMutateTimestamp ---- PASS: TestSwizzlerMutateTimestamp (0.03s) +--- PASS: TestSwizzlerMutateTimestamp (0.16s) === RUN TestSwizzlerMutateSnapshot ---- PASS: TestSwizzlerMutateSnapshot (0.03s) +--- PASS: TestSwizzlerMutateSnapshot (0.18s) === RUN TestSwizzlerMutateTargets ---- PASS: TestSwizzlerMutateTargets (0.03s) +--- PASS: TestSwizzlerMutateTargets (0.18s) === RUN TestSwizzlerRotateKeyBaseRole ---- PASS: TestSwizzlerRotateKeyBaseRole (0.05s) +--- PASS: TestSwizzlerRotateKeyBaseRole (0.30s) === RUN TestSwizzlerRotateKeyDelegationRole ---- PASS: TestSwizzlerRotateKeyDelegationRole (0.04s) +--- PASS: TestSwizzlerRotateKeyDelegationRole (0.18s) PASS -ok github.com/theupdateframework/notary/tuf/testutils 0.896s +ok github.com/theupdateframework/notary/tuf/testutils 5.660s ? 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.04s) +--- PASS: TestConvertTUFKeyToPKCS8 (0.20s) === RUN TestParsePKCS8ToTufKey ---- PASS: TestParsePKCS8ToTufKey (0.27s) +--- PASS: TestParsePKCS8ToTufKey (1.25s) === RUN TestPEMtoPEM --- PASS: TestPEMtoPEM (0.00s) === RUN TestRoleListLen @@ -4026,29 +4062,29 @@ === RUN TestRoleNameSliceRemove --- PASS: TestRoleNameSliceRemove (0.00s) === RUN TestCertsToKeys ---- PASS: TestCertsToKeys (0.00s) +--- PASS: TestCertsToKeys (0.01s) === RUN TestNewCertificate --- PASS: TestNewCertificate (0.00s) === RUN TestKeyOperations ---- PASS: TestKeyOperations (0.04s) +--- PASS: TestKeyOperations (0.13s) === RUN TestRSAX509PublickeyID ---- PASS: TestRSAX509PublickeyID (0.00s) +--- PASS: TestRSAX509PublickeyID (0.01s) === RUN TestECDSAX509PublickeyID ---- PASS: TestECDSAX509PublickeyID (0.00s) +--- PASS: TestECDSAX509PublickeyID (0.02s) === RUN TestExtractPrivateKeyAttributes --- PASS: TestExtractPrivateKeyAttributes (0.00s) === RUN TestParsePEMPrivateKeyLegacy ---- PASS: TestParsePEMPrivateKeyLegacy (0.00s) +--- PASS: TestParsePEMPrivateKeyLegacy (0.01s) === RUN TestValidateCertificateWithSHA1 ---- PASS: TestValidateCertificateWithSHA1 (0.00s) +--- PASS: TestValidateCertificateWithSHA1 (0.02s) === RUN TestValidateCertificateWithExpiredCert ---- PASS: TestValidateCertificateWithExpiredCert (0.00s) +--- PASS: TestValidateCertificateWithExpiredCert (0.02s) === RUN TestValidateCertificateWithInvalidExpiry ---- PASS: TestValidateCertificateWithInvalidExpiry (0.00s) +--- PASS: TestValidateCertificateWithInvalidExpiry (0.02s) === RUN TestValidateCertificateWithShortKey ---- PASS: TestValidateCertificateWithShortKey (0.22s) +--- PASS: TestValidateCertificateWithShortKey (1.39s) PASS -ok github.com/theupdateframework/notary/tuf/utils 0.607s +ok github.com/theupdateframework/notary/tuf/utils 3.103s === RUN TestNewSerializableErrorNonValidationError --- PASS: TestNewSerializableErrorNonValidationError (0.00s) === RUN TestNewSerializableErrorValidationError @@ -4064,9 +4100,9 @@ === RUN TestUnmarshalInvalidJSON --- PASS: TestUnmarshalInvalidJSON (0.00s) PASS -ok github.com/theupdateframework/notary/tuf/validation 0.006s +ok github.com/theupdateframework/notary/tuf/validation 0.040s === RUN TestSetSignalTrap ---- PASS: TestSetSignalTrap (0.00s) +--- PASS: TestSetSignalTrap (0.03s) === 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 @@ -4126,13 +4162,13 @@ === RUN TestParseTLSNoTLSNotRequired --- PASS: TestParseTLSNoTLSNotRequired (0.00s) === RUN TestParseTLSWithTLS ---- PASS: TestParseTLSWithTLS (0.00s) +--- PASS: TestParseTLSWithTLS (0.01s) === RUN TestParseTLSWithTLSRelativeToConfigFile --- PASS: TestParseTLSWithTLSRelativeToConfigFile (0.00s) === RUN TestParseTLSWithEnvironmentVariables ---- PASS: TestParseTLSWithEnvironmentVariables (0.00s) +--- PASS: TestParseTLSWithEnvironmentVariables (0.01s) === RUN TestParseViperWithInvalidFile ---- PASS: TestParseViperWithInvalidFile (0.00s) +--- PASS: TestParseViperWithInvalidFile (0.01s) === RUN TestParseViperWithValidFile --- PASS: TestParseViperWithValidFile (0.00s) === RUN TestAdjustLogLevel @@ -4164,7 +4200,7 @@ === RUN TestDoAuthWildcardImage --- PASS: TestDoAuthWildcardImage (0.00s) PASS -ok github.com/theupdateframework/notary/utils 0.023s +ok github.com/theupdateframework/notary/utils 0.128s ? 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 @@ -4202,9 +4238,9 @@ dpkg-gencontrol: warning: package notary: substitution variable ${misc:Static-Built-Using} unused, but is defined dh_md5sums -O--builddirectory=/build/reproducible-path/notary-0.7.0\+git20240416.9d2b3b3\+ds1/_build -O--buildsystem=golang dh_builddeb -O--builddirectory=/build/reproducible-path/notary-0.7.0\+git20240416.9d2b3b3\+ds1/_build -O--buildsystem=golang -dpkg-deb: building package 'notary' in '../notary_0.7.0+git20240416.9d2b3b3+ds1-3_i386.deb'. dpkg-deb: building package 'notary-dbgsym' in '../notary-dbgsym_0.7.0+git20240416.9d2b3b3+ds1-3_i386.deb'. dpkg-deb: building package 'golang-github-docker-notary-dev' in '../golang-github-docker-notary-dev_0.7.0+git20240416.9d2b3b3+ds1-3_all.deb'. +dpkg-deb: building package 'notary' in '../notary_0.7.0+git20240416.9d2b3b3+ds1-3_i386.deb'. dpkg-genbuildinfo --build=binary -O../notary_0.7.0+git20240416.9d2b3b3+ds1-3_i386.buildinfo dpkg-genchanges --build=binary -O../notary_0.7.0+git20240416.9d2b3b3+ds1-3_i386.changes dpkg-genchanges: info: binary-only upload (no source code included) @@ -4212,12 +4248,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/22901/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/22901/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/76206 and its subdirectories -I: Current time: Thu Apr 9 19:32:05 -12 2026 -I: pbuilder-time-stamp: 1775806325 +I: removing directory /srv/workspace/pbuilder/22901 and its subdirectories +I: Current time: Sat Mar 8 15:24:12 +14 2025 +I: pbuilder-time-stamp: 1741397052