Diff of the two buildlogs: -- --- b1/build.log 2024-11-05 22:01:13.837685357 +0000 +++ b2/build.log 2024-11-05 22:05:38.148242516 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Mon Dec 8 16:21:58 -12 2025 -I: pbuilder-time-stamp: 1765254118 +I: Current time: Tue Dec 9 18:24:29 +14 2025 +I: pbuilder-time-stamp: 1765254269 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/trixie-reproducible-base.tgz] I: copying local configuration @@ -32,52 +32,84 @@ dpkg-source: info: applying fix-newer-cloudflare-cfssl.patch I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/839348/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/827934/tmp/hooks/D01_modify_environment starting +debug: Running on codethink03-arm64. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 Dec 9 04:24 /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/827934/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/827934/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build/reproducible-path' - BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' - BUILDUSERNAME='pbuilder1' - BUILD_ARCH='arm64' - DEBIAN_FRONTEND='noninteractive' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="2" [2]="32" [3]="1" [4]="release" [5]="aarch64-unknown-linux-gnu") + BASH_VERSION='5.2.32(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=arm64 + DEBIAN_FRONTEND=noninteractive DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=12 ' - DISTRIBUTION='trixie' - HOME='/root' - HOST_ARCH='arm64' + DIRSTACK=() + DISTRIBUTION=trixie + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=aarch64 + HOST_ARCH=arm64 IFS=' ' - INVOCATION_ID='1678e17f09474505a5446ee4f7307414' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - MAIL='/var/mail/root' - OPTIND='1' - PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' - PBCURRENTCOMMANDLINEOPERATION='build' - PBUILDER_OPERATION='build' - PBUILDER_PKGDATADIR='/usr/share/pbuilder' - PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' - PBUILDER_SYSCONFDIR='/etc' - PPID='839348' - PS1='# ' - PS2='> ' + INVOCATION_ID=f435b8aa489b470bb4c3569bf03c92c1 + LANG=C + LANGUAGE=nl_BE:nl + LC_ALL=C + MACHTYPE=aarch64-unknown-linux-gnu + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnu + PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + PBCURRENTCOMMANDLINEOPERATION=build + PBUILDER_OPERATION=build + PBUILDER_PKGDATADIR=/usr/share/pbuilder + PBUILDER_PKGLIBDIR=/usr/lib/pbuilder + PBUILDER_SYSCONFDIR=/etc + PIPESTATUS=([0]="0") + POSIXLY_CORRECT=y + PPID=827934 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.toa7hbI5/pbuilderrc_XKZg --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.toa7hbI5/b1 --logfile b1/build.log notary_0.7.0+git20240416.9d2b3b3+ds1-2.dsc' - SUDO_GID='109' - SUDO_UID='104' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://192.168.101.4:3128' + PWD=/ + SHELL=/bin/bash + SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix + SHLVL=3 + SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.toa7hbI5/pbuilderrc_Bfxp --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.toa7hbI5/b2 --logfile b2/build.log notary_0.7.0+git20240416.9d2b3b3+ds1-2.dsc' + SUDO_GID=109 + SUDO_UID=104 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://192.168.101.4:3128 I: uname -a - Linux codethink01-arm64 6.1.0-26-cloud-arm64 #1 SMP Debian 6.1.112-1 (2024-09-30) aarch64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-26-cloud-arm64 #1 SMP Debian 6.1.112-1 (2024-09-30) aarch64 GNU/Linux I: ls -l /bin lrwxrwxrwx 1 root root 7 Aug 4 2024 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/839348/tmp/hooks/D02_print_environment finished +I: user script /srv/workspace/pbuilder/827934/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -401,7 +433,7 @@ Get: 230 http://deb.debian.org/debian trixie/main arm64 protobuf-compiler arm64 3.21.12-10 [84.6 kB] Get: 231 http://deb.debian.org/debian trixie/main arm64 protoc-gen-go-1-5 arm64 1.5.4-1 [1235 kB] Get: 232 http://deb.debian.org/debian trixie/main arm64 protoc-gen-go-grpc arm64 1.64.0-6+b1 [1192 kB] -Fetched 156 MB in 1s (164 MB/s) +Fetched 156 MB in 2s (102 MB/s) debconf: delaying package configuration, since apt-utils is not installed 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 ... 20089 files and directories currently installed.) @@ -1344,7 +1376,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-2_source.changes +I: user script /srv/workspace/pbuilder/827934/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for trixie +I: user script /srv/workspace/pbuilder/827934/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-2_source.changes dpkg-buildpackage: info: source package notary dpkg-buildpackage: info: source version 0.7.0+git20240416.9d2b3b3+ds1-2 dpkg-buildpackage: info: source distribution unstable @@ -1629,45 +1665,45 @@ src/github.com/theupdateframework/notary/utils/http_test.go src/github.com/theupdateframework/notary/version/version.go cd _build && go install -trimpath -v -p 12 -tags pkcs11 github.com/theupdateframework/notary github.com/theupdateframework/notary/client github.com/theupdateframework/notary/client/changelist github.com/theupdateframework/notary/cmd/escrow github.com/theupdateframework/notary/cmd/notary github.com/theupdateframework/notary/cmd/notary-server github.com/theupdateframework/notary/cmd/notary-signer github.com/theupdateframework/notary/cryptoservice github.com/theupdateframework/notary/passphrase github.com/theupdateframework/notary/proto github.com/theupdateframework/notary/server github.com/theupdateframework/notary/server/errors github.com/theupdateframework/notary/server/handlers github.com/theupdateframework/notary/server/snapshot github.com/theupdateframework/notary/server/storage github.com/theupdateframework/notary/server/timestamp github.com/theupdateframework/notary/signer github.com/theupdateframework/notary/signer/api github.com/theupdateframework/notary/signer/client github.com/theupdateframework/notary/signer/keydbstore github.com/theupdateframework/notary/storage github.com/theupdateframework/notary/storage/rethinkdb github.com/theupdateframework/notary/trustmanager github.com/theupdateframework/notary/trustmanager/remoteks github.com/theupdateframework/notary/trustmanager/yubikey github.com/theupdateframework/notary/trustpinning github.com/theupdateframework/notary/tuf github.com/theupdateframework/notary/tuf/data github.com/theupdateframework/notary/tuf/signed github.com/theupdateframework/notary/tuf/testutils github.com/theupdateframework/notary/tuf/testutils/interfaces github.com/theupdateframework/notary/tuf/testutils/keys github.com/theupdateframework/notary/tuf/utils github.com/theupdateframework/notary/tuf/validation github.com/theupdateframework/notary/utils github.com/theupdateframework/notary/version -internal/coverage/rtcov -internal/goexperiment -internal/profilerecord internal/goarch -internal/unsafeheader internal/byteorder +internal/unsafeheader internal/godebugs -internal/race +internal/coverage/rtcov +internal/cpu +sync/atomic math/bits -internal/goos -unicode/utf8 +internal/abi +internal/chacha8rand runtime/internal/math +unicode/utf8 +internal/runtime/syscall +internal/profilerecord cmp +internal/race +internal/goos +math internal/asan -internal/cpu -internal/runtime/syscall -sync/atomic +internal/goexperiment internal/itoa -internal/abi internal/msan -runtime/internal/sys unicode encoding -internal/chacha8rand +runtime/internal/sys unicode/utf16 log/internal -math crypto/internal/alias crypto/subtle crypto/internal/boring/sig vendor/golang.org/x/crypto/cryptobyte/asn1 internal/nettrace +internal/bytealg +internal/runtime/atomic container/list vendor/golang.org/x/crypto/internal/alias github.com/pelletier/go-toml/v2/internal/characters google.golang.org/protobuf/internal/flags google.golang.org/protobuf/internal/set -internal/bytealg -internal/runtime/atomic google.golang.org/grpc/serviceconfig github.com/theupdateframework/notary/version github.com/lib/pq/oid @@ -1675,251 +1711,251 @@ internal/stringslite runtime github.com/klauspost/compress -iter -runtime/metrics -internal/weak internal/reflectlite sync -maps +iter +internal/weak +runtime/metrics slices +maps internal/bisect -google.golang.org/protobuf/internal/pragma -github.com/spf13/viper/internal/encoding internal/testlog internal/singleflight +github.com/spf13/viper/internal/encoding +google.golang.org/protobuf/internal/pragma runtime/cgo errors sort +internal/godebug +io strconv internal/oserror +syscall +crypto/internal/nistec/fiat path crypto/internal/edwards25519/field +github.com/hashicorp/hcl/hcl/strconv math/rand/v2 -io vendor/golang.org/x/net/dns/dnsmessage -crypto/internal/nistec/fiat -github.com/hashicorp/hcl/hcl/strconv -internal/godebug -google.golang.org/grpc/internal/buffer -syscall hash bytes strings -crypto/internal/randutil math/rand -crypto/internal/edwards25519 -internal/concurrent +crypto/internal/randutil crypto +internal/concurrent +crypto/internal/edwards25519 reflect -unique hash/crc32 -crypto/cipher crypto/rc4 +unique crypto/md5 -golang.org/x/text/transform -vendor/golang.org/x/text/transform hash/fnv -bufio regexp/syntax net/http/internal/ascii -golang.org/x/text/runes -crypto/internal/boring -crypto/des -net/netip +bufio +crypto/cipher +vendor/golang.org/x/text/transform +golang.org/x/text/transform html +net/netip google.golang.org/grpc/internal/grpcrand +golang.org/x/text/runes +google.golang.org/grpc/internal/buffer github.com/beorn7/perks/quantile +crypto/internal/boring +crypto/des github.com/munnerz/goautoneg +golang.org/x/crypto/blowfish +encoding/base32 +github.com/dvsekhvalnov/jose2go/padding crypto/aes crypto/sha512 crypto/sha256 crypto/sha1 crypto/hmac -golang.org/x/crypto/blowfish -encoding/base32 -golang.org/x/crypto/pbkdf2 -vendor/golang.org/x/crypto/hkdf -github.com/dvsekhvalnov/jose2go/padding net/http/internal/testcert time -internal/syscall/execenv internal/syscall/unix +internal/syscall/execenv +golang.org/x/crypto/pbkdf2 +vendor/golang.org/x/crypto/hkdf regexp github.com/jinzhu/inflection io/fs -internal/poll context -google.golang.org/grpc/backoff google.golang.org/grpc/keepalive +google.golang.org/grpc/backoff github.com/bugsnag/bugsnag-go/headers -embed +internal/poll golang.org/x/net/context google.golang.org/grpc/internal/backoff -internal/filepathlite google.golang.org/grpc/internal/grpcsync -github.com/spf13/afero/internal/common gopkg.in/rethinkdb/rethinkdb-go.v6/vendor/gopkg.in/cenkalti/backoff.v2 -google.golang.org/protobuf/internal/editiondefaults +embed +internal/filepathlite +github.com/spf13/afero/internal/common crypto/internal/nistec +google.golang.org/protobuf/internal/editiondefaults os -internal/fmtsort encoding/binary +internal/fmtsort +crypto/ecdh encoding/base64 -github.com/cespare/xxhash +vendor/golang.org/x/crypto/chacha20 +vendor/golang.org/x/crypto/internal/poly1305 filippo.io/edwards25519/field -crypto/ecdh +github.com/cespare/xxhash github.com/klauspost/compress/internal/snapref -vendor/golang.org/x/crypto/chacha20 golang.org/x/sys/unix -vendor/golang.org/x/crypto/internal/poly1305 encoding/pem github.com/dvsekhvalnov/jose2go/base64url -github.com/dvsekhvalnov/jose2go/compact filippo.io/edwards25519 vendor/golang.org/x/crypto/chacha20poly1305 -io/ioutil +github.com/dvsekhvalnov/jose2go/compact github.com/theupdateframework/notary -google.golang.org/protobuf/internal/detrand -github.com/bugsnag/bugsnag-go/device -os/signal -fmt path/filepath -google.golang.org/grpc/internal/envconfig vendor/golang.org/x/sys/cpu net -internal/sysinfo +google.golang.org/protobuf/internal/detrand +google.golang.org/grpc/internal/envconfig +github.com/bugsnag/bugsnag-go/device +fmt +os/signal +io/ioutil github.com/prometheus/procfs/internal/util -vendor/golang.org/x/crypto/sha3 +internal/sysinfo github.com/spf13/afero/mem os/exec +vendor/golang.org/x/crypto/sha3 github.com/bugsnag/panicwrap encoding/json -compress/flate -github.com/docker/go/canonical/json log +github.com/docker/go/canonical/json +math/big vendor/golang.org/x/text/unicode/norm encoding/hex -math/big net/url -mime/quotedprintable mime +mime/quotedprintable +compress/flate vendor/golang.org/x/net/http2/hpack net/http/internal -github.com/miekg/pkcs11 vendor/golang.org/x/text/unicode/bidi +github.com/miekg/pkcs11 flag -compress/gzip encoding/csv golang.org/x/text/unicode/norm +compress/gzip text/template/parse github.com/spf13/jwalterweatherman github.com/subosito/gotenv github.com/hashicorp/hcl/hcl/token -text/tabwriter +vendor/golang.org/x/text/secure/bidirule github.com/hashicorp/hcl/hcl/ast github.com/hashicorp/hcl/hcl/scanner -github.com/theupdateframework/notary/tuf/validation -vendor/golang.org/x/text/secure/bidirule github.com/hashicorp/hcl/json/token -gopkg.in/ini.v1 -github.com/spf13/viper/internal/encoding/json -github.com/pelletier/go-toml/v2/internal/danger -github.com/sirupsen/logrus -github.com/fsnotify/fsnotify +text/tabwriter github.com/hashicorp/hcl/json/scanner -github.com/pelletier/go-toml/v2/unstable +github.com/fsnotify/fsnotify +gopkg.in/ini.v1 github.com/hashicorp/hcl/hcl/parser -text/template -vendor/golang.org/x/net/idna +github.com/pelletier/go-toml/v2/internal/danger github.com/hashicorp/hcl/json/parser +github.com/pelletier/go-toml/v2/unstable github.com/hashicorp/hcl/hcl/printer +vendor/golang.org/x/net/idna +github.com/sirupsen/logrus +github.com/theupdateframework/notary/tuf/validation +text/template +github.com/hashicorp/hcl +github.com/spf13/viper/internal/encoding/json gopkg.in/yaml.v3 +google.golang.org/protobuf/internal/errors +github.com/pelletier/go-toml/v2/internal/tracker +google.golang.org/protobuf/encoding/protowire +go/token crypto/rand crypto/elliptic crypto/internal/bigmod -github.com/docker/distribution/uuid crypto/internal/boring/bbig encoding/asn1 crypto/dsa +github.com/spf13/viper/internal/encoding/hcl +github.com/docker/distribution/uuid crypto/ed25519 crypto/internal/hpke crypto/internal/mlkem768 -github.com/hashicorp/hcl -github.com/pelletier/go-toml/v2/internal/tracker -google.golang.org/protobuf/internal/errors -golang.org/x/crypto/ed25519 -google.golang.org/protobuf/encoding/protowire crypto/rsa -go/token -google.golang.org/protobuf/internal/version +github.com/pelletier/go-toml/v2 +golang.org/x/crypto/ed25519 google.golang.org/protobuf/reflect/protoreflect +google.golang.org/protobuf/internal/version golang.org/x/net/internal/timeseries google.golang.org/grpc/internal/grpclog -github.com/pelletier/go-toml/v2 -google.golang.org/grpc/grpclog +html/template google.golang.org/grpc/attributes -vendor/golang.org/x/crypto/cryptobyte -crypto/x509/pkix -github.com/spf13/viper/internal/encoding/hcl +google.golang.org/grpc/grpclog google.golang.org/grpc/internal/idle golang.org/x/text/unicode/bidi -html/template golang.org/x/net/http2/hpack github.com/pkg/errors -database/sql/driver google.golang.org/grpc/connectivity -github.com/opencontainers/go-digest +database/sql/driver +vendor/golang.org/x/crypto/cryptobyte +crypto/x509/pkix github.com/bugsnag/bugsnag-go/errors +golang.org/x/text/secure/bidirule +github.com/opencontainers/go-digest +database/sql github.com/opencontainers/image-spec/specs-go +github.com/prometheus/procfs/internal/fs +golang.org/x/net/idna google.golang.org/protobuf/internal/descfmt google.golang.org/protobuf/internal/descopts google.golang.org/protobuf/internal/strs google.golang.org/protobuf/internal/encoding/messageset crypto/ecdsa google.golang.org/protobuf/internal/genid +github.com/spf13/viper/internal/encoding/toml +google.golang.org/protobuf/internal/encoding/text google.golang.org/protobuf/internal/order -google.golang.org/protobuf/runtime/protoiface google.golang.org/protobuf/reflect/protoregistry -golang.org/x/text/secure/bidirule -google.golang.org/protobuf/internal/encoding/text +github.com/spf13/cast +google.golang.org/protobuf/runtime/protoiface google.golang.org/protobuf/internal/encoding/json -github.com/spf13/viper/internal/encoding/toml -database/sql -golang.org/x/net/idna github.com/distribution/reference github.com/opencontainers/image-spec/specs-go/v1 -github.com/prometheus/procfs/internal/fs -google.golang.org/protobuf/proto runtime/debug github.com/klauspost/compress/fse -github.com/spf13/cast +google.golang.org/protobuf/proto google.golang.org/protobuf/internal/encoding/defval +github.com/spf13/viper/internal/encoding/yaml golang.org/x/term golang.org/x/crypto/bcrypt github.com/lib/pq/scram os/user go/scanner github.com/hailocab/go-hostpool -github.com/spf13/viper/internal/encoding/yaml -github.com/klauspost/compress/huff0 github.com/opentracing/opentracing-go/log -github.com/theupdateframework/notary/passphrase -gopkg.in/rethinkdb/rethinkdb-go.v6/encoding -go/ast -gopkg.in/rethinkdb/rethinkdb-go.v6/types github.com/spf13/viper/internal/encoding/dotenv github.com/spf13/viper/internal/encoding/ini +github.com/klauspost/compress/huff0 +gopkg.in/rethinkdb/rethinkdb-go.v6/encoding +gopkg.in/rethinkdb/rethinkdb-go.v6/types +internal/profile +runtime/pprof +github.com/theupdateframework/notary/passphrase +go/ast google.golang.org/protobuf/internal/filedesc google.golang.org/protobuf/encoding/prototext google.golang.org/protobuf/encoding/protodelim -internal/profile -runtime/pprof runtime/trace github.com/dvsekhvalnov/jose2go/arrays -github.com/klauspost/compress/zstd -github.com/davecgh/go-spew/spew github.com/dvsekhvalnov/jose2go/aes github.com/dvsekhvalnov/jose2go/kdf +github.com/klauspost/compress/zstd +github.com/davecgh/go-spew/spew github.com/pmezard/go-difflib/difflib testing github.com/jinzhu/gorm @@ -1935,9 +1971,9 @@ google.golang.org/grpc/internal/syscall google.golang.org/grpc/internal/resolver/dns/internal github.com/google/uuid +github.com/prometheus/procfs google.golang.org/grpc/metadata google.golang.org/grpc/codes -github.com/prometheus/procfs mime/multipart vendor/golang.org/x/net/http/httpguts golang.org/x/net/http/httpguts @@ -1946,14 +1982,14 @@ google.golang.org/grpc/stats google.golang.org/grpc/tap google.golang.org/grpc/encoding -github.com/spf13/cobra -github.com/theupdateframework/notary/tuf/data crypto/tls github.com/dvsekhvalnov/jose2go/keys/ecc +github.com/theupdateframework/notary/tuf/data github.com/dvsekhvalnov/jose2go +github.com/spf13/cobra +google.golang.org/protobuf/internal/filetype 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 @@ -1963,121 +1999,121 @@ google.golang.org/protobuf/types/descriptorpb google.golang.org/grpc/encoding/proto google.golang.org/grpc/internal/pretty -github.com/golang/protobuf/ptypes/duration 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 -github.com/prometheus/common/model google.golang.org/grpc/status +github.com/prometheus/common/model google.golang.org/grpc/internal/binarylog google.golang.org/protobuf/types/gofeaturespb -github.com/prometheus/client_golang/prometheus/internal google.golang.org/protobuf/reflect/protodesc +github.com/prometheus/client_golang/prometheus/internal +github.com/golang/protobuf/proto net/http/httptrace google.golang.org/grpc/internal/credentials +github.com/docker/go-connections/tlsconfig github.com/go-sql-driver/mysql github.com/docker/libtrust github.com/lib/pq -github.com/docker/go-connections/tlsconfig -google.golang.org/grpc/credentials net/http -github.com/golang/protobuf/proto +google.golang.org/grpc/credentials google.golang.org/grpc/internal/channelz google.golang.org/grpc/resolver google.golang.org/grpc/credentials/insecure google.golang.org/grpc/peer google.golang.org/grpc/internal/metadata +google.golang.org/grpc/internal/resolver/passthrough google.golang.org/grpc/internal/transport/networktype google.golang.org/grpc/balancer/grpclb/state -google.golang.org/grpc/internal/resolver/passthrough -google.golang.org/grpc/internal/resolver/unix google.golang.org/grpc/internal/resolver/dns +google.golang.org/grpc/internal/resolver/unix +gopkg.in/rethinkdb/rethinkdb-go.v6/ql2 google.golang.org/grpc/resolver/dns google.golang.org/grpc/channelz google.golang.org/grpc/balancer google.golang.org/grpc/balancer/base google.golang.org/grpc/internal/serviceconfig -gopkg.in/rethinkdb/rethinkdb-go.v6/ql2 +google.golang.org/grpc/internal/resolver google.golang.org/grpc/balancer/roundrobin google.golang.org/grpc/internal/balancer/gracefulswitch -google.golang.org/grpc/internal/resolver -github.com/theupdateframework/notary/storage -github.com/spf13/afero github.com/magiconair/properties +github.com/theupdateframework/notary/storage golang.org/x/net/trace +github.com/spf13/afero golang.org/x/net/http2 net/http/httputil github.com/bugsnag/bugsnag-go/sessions -github.com/gorilla/mux github.com/docker/distribution/registry/api/errcode +github.com/gorilla/mux github.com/docker/distribution/registry/auth github.com/docker/distribution github.com/docker/distribution/registry/client/auth/challenge -github.com/theupdateframework/notary/trustmanager github.com/docker/distribution/registry/client/transport expvar -github.com/bugsnag/bugsnag-go github.com/prometheus/common/expfmt github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil/header +github.com/bugsnag/bugsnag-go +github.com/theupdateframework/notary/server/errors +github.com/theupdateframework/notary/trustmanager +github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil github.com/docker/distribution/context github.com/docker/distribution/registry/api/v2 -github.com/theupdateframework/notary/cryptoservice -github.com/theupdateframework/notary/tuf/signed -github.com/spf13/viper/internal/encoding/javaproperties -github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil -github.com/theupdateframework/notary/server/errors github.com/opentracing/opentracing-go net/http/pprof net/http/httptest -github.com/theupdateframework/notary/trustmanager/yubikey -github.com/theupdateframework/notary/trustpinning -github.com/theupdateframework/notary/tuf/testutils/keys +github.com/theupdateframework/notary/cryptoservice +github.com/theupdateframework/notary/tuf/signed github.com/docker/distribution/health github.com/docker/distribution/registry/auth/htpasswd +github.com/spf13/viper/internal/encoding/javaproperties github.com/docker/distribution/registry/auth/token -github.com/spf13/viper +github.com/opentracing/opentracing-go/ext github.com/stretchr/testify/assert +gopkg.in/rethinkdb/rethinkdb-go.v6 +github.com/theupdateframework/notary/vendor/github.com/prometheus/client_golang/prometheus +github.com/prometheus/client_golang/prometheus github.com/Shopify/logrus-bugsnag +github.com/theupdateframework/notary/trustmanager/yubikey +github.com/theupdateframework/notary/trustpinning +github.com/theupdateframework/notary/tuf/testutils/keys github.com/theupdateframework/notary/tuf -github.com/opentracing/opentracing-go/ext -github.com/prometheus/client_golang/prometheus -github.com/theupdateframework/notary/vendor/github.com/prometheus/client_golang/prometheus -gopkg.in/rethinkdb/rethinkdb-go.v6 +github.com/spf13/viper github.com/theupdateframework/notary/client github.com/theupdateframework/notary/tuf/testutils -github.com/theupdateframework/notary/utils github.com/stretchr/testify/require -google.golang.org/grpc/internal/transport +github.com/theupdateframework/notary/utils github.com/prometheus/client_golang/prometheus/promhttp github.com/theupdateframework/notary/tuf/testutils/interfaces +google.golang.org/grpc/internal/transport github.com/theupdateframework/notary/storage/rethinkdb +github.com/docker/go-metrics github.com/theupdateframework/notary/server/storage github.com/theupdateframework/notary/signer/keydbstore -github.com/docker/go-metrics github.com/docker/distribution/metrics github.com/docker/distribution/registry/storage/cache -google.golang.org/grpc github.com/docker/distribution/registry/storage/cache/memory -github.com/theupdateframework/notary/server/snapshot github.com/docker/distribution/registry/client +github.com/theupdateframework/notary/server/snapshot github.com/theupdateframework/notary/server/timestamp -github.com/theupdateframework/notary/server/handlers github.com/docker/distribution/registry/client/auth -github.com/theupdateframework/notary/server +github.com/theupdateframework/notary/server/handlers github.com/theupdateframework/notary/cmd/notary -google.golang.org/grpc/health/grpc_health_v1 -github.com/theupdateframework/notary/proto +google.golang.org/grpc +github.com/theupdateframework/notary/server github.com/theupdateframework/notary/trustmanager/remoteks +github.com/theupdateframework/notary/proto +google.golang.org/grpc/health/grpc_health_v1 +github.com/theupdateframework/notary/signer +github.com/theupdateframework/notary/signer/client google.golang.org/grpc/health github.com/theupdateframework/notary/cmd/escrow -github.com/theupdateframework/notary/signer/client -github.com/theupdateframework/notary/signer github.com/theupdateframework/notary/signer/api -github.com/theupdateframework/notary/cmd/notary-server github.com/theupdateframework/notary/cmd/notary-signer +github.com/theupdateframework/notary/cmd/notary-server 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 12 github.com/theupdateframework/notary github.com/theupdateframework/notary/client github.com/theupdateframework/notary/client/changelist github.com/theupdateframework/notary/cmd/escrow github.com/theupdateframework/notary/cmd/notary github.com/theupdateframework/notary/cmd/notary-server github.com/theupdateframework/notary/cmd/notary-signer github.com/theupdateframework/notary/cryptoservice github.com/theupdateframework/notary/passphrase github.com/theupdateframework/notary/proto github.com/theupdateframework/notary/proto/github.com/theupdateframework/notary/proto github.com/theupdateframework/notary/server github.com/theupdateframework/notary/server/errors github.com/theupdateframework/notary/server/handlers github.com/theupdateframework/notary/server/snapshot github.com/theupdateframework/notary/server/storage github.com/theupdateframework/notary/server/timestamp github.com/theupdateframework/notary/signer github.com/theupdateframework/notary/signer/api github.com/theupdateframework/notary/signer/client github.com/theupdateframework/notary/signer/keydbstore github.com/theupdateframework/notary/storage github.com/theupdateframework/notary/storage/rethinkdb github.com/theupdateframework/notary/trustmanager github.com/theupdateframework/notary/trustmanager/remoteks github.com/theupdateframework/notary/trustmanager/remoteks/github.com/theupdateframework/notary/trustmanager/remoteks github.com/theupdateframework/notary/trustmanager/yubikey github.com/theupdateframework/notary/trustpinning github.com/theupdateframework/notary/tuf github.com/theupdateframework/notary/tuf/data github.com/theupdateframework/notary/tuf/signed github.com/theupdateframework/notary/tuf/testutils github.com/theupdateframework/notary/tuf/testutils/interfaces github.com/theupdateframework/notary/tuf/testutils/keys github.com/theupdateframework/notary/tuf/utils github.com/theupdateframework/notary/tuf/validation github.com/theupdateframework/notary/utils github.com/theupdateframework/notary/version @@ -2095,19 +2131,19 @@ ? github.com/theupdateframework/notary/tuf/testutils/keys [no test files] ? github.com/theupdateframework/notary/version [no test files] === RUN Test0Dot1Migration ---- PASS: Test0Dot1Migration (0.01s) +--- PASS: Test0Dot1Migration (0.03s) === RUN Test0Dot3Migration ---- PASS: Test0Dot3Migration (0.01s) +--- PASS: Test0Dot3Migration (0.03s) === RUN Test0Dot1RepoFormat -time="2025-12-09T04:23:14Z" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +time="2025-12-09T04:27:09Z" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" --- PASS: Test0Dot1RepoFormat (0.20s) === RUN Test0Dot3RepoFormat -time="2025-12-09T04:23:14Z" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" ---- PASS: Test0Dot3RepoFormat (0.24s) +time="2025-12-09T04:27:09Z" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +--- PASS: Test0Dot3RepoFormat (0.22s) === RUN TestDownloading0Dot1RepoFormat ---- PASS: TestDownloading0Dot1RepoFormat (0.02s) +--- PASS: TestDownloading0Dot1RepoFormat (0.00s) === RUN TestDownloading0Dot3RepoFormat ---- PASS: TestDownloading0Dot3RepoFormat (0.01s) +--- PASS: TestDownloading0Dot3RepoFormat (0.02s) === RUN TestInitRepositoryManagedRolesIncludingRoot --- PASS: TestInitRepositoryManagedRolesIncludingRoot (0.00s) === RUN TestInitRepositoryManagedRolesInvalidRole @@ -2119,312 +2155,312 @@ === RUN TestInitRepositoryWithCerts --- PASS: TestInitRepositoryWithCerts (0.01s) === RUN TestMatchKeyIDsWithPublicKeys ---- PASS: TestMatchKeyIDsWithPublicKeys (0.01s) +--- PASS: TestMatchKeyIDsWithPublicKeys (0.00s) === RUN TestInitRepositoryNeedsRemoteTimestampKey ---- PASS: TestInitRepositoryNeedsRemoteTimestampKey (0.01s) +--- PASS: TestInitRepositoryNeedsRemoteTimestampKey (0.00s) === RUN TestInitRepositoryNeedsRemoteSnapshotKey --- PASS: TestInitRepositoryNeedsRemoteSnapshotKey (0.01s) === RUN TestInitRepoServerOnlyManagesTimestampKey ---- PASS: TestInitRepoServerOnlyManagesTimestampKey (0.11s) +--- PASS: TestInitRepoServerOnlyManagesTimestampKey (0.08s) === RUN TestInitRepoServerManagesTimestampAndSnapshotKeys ---- PASS: TestInitRepoServerManagesTimestampAndSnapshotKeys (0.10s) +--- PASS: TestInitRepoServerManagesTimestampAndSnapshotKeys (0.08s) === RUN TestInitRepoAttemptsExceeded ---- PASS: TestInitRepoAttemptsExceeded (0.05s) +--- PASS: TestInitRepoAttemptsExceeded (0.04s) === RUN TestInitRepoPasswordInvalid --- PASS: TestInitRepoPasswordInvalid (0.01s) === RUN TestAddTargetToTargetRoleByDefault ---- PASS: TestAddTargetToTargetRoleByDefault (0.03s) +--- PASS: TestAddTargetToTargetRoleByDefault (0.04s) === RUN TestAddTargetToSpecifiedValidRoles ---- PASS: TestAddTargetToSpecifiedValidRoles (0.04s) +--- PASS: TestAddTargetToSpecifiedValidRoles (0.03s) === RUN TestAddTargetToSpecifiedInvalidRoles ---- PASS: TestAddTargetToSpecifiedInvalidRoles (0.04s) +--- PASS: TestAddTargetToSpecifiedInvalidRoles (0.03s) === RUN TestAddTargetWithInvalidTarget ---- PASS: TestAddTargetWithInvalidTarget (0.02s) +--- PASS: TestAddTargetWithInvalidTarget (0.01s) === RUN TestAddTargetErrorWritingChanges ---- PASS: TestAddTargetErrorWritingChanges (0.02s) +--- PASS: TestAddTargetErrorWritingChanges (0.01s) === RUN TestRemoveTargetToTargetRoleByDefault ---- PASS: TestRemoveTargetToTargetRoleByDefault (0.04s) +--- PASS: TestRemoveTargetToTargetRoleByDefault (0.03s) === RUN TestRemoveTargetFromSpecifiedValidRoles ---- PASS: TestRemoveTargetFromSpecifiedValidRoles (0.04s) +--- PASS: TestRemoveTargetFromSpecifiedValidRoles (0.02s) === RUN TestRemoveTargetToSpecifiedInvalidRoles --- PASS: TestRemoveTargetToSpecifiedInvalidRoles (0.03s) === RUN TestRemoveTargetErrorWritingChanges ---- PASS: TestRemoveTargetErrorWritingChanges (0.01s) +--- PASS: TestRemoveTargetErrorWritingChanges (0.02s) === RUN TestListTarget ---- PASS: TestListTarget (0.44s) +--- PASS: TestListTarget (0.45s) === RUN TestListTargetRestrictsDelegationPaths ---- PASS: TestListTargetRestrictsDelegationPaths (0.04s) +--- PASS: TestListTargetRestrictsDelegationPaths (0.07s) === RUN TestValidateRootKey ---- PASS: TestValidateRootKey (0.02s) +--- PASS: TestValidateRootKey (0.05s) === RUN TestGetChangelist ---- PASS: TestGetChangelist (0.03s) +--- PASS: TestGetChangelist (0.06s) === RUN TestPublishBareRepo ---- PASS: TestPublishBareRepo (0.30s) +--- PASS: TestPublishBareRepo (0.50s) === RUN TestPublishUninitializedRepo -time="2025-12-09T04:23:16Z" level=info msg="No TUF data found locally or remotely - initializing repository docker.com/notary for the first time" ---- PASS: TestPublishUninitializedRepo (0.03s) +time="2025-12-09T04:27:11Z" level=info msg="No TUF data found locally or remotely - initializing repository docker.com/notary for the first time" +--- PASS: TestPublishUninitializedRepo (0.04s) === RUN TestPublishClientHasSnapshotKey ---- PASS: TestPublishClientHasSnapshotKey (0.28s) +--- PASS: TestPublishClientHasSnapshotKey (0.34s) === RUN TestPublishAfterInitServerHasSnapshotKey ---- PASS: TestPublishAfterInitServerHasSnapshotKey (0.34s) +--- PASS: TestPublishAfterInitServerHasSnapshotKey (0.37s) === RUN TestPublishAfterPullServerHasSnapshotKey ---- PASS: TestPublishAfterPullServerHasSnapshotKey (0.16s) +--- PASS: TestPublishAfterPullServerHasSnapshotKey (0.13s) === RUN TestPublishNoOneHasSnapshotKey ---- PASS: TestPublishNoOneHasSnapshotKey (0.09s) +--- PASS: TestPublishNoOneHasSnapshotKey (0.06s) === RUN TestPublishSnapshotCorrupt ---- PASS: TestPublishSnapshotCorrupt (0.15s) +--- PASS: TestPublishSnapshotCorrupt (0.12s) === RUN TestPublishTargetsCorrupt ---- PASS: TestPublishTargetsCorrupt (0.06s) +--- PASS: TestPublishTargetsCorrupt (0.08s) === RUN TestPublishRootCorrupt -time="2025-12-09T04:23:17Z" level=error msg="Could not publish Repository since we could not update: invalid character 'h' in literal true (expecting 'r')" -time="2025-12-09T04:23:17Z" level=error msg="Could not publish Repository since we could not update: invalid character 'h' in literal true (expecting 'r')" ---- PASS: TestPublishRootCorrupt (0.05s) +time="2025-12-09T04:27:12Z" level=error msg="Could not publish Repository since we could not update: invalid character 'h' in literal true (expecting 'r')" +time="2025-12-09T04:27:12Z" level=error msg="Could not publish Repository since we could not update: invalid character 'h' in literal true (expecting 'r')" +--- PASS: TestPublishRootCorrupt (0.04s) === RUN TestPublishSnapshotLocalKeysCreatedFirst --- PASS: TestPublishSnapshotLocalKeysCreatedFirst (0.00s) === RUN TestPublishDelegations ---- PASS: TestPublishDelegations (0.10s) +--- PASS: TestPublishDelegations (0.13s) === RUN TestPublishDelegationsX509 ---- PASS: TestPublishDelegationsX509 (0.12s) +--- PASS: TestPublishDelegationsX509 (0.13s) === RUN TestPublishTargetsDelegationScopeFailIfNoKeys -time="2025-12-09T04:23:18Z" level=error msg="couldn't add target to targets/a/b: tuf: invalid role targets/a/b. delegation does not exist" -time="2025-12-09T04:23:18Z" level=error msg="couldn't add target to targets/a/b: tuf: invalid role targets/a/b. delegation does not exist" ---- PASS: TestPublishTargetsDelegationScopeFailIfNoKeys (0.09s) +time="2025-12-09T04:27:13Z" level=error msg="couldn't add target to targets/a/b: tuf: invalid role targets/a/b. delegation does not exist" +time="2025-12-09T04:27:13Z" level=error msg="couldn't add target to targets/a/b: tuf: invalid role targets/a/b. delegation does not exist" +--- PASS: TestPublishTargetsDelegationScopeFailIfNoKeys (0.11s) === RUN TestPublishTargetsDelegationSuccessLocallyHasRoles ---- PASS: TestPublishTargetsDelegationSuccessLocallyHasRoles (0.07s) +--- PASS: TestPublishTargetsDelegationSuccessLocallyHasRoles (0.11s) === RUN TestPublishTargetsDelegationNoTargetsKeyNeeded ---- PASS: TestPublishTargetsDelegationNoTargetsKeyNeeded (0.08s) +--- PASS: TestPublishTargetsDelegationNoTargetsKeyNeeded (0.13s) === RUN TestPublishTargetsDelegationSuccessNeedsToDownloadRoles ---- PASS: TestPublishTargetsDelegationSuccessNeedsToDownloadRoles (0.07s) +--- PASS: TestPublishTargetsDelegationSuccessNeedsToDownloadRoles (0.17s) === RUN TestPublishTargetsDelegationFromTwoRepos ---- PASS: TestPublishTargetsDelegationFromTwoRepos (0.08s) +--- PASS: TestPublishTargetsDelegationFromTwoRepos (0.14s) === RUN TestPublishRemoveDelegationKeyFromDelegationRole -time="2025-12-09T04:23:18Z" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-12-09T04:23:18Z" 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: 5887cde5f1e0bfddce3dabef1af4dfd679ead5392752741c9499a0591a4811ea" ---- PASS: TestPublishRemoveDelegationKeyFromDelegationRole (0.05s) +time="2025-12-09T04:27:13Z" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2025-12-09T04:27:13Z" 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: 71bc556e9c71555b2c6b60de7418d00ae8cad0c90df0fac5bd84fd07cefb03f0" +--- PASS: TestPublishRemoveDelegationKeyFromDelegationRole (0.09s) === RUN TestPublishRemoveDelegation -time="2025-12-09T04:23:18Z" 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-12-09T04:23:18Z" 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-12-09T04:23:18Z" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-12-09T04:23:18Z" level=error msg="couldn't add target to targets/a: could not find necessary signing keys, at least one of these keys must be available: " ---- PASS: TestPublishRemoveDelegation (0.05s) +time="2025-12-09T04:27:13Z" 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-12-09T04:27:13Z" 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-12-09T04:27:13Z" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2025-12-09T04:27:13Z" level=error msg="couldn't add target to targets/a: could not find necessary signing keys, at least one of these keys must be available: " +--- PASS: TestPublishRemoveDelegation (0.08s) === RUN TestPublishSucceedsDespiteDelegationCorrupt ---- PASS: TestPublishSucceedsDespiteDelegationCorrupt (0.06s) +--- PASS: TestPublishSucceedsDespiteDelegationCorrupt (0.10s) === RUN TestRotateKeyInvalidRole ---- PASS: TestRotateKeyInvalidRole (0.03s) +--- PASS: TestRotateKeyInvalidRole (0.07s) === RUN TestRemoteRotationError ---- PASS: TestRemoteRotationError (0.01s) +--- PASS: TestRemoteRotationError (0.02s) === RUN TestRemoteRotationEndpointError ---- PASS: TestRemoteRotationEndpointError (0.02s) +--- PASS: TestRemoteRotationEndpointError (0.03s) === RUN TestRemoteRotationNoRootKey ---- PASS: TestRemoteRotationNoRootKey (0.03s) +--- PASS: TestRemoteRotationNoRootKey (0.08s) === RUN TestRemoteRotationNoInit -time="2025-12-09T04:23:18Z" level=info msg="No TUF data found locally or remotely - initializing repository docker.com/notary for the first time" ---- PASS: TestRemoteRotationNoInit (0.02s) +time="2025-12-09T04:27:14Z" level=info msg="No TUF data found locally or remotely - initializing repository docker.com/notary for the first time" +--- PASS: TestRemoteRotationNoInit (0.05s) === RUN TestRotateBeforePublishFromRemoteKeyToLocalKey ---- PASS: TestRotateBeforePublishFromRemoteKeyToLocalKey (0.10s) +--- PASS: TestRotateBeforePublishFromRemoteKeyToLocalKey (0.16s) === RUN TestRotateKeyAfterPublishNoServerManagementChange ---- PASS: TestRotateKeyAfterPublishNoServerManagementChange (0.24s) +--- PASS: TestRotateKeyAfterPublishNoServerManagementChange (0.40s) === RUN TestRotateKeyAfterPublishServerManagementChange ---- PASS: TestRotateKeyAfterPublishServerManagementChange (0.42s) +--- PASS: TestRotateKeyAfterPublishServerManagementChange (0.44s) === RUN TestRotateRootKey ---- PASS: TestRotateRootKey (0.16s) +--- PASS: TestRotateRootKey (0.13s) === RUN TestRotateRootMultiple ---- PASS: TestRotateRootMultiple (0.20s) +--- PASS: TestRotateRootMultiple (0.18s) === RUN TestRotateRootKeyProvided ---- PASS: TestRotateRootKeyProvided (0.17s) +--- PASS: TestRotateRootKeyProvided (0.13s) === RUN TestRotateRootKeyLegacySupport ---- PASS: TestRotateRootKeyLegacySupport (0.26s) +--- PASS: TestRotateRootKeyLegacySupport (0.20s) === RUN TestRemoteServerUnavailableNoLocalCache -time="2025-12-09T04:23:20Z" level=error msg="Could not publish Repository since we could not update: unable to reach trust server at this time: 500." +time="2025-12-09T04:27:15Z" level=error msg="Could not publish Repository since we could not update: unable to reach trust server at this time: 500." --- PASS: TestRemoteServerUnavailableNoLocalCache (0.00s) === RUN TestAddDelegationChangefileValid ---- PASS: TestAddDelegationChangefileValid (0.02s) +--- PASS: TestAddDelegationChangefileValid (0.01s) === RUN TestAddDelegationChangefileApplicable ---- PASS: TestAddDelegationChangefileApplicable (0.02s) +--- PASS: TestAddDelegationChangefileApplicable (0.01s) === RUN TestAddDelegationErrorWritingChanges --- PASS: TestAddDelegationErrorWritingChanges (0.02s) === RUN TestRemoveDelegationChangefileValid ---- PASS: TestRemoveDelegationChangefileValid (0.02s) +--- PASS: TestRemoveDelegationChangefileValid (0.01s) === RUN TestRemoveDelegationChangefileApplicable -time="2025-12-09T04:23:20Z" 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-12-09T04:23:20Z" level=warning msg="role targets/a has fewer keys than its threshold of 1; it will not be usable until keys are added to it" ---- PASS: TestRemoveDelegationChangefileApplicable (0.02s) +time="2025-12-09T04:27:15Z" 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-12-09T04:27:15Z" level=warning msg="role targets/a has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +--- PASS: TestRemoveDelegationChangefileApplicable (0.01s) === RUN TestClearAllPathsDelegationChangefileApplicable --- PASS: TestClearAllPathsDelegationChangefileApplicable (0.02s) === RUN TestFullAddDelegationChangefileApplicable --- PASS: TestFullAddDelegationChangefileApplicable (0.02s) === RUN TestFullRemoveDelegationChangefileApplicable ---- PASS: TestFullRemoveDelegationChangefileApplicable (0.02s) +--- PASS: TestFullRemoveDelegationChangefileApplicable (0.03s) === RUN TestRemoveDelegationErrorWritingChanges ---- PASS: TestRemoveDelegationErrorWritingChanges (0.02s) +--- PASS: TestRemoveDelegationErrorWritingChanges (0.03s) === RUN TestClientInvalidURL --- PASS: TestClientInvalidURL (0.00s) === RUN TestPublishTargetsDelegationCanUseUserKeyWithArbitraryRole ---- PASS: TestPublishTargetsDelegationCanUseUserKeyWithArbitraryRole (0.32s) +--- PASS: TestPublishTargetsDelegationCanUseUserKeyWithArbitraryRole (0.26s) === RUN TestDeleteRepo ---- PASS: TestDeleteRepo (0.04s) +--- PASS: TestDeleteRepo (0.03s) === RUN TestDeleteRemoteRepo ---- PASS: TestDeleteRemoteRepo (0.11s) +--- PASS: TestDeleteRemoteRepo (0.09s) === RUN TestListRoles ---- PASS: TestListRoles (0.19s) +--- PASS: TestListRoles (0.21s) === RUN TestGetAllTargetInfo ---- PASS: TestGetAllTargetInfo (0.12s) +--- PASS: TestGetAllTargetInfo (0.11s) === RUN TestUpdateSucceedsEvenIfCannotWriteNewRepo -time="2025-12-09T04:23:21Z" level=error msg="could not save root to cache: Non-writable" ---- PASS: TestUpdateSucceedsEvenIfCannotWriteNewRepo (0.11s) +time="2025-12-09T04:27:16Z" level=error msg="could not save root to cache: Non-writable" +--- PASS: TestUpdateSucceedsEvenIfCannotWriteNewRepo (0.13s) === RUN TestUpdateSucceedsEvenIfCannotWriteExistingRepo ---- PASS: TestUpdateSucceedsEvenIfCannotWriteExistingRepo (0.49s) +--- PASS: TestUpdateSucceedsEvenIfCannotWriteExistingRepo (0.54s) === RUN TestUpdateInOfflineMode -time="2025-12-09T04:23:21Z" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" -time="2025-12-09T04:23:21Z" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +time="2025-12-09T04:27:17Z" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +time="2025-12-09T04:27:17Z" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" --- PASS: TestUpdateInOfflineMode (0.04s) === RUN TestUpdateReplacesCorruptOrMissingMetadata -time="2025-12-09T04:23:22Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:22Z" level=error msg="Metadata for root expired" ---- PASS: TestUpdateReplacesCorruptOrMissingMetadata (0.92s) +time="2025-12-09T04:27:17Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:17Z" level=error msg="Metadata for root expired" +--- PASS: TestUpdateReplacesCorruptOrMissingMetadata (0.95s) === RUN TestUpdateFailsIfServerRootKeyChangedWithoutMultiSign -time="2025-12-09T04:23:22Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:22Z" level=error msg="Metadata for root expired" ---- PASS: TestUpdateFailsIfServerRootKeyChangedWithoutMultiSign (0.09s) +time="2025-12-09T04:27:18Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:18Z" level=error msg="Metadata for root expired" +--- PASS: TestUpdateFailsIfServerRootKeyChangedWithoutMultiSign (0.10s) === RUN TestUpdateRemoteRootNotExistNoLocalCache ---- PASS: TestUpdateRemoteRootNotExistNoLocalCache (0.03s) +--- PASS: TestUpdateRemoteRootNotExistNoLocalCache (0.02s) === RUN TestUpdateRemoteRootNotExistCanUseLocalCache ---- PASS: TestUpdateRemoteRootNotExistCanUseLocalCache (0.07s) +--- PASS: TestUpdateRemoteRootNotExistCanUseLocalCache (0.05s) === RUN TestUpdateRemoteRootNotExistCannotUseLocalCache ---- PASS: TestUpdateRemoteRootNotExistCannotUseLocalCache (0.08s) +--- PASS: TestUpdateRemoteRootNotExistCannotUseLocalCache (0.07s) === RUN TestUpdateRemoteRoot50XNoLocalCache ---- PASS: TestUpdateRemoteRoot50XNoLocalCache (0.03s) +--- PASS: TestUpdateRemoteRoot50XNoLocalCache (0.02s) === RUN TestUpdateRemoteRoot50XCanUseLocalCache --- PASS: TestUpdateRemoteRoot50XCanUseLocalCache (0.07s) === RUN TestUpdateRemoteRoot50XCannotUseLocalCache ---- PASS: TestUpdateRemoteRoot50XCannotUseLocalCache (0.08s) +--- PASS: TestUpdateRemoteRoot50XCannotUseLocalCache (0.09s) === RUN TestUpdateNonRootRemoteMissingMetadataNoLocalCache --- PASS: TestUpdateNonRootRemoteMissingMetadataNoLocalCache (0.17s) === RUN TestUpdateNonRootRemoteMissingMetadataCanUseLocalCache -time="2025-12-09T04:23:23Z" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" ---- PASS: TestUpdateNonRootRemoteMissingMetadataCanUseLocalCache (0.24s) +time="2025-12-09T04:27:19Z" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +--- PASS: TestUpdateNonRootRemoteMissingMetadataCanUseLocalCache (0.20s) === RUN TestUpdateNonRootRemoteMissingMetadataCannotUseLocalCache -time="2025-12-09T04:23:23Z" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" ---- PASS: TestUpdateNonRootRemoteMissingMetadataCannotUseLocalCache (0.31s) +time="2025-12-09T04:27:19Z" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +--- PASS: TestUpdateNonRootRemoteMissingMetadataCannotUseLocalCache (0.29s) === RUN TestUpdateNonRootRemote50XNoLocalCache ---- PASS: TestUpdateNonRootRemote50XNoLocalCache (0.18s) +--- PASS: TestUpdateNonRootRemote50XNoLocalCache (0.14s) === RUN TestUpdateNonRootRemote50XCanUseLocalCache -time="2025-12-09T04:23:24Z" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" ---- PASS: TestUpdateNonRootRemote50XCanUseLocalCache (0.23s) +time="2025-12-09T04:27:19Z" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +--- PASS: TestUpdateNonRootRemote50XCanUseLocalCache (0.22s) === RUN TestUpdateNonRootRemote50XCannotUseLocalCache -time="2025-12-09T04:23:24Z" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" ---- PASS: TestUpdateNonRootRemote50XCannotUseLocalCache (0.31s) +time="2025-12-09T04:27:19Z" level=warning msg="Error while downloading remote metadata, using cached timestamp - this might not be the latest version available remotely" +--- PASS: TestUpdateNonRootRemote50XCannotUseLocalCache (0.24s) === RUN TestUpdateRemoteChecksumWrongNoLocalCache ---- PASS: TestUpdateRemoteChecksumWrongNoLocalCache (0.22s) +--- PASS: TestUpdateRemoteChecksumWrongNoLocalCache (0.17s) === RUN TestUpdateRemoteChecksumWrongCanUseLocalCache ---- PASS: TestUpdateRemoteChecksumWrongCanUseLocalCache (0.32s) +--- PASS: TestUpdateRemoteChecksumWrongCanUseLocalCache (0.24s) === RUN TestUpdateRemoteChecksumWrongCannotUseLocalCache ---- PASS: TestUpdateRemoteChecksumWrongCannotUseLocalCache (0.41s) +--- PASS: TestUpdateRemoteChecksumWrongCannotUseLocalCache (0.39s) === RUN TestUpdateRootRemoteCorruptedNoLocalCache -time="2025-12-09T04:23:25Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:25Z" level=error msg="Metadata for root expired" ---- PASS: TestUpdateRootRemoteCorruptedNoLocalCache (0.67s) +time="2025-12-09T04:27:21Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:21Z" level=error msg="Metadata for root expired" +--- PASS: TestUpdateRootRemoteCorruptedNoLocalCache (0.61s) === RUN TestUpdateRootRemoteCorruptedCanUseLocalCache ---- PASS: TestUpdateRootRemoteCorruptedCanUseLocalCache (1.40s) +--- PASS: TestUpdateRootRemoteCorruptedCanUseLocalCache (1.29s) === RUN TestUpdateRootRemoteCorruptedCannotUseLocalCache -time="2025-12-09T04:23:28Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:28Z" level=error msg="Metadata for root expired" ---- PASS: TestUpdateRootRemoteCorruptedCannotUseLocalCache (1.65s) +time="2025-12-09T04:27:23Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:23Z" level=error msg="Metadata for root expired" +--- PASS: TestUpdateRootRemoteCorruptedCannotUseLocalCache (1.74s) === RUN TestUpdateNonRootRemoteCorruptedNoLocalCache -time="2025-12-09T04:23:29Z" level=error msg="Metadata for targets expired" -time="2025-12-09T04:23:29Z" level=error msg="Metadata for targets expired" -time="2025-12-09T04:23:29Z" level=error msg="Metadata for snapshot expired" -time="2025-12-09T04:23:29Z" level=error msg="Metadata for snapshot expired" -time="2025-12-09T04:23:29Z" level=error msg="Metadata for timestamp expired" -time="2025-12-09T04:23:29Z" level=error msg="Metadata for timestamp expired" -time="2025-12-09T04:23:29Z" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-12-09T04:23:29Z" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-12-09T04:23:29Z" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-12-09T04:23:29Z" level=error msg="Metadata for targets/a expired" -time="2025-12-09T04:23:29Z" level=warning msg="Error getting targets/a: targets/a expired at Fri Nov 8 04:23:29 UTC 2024" -time="2025-12-09T04:23:29Z" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-12-09T04:23:29Z" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-12-09T04:23:29Z" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-12-09T04:23:29Z" level=error msg="Metadata for targets/a/b expired" -time="2025-12-09T04:23:29Z" level=warning msg="Error getting targets/a/b: targets/a/b expired at Fri Nov 8 04:23:29 UTC 2024" -time="2025-12-09T04:23:30Z" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2025-12-09T04:23:30Z" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2025-12-09T04:23:30Z" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2025-12-09T04:23:30Z" level=error msg="Metadata for targets/b expired" -time="2025-12-09T04:23:30Z" level=warning msg="Error getting targets/b: targets/b expired at Fri Nov 8 04:23:30 UTC 2024" ---- PASS: TestUpdateNonRootRemoteCorruptedNoLocalCache (0.89s) +time="2025-12-09T04:27:24Z" level=error msg="Metadata for targets expired" +time="2025-12-09T04:27:24Z" level=error msg="Metadata for targets expired" +time="2025-12-09T04:27:24Z" level=error msg="Metadata for snapshot expired" +time="2025-12-09T04:27:24Z" level=error msg="Metadata for snapshot expired" +time="2025-12-09T04:27:25Z" level=error msg="Metadata for timestamp expired" +time="2025-12-09T04:27:25Z" level=error msg="Metadata for timestamp expired" +time="2025-12-09T04:27:25Z" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2025-12-09T04:27:25Z" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2025-12-09T04:27:25Z" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2025-12-09T04:27:25Z" level=error msg="Metadata for targets/a expired" +time="2025-12-09T04:27:25Z" level=warning msg="Error getting targets/a: targets/a expired at Fri Nov 8 04:27:25 UTC 2024" +time="2025-12-09T04:27:25Z" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2025-12-09T04:27:25Z" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2025-12-09T04:27:25Z" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2025-12-09T04:27:25Z" level=error msg="Metadata for targets/a/b expired" +time="2025-12-09T04:27:25Z" level=warning msg="Error getting targets/a/b: targets/a/b expired at Fri Nov 8 04:27:25 UTC 2024" +time="2025-12-09T04:27:25Z" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2025-12-09T04:27:25Z" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2025-12-09T04:27:25Z" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2025-12-09T04:27:25Z" level=error msg="Metadata for targets/b expired" +time="2025-12-09T04:27:25Z" level=warning msg="Error getting targets/b: targets/b expired at Fri Nov 8 04:27:25 UTC 2024" +--- PASS: TestUpdateNonRootRemoteCorruptedNoLocalCache (1.57s) === RUN TestUpdateNonRootRemoteCorruptedCanUseLocalCache -time="2025-12-09T04:23:30Z" level=error msg="Metadata for timestamp expired" -time="2025-12-09T04:23:30Z" level=error msg="Metadata for timestamp expired" ---- PASS: TestUpdateNonRootRemoteCorruptedCanUseLocalCache (1.07s) +time="2025-12-09T04:27:27Z" level=error msg="Metadata for timestamp expired" +time="2025-12-09T04:27:27Z" level=error msg="Metadata for timestamp expired" +--- PASS: TestUpdateNonRootRemoteCorruptedCanUseLocalCache (2.19s) === RUN TestUpdateNonRootRemoteCorruptedCannotUseLocalCache -time="2025-12-09T04:23:31Z" level=error msg="Metadata for targets expired" -time="2025-12-09T04:23:31Z" level=error msg="Metadata for snapshot expired" -time="2025-12-09T04:23:31Z" level=error msg="Metadata for snapshot expired" -time="2025-12-09T04:23:31Z" level=error msg="Metadata for timestamp expired" -time="2025-12-09T04:23:31Z" level=error msg="Metadata for timestamp expired" -time="2025-12-09T04:23:32Z" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-12-09T04:23:32Z" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-12-09T04:23:32Z" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-12-09T04:23:32Z" level=error msg="Metadata for targets/a expired" -time="2025-12-09T04:23:32Z" level=warning msg="Error getting targets/a: targets/a expired at Fri Nov 8 04:23:32 UTC 2024" -time="2025-12-09T04:23:32Z" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-12-09T04:23:32Z" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-12-09T04:23:32Z" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-12-09T04:23:32Z" level=error msg="Metadata for targets/a/b expired" -time="2025-12-09T04:23:32Z" level=warning msg="Error getting targets/a/b: targets/a/b expired at Fri Nov 8 04:23:32 UTC 2024" -time="2025-12-09T04:23:32Z" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2025-12-09T04:23:32Z" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2025-12-09T04:23:32Z" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" -time="2025-12-09T04:23:32Z" level=error msg="Metadata for targets/b expired" -time="2025-12-09T04:23:32Z" level=warning msg="Error getting targets/b: targets/b expired at Fri Nov 8 04:23:32 UTC 2024" ---- PASS: TestUpdateNonRootRemoteCorruptedCannotUseLocalCache (1.55s) +time="2025-12-09T04:27:28Z" level=error msg="Metadata for targets expired" +time="2025-12-09T04:27:29Z" level=error msg="Metadata for snapshot expired" +time="2025-12-09T04:27:29Z" level=error msg="Metadata for snapshot expired" +time="2025-12-09T04:27:29Z" level=error msg="Metadata for timestamp expired" +time="2025-12-09T04:27:29Z" level=error msg="Metadata for timestamp expired" +time="2025-12-09T04:27:29Z" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2025-12-09T04:27:29Z" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2025-12-09T04:27:29Z" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2025-12-09T04:27:30Z" level=error msg="Metadata for targets/a expired" +time="2025-12-09T04:27:30Z" level=warning msg="Error getting targets/a: targets/a expired at Fri Nov 8 04:27:29 UTC 2024" +time="2025-12-09T04:27:30Z" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2025-12-09T04:27:30Z" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2025-12-09T04:27:30Z" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2025-12-09T04:27:30Z" level=error msg="Metadata for targets/a/b expired" +time="2025-12-09T04:27:30Z" level=warning msg="Error getting targets/a/b: targets/a/b expired at Fri Nov 8 04:27:30 UTC 2024" +time="2025-12-09T04:27:30Z" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2025-12-09T04:27:30Z" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2025-12-09T04:27:30Z" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +time="2025-12-09T04:27:30Z" level=error msg="Metadata for targets/b expired" +time="2025-12-09T04:27:30Z" level=warning msg="Error getting targets/b: targets/b expired at Fri Nov 8 04:27:30 UTC 2024" +--- PASS: TestUpdateNonRootRemoteCorruptedCannotUseLocalCache (2.98s) === RUN TestUpdateLocalAndRemoteRootCorrupt -time="2025-12-09T04:23:33Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:33Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:34Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:34Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:34Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:34Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:34Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:34Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:34Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:34Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:34Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:34Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:34Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:34Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:34Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:34Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:34Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:34Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:34Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:34Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:34Z" level=error msg="Metadata for root expired" -time="2025-12-09T04:23:34Z" level=error msg="Metadata for root expired" ---- PASS: TestUpdateLocalAndRemoteRootCorrupt (1.70s) +time="2025-12-09T04:27:32Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:32Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:33Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:33Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:33Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:33Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:33Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:33Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:34Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:34Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:34Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:34Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:34Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:34Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:34Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:34Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:34Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:34Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:34Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:34Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:34Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:34Z" level=error msg="Metadata for root expired" +--- PASS: TestUpdateLocalAndRemoteRootCorrupt (3.33s) === RUN TestUpdateRemoteKeyRotated -time="2025-12-09T04:23:34Z" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" -time="2025-12-09T04:23:34Z" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" -time="2025-12-09T04:23:34Z" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" ---- PASS: TestUpdateRemoteKeyRotated (0.15s) +time="2025-12-09T04:27:34Z" level=warning msg="Error getting targets/a: valid signatures did not meet threshold for targets/a" +time="2025-12-09T04:27:34Z" level=warning msg="Error getting targets/a/b: valid signatures did not meet threshold for targets/a/b" +time="2025-12-09T04:27:34Z" level=warning msg="Error getting targets/b: valid signatures did not meet threshold for targets/b" +--- PASS: TestUpdateRemoteKeyRotated (0.28s) === RUN TestValidateRootRotationWithOldRole ---- PASS: TestValidateRootRotationWithOldRole (0.08s) +--- PASS: TestValidateRootRotationWithOldRole (0.20s) === RUN TestRootRoleInvariant ---- PASS: TestRootRoleInvariant (0.07s) +--- PASS: TestRootRoleInvariant (0.19s) === RUN TestBadIntermediateTransitions ---- PASS: TestBadIntermediateTransitions (0.02s) +--- PASS: TestBadIntermediateTransitions (0.06s) === RUN TestExpiredIntermediateTransitions -time="2025-12-09T04:23:34Z" level=warning msg="root is nearing expiry, you should re-sign the role metadata" ---- PASS: TestExpiredIntermediateTransitions (0.03s) +time="2025-12-09T04:27:35Z" level=warning msg="root is nearing expiry, you should re-sign the role metadata" +--- PASS: TestExpiredIntermediateTransitions (0.05s) === RUN TestDownloadTargetsLarge ---- PASS: TestDownloadTargetsLarge (2.61s) +--- PASS: TestDownloadTargetsLarge (4.28s) === RUN TestDownloadTargetsDeep ---- PASS: TestDownloadTargetsDeep (0.02s) +--- PASS: TestDownloadTargetsDeep (0.03s) === RUN TestDownloadSnapshotLargeDelegationsMany ---- PASS: TestDownloadSnapshotLargeDelegationsMany (2.10s) +--- PASS: TestDownloadSnapshotLargeDelegationsMany (3.27s) === RUN TestRootOnDiskTrustPinning ---- PASS: TestRootOnDiskTrustPinning (0.01s) +--- PASS: TestRootOnDiskTrustPinning (0.03s) === RUN TestLoadTUFRepoBadURL --- PASS: TestLoadTUFRepoBadURL (0.00s) === RUN TestApplyTargetsChange @@ -2436,51 +2472,51 @@ === RUN TestApplyChangelistMulti --- PASS: TestApplyChangelistMulti (0.00s) === RUN TestApplyTargetsDelegationCreateDelete ---- PASS: TestApplyTargetsDelegationCreateDelete (0.00s) +--- PASS: TestApplyTargetsDelegationCreateDelete (0.01s) === RUN TestApplyTargetsDelegationCreate2SharedKey --- PASS: TestApplyTargetsDelegationCreate2SharedKey (0.00s) === RUN TestApplyTargetsDelegationCreateEdit ---- PASS: TestApplyTargetsDelegationCreateEdit (0.00s) +--- PASS: TestApplyTargetsDelegationCreateEdit (0.01s) === RUN TestApplyTargetsDelegationEditNonExisting --- PASS: TestApplyTargetsDelegationEditNonExisting (0.00s) === RUN TestApplyTargetsDelegationCreateAlreadyExisting --- PASS: TestApplyTargetsDelegationCreateAlreadyExisting (0.00s) === RUN TestApplyTargetsDelegationAlreadyExistingMergePaths ---- PASS: TestApplyTargetsDelegationAlreadyExistingMergePaths (0.00s) +--- PASS: TestApplyTargetsDelegationAlreadyExistingMergePaths (0.01s) === RUN TestApplyTargetsDelegationInvalidRole --- PASS: TestApplyTargetsDelegationInvalidRole (0.00s) === RUN TestApplyTargetsDelegationInvalidJSONContent --- PASS: TestApplyTargetsDelegationInvalidJSONContent (0.00s) === RUN TestApplyTargetsDelegationInvalidAction ---- PASS: TestApplyTargetsDelegationInvalidAction (0.00s) +--- PASS: TestApplyTargetsDelegationInvalidAction (0.01s) === RUN TestApplyTargetsChangeInvalidType --- PASS: TestApplyTargetsChangeInvalidType (0.00s) === RUN TestApplyTargetsDelegationCreate2Deep --- PASS: TestApplyTargetsDelegationCreate2Deep (0.00s) === RUN TestApplyTargetsDelegationParentDoesntExist ---- PASS: TestApplyTargetsDelegationParentDoesntExist (0.00s) +--- PASS: TestApplyTargetsDelegationParentDoesntExist (0.01s) === RUN TestApplyChangelistCreatesDelegation --- PASS: TestApplyChangelistCreatesDelegation (0.00s) === RUN TestApplyChangelistTargetsToMultipleRoles --- PASS: TestApplyChangelistTargetsToMultipleRoles (0.00s) === RUN TestApplyChangelistTargetsFailsNonexistentRole -time="2025-12-09T04:23:39Z" 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-12-09T04:23:39Z" level=error msg="couldn't remove target from targets/level1/level2/level3/level4: tuf: invalid role targets/level1/level2/level3/level4. delegation does not exist" ---- PASS: TestApplyChangelistTargetsFailsNonexistentRole (0.00s) +time="2025-12-09T04:27:42Z" 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-12-09T04:27:42Z" 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) === RUN TestChangeTargetMetaFailsInvalidRole -time="2025-12-09T04:23:39Z" level=error msg="couldn't add target to ruhroh: tuf: invalid role ruhroh. does not exist" +time="2025-12-09T04:27:42Z" level=error msg="couldn't add target to ruhroh: tuf: invalid role ruhroh. does not exist" --- PASS: TestChangeTargetMetaFailsInvalidRole (0.00s) === RUN TestChangeTargetMetaFailsIfPrefixError -time="2025-12-09T04:23:39Z" level=error msg="couldn't add target to targets/level1: could not add all targets" +time="2025-12-09T04:27:42Z" level=error msg="couldn't add target to targets/level1: could not add all targets" --- PASS: TestChangeTargetMetaFailsIfPrefixError (0.00s) === RUN TestAllNearExpiry ---- PASS: TestAllNearExpiry (0.00s) +--- PASS: TestAllNearExpiry (0.01s) === RUN TestAllNotNearExpiry --- PASS: TestAllNotNearExpiry (0.00s) === RUN TestRotateRemoteKeyOffline --- PASS: TestRotateRemoteKeyOffline (0.00s) PASS -ok github.com/theupdateframework/notary/client 24.920s +ok github.com/theupdateframework/notary/client 33.648s === RUN TestTUFDelegation --- PASS: TestTUFDelegation (0.01s) === RUN TestMemChangelist @@ -2492,14 +2528,14 @@ === RUN TestAdd --- PASS: TestAdd (0.00s) === RUN TestErrorConditions -time="2025-12-09T04:23:14Z" level=warning msg="invalid character '\\x05' looking for beginning of value" +time="2025-12-09T04:27:09Z" level=warning msg="invalid character '\\x05' looking for beginning of value" --- PASS: TestErrorConditions (0.00s) === RUN TestListOrder --- PASS: TestListOrder (0.00s) === RUN TestFileChangeIterator --- PASS: TestFileChangeIterator (0.00s) PASS -ok github.com/theupdateframework/notary/client/changelist 0.030s +ok github.com/theupdateframework/notary/client/changelist 0.064s === RUN TestParseConfigError --- PASS: TestParseConfigError (0.00s) === RUN TestSetupGRPCServer @@ -2509,7 +2545,7 @@ === RUN TestSetupNetListener --- PASS: TestSetupNetListener (0.00s) PASS -ok github.com/theupdateframework/notary/cmd/escrow 0.038s +ok github.com/theupdateframework/notary/cmd/escrow 0.063s === RUN TestPurgeDelegationKeys Usage: delegation [command] @@ -2535,11 +2571,11 @@ - abc --- PASS: TestPurgeDelegationKeys (0.00s) === RUN TestAddInvalidDelegationName ---- PASS: TestAddInvalidDelegationName (0.03s) +--- PASS: TestAddInvalidDelegationName (0.00s) === RUN TestAddInvalidDelegationCert ---- PASS: TestAddInvalidDelegationCert (0.00s) +--- PASS: TestAddInvalidDelegationCert (0.01s) === RUN TestAddInvalidShortPubkeyCert ---- PASS: TestAddInvalidShortPubkeyCert (0.01s) +--- PASS: TestAddInvalidShortPubkeyCert (0.00s) === RUN TestRemoveInvalidDelegationName --- PASS: TestRemoveInvalidDelegationName (0.00s) === RUN TestRemoveAllInvalidDelegationName @@ -2581,79 +2617,79 @@ Use "delegation [command] --help" for more information about a command. --- PASS: TestRemoveInvalidNumArgs (0.00s) === RUN TestInitWithRootKey ---- PASS: TestInitWithRootKey (0.09s) +--- PASS: TestInitWithRootKey (0.12s) === RUN TestInitWithRootCert ---- PASS: TestInitWithRootCert (0.08s) +--- PASS: TestInitWithRootCert (0.09s) === RUN TestClientTUFInteraction ---- PASS: TestClientTUFInteraction (0.20s) +--- PASS: TestClientTUFInteraction (0.27s) === RUN TestClientDeleteTUFInteraction -time="2025-12-09T04:23:15Z" 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]:43023->[::1]:53: read: connection refused" ---- PASS: TestClientDeleteTUFInteraction (0.23s) +time="2025-12-09T04:27:10Z" 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]:60584->[::1]:53: read: connection refused" +--- PASS: TestClientDeleteTUFInteraction (0.27s) === RUN TestClientTUFAddByHashInteraction ---- PASS: TestClientTUFAddByHashInteraction (0.30s) +--- PASS: TestClientTUFAddByHashInteraction (0.35s) === RUN TestClientDelegationsInteraction -time="2025-12-09T04:23:16Z" 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-12-09T04:23:16Z" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" ---- PASS: TestClientDelegationsInteraction (0.53s) +time="2025-12-09T04:27:11Z" 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-12-09T04:27:11Z" level=warning msg="role targets/delegation has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +--- PASS: TestClientDelegationsInteraction (0.87s) === RUN TestClientDelegationsPublishing ---- PASS: TestClientDelegationsPublishing (0.80s) +--- PASS: TestClientDelegationsPublishing (0.95s) === RUN TestClientKeyGenerationRotation ---- PASS: TestClientKeyGenerationRotation (0.69s) +--- PASS: TestClientKeyGenerationRotation (1.01s) === RUN TestKeyRotation ---- PASS: TestKeyRotation (0.07s) +--- PASS: TestKeyRotation (0.13s) === RUN TestKeyRotationNonRoot ---- PASS: TestKeyRotationNonRoot (0.12s) +--- PASS: TestKeyRotationNonRoot (0.21s) === RUN TestDefaultRootKeyGeneration ---- PASS: TestDefaultRootKeyGeneration (0.00s) +--- PASS: TestDefaultRootKeyGeneration (0.01s) === RUN TestLogLevelFlags --- PASS: TestLogLevelFlags (0.00s) === RUN TestClientKeyPassphraseChange ---- PASS: TestClientKeyPassphraseChange (0.08s) +--- PASS: TestClientKeyPassphraseChange (0.10s) === RUN TestPurgeSingleKey Removal of the following keys from all delegations in gun staged for next publish: - - cb243b1525c923cfab8364d9b015c25f1fbac74156eb3edebdb2cb87490451f5 ---- PASS: TestPurgeSingleKey (0.10s) + - 04b1a030c487771a11720cf2117104f0e44faa262f94b21e990531a8105b3eca +--- PASS: TestPurgeSingleKey (0.12s) === RUN TestWitness -time="2025-12-09T04:23:18Z" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" -time="2025-12-09T04:23:18Z" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" -time="2025-12-09T04:23:18Z" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" -time="2025-12-09T04:23:18Z" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" -time="2025-12-09T04:23:18Z" 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-12-09T04:23:18Z" 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-12-09T04:23:18Z" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" ---- PASS: TestWitness (0.26s) +time="2025-12-09T04:27:14Z" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +time="2025-12-09T04:27:14Z" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +time="2025-12-09T04:27:15Z" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +time="2025-12-09T04:27:15Z" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +time="2025-12-09T04:27:15Z" 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-12-09T04:27:15Z" 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-12-09T04:27:15Z" level=warning msg="Error getting targets/delegation: valid signatures did not meet threshold for targets/delegation" +--- PASS: TestWitness (0.42s) === RUN TestClientTUFInitWithAutoPublish -time="2025-12-09T04:23:18Z" 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]:36473->[::1]:53: read: connection refused" ---- PASS: TestClientTUFInitWithAutoPublish (0.05s) +time="2025-12-09T04:27:15Z" 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]:45419->[::1]:53: read: connection refused" +--- PASS: TestClientTUFInitWithAutoPublish (0.12s) === RUN TestClientTUFAddWithAutoPublish -time="2025-12-09T04:23:18Z" 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]:50927->[::1]:53: read: connection refused" -time="2025-12-09T04:23:18Z" level=error msg="Could not publish Repository since we could not update: client is offline" -time="2025-12-09T04:23:18Z" 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]:41765->[::1]:53: read: connection refused" -time="2025-12-09T04:23:18Z" level=error msg="Could not publish Repository since we could not update: client is offline" ---- PASS: TestClientTUFAddWithAutoPublish (0.06s) +time="2025-12-09T04:27:15Z" 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]:57423->[::1]:53: read: connection refused" +time="2025-12-09T04:27:15Z" level=error msg="Could not publish Repository since we could not update: client is offline" +time="2025-12-09T04:27:15Z" 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]:37150->[::1]:53: read: connection refused" +time="2025-12-09T04:27:15Z" level=error msg="Could not publish Repository since we could not update: client is offline" +--- PASS: TestClientTUFAddWithAutoPublish (0.11s) === RUN TestClientTUFRemoveWithAutoPublish ---- PASS: TestClientTUFRemoveWithAutoPublish (0.15s) +--- PASS: TestClientTUFRemoveWithAutoPublish (0.25s) === RUN TestClientDelegationAddWithAutoPublish ---- PASS: TestClientDelegationAddWithAutoPublish (0.08s) +--- PASS: TestClientDelegationAddWithAutoPublish (0.12s) === RUN TestClientDelegationRemoveWithAutoPublish -time="2025-12-09T04:23:19Z" 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-12-09T04:23:19Z" 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.23s) +time="2025-12-09T04:27:15Z" 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-12-09T04:27:15Z" 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.19s) === RUN TestClientTUFAddByHashWithAutoPublish --- PASS: TestClientTUFAddByHashWithAutoPublish (0.11s) === RUN TestClientKeyImport -time="2025-12-09T04:23:19Z" level=warning msg="failed to import key to store: Invalid key generated, key may be encrypted and does not contain path header" -time="2025-12-09T04:23:19Z" level=warning msg="failed to import key () to store: Cannot have canonical role key without a gun, don't know what gun it belongs to" ---- PASS: TestClientKeyImport (0.03s) +time="2025-12-09T04:27:16Z" level=warning msg="failed to import key to store: Invalid key generated, key may be encrypted and does not contain path header" +time="2025-12-09T04:27:16Z" 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.06s) === RUN TestAddDelImportKeyPublishFlow -time="2025-12-09T04:23:19Z" 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.27s) +time="2025-12-09T04:27:16Z" 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.26s) === RUN TestExportImportFlow ---- PASS: TestExportImportFlow (0.08s) +--- PASS: TestExportImportFlow (0.07s) === RUN TestDelegationKeyImportExport ---- PASS: TestDelegationKeyImportExport (0.01s) +--- PASS: TestDelegationKeyImportExport (0.00s) === RUN TestImportKeysNoYubikey ---- PASS: TestImportKeysNoYubikey (0.01s) +--- PASS: TestImportKeysNoYubikey (0.00s) === RUN TestExportImportKeysNoYubikey --- PASS: TestExportImportKeysNoYubikey (0.01s) === RUN TestRemoveIfNoKey @@ -2663,22 +2699,22 @@ === RUN TestRemoveOneKeyConfirm --- PASS: TestRemoveOneKeyConfirm (0.00s) === RUN TestRemoveMultikeysInvalidInput ---- PASS: TestRemoveMultikeysInvalidInput (0.00s) +--- PASS: TestRemoveMultikeysInvalidInput (0.01s) === RUN TestRemoveMultikeysAbortChoice --- PASS: TestRemoveMultikeysAbortChoice (0.00s) === RUN TestRemoveMultikeysRemoveOnlyChosenKey ---- PASS: TestRemoveMultikeysRemoveOnlyChosenKey (0.00s) +--- PASS: TestRemoveMultikeysRemoveOnlyChosenKey (0.01s) === RUN TestRotateKeyInvalidRoles -time="2025-12-09T04:23:19Z" 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]:55937->[::1]:53: read: connection refused" -time="2025-12-09T04:23:19Z" 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]:44221->[::1]:53: read: connection refused" -time="2025-12-09T04:23:19Z" 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]:46250->[::1]:53: read: connection refused" -time="2025-12-09T04:23:19Z" 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]:38074->[::1]:53: read: connection refused" +time="2025-12-09T04:27:16Z" 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]:52705->[::1]:53: read: connection refused" +time="2025-12-09T04:27:16Z" 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]:43354->[::1]:53: read: connection refused" +time="2025-12-09T04:27:16Z" 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]:52560->[::1]:53: read: connection refused" +time="2025-12-09T04:27:16Z" 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]:48399->[::1]:53: read: connection refused" --- PASS: TestRotateKeyInvalidRoles (0.00s) === RUN TestRotateKeyTargetCannotBeServerManaged -time="2025-12-09T04:23:19Z" 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]:50462->[::1]:53: read: connection refused" +time="2025-12-09T04:27:16Z" 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]:54646->[::1]:53: read: connection refused" --- PASS: TestRotateKeyTargetCannotBeServerManaged (0.00s) === RUN TestRotateKeyTimestampCannotBeLocallyManaged -time="2025-12-09T04:23:19Z" 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]:47098->[::1]:53: read: connection refused" +time="2025-12-09T04:27:16Z" 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]:38512->[::1]:53: read: connection refused" --- PASS: TestRotateKeyTimestampCannotBeLocallyManaged (0.00s) === RUN TestRotateKeyNoGUN Usage: @@ -2686,11 +2722,11 @@ === RUN TestRotateKeyRemoteServerManagesKey Successfully rotated snapshot key for repository docker.com/notary Successfully rotated timestamp key for repository docker.com/notary ---- PASS: TestRotateKeyRemoteServerManagesKey (0.11s) +--- PASS: TestRotateKeyRemoteServerManagesKey (0.09s) === RUN TestRotateKeyBothKeys Successfully rotated targets key for repository docker.com/notary Successfully rotated snapshot key for repository docker.com/notary ---- PASS: TestRotateKeyBothKeys (0.11s) +--- PASS: TestRotateKeyBothKeys (0.09s) === RUN TestRotateKeyRootIsInteractive --- PASS: TestRotateKeyRootIsInteractive (0.03s) === RUN TestChangeKeyPassphraseInvalidID @@ -2711,7 +2747,7 @@ === RUN TestImportKeysNonexistentFile --- PASS: TestImportKeysNonexistentFile (0.00s) === RUN TestKeyGeneration -time="2025-12-09T04:23:20Z" level=warning msg="failed to import key () to store: Cannot have canonical role key without a gun, don't know what gun it belongs to" +time="2025-12-09T04:27:16Z" level=warning msg="failed to import key () to store: Cannot have canonical role key without a gun, don't know what gun it belongs to" --- PASS: TestKeyGeneration (0.01s) === RUN TestNotaryConfigFileDefault --- PASS: TestNotaryConfigFileDefault (0.00s) @@ -2722,19 +2758,19 @@ === RUN TestRemoteServerCommandLineFlagOverridesConfig --- PASS: TestRemoteServerCommandLineFlagOverridesConfig (0.00s) === RUN TestInvalidAddHashCommands ---- PASS: TestInvalidAddHashCommands (0.00s) +--- PASS: TestInvalidAddHashCommands (0.01s) === RUN TestConfigParsingErrorsPropagatedByCommands --- PASS: TestConfigParsingErrorsPropagatedByCommands (0.01s) === RUN TestInsufficientArgumentsReturnsErrorAndPrintsUsage ---- PASS: TestInsufficientArgumentsReturnsErrorAndPrintsUsage (0.02s) +--- PASS: TestInsufficientArgumentsReturnsErrorAndPrintsUsage (0.01s) === RUN TestBareCommandPrintsUsageAndNoError --- PASS: TestBareCommandPrintsUsageAndNoError (0.00s) === RUN TestConfigFileTLSCannotBeRelativeToCWD ---- PASS: TestConfigFileTLSCannotBeRelativeToCWD (0.01s) +--- PASS: TestConfigFileTLSCannotBeRelativeToCWD (0.02s) === RUN TestConfigFileTLSCanBeRelativeToConfigOrAbsolute ---- PASS: TestConfigFileTLSCanBeRelativeToConfigOrAbsolute (0.08s) +--- PASS: TestConfigFileTLSCanBeRelativeToConfigOrAbsolute (0.07s) === RUN TestConfigFileOverridenByCmdLineFlags ---- PASS: TestConfigFileOverridenByCmdLineFlags (0.08s) +--- PASS: TestConfigFileOverridenByCmdLineFlags (0.05s) === RUN TestConfigFileTrustPinning --- PASS: TestConfigFileTrustPinning (0.00s) === RUN TestPassphraseRetrieverCaching @@ -2748,7 +2784,7 @@ === RUN TestPrettyPrintZeroKeys --- PASS: TestPrettyPrintZeroKeys (0.00s) === RUN TestPrettyPrintRootAndSigningKeys ---- PASS: TestPrettyPrintRootAndSigningKeys (0.02s) +--- PASS: TestPrettyPrintRootAndSigningKeys (0.01s) === RUN TestPrettyPrintZeroTargets --- PASS: TestPrettyPrintZeroTargets (0.00s) === RUN TestPrettyPrintSortedTargets @@ -2760,10 +2796,10 @@ === RUN TestImportRootCert --- PASS: TestImportRootCert (0.00s) === RUN TestTokenAuth -time="2025-12-09T04:23:20Z" 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-12-09T04:27:16Z" level=error msg="could not reach https://localhost:9999: Get \"https://localhost:9999/v2/\": dial tcp 127.0.0.1:9999: connect: connection refused" --- PASS: TestTokenAuth (0.00s) === RUN TestAdminTokenAuth -time="2025-12-09T04:23:20Z" 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-12-09T04:27:16Z" 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) @@ -2774,18 +2810,18 @@ === RUN TestAdminTokenAuth401Status --- PASS: TestAdminTokenAuth401Status (0.00s) === RUN TestTokenAuthNon200Non401Status -time="2025-12-09T04:23:20Z" level=error msg="could not reach http://127.0.0.1:38925: 404" +time="2025-12-09T04:27:16Z" level=error msg="could not reach http://127.0.0.1:39341: 404" --- PASS: TestTokenAuthNon200Non401Status (0.00s) === RUN TestAdminTokenAuthNon200Non401Status -time="2025-12-09T04:23:20Z" level=error msg="could not reach http://127.0.0.1:45815: 404" +time="2025-12-09T04:27:16Z" level=error msg="could not reach http://127.0.0.1:45039: 404" --- PASS: TestAdminTokenAuthNon200Non401Status (0.00s) === RUN TestConfigureRepo --- PASS: TestConfigureRepo (0.00s) === RUN TestConfigureRepoRW -Enter username: time="2025-12-09T04:23:20Z" level=error msg="error processing username input: EOF" ---- PASS: TestConfigureRepoRW (0.00s) +Enter username: time="2025-12-09T04:27:16Z" level=error msg="error processing username input: EOF" +--- PASS: TestConfigureRepoRW (0.01s) === RUN TestConfigureRepoAdmin -Enter username: time="2025-12-09T04:23:20Z" level=error msg="error processing username input: EOF" +Enter username: time="2025-12-09T04:27:16Z" level=error msg="error processing username input: EOF" --- PASS: TestConfigureRepoAdmin (0.00s) === RUN TestStatusUnstageAndReset Successfully reset specified changes for repository gun @@ -2798,11 +2834,11 @@ Pushing changes to gun --- PASS: TestGetTrustPinningErrors (0.00s) === RUN TestPasswordStore -Enter username: time="2025-12-09T04:23:20Z" level=error msg="error processing username input: EOF" +Enter username: time="2025-12-09T04:27:16Z" level=error msg="error processing username input: EOF" --- PASS: TestPasswordStore (0.00s) === RUN TestPasswordStoreWithEnvvar -time="2025-12-09T04:23:20Z" level=error msg="Authentication string with zero-length username" -time="2025-12-09T04:23:20Z" level=error msg="Could not base64-decode authentication string" +time="2025-12-09T04:27:16Z" level=error msg="Authentication string with zero-length username" +time="2025-12-09T04:27:16Z" level=error msg="Could not base64-decode authentication string" --- PASS: TestPasswordStoreWithEnvvar (0.00s) === RUN TestGetPayload --- PASS: TestGetPayload (0.00s) @@ -2811,7 +2847,7 @@ === RUN TestHomeExpand --- PASS: TestHomeExpand (0.00s) PASS -ok github.com/theupdateframework/notary/cmd/notary 5.273s +ok github.com/theupdateframework/notary/cmd/notary 6.836s === RUN TestBootstrap --- PASS: TestBootstrap (0.00s) === RUN TestGetAddrAndTLSConfigInvalidTLS @@ -2827,42 +2863,42 @@ === RUN TestGetInvalidTrustService --- PASS: TestGetInvalidTrustService (0.00s) === RUN TestGetLocalTrustService -time="2025-12-09T04:23:16Z" level=info msg="Using local signing service, which requires ED25519. Ignoring all other trust_service parameters, including keyAlgorithm" +time="2025-12-09T04:27:10Z" level=info msg="Using local signing service, which requires ED25519. Ignoring all other trust_service parameters, including keyAlgorithm" --- PASS: TestGetLocalTrustService (0.00s) === RUN TestGetTrustServiceInvalidKeyAlgorithm --- PASS: TestGetTrustServiceInvalidKeyAlgorithm (0.00s) === RUN TestGetTrustServiceTLSMissingCertOrKey --- PASS: TestGetTrustServiceTLSMissingCertOrKey (0.00s) === RUN TestGetTrustServiceNoTLSConfig -time="2025-12-09T04:23:16Z" level=info msg="Using remote signing service" +time="2025-12-09T04:27:10Z" level=info msg="Using remote signing service" --- PASS: TestGetTrustServiceNoTLSConfig (0.00s) === RUN TestGetTrustServiceTLSSuccess -time="2025-12-09T04:23:16Z" level=info msg="Using remote signing service" +time="2025-12-09T04:27:10Z" level=info msg="Using remote signing service" --- PASS: TestGetTrustServiceTLSSuccess (0.00s) === RUN TestGetTrustServiceTLSFailure --- PASS: TestGetTrustServiceTLSFailure (0.00s) === RUN TestGetStoreInvalid -time="2025-12-09T04:23:16Z" level=info msg="Using asdf backend" +time="2025-12-09T04:27:10Z" level=info msg="Using asdf backend" --- PASS: TestGetStoreInvalid (0.00s) === RUN TestGetStoreDBStore -time="2025-12-09T04:23:16Z" level=info msg="Using sqlite3 backend" ---- PASS: TestGetStoreDBStore (0.00s) +time="2025-12-09T04:27:10Z" level=info msg="Using sqlite3 backend" +--- PASS: TestGetStoreDBStore (0.01s) === RUN TestGetStoreRethinkDBStoreConnectionFails -time="2025-12-09T04:23:16Z" level=info msg="Using rethinkdb backend" +time="2025-12-09T04:27:10Z" level=info msg="Using rethinkdb backend" --- PASS: TestGetStoreRethinkDBStoreConnectionFails (0.00s) === RUN TestGetMemoryStore -time="2025-12-09T04:23:16Z" level=info msg="Using memory backend" +time="2025-12-09T04:27:10Z" level=info msg="Using memory backend" --- PASS: TestGetMemoryStore (0.00s) === RUN TestGetCacheConfig --- PASS: TestGetCacheConfig (0.00s) === RUN TestGetGUNPRefixes --- PASS: TestGetGUNPRefixes (0.00s) === RUN TestSampleConfig -time="2025-12-09T04:23:16Z" level=info msg="Using remote signing service" -time="2025-12-09T04:23:16Z" level=info msg="Using sqlite3 backend" +time="2025-12-09T04:27:10Z" level=info msg="Using remote signing service" +time="2025-12-09T04:27:10Z" level=info msg="Using sqlite3 backend" --- PASS: TestSampleConfig (0.00s) PASS -ok github.com/theupdateframework/notary/cmd/notary-server 0.084s +ok github.com/theupdateframework/notary/cmd/notary-server 0.112s === RUN TestGetAddrAndTLSConfigInvalidTLS --- PASS: TestGetAddrAndTLSConfigInvalidTLS (0.00s) === RUN TestGetAddrAndTLSConfigNoGRPCAddr @@ -2877,7 +2913,7 @@ main_test.go:121: DM - skipping malfunctioning test, fails on sbuild --- SKIP: TestSetupCryptoServicesRethinkDBStoreConnectionFails (0.00s) === RUN TestSetupCryptoServicesDBStoreSuccess ---- PASS: TestSetupCryptoServicesDBStoreSuccess (0.01s) +--- PASS: TestSetupCryptoServicesDBStoreSuccess (0.04s) === RUN TestSetupCryptoServicesMemoryStore --- PASS: TestSetupCryptoServicesMemoryStore (0.00s) === RUN TestSetupCryptoServicesInvalidStore @@ -2885,7 +2921,7 @@ === RUN TestSetupGRPCServerInvalidAddress --- PASS: TestSetupGRPCServerInvalidAddress (0.00s) === RUN TestSetupGRPCServerSuccess ---- PASS: TestSetupGRPCServerSuccess (0.00s) +--- PASS: TestSetupGRPCServerSuccess (0.01s) === RUN TestBootstrap --- PASS: TestBootstrap (0.00s) === RUN TestGetEnv @@ -2895,17 +2931,17 @@ === RUN TestSampleConfig --- PASS: TestSampleConfig (0.00s) PASS -ok github.com/theupdateframework/notary/cmd/notary-signer 0.089s +ok github.com/theupdateframework/notary/cmd/notary-signer 0.163s === RUN TestGenerateCertificate ---- PASS: TestGenerateCertificate (0.00s) +--- PASS: TestGenerateCertificate (0.01s) === RUN TestCryptoServiceWithNonEmptyGUN ---- PASS: TestCryptoServiceWithNonEmptyGUN (0.24s) +--- PASS: TestCryptoServiceWithNonEmptyGUN (0.44s) === RUN TestCryptoServiceWithEmptyGUN ---- PASS: TestCryptoServiceWithEmptyGUN (0.21s) +--- PASS: TestCryptoServiceWithEmptyGUN (0.40s) === RUN TestCryptoSignerInterfaceBehavior --- PASS: TestCryptoSignerInterfaceBehavior (0.00s) PASS -ok github.com/theupdateframework/notary/cryptoservice 0.497s +ok github.com/theupdateframework/notary/cryptoservice 0.896s === RUN TestGetPassphraseForUsingDelegationKey --- PASS: TestGetPassphraseForUsingDelegationKey (0.00s) === RUN TestGetPassphraseLimitsShortPassphrases @@ -2921,140 +2957,140 @@ === RUN TestGetPassphrase --- PASS: TestGetPassphrase (0.00s) PASS -ok github.com/theupdateframework/notary/passphrase 0.030s +ok github.com/theupdateframework/notary/passphrase 0.068s === RUN TestValidationErrorFormat -time="2025-12-09T04:23:16Z" 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.23.2 http.request.contenttype="multipart/form-data; boundary=587175ee96e486a328d3a93f984fd04c3d960a8e81f38a23dd28e994e93f" http.request.host="127.0.0.1:43331" http.request.id=50ed96f2-b0b0-4705-8879-d0382c0b024a http.request.method=POST http.request.remoteaddr="127.0.0.1:50076" http.request.uri=/v2/docker.com/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 -time="2025-12-09T04:23:16Z" level=info msg="response completed" go.version=go1.23.2 http.request.contenttype="multipart/form-data; boundary=587175ee96e486a328d3a93f984fd04c3d960a8e81f38a23dd28e994e93f" http.request.host="127.0.0.1:43331" http.request.id=50ed96f2-b0b0-4705-8879-d0382c0b024a http.request.method=POST http.request.remoteaddr="127.0.0.1:50076" http.request.uri=/v2/docker.com/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration=2.16712ms http.response.status=400 http.response.written=260 +time="2025-12-09T04:27:11Z" 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.23.2 http.request.contenttype="multipart/form-data; boundary=256679dd6fe9654c7832f457d54db01721f6daabe4069ae4aca8e8485521" http.request.host="127.0.0.1:33647" http.request.id=409f326b-f1f6-4b75-896e-a228044eb14c http.request.method=POST http.request.remoteaddr="127.0.0.1:56702" http.request.uri=/v2/docker.com/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 +time="2025-12-09T04:27:11Z" level=info msg="response completed" go.version=go1.23.2 http.request.contenttype="multipart/form-data; boundary=256679dd6fe9654c7832f457d54db01721f6daabe4069ae4aca8e8485521" http.request.host="127.0.0.1:33647" http.request.id=409f326b-f1f6-4b75-896e-a228044eb14c http.request.method=POST http.request.remoteaddr="127.0.0.1:56702" 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=1.95932ms http.response.status=400 http.response.written=260 --- PASS: TestValidationErrorFormat (0.02s) === RUN TestRunBadAddr --- PASS: TestRunBadAddr (0.00s) === RUN TestRepoPrefixMatches -time="2025-12-09T04:23:16Z" level=info msg="updated docker.io/notary to timestamp version 1, checksum be852b87a99cc292c6b8fb34e1837d605796da261ef140841e123e7b52786bc8" docker.io/notary=gun go.version=go1.23.2 http.request.contenttype="multipart/form-data; boundary=c4b95905be174814bccd78dc023c171bdedf24df5f9d71530e4d77f12408" http.request.host="127.0.0.1:45865" http.request.id=fe60ce63-20bf-4a05-af79-a50675f89fe1 http.request.method=POST http.request.remoteaddr="127.0.0.1:53696" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 -time="2025-12-09T04:23:16Z" level=info msg="response completed" go.version=go1.23.2 http.request.contenttype="multipart/form-data; boundary=c4b95905be174814bccd78dc023c171bdedf24df5f9d71530e4d77f12408" http.request.host="127.0.0.1:45865" http.request.id=fe60ce63-20bf-4a05-af79-a50675f89fe1 http.request.method=POST http.request.remoteaddr="127.0.0.1:53696" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.duration=5.03948ms http.response.status=0 http.response.written=0 -time="2025-12-09T04:23:16Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:45865" http.request.id=91d7e16e-c4c7-4683-864a-369b8259c62d http.request.method=GET http.request.remoteaddr="127.0.0.1:53696" http.request.uri=/v2/docker.io/notary/_trust/tuf/snapshot.json http.request.useragent=Go-http-client/1.1 http.response.duration="368.48µs" http.response.status=200 http.response.written=683 -time="2025-12-09T04:23:16Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:45865" http.request.id=33ebf955-dfdd-4fc3-9d20-6ff7a0309242 http.request.method=GET http.request.remoteaddr="127.0.0.1:53696" http.request.uri=/v2/docker.io/notary/_trust/tuf/snapshot.4a83e2362e8ae7e73232c6de2beedc02e1591c8d2c1147fd9ead9a639871bd75.json http.request.useragent=Go-http-client/1.1 http.response.duration="61.04µs" http.response.status=200 http.response.written=683 -time="2025-12-09T04:23:16Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:45865" http.request.id=aa767bf9-073a-4740-9244-02bd068ecedd http.request.method=GET http.request.remoteaddr="127.0.0.1:53696" http.request.uri=/v2/docker.io/notary/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration="509.48µs" http.response.status=200 http.response.written=181 -time="2025-12-09T04:23:16Z" level=info msg="trust data deleted for docker.io/notary" docker.io/notary=gun go.version=go1.23.2 http.request.host="127.0.0.1:45865" http.request.id=3ed674fb-e175-4766-8118-fe493783a451 http.request.method=DELETE http.request.remoteaddr="127.0.0.1:53696" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 -time="2025-12-09T04:23:16Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:45865" http.request.id=3ed674fb-e175-4766-8118-fe493783a451 http.request.method=DELETE http.request.remoteaddr="127.0.0.1:53696" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.duration="105.96µs" http.response.status=0 http.response.written=0 ---- PASS: TestRepoPrefixMatches (0.02s) +time="2025-12-09T04:27:11Z" level=info msg="updated docker.io/notary to timestamp version 1, checksum fdd90ab834a0634c81fca47893bd2efb93537197ce3605fd04738406da413e75" docker.io/notary=gun go.version=go1.23.2 http.request.contenttype="multipart/form-data; boundary=d2dfb9dcdf15036ac877c41f9d6cfa5a2a0c28ee4007a442e2159702d331" http.request.host="127.0.0.1:42705" http.request.id=74651df1-7140-42ed-ab9b-b78df9801042 http.request.method=POST http.request.remoteaddr="127.0.0.1:56132" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 +time="2025-12-09T04:27:11Z" level=info msg="response completed" go.version=go1.23.2 http.request.contenttype="multipart/form-data; boundary=d2dfb9dcdf15036ac877c41f9d6cfa5a2a0c28ee4007a442e2159702d331" http.request.host="127.0.0.1:42705" http.request.id=74651df1-7140-42ed-ab9b-b78df9801042 http.request.method=POST http.request.remoteaddr="127.0.0.1:56132" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.duration=2.04676ms http.response.status=0 http.response.written=0 +time="2025-12-09T04:27:11Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:42705" http.request.id=0145913a-da6e-4fcf-9c1d-95f6a0e76785 http.request.method=GET http.request.remoteaddr="127.0.0.1:56132" http.request.uri=/v2/docker.io/notary/_trust/tuf/snapshot.json http.request.useragent=Go-http-client/1.1 http.response.duration="486.36µs" http.response.status=200 http.response.written=683 +time="2025-12-09T04:27:11Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:42705" http.request.id=ba632dea-e59f-46d3-ac33-e838f940a56f http.request.method=GET http.request.remoteaddr="127.0.0.1:56132" http.request.uri=/v2/docker.io/notary/_trust/tuf/snapshot.3d14671b4ba79b8e8071ba90721be22dc1aaf6d4fdb181c2b69b3d65c69848fe.json http.request.useragent=Go-http-client/1.1 http.response.duration="24.44µs" http.response.status=200 http.response.written=683 +time="2025-12-09T04:27:11Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:42705" http.request.id=eba23de4-8597-4c55-9359-29fc95bee88e http.request.method=GET http.request.remoteaddr="127.0.0.1:56132" http.request.uri=/v2/docker.io/notary/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration="234.64µs" http.response.status=200 http.response.written=181 +time="2025-12-09T04:27:11Z" level=info msg="trust data deleted for docker.io/notary" docker.io/notary=gun go.version=go1.23.2 http.request.host="127.0.0.1:42705" http.request.id=f226a076-88cc-4883-9b5c-21a4a023fc0e http.request.method=DELETE http.request.remoteaddr="127.0.0.1:56132" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 +time="2025-12-09T04:27:11Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:42705" http.request.id=f226a076-88cc-4883-9b5c-21a4a023fc0e http.request.method=DELETE http.request.remoteaddr="127.0.0.1:56132" http.request.uri=/v2/docker.io/notary/_trust/tuf/ http.request.useragent=Go-http-client/1.1 http.response.duration="29.52µs" http.response.status=0 http.response.written=0 +--- PASS: TestRepoPrefixMatches (0.03s) === RUN TestRepoPrefixDoesNotMatch ---- PASS: TestRepoPrefixDoesNotMatch (0.02s) +--- PASS: TestRepoPrefixDoesNotMatch (0.03s) === RUN TestMetricsEndpoint ---- PASS: TestMetricsEndpoint (0.01s) +--- PASS: TestMetricsEndpoint (0.03s) === RUN TestGetKeysEndpoint -time="2025-12-09T04:23:16Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:33197" http.request.id=7b8b8684-ccfc-494a-8ffe-e9b4bdba255a http.request.method=GET http.request.remoteaddr="127.0.0.1:37334" http.request.uri=/v2/gun/_trust/tuf/snapshot.key http.request.useragent=Go-http-client/1.1 http.response.duration=9.40648ms http.response.status=200 http.response.written=103 -time="2025-12-09T04:23:16Z" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.23.2 http.request.host="127.0.0.1:33197" http.request.id=275db6bf-3151-4298-b89a-6a208aa96cd7 http.request.method=GET http.request.remoteaddr="127.0.0.1:37340" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 -time="2025-12-09T04:23:16Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:33197" http.request.id=275db6bf-3151-4298-b89a-6a208aa96cd7 http.request.method=GET http.request.remoteaddr="127.0.0.1:37340" 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="137.16µs" http.response.status=404 http.response.written=104 -time="2025-12-09T04:23:16Z" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.23.2 http.request.host="127.0.0.1:33197" http.request.id=5a2d0460-2c99-45d1-9bd4-e2c377dd9708 http.request.method=GET http.request.remoteaddr="127.0.0.1:37348" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 -time="2025-12-09T04:23:16Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:33197" http.request.id=5a2d0460-2c99-45d1-9bd4-e2c377dd9708 http.request.method=GET http.request.remoteaddr="127.0.0.1:37348" 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="125.84µs" http.response.status=404 http.response.written=104 -time="2025-12-09T04:23:16Z" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.23.2 http.request.host="127.0.0.1:33197" http.request.id=cd38e267-68ba-47d0-9c63-acb2aa20694c http.request.method=GET http.request.remoteaddr="127.0.0.1:37362" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 -time="2025-12-09T04:23:16Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:33197" http.request.id=cd38e267-68ba-47d0-9c63-acb2aa20694c http.request.method=GET http.request.remoteaddr="127.0.0.1:37362" 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="132µs" http.response.status=404 http.response.written=104 -time="2025-12-09T04:23:16Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:33197" http.request.id=d369c069-743e-41eb-893e-c01e8968a2da http.request.method=GET http.request.remoteaddr="127.0.0.1:37376" http.request.uri=/v2/gun/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration="278.52µs" http.response.status=200 http.response.written=103 ---- PASS: TestGetKeysEndpoint (0.02s) +time="2025-12-09T04:27:11Z" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.23.2 http.request.host="127.0.0.1:43543" http.request.id=13a8cf7f-53a1-47d3-9cb2-09184910de58 http.request.method=GET http.request.remoteaddr="127.0.0.1:42624" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 +time="2025-12-09T04:27:11Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:43543" http.request.id=13a8cf7f-53a1-47d3-9cb2-09184910de58 http.request.method=GET http.request.remoteaddr="127.0.0.1:42624" 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="109.16µs" http.response.status=404 http.response.written=104 +time="2025-12-09T04:27:11Z" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.23.2 http.request.host="127.0.0.1:43543" http.request.id=52250de0-867c-4375-8e11-39d1ca00c942 http.request.method=GET http.request.remoteaddr="127.0.0.1:42638" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 +time="2025-12-09T04:27:11Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:43543" http.request.id=52250de0-867c-4375-8e11-39d1ca00c942 http.request.method=GET http.request.remoteaddr="127.0.0.1:42638" 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="68.44µs" http.response.status=404 http.response.written=104 +time="2025-12-09T04:27:11Z" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.23.2 http.request.host="127.0.0.1:43543" http.request.id=6be5f12b-091d-4976-a923-653787c76248 http.request.method=GET http.request.remoteaddr="127.0.0.1:42650" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 +time="2025-12-09T04:27:11Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:43543" http.request.id=6be5f12b-091d-4976-a923-653787c76248 http.request.method=GET http.request.remoteaddr="127.0.0.1:42650" 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="55.56µs" http.response.status=404 http.response.written=104 +time="2025-12-09T04:27:11Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:43543" http.request.id=63b1d52c-6b2c-4bb9-921c-043090846b26 http.request.method=GET http.request.remoteaddr="127.0.0.1:42656" http.request.uri=/v2/gun/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration=4.04296ms http.response.status=200 http.response.written=103 +time="2025-12-09T04:27:11Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:43543" http.request.id=e66eb57b-9fa3-4c51-bc5f-6202aea13203 http.request.method=GET http.request.remoteaddr="127.0.0.1:42668" http.request.uri=/v2/gun/_trust/tuf/snapshot.key http.request.useragent=Go-http-client/1.1 http.response.duration="145.36µs" http.response.status=200 http.response.written=103 +--- PASS: TestGetKeysEndpoint (0.03s) === RUN TestGetRoleByHash -time="2025-12-09T04:23:16Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:44033" http.request.id=11e32537-6bde-49fc-bf7d-2296d5411a6e http.request.method=GET http.request.remoteaddr="127.0.0.1:48018" http.request.uri=/v2/gun/_trust/tuf/timestamp.0285406fa8b93bbd3417fe1c3f989a6fe4a484ffca239126ce162ec0279fdfb1.json http.request.useragent=Go-http-client/1.1 http.response.duration="76.68µs" http.response.status=200 http.response.written=115 ---- PASS: TestGetRoleByHash (0.01s) +time="2025-12-09T04:27:11Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:34025" http.request.id=08db72d8-e438-41dd-b34f-033d38d9d229 http.request.method=GET http.request.remoteaddr="127.0.0.1:36516" http.request.uri=/v2/gun/_trust/tuf/timestamp.83b90fe25b46f4f4dfd7592207cd08a2b5443289f2f37cfee1fffa4eca231e6a.json http.request.useragent=Go-http-client/1.1 http.response.duration="58.48µs" http.response.status=200 http.response.written=115 +--- PASS: TestGetRoleByHash (0.00s) === RUN TestGetRoleByVersion -time="2025-12-09T04:23:16Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:36531" http.request.id=135497c7-b193-4ef8-8db4-a7527c0e5b7d http.request.method=GET http.request.remoteaddr="127.0.0.1:46004" http.request.uri=/v2/gun/_trust/tuf/1.timestamp.json http.request.useragent=Go-http-client/1.1 http.response.duration="79.56µs" http.response.status=200 http.response.written=115 ---- PASS: TestGetRoleByVersion (0.00s) +time="2025-12-09T04:27:12Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:36031" http.request.id=fe25f199-b0bf-49eb-b7a5-bb998def4ad1 http.request.method=GET http.request.remoteaddr="127.0.0.1:44840" http.request.uri=/v2/gun/_trust/tuf/1.timestamp.json http.request.useragent=Go-http-client/1.1 http.response.duration="67.48µs" http.response.status=200 http.response.written=115 +--- PASS: TestGetRoleByVersion (0.02s) === RUN TestGetCurrentRole -time="2025-12-09T04:23:16Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:45631" http.request.id=740059b0-84ff-4328-9c46-e0a131a3be8b http.request.method=GET http.request.remoteaddr="127.0.0.1:40952" http.request.uri=/v2/gun/_trust/tuf/timestamp.json http.request.useragent=Go-http-client/1.1 http.response.duration="449.08µs" http.response.status=200 http.response.written=495 +time="2025-12-09T04:27:12Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:41255" http.request.id=52621e46-c7d7-42c6-8889-2447b9a1e520 http.request.method=GET http.request.remoteaddr="127.0.0.1:52384" http.request.uri=/v2/gun/_trust/tuf/timestamp.json http.request.useragent=Go-http-client/1.1 http.response.duration="335.24µs" http.response.status=200 http.response.written=495 --- PASS: TestGetCurrentRole (0.01s) === RUN TestRotateKeyEndpoint -time="2025-12-09T04:23:16Z" level=info msg="response completed" go.version=go1.23.2 http.request.contenttype=text/plain http.request.host="127.0.0.1:39067" http.request.id=408c58d8-4d28-4a64-ac01-eddea1456122 http.request.method=POST http.request.remoteaddr="127.0.0.1:49826" http.request.uri=/v2/gun/_trust/tuf/snapshot.key http.request.useragent=Go-http-client/1.1 http.response.duration="221.56µs" http.response.status=200 http.response.written=103 -time="2025-12-09T04:23:16Z" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.23.2 http.request.contenttype=text/plain http.request.host="127.0.0.1:39067" http.request.id=8e30f6d7-339f-4248-b825-4dc8c43112d5 http.request.method=POST http.request.remoteaddr="127.0.0.1:49838" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 -time="2025-12-09T04:23:16Z" level=info msg="response completed" go.version=go1.23.2 http.request.contenttype=text/plain http.request.host="127.0.0.1:39067" http.request.id=8e30f6d7-339f-4248-b825-4dc8c43112d5 http.request.method=POST http.request.remoteaddr="127.0.0.1:49838" 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="145µs" http.response.status=404 http.response.written=104 -time="2025-12-09T04:23:16Z" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.23.2 http.request.contenttype=text/plain http.request.host="127.0.0.1:39067" http.request.id=136f59ef-4c36-4aff-bddb-49294b1d205f http.request.method=POST http.request.remoteaddr="127.0.0.1:49842" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 -time="2025-12-09T04:23:16Z" level=info msg="response completed" go.version=go1.23.2 http.request.contenttype=text/plain http.request.host="127.0.0.1:39067" http.request.id=136f59ef-4c36-4aff-bddb-49294b1d205f http.request.method=POST http.request.remoteaddr="127.0.0.1:49842" 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="126.92µs" http.response.status=404 http.response.written=104 -time="2025-12-09T04:23:16Z" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.23.2 http.request.contenttype=text/plain http.request.host="127.0.0.1:39067" http.request.id=5a8cad3c-585a-45d4-bef3-d8f720eaf115 http.request.method=POST http.request.remoteaddr="127.0.0.1:49858" http.request.uri=/v2/gun/_trust/tuf/targets/delegation.key http.request.useragent=Go-http-client/1.1 -time="2025-12-09T04:23:16Z" level=info msg="response completed" go.version=go1.23.2 http.request.contenttype=text/plain http.request.host="127.0.0.1:39067" http.request.id=5a8cad3c-585a-45d4-bef3-d8f720eaf115 http.request.method=POST http.request.remoteaddr="127.0.0.1:49858" 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="217.16µs" http.response.status=404 http.response.written=104 -time="2025-12-09T04:23:16Z" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.23.2 http.request.contenttype=text/plain http.request.host="127.0.0.1:39067" http.request.id=f88f42f5-d7b9-496a-8dea-5c86bc902ef3 http.request.method=POST http.request.remoteaddr="127.0.0.1:49864" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 -time="2025-12-09T04:23:16Z" level=info msg="response completed" go.version=go1.23.2 http.request.contenttype=text/plain http.request.host="127.0.0.1:39067" http.request.id=f88f42f5-d7b9-496a-8dea-5c86bc902ef3 http.request.method=POST http.request.remoteaddr="127.0.0.1:49864" 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="216.28µs" http.response.status=404 http.response.written=104 -time="2025-12-09T04:23:16Z" level=info msg="response completed" go.version=go1.23.2 http.request.contenttype=text/plain http.request.host="127.0.0.1:39067" http.request.id=051cf88c-1701-42a4-9548-ec544ae31d75 http.request.method=POST http.request.remoteaddr="127.0.0.1:49878" http.request.uri=/v2/gun/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration="204.56µs" http.response.status=200 http.response.written=103 ---- PASS: TestRotateKeyEndpoint (0.01s) +time="2025-12-09T04:27:12Z" level=info msg="response completed" go.version=go1.23.2 http.request.contenttype=text/plain http.request.host="127.0.0.1:36919" http.request.id=7f48db7f-016d-4493-a920-3a66c25b5314 http.request.method=POST http.request.remoteaddr="127.0.0.1:36810" http.request.uri=/v2/gun/_trust/tuf/snapshot.key http.request.useragent=Go-http-client/1.1 http.response.duration="155.6µs" http.response.status=200 http.response.written=103 +time="2025-12-09T04:27:12Z" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.23.2 http.request.contenttype=text/plain http.request.host="127.0.0.1:36919" http.request.id=7dd9863b-db27-49e4-9abe-c63b15058a69 http.request.method=POST http.request.remoteaddr="127.0.0.1:36826" http.request.uri=/v2/gun/_trust/tuf/targets.key http.request.useragent=Go-http-client/1.1 +time="2025-12-09T04:27:12Z" level=info msg="response completed" go.version=go1.23.2 http.request.contenttype=text/plain http.request.host="127.0.0.1:36919" http.request.id=7dd9863b-db27-49e4-9abe-c63b15058a69 http.request.method=POST http.request.remoteaddr="127.0.0.1:36826" 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="138.12µs" http.response.status=404 http.response.written=104 +time="2025-12-09T04:27:12Z" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.23.2 http.request.contenttype=text/plain http.request.host="127.0.0.1:36919" http.request.id=def7f1db-0fdf-4803-9c86-4808f3fa3d76 http.request.method=POST http.request.remoteaddr="127.0.0.1:36840" http.request.uri=/v2/gun/_trust/tuf/root.key http.request.useragent=Go-http-client/1.1 +time="2025-12-09T04:27:12Z" level=info msg="response completed" go.version=go1.23.2 http.request.contenttype=text/plain http.request.host="127.0.0.1:36919" http.request.id=def7f1db-0fdf-4803-9c86-4808f3fa3d76 http.request.method=POST http.request.remoteaddr="127.0.0.1:36840" 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="103.64µs" http.response.status=404 http.response.written=104 +time="2025-12-09T04:27:12Z" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.23.2 http.request.contenttype=text/plain http.request.host="127.0.0.1:36919" http.request.id=685f9c38-4042-459c-a745-6bdf8c4afd11 http.request.method=POST http.request.remoteaddr="127.0.0.1:36842" http.request.uri=/v2/gun/_trust/tuf/targets/delegation.key http.request.useragent=Go-http-client/1.1 +time="2025-12-09T04:27:12Z" level=info msg="response completed" go.version=go1.23.2 http.request.contenttype=text/plain http.request.host="127.0.0.1:36919" http.request.id=685f9c38-4042-459c-a745-6bdf8c4afd11 http.request.method=POST http.request.remoteaddr="127.0.0.1:36842" 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="88.68µs" http.response.status=404 http.response.written=104 +time="2025-12-09T04:27:12Z" level=info msg="metadata not found: You have requested metadata that does not exist.: " go.version=go1.23.2 http.request.contenttype=text/plain http.request.host="127.0.0.1:36919" http.request.id=86df4f8c-e23c-40df-bce0-f7b12b53de2c http.request.method=POST http.request.remoteaddr="127.0.0.1:36846" http.request.uri=/v2/gun/_trust/tuf/somerandomrole.key http.request.useragent=Go-http-client/1.1 +time="2025-12-09T04:27:12Z" level=info msg="response completed" go.version=go1.23.2 http.request.contenttype=text/plain http.request.host="127.0.0.1:36919" http.request.id=86df4f8c-e23c-40df-bce0-f7b12b53de2c http.request.method=POST http.request.remoteaddr="127.0.0.1:36846" 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="55.12µs" http.response.status=404 http.response.written=104 +time="2025-12-09T04:27:12Z" level=info msg="response completed" go.version=go1.23.2 http.request.contenttype=text/plain http.request.host="127.0.0.1:36919" http.request.id=9d8b1c93-5679-4454-bfe9-24d1fadddd37 http.request.method=POST http.request.remoteaddr="127.0.0.1:36848" http.request.uri=/v2/gun/_trust/tuf/timestamp.key http.request.useragent=Go-http-client/1.1 http.response.duration="135.6µs" http.response.status=200 http.response.written=103 +--- PASS: TestRotateKeyEndpoint (0.02s) PASS -ok github.com/theupdateframework/notary/server 0.184s +ok github.com/theupdateframework/notary/server 0.256s === RUN Test_changefeed --- PASS: Test_changefeed (0.00s) === RUN Test_checkChangefeedInputs -time="2025-12-09T04:23:16Z" level=error msg="500 GET unable to retrieve storage" -time="2025-12-09T04:23:16Z" level=error msg="400 GET invalid pageSize: not_a_number" +time="2025-12-09T04:27:11Z" level=error msg="500 GET unable to retrieve storage" +time="2025-12-09T04:27:11Z" level=error msg="400 GET invalid pageSize: not_a_number" --- PASS: Test_checkChangefeedInputs (0.00s) === RUN TestMainHandlerGet -time="2025-12-09T04:23:16Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:37699" http.request.id=80d2faeb-7574-463e-887a-e13904c63e54 http.request.method=GET http.request.remoteaddr="127.0.0.1:42970" http.request.uri=/ http.request.useragent=Go-http-client/1.1 http.response.duration="33.24µs" http.response.status=200 http.response.written=2 ---- PASS: TestMainHandlerGet (0.00s) +time="2025-12-09T04:27:11Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:33873" http.request.id=79e414b2-89ee-47ff-ae62-430743a5549c http.request.method=GET http.request.remoteaddr="127.0.0.1:48126" http.request.uri=/ http.request.useragent=Go-http-client/1.1 http.response.duration="36.36µs" http.response.status=200 http.response.written=2 +--- PASS: TestMainHandlerGet (0.01s) === RUN TestMainHandlerNotGet -time="2025-12-09T04:23:16Z" level=info msg="generic not found: You have requested a resource that does not exist.: " go.version=go1.23.2 http.request.host="127.0.0.1:38757" http.request.id=e9a20a24-46d9-40e8-87ef-492305bf7f58 http.request.method=HEAD http.request.remoteaddr="127.0.0.1:48820" http.request.uri=/ http.request.useragent=Go-http-client/1.1 -time="2025-12-09T04:23:16Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:38757" http.request.id=e9a20a24-46d9-40e8-87ef-492305bf7f58 http.request.method=HEAD http.request.remoteaddr="127.0.0.1:48820" http.request.uri=/ http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="432.8µs" http.response.status=404 http.response.written=105 +time="2025-12-09T04:27:11Z" level=info msg="generic not found: You have requested a resource that does not exist.: " go.version=go1.23.2 http.request.host="127.0.0.1:45387" http.request.id=ee145977-31b5-4a9c-849e-8d24b6171a38 http.request.method=HEAD http.request.remoteaddr="127.0.0.1:36374" http.request.uri=/ http.request.useragent=Go-http-client/1.1 +time="2025-12-09T04:27:11Z" level=info msg="response completed" go.version=go1.23.2 http.request.host="127.0.0.1:45387" http.request.id=ee145977-31b5-4a9c-849e-8d24b6171a38 http.request.method=HEAD http.request.remoteaddr="127.0.0.1:36374" http.request.uri=/ http.request.useragent=Go-http-client/1.1 http.response.contenttype="application/json; charset=utf-8" http.response.duration="258.2µs" http.response.status=404 http.response.written=105 --- PASS: TestMainHandlerNotGet (0.00s) === RUN TestKeyHandlersInvalidConfiguration -time="2025-12-09T04:23:16Z" level=error msg="500 GET storage not configured" go.version=go1.23.2 gun=gun -time="2025-12-09T04:23:16Z" level=error msg="500 GET storage not configured" go.version=go1.23.2 gun=gun -time="2025-12-09T04:23:16Z" level=error msg="500 GET crypto service not configured" go.version=go1.23.2 gun=gun -time="2025-12-09T04:23:16Z" level=error msg="500 GET crypto service not configured" go.version=go1.23.2 gun=gun -time="2025-12-09T04:23:16Z" level=error msg="500 GET key algorithm not configured" go.version=go1.23.2 gun=gun -time="2025-12-09T04:23:16Z" level=error msg="500 GET key algorithm not configured" go.version=go1.23.2 gun=gun -time="2025-12-09T04:23:16Z" level=error msg="500 POST storage not configured" go.version=go1.23.2 gun=gun -time="2025-12-09T04:23:16Z" level=error msg="500 POST storage not configured" go.version=go1.23.2 gun=gun -time="2025-12-09T04:23:16Z" level=error msg="500 POST crypto service not configured" go.version=go1.23.2 gun=gun -time="2025-12-09T04:23:16Z" level=error msg="500 POST crypto service not configured" go.version=go1.23.2 gun=gun -time="2025-12-09T04:23:16Z" level=error msg="500 POST key algorithm not configured" go.version=go1.23.2 gun=gun -time="2025-12-09T04:23:16Z" level=error msg="500 POST key algorithm not configured" go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=error msg="500 GET storage not configured" go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=error msg="500 GET storage not configured" go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=error msg="500 GET crypto service not configured" go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=error msg="500 GET crypto service not configured" go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=error msg="500 GET key algorithm not configured" go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=error msg="500 GET key algorithm not configured" go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=error msg="500 POST crypto service not configured" go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=error msg="500 POST crypto service not configured" go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=error msg="500 POST key algorithm not configured" go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=error msg="500 POST key algorithm not configured" go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=error msg="500 POST storage not configured" go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=error msg="500 POST storage not configured" go.version=go1.23.2 gun=gun --- PASS: TestKeyHandlersInvalidConfiguration (0.00s) === RUN TestKeyHandlersNoRoleOrRepo -time="2025-12-09T04:23:16Z" level=info msg="400 GET no gun in request" =gun go.version=go1.23.2 -time="2025-12-09T04:23:16Z" level=info msg="400 GET no gun in request" =gun go.version=go1.23.2 -time="2025-12-09T04:23:16Z" level=info msg="400 GET no role in request" go.version=go1.23.2 gun=gun -time="2025-12-09T04:23:16Z" level=info msg="400 GET no role in request" go.version=go1.23.2 gun=gun -time="2025-12-09T04:23:16Z" level=info msg="400 POST no gun in request" =gun go.version=go1.23.2 -time="2025-12-09T04:23:16Z" level=info msg="400 POST no gun in request" =gun go.version=go1.23.2 -time="2025-12-09T04:23:16Z" level=info msg="400 POST no role in request" go.version=go1.23.2 gun=gun -time="2025-12-09T04:23:16Z" level=info msg="400 POST no role in request" go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=info msg="400 GET no gun in request" =gun go.version=go1.23.2 +time="2025-12-09T04:27:11Z" level=info msg="400 GET no gun in request" =gun go.version=go1.23.2 +time="2025-12-09T04:27:11Z" level=info msg="400 GET no role in request" go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=info msg="400 GET no role in request" go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=info msg="400 POST no gun in request" =gun go.version=go1.23.2 +time="2025-12-09T04:27:11Z" level=info msg="400 POST no gun in request" =gun go.version=go1.23.2 +time="2025-12-09T04:27:11Z" level=info msg="400 POST no role in request" go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=info msg="400 POST no role in request" go.version=go1.23.2 gun=gun --- PASS: TestKeyHandlersNoRoleOrRepo (0.00s) === RUN TestKeyHandlersInvalidRole -time="2025-12-09T04:23:16Z" level=info msg="400 GET root key: " go.version=go1.23.2 gun=gun -time="2025-12-09T04:23:16Z" level=info msg="400 GET targets key: " go.version=go1.23.2 gun=gun -time="2025-12-09T04:23:16Z" level=info msg="400 GET targets/a key: " go.version=go1.23.2 gun=gun -time="2025-12-09T04:23:16Z" level=info msg="400 GET invalidrole key: " go.version=go1.23.2 gun=gun -time="2025-12-09T04:23:16Z" level=info msg="400 POST root key: " go.version=go1.23.2 gun=gun -time="2025-12-09T04:23:16Z" level=info msg="400 POST targets key: " go.version=go1.23.2 gun=gun -time="2025-12-09T04:23:16Z" level=info msg="400 POST targets/a key: " go.version=go1.23.2 gun=gun -time="2025-12-09T04:23:16Z" level=info msg="400 POST invalidrole key: " go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=info msg="400 GET root key: " go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=info msg="400 GET targets key: " go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=info msg="400 GET targets/a key: " go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=info msg="400 GET invalidrole key: " go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=info msg="400 POST root key: " go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=info msg="400 POST targets key: " go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=info msg="400 POST targets/a key: " go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=info msg="400 POST invalidrole key: " go.version=go1.23.2 gun=gun --- PASS: TestKeyHandlersInvalidRole (0.00s) === RUN TestGetKeyHandlerCreatesOnce --- PASS: TestGetKeyHandlerCreatesOnce (0.01s) === RUN TestKeyHandlersInvalidKeyAlgo -time="2025-12-09T04:23:16Z" level=error msg="500 GET timestamp key: only ED25519 supported by this cryptoservice" go.version=go1.23.2 gun=gun -time="2025-12-09T04:23:16Z" level=error msg="500 GET snapshot key: only ED25519 supported by this cryptoservice" go.version=go1.23.2 gun=gun -time="2025-12-09T04:23:16Z" level=error msg="500 POST timestamp key: only ED25519 supported by this cryptoservice" go.version=go1.23.2 gun=gun -time="2025-12-09T04:23:16Z" level=error msg="500 POST snapshot key: only ED25519 supported by this cryptoservice" go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=error msg="500 GET timestamp key: only ED25519 supported by this cryptoservice" go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=error msg="500 GET snapshot key: only ED25519 supported by this cryptoservice" go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=error msg="500 POST timestamp key: only ED25519 supported by this cryptoservice" go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=error msg="500 POST snapshot key: only ED25519 supported by this cryptoservice" go.version=go1.23.2 gun=gun --- PASS: TestKeyHandlersInvalidKeyAlgo (0.00s) === RUN TestRotateKeyHandlerSuccessfulRotation --- PASS: TestRotateKeyHandlerSuccessfulRotation (0.00s) === RUN TestGetHandlerRoot -time="2025-12-09T04:23:16Z" level=info msg="404 GET root role" go.version=go1.23.2 gun=gun ---- PASS: TestGetHandlerRoot (0.00s) +time="2025-12-09T04:27:11Z" level=info msg="404 GET root role" go.version=go1.23.2 gun=gun +--- PASS: TestGetHandlerRoot (0.01s) === RUN TestGetHandlerTimestamp --- PASS: TestGetHandlerTimestamp (0.00s) === RUN TestGetHandlerSnapshot ---- PASS: TestGetHandlerSnapshot (0.00s) +--- PASS: TestGetHandlerSnapshot (0.02s) === RUN TestGetHandler404 -time="2025-12-09T04:23:16Z" level=info msg="404 GET root role" go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=info msg="404 GET root role" go.version=go1.23.2 gun=gun --- PASS: TestGetHandler404 (0.00s) === RUN TestGetHandlerNilData -time="2025-12-09T04:23:16Z" level=info msg="404 GET root role" go.version=go1.23.2 gun=gun +time="2025-12-09T04:27:11Z" level=info msg="404 GET root role" go.version=go1.23.2 gun=gun --- PASS: TestGetHandlerNilData (0.00s) === RUN TestGetHandlerNoStorage -time="2025-12-09T04:23:16Z" level=error msg="500 GET: no storage exists" =gun go.version=go1.23.2 +time="2025-12-09T04:27:11Z" level=error msg="500 GET: no storage exists" =gun go.version=go1.23.2 --- PASS: TestGetHandlerNoStorage (0.00s) === RUN TestAtomicUpdateValidationFailurePropagated --- PASS: TestAtomicUpdateValidationFailurePropagated (0.01s) === RUN TestAtomicUpdateNonValidationFailureNotPropagated -time="2025-12-09T04:23:16Z" level=info msg="400 POST error validating update" go.version=go1.23.2 testGUN=gun ---- PASS: TestAtomicUpdateNonValidationFailureNotPropagated (0.01s) +time="2025-12-09T04:27:11Z" level=info msg="400 POST error validating update" go.version=go1.23.2 testGUN=gun +--- PASS: TestAtomicUpdateNonValidationFailureNotPropagated (0.00s) === RUN TestAtomicUpdateVersionErrorPropagated -time="2025-12-09T04:23:16Z" level=info msg="400 POST old version error" go.version=go1.23.2 testGUN=gun ---- PASS: TestAtomicUpdateVersionErrorPropagated (0.01s) +time="2025-12-09T04:27:11Z" level=info msg="400 POST old version error" go.version=go1.23.2 testGUN=gun +--- PASS: TestAtomicUpdateVersionErrorPropagated (0.02s) === RUN TestGetMaybeServerSignedNoCrypto --- PASS: TestGetMaybeServerSignedNoCrypto (0.00s) === RUN TestGetMaybeServerSignedNoKey @@ -3062,20 +3098,20 @@ === RUN TestValidateEmptyNew --- PASS: TestValidateEmptyNew (0.01s) === RUN TestValidateRootCanContainOnlyx509KeysWithRightGun ---- PASS: TestValidateRootCanContainOnlyx509KeysWithRightGun (0.01s) +--- PASS: TestValidateRootCanContainOnlyx509KeysWithRightGun (0.02s) === RUN TestValidatePrevTimestamp --- PASS: TestValidatePrevTimestamp (0.01s) === RUN TestValidatePreviousTimestampCorrupt -time="2025-12-09T04:23:16Z" level=error msg="Failed to unmarshal existing timestamp for GUN docker.com/notary" +time="2025-12-09T04:27:12Z" level=error msg="Failed to unmarshal existing timestamp for GUN docker.com/notary" --- PASS: TestValidatePreviousTimestampCorrupt (0.01s) === RUN TestValidateGetCurrentTimestampBroken ---- PASS: TestValidateGetCurrentTimestampBroken (0.01s) +--- PASS: TestValidateGetCurrentTimestampBroken (0.02s) === RUN TestValidateNoNewRoot --- PASS: TestValidateNoNewRoot (0.01s) === RUN TestValidateNoNewTargets ---- PASS: TestValidateNoNewTargets (0.01s) +--- PASS: TestValidateNoNewTargets (0.02s) === RUN TestValidateOnlySnapshot ---- PASS: TestValidateOnlySnapshot (0.01s) +--- PASS: TestValidateOnlySnapshot (0.02s) === RUN TestValidateOldRoot --- PASS: TestValidateOldRoot (0.01s) === RUN TestValidateOldRootCorrupt @@ -3085,23 +3121,23 @@ === RUN TestValidateRootGetCurrentRootBroken --- PASS: TestValidateRootGetCurrentRootBroken (0.00s) === RUN TestValidateRootRotationWithOldSigs ---- PASS: TestValidateRootRotationWithOldSigs (0.02s) +--- PASS: TestValidateRootRotationWithOldSigs (0.05s) === RUN TestValidateRootRotationMultipleKeysThreshold1 ---- PASS: TestValidateRootRotationMultipleKeysThreshold1 (0.01s) +--- PASS: TestValidateRootRotationMultipleKeysThreshold1 (0.02s) === RUN TestRootRotationNotSignedWithOldKeysForOldRole ---- PASS: TestRootRotationNotSignedWithOldKeysForOldRole (0.02s) +--- PASS: TestRootRotationNotSignedWithOldKeysForOldRole (0.03s) === RUN TestRootRotationVersionIncrement ---- PASS: TestRootRotationVersionIncrement (0.01s) +--- PASS: TestRootRotationVersionIncrement (0.04s) === RUN TestValidateNoRoot ---- PASS: TestValidateNoRoot (0.00s) +--- PASS: TestValidateNoRoot (0.01s) === RUN TestValidateSnapshotMissingNoSnapshotKey ---- PASS: TestValidateSnapshotMissingNoSnapshotKey (0.01s) +--- PASS: TestValidateSnapshotMissingNoSnapshotKey (0.00s) === RUN TestValidateSnapshotGenerateNoPrev --- PASS: TestValidateSnapshotGenerateNoPrev (0.01s) === RUN TestValidateSnapshotGenerateWithPrev --- PASS: TestValidateSnapshotGenerateWithPrev (0.01s) === RUN TestValidateSnapshotGeneratePrevCorrupt -time="2025-12-09T04:23:16Z" level=error msg="Failed to unmarshal existing snapshot for GUN docker.com/notary" +time="2025-12-09T04:27:12Z" level=error msg="Failed to unmarshal existing snapshot for GUN docker.com/notary" --- PASS: TestValidateSnapshotGeneratePrevCorrupt (0.01s) === RUN TestValidateSnapshotGenerateStoreGetCurrentSnapshotBroken --- PASS: TestValidateSnapshotGenerateStoreGetCurrentSnapshotBroken (0.01s) @@ -3112,7 +3148,7 @@ === RUN TestValidateRootNoTimestampKey --- PASS: TestValidateRootNoTimestampKey (0.00s) === RUN TestValidateRootInvalidTimestampKey ---- PASS: TestValidateRootInvalidTimestampKey (0.00s) +--- PASS: TestValidateRootInvalidTimestampKey (0.01s) === RUN TestValidateRootInvalidTimestampThreshold --- PASS: TestValidateRootInvalidTimestampThreshold (0.01s) === RUN TestValidateRootInvalidZeroThreshold @@ -3126,19 +3162,19 @@ === RUN TestValidateRootSigMissing --- PASS: TestValidateRootSigMissing (0.00s) === RUN TestValidateTargetsSigMissing -time="2025-12-09T04:23:16Z" level=error msg="ErrBadTargets: tuf: data has no signatures" +time="2025-12-09T04:27:12Z" level=error msg="ErrBadTargets: tuf: data has no signatures" --- PASS: TestValidateTargetsSigMissing (0.01s) === RUN TestValidateSnapshotSigMissing ---- PASS: TestValidateSnapshotSigMissing (0.01s) +--- PASS: TestValidateSnapshotSigMissing (0.00s) === RUN TestValidateRootCorrupt --- PASS: TestValidateRootCorrupt (0.00s) === RUN TestValidateTargetsCorrupt -time="2025-12-09T04:23:16Z" level=error msg="ErrBadTargets: invalid character '\\u0084' looking for beginning of value" ---- PASS: TestValidateTargetsCorrupt (0.01s) +time="2025-12-09T04:27:12Z" level=error msg="ErrBadTargets: invalid character '\\u0084' looking for beginning of value" +--- PASS: TestValidateTargetsCorrupt (0.00s) === RUN TestValidateSnapshotCorrupt ---- PASS: TestValidateSnapshotCorrupt (0.01s) +--- PASS: TestValidateSnapshotCorrupt (0.00s) === RUN TestValidateRootModifiedSize ---- PASS: TestValidateRootModifiedSize (0.01s) +--- PASS: TestValidateRootModifiedSize (0.00s) === RUN TestValidateTargetsModifiedSize --- PASS: TestValidateTargetsModifiedSize (0.01s) === RUN TestValidateRootModifiedHash @@ -3152,47 +3188,47 @@ === RUN TestLoadTargetsLoadsNothingIfNoUpdates --- PASS: TestLoadTargetsLoadsNothingIfNoUpdates (0.00s) === RUN TestValidateTargetsRequiresStoredParent -time="2025-12-09T04:23:16Z" level=error msg="ErrBadTargets: targets must be loaded first" ---- PASS: TestValidateTargetsRequiresStoredParent (0.01s) +time="2025-12-09T04:27:12Z" level=error msg="ErrBadTargets: targets must be loaded first" +--- PASS: TestValidateTargetsRequiresStoredParent (0.00s) === RUN TestValidateTargetsParentInUpdate -time="2025-12-09T04:23:16Z" level=error msg="ErrBadTargets: invalid character 'I' looking for beginning of value" +time="2025-12-09T04:27:12Z" level=error msg="ErrBadTargets: invalid character 'I' looking for beginning of value" --- PASS: TestValidateTargetsParentInUpdate (0.01s) === RUN TestValidateTargetsRoleNotInParent -time="2025-12-09T04:23:16Z" level=error msg="ErrBadTargets: tuf: invalid role targets/level1. delegation does not exist" -time="2025-12-09T04:23:16Z" level=error msg="ErrBadTargets: targets has already been loaded" -time="2025-12-09T04:23:16Z" level=error msg="ErrBadTargets: tuf: invalid role targets/level1. delegation does not exist" +time="2025-12-09T04:27:12Z" level=error msg="ErrBadTargets: tuf: invalid role targets/level1. delegation does not exist" +time="2025-12-09T04:27:12Z" level=error msg="ErrBadTargets: targets has already been loaded" +time="2025-12-09T04:27:12Z" level=error msg="ErrBadTargets: tuf: invalid role targets/level1. delegation does not exist" --- PASS: TestValidateTargetsRoleNotInParent (0.01s) PASS -ok github.com/theupdateframework/notary/server/handlers 0.459s +ok github.com/theupdateframework/notary/server/handlers 0.663s === RUN TestSnapshotExpired --- PASS: TestSnapshotExpired (0.00s) === RUN TestSnapshotNotExpired --- PASS: TestSnapshotNotExpired (0.00s) === RUN TestGetSnapshotKeyCreate ---- PASS: TestGetSnapshotKeyCreate (0.01s) +--- PASS: TestGetSnapshotKeyCreate (0.02s) === RUN TestGetSnapshotKeyCreateWithFailingStore -time="2025-12-09T04:23:16Z" level=error msg="Error when retrieving root role for GUN gun: failing store failed" +time="2025-12-09T04:27:11Z" level=error msg="Error when retrieving root role for GUN gun: failing store failed" --- PASS: TestGetSnapshotKeyCreateWithFailingStore (0.00s) === RUN TestGetSnapshotKeyCreateWithCorruptedStore -time="2025-12-09T04:23:16Z" level=error msg="Failed to unmarshal existing root for GUN gun to retrieve snapshot key ID" +time="2025-12-09T04:27:11Z" level=error msg="Failed to unmarshal existing root for GUN gun to retrieve snapshot key ID" --- PASS: TestGetSnapshotKeyCreateWithCorruptedStore (0.00s) === RUN TestGetSnapshotKeyCreateWithInvalidAlgo --- PASS: TestGetSnapshotKeyCreateWithInvalidAlgo (0.00s) === RUN TestGetSnapshotKeyExistingMetadata --- PASS: TestGetSnapshotKeyExistingMetadata (0.00s) === RUN TestGetSnapshotNoPreviousSnapshot -time="2025-12-09T04:23:16Z" level=error msg="Failed to unmarshal existing snapshot for GUN gun" ---- PASS: TestGetSnapshotNoPreviousSnapshot (0.00s) +time="2025-12-09T04:27:11Z" level=error msg="Failed to unmarshal existing snapshot for GUN gun" +--- PASS: TestGetSnapshotNoPreviousSnapshot (0.01s) === RUN TestGetSnapshotReturnsPreviousSnapshotIfUnexpired --- PASS: TestGetSnapshotReturnsPreviousSnapshotIfUnexpired (0.00s) === RUN TestGetSnapshotOldSnapshotExpired ---- PASS: TestGetSnapshotOldSnapshotExpired (0.00s) +--- PASS: TestGetSnapshotOldSnapshotExpired (0.01s) === RUN TestCannotMakeNewSnapshotIfNoRoot ---- PASS: TestCannotMakeNewSnapshotIfNoRoot (0.00s) +--- PASS: TestCannotMakeNewSnapshotIfNoRoot (0.01s) === RUN TestCreateSnapshotNoKeyInCrypto ---- PASS: TestCreateSnapshotNoKeyInCrypto (0.00s) +--- PASS: TestCreateSnapshotNoKeyInCrypto (0.01s) PASS -ok github.com/theupdateframework/notary/server/snapshot 0.048s +ok github.com/theupdateframework/notary/server/snapshot 0.151s === RUN TestMemoryUpdateCurrentEmpty --- PASS: TestMemoryUpdateCurrentEmpty (0.00s) === RUN TestMemoryUpdateCurrentVersionCheckOldVersionExists @@ -3214,39 +3250,39 @@ === RUN TestGetVersion --- PASS: TestGetVersion (0.00s) === RUN TestRDBTUFFileJSONUnmarshalling ---- PASS: TestRDBTUFFileJSONUnmarshalling (0.00s) +--- PASS: TestRDBTUFFileJSONUnmarshalling (0.01s) === RUN TestRDBTUFFileJSONUnmarshallingFailure --- PASS: TestRDBTUFFileJSONUnmarshallingFailure (0.00s) === RUN TestSQLUpdateCurrentEmpty ---- PASS: TestSQLUpdateCurrentEmpty (0.02s) +--- PASS: TestSQLUpdateCurrentEmpty (0.01s) === RUN TestSQLUpdateCurrentVersionCheckOldVersionExists --- PASS: TestSQLUpdateCurrentVersionCheckOldVersionExists (0.01s) === RUN TestSQLUpdateCurrentVersionCheckOldVersionNotExist --- PASS: TestSQLUpdateCurrentVersionCheckOldVersionNotExist (0.01s) === RUN TestSQLUpdateManyNoConflicts ---- PASS: TestSQLUpdateManyNoConflicts (0.02s) +--- PASS: TestSQLUpdateManyNoConflicts (0.01s) === RUN TestSQLUpdateManyConflictRollback ---- PASS: TestSQLUpdateManyConflictRollback (0.01s) +--- PASS: TestSQLUpdateManyConflictRollback (0.02s) === RUN TestSQLDelete ---- PASS: TestSQLDelete (0.01s) +--- PASS: TestSQLDelete (0.03s) === RUN TestSQLDBCheckHealthTableMissing --- PASS: TestSQLDBCheckHealthTableMissing (0.00s) === RUN TestSQLDBCheckHealthDBConnectionFail ---- PASS: TestSQLDBCheckHealthDBConnectionFail (0.00s) +--- PASS: TestSQLDBCheckHealthDBConnectionFail (0.01s) === RUN TestSQLDBCheckHealthSucceeds --- PASS: TestSQLDBCheckHealthSucceeds (0.00s) === RUN TestSQLDBGetChecksum ---- PASS: TestSQLDBGetChecksum (0.00s) +--- PASS: TestSQLDBGetChecksum (0.01s) === RUN TestSQLDBGetChecksumNotFound ---- PASS: TestSQLDBGetChecksumNotFound (0.01s) +--- PASS: TestSQLDBGetChecksumNotFound (0.00s) === RUN TestSQLTUFMetaStoreGetCurrent ---- PASS: TestSQLTUFMetaStoreGetCurrent (0.02s) +--- PASS: TestSQLTUFMetaStoreGetCurrent (0.03s) === RUN TestSQLGetChanges ---- PASS: TestSQLGetChanges (0.01s) +--- PASS: TestSQLGetChanges (0.02s) === RUN TestSQLDBGetVersion ---- PASS: TestSQLDBGetVersion (0.00s) +--- PASS: TestSQLDBGetVersion (0.01s) PASS -ok github.com/theupdateframework/notary/server/storage 0.152s +ok github.com/theupdateframework/notary/server/storage 0.265s === RUN TestTimestampExpired --- PASS: TestTimestampExpired (0.00s) === RUN TestTimestampNotExpired @@ -3254,37 +3290,37 @@ === RUN TestGetTimestampKey --- PASS: TestGetTimestampKey (0.01s) === RUN TestGetTimestampNoPreviousTimestamp -time="2025-12-09T04:23:17Z" level=error msg="Failed to unmarshal existing timestamp" +time="2025-12-09T04:27:14Z" level=error msg="Failed to unmarshal existing timestamp" --- PASS: TestGetTimestampNoPreviousTimestamp (0.01s) === RUN TestGetTimestampReturnsPreviousTimestampIfUnexpired --- PASS: TestGetTimestampReturnsPreviousTimestampIfUnexpired (0.01s) === RUN TestGetTimestampOldTimestampExpired --- PASS: TestGetTimestampOldTimestampExpired (0.01s) === RUN TestCannotMakeNewTimestampIfNoRootOrSnapshot -time="2025-12-09T04:23:17Z" level=error msg="Failed to create a new timestamp" -time="2025-12-09T04:23:17Z" level=error msg="Failed to create a new timestamp" +time="2025-12-09T04:27:14Z" level=error msg="Failed to create a new timestamp" +time="2025-12-09T04:27:14Z" level=error msg="Failed to create a new timestamp" --- PASS: TestCannotMakeNewTimestampIfNoRootOrSnapshot (0.01s) === RUN TestCreateTimestampNoKeyInCrypto -time="2025-12-09T04:23:17Z" level=error msg="Failed to create a new timestamp" +time="2025-12-09T04:27:14Z" level=error msg="Failed to create a new timestamp" --- PASS: TestCreateTimestampNoKeyInCrypto (0.01s) === RUN TestGetTimestampKeyCreateWithFailingStore -time="2025-12-09T04:23:17Z" level=error msg="Error when retrieving root role for GUN gun: failing store failed" +time="2025-12-09T04:27:14Z" level=error msg="Error when retrieving root role for GUN gun: failing store failed" --- PASS: TestGetTimestampKeyCreateWithFailingStore (0.00s) === RUN TestGetTimestampKeyCreateWithCorruptedStore -time="2025-12-09T04:23:17Z" level=error msg="Failed to unmarshal existing root for GUN gun to retrieve timestamp key ID" +time="2025-12-09T04:27:14Z" 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 -ok github.com/theupdateframework/notary/server/timestamp 0.101s +ok github.com/theupdateframework/notary/server/timestamp 0.104s === RUN TestGetSuccessPopulatesCache --- PASS: TestGetSuccessPopulatesCache (0.01s) === RUN TestAddKeyPopulatesCacheIfSuccessful --- PASS: TestAddKeyPopulatesCacheIfSuccessful (0.00s) === RUN TestDeleteKeyRemovesKeyFromCache ---- PASS: TestDeleteKeyRemovesKeyFromCache (0.00s) +--- PASS: TestDeleteKeyRemovesKeyFromCache (0.01s) === RUN TestRDBPrivateKeyJSONUnmarshalling --- PASS: TestRDBPrivateKeyJSONUnmarshalling (0.00s) === RUN TestRDBPrivateKeyJSONUnmarshallingFailure @@ -3295,28 +3331,28 @@ === RUN TestSQLDBHealthCheckMissingTable --- PASS: TestSQLDBHealthCheckMissingTable (0.00s) === RUN TestSQLDBHealthCheckNoConnection ---- PASS: TestSQLDBHealthCheckNoConnection (0.00s) +--- PASS: TestSQLDBHealthCheckNoConnection (0.01s) === RUN TestSQLKeyCanOnlyBeAddedOnce (/build/reproducible-path/notary-0.7.0+git20240416.9d2b3b3+ds1/_build/src/github.com/theupdateframework/notary/signer/keydbstore/sql_keydbstore.go:98) -[2025-12-09 04:23:17]  UNIQUE constraint failed: private_keys.key_id  ---- PASS: TestSQLKeyCanOnlyBeAddedOnce (0.02s) +[2025-12-09 04:27:14]  UNIQUE constraint failed: private_keys.key_id  +--- PASS: TestSQLKeyCanOnlyBeAddedOnce (0.04s) === RUN TestSQLCreateDelete ---- PASS: TestSQLCreateDelete (0.03s) +--- PASS: TestSQLCreateDelete (0.06s) === RUN TestSQLKeyRotation ---- PASS: TestSQLKeyRotation (0.03s) +--- PASS: TestSQLKeyRotation (0.07s) === RUN TestSQLSigningMarksKeyActive -time="2025-12-09T04:23:17Z" level=error msg="Key fd19bdc595c351a292c93d7b109a6c80e00450abb827e13572cbb1f424f2666c was just used to sign hash successful, db closed, error when trying to mark key as active: sql: database is closed" ---- PASS: TestSQLSigningMarksKeyActive (0.06s) +time="2025-12-09T04:27:14Z" level=error msg="Key b442d385ecd539705e09ab071cf140398d539f6656d3b187c3df97cf41461fc9 was just used to sign hash successful, db closed, error when trying to mark key as active: sql: database is closed" +--- PASS: TestSQLSigningMarksKeyActive (0.11s) === RUN TestSQLCreateKey (/build/reproducible-path/notary-0.7.0+git20240416.9d2b3b3+ds1/_build/src/github.com/theupdateframework/notary/signer/keydbstore/sql_keydbstore.go:197) -[2025-12-09 04:23:17]  sql: database is closed  ---- PASS: TestSQLCreateKey (0.06s) +[2025-12-09 04:27:14]  sql: database is closed  +--- PASS: TestSQLCreateKey (0.09s) === RUN TestSQLUnimplementedInterfaceBehavior ---- PASS: TestSQLUnimplementedInterfaceBehavior (0.01s) +--- PASS: TestSQLUnimplementedInterfaceBehavior (0.02s) PASS -ok github.com/theupdateframework/notary/signer/keydbstore 0.273s +ok github.com/theupdateframework/notary/signer/keydbstore 0.498s === RUN TestSet --- PASS: TestSet (0.00s) === RUN TestSetWithNoParentDirectory @@ -3354,13 +3390,13 @@ === RUN TestHTTPStoreGetAllMeta --- PASS: TestHTTPStoreGetAllMeta (0.00s) === RUN TestSetSingleAndSetMultiMeta ---- PASS: TestSetSingleAndSetMultiMeta (0.01s) +--- PASS: TestSetSingleAndSetMultiMeta (0.00s) === RUN Test404Error --- PASS: Test404Error (0.00s) === RUN Test50XErrors --- PASS: Test50XErrors (0.01s) === RUN Test400Error ---- PASS: Test400Error (0.00s) +--- PASS: Test400Error (0.01s) === RUN TestTranslateErrorsParse400Errors --- PASS: TestTranslateErrorsParse400Errors (0.00s) === RUN TestTranslateErrorsWhenCannotParse400 @@ -3374,7 +3410,7 @@ === RUN TestHTTPStoreGetKey --- PASS: TestHTTPStoreGetKey (0.00s) === RUN TestHTTPStoreGetRotateKeySizeLimited ---- PASS: TestHTTPStoreGetRotateKeySizeLimited (0.01s) +--- PASS: TestHTTPStoreGetRotateKeySizeLimited (0.02s) === RUN TestHTTPOffline --- PASS: TestHTTPOffline (0.00s) === RUN TestErrServerUnavailable @@ -3395,7 +3431,7 @@ === RUN TestMemoryStoreMetadata --- PASS: TestMemoryStoreMetadata (0.00s) PASS -ok github.com/theupdateframework/notary/storage 0.066s +ok github.com/theupdateframework/notary/storage 0.085s === RUN TestExportKeys --- PASS: TestExportKeys (0.00s) === RUN TestExportKeysByGUN @@ -3407,30 +3443,30 @@ === RUN TestImportKeys --- PASS: TestImportKeys (0.00s) === RUN TestImportNoPath ---- PASS: TestImportNoPath (0.00s) +--- PASS: TestImportNoPath (0.01s) === RUN TestNonRootPathInference --- PASS: TestNonRootPathInference (0.00s) === RUN TestBlockHeaderPrecedenceRoleAndGun ---- PASS: TestBlockHeaderPrecedenceRoleAndGun (0.00s) +--- PASS: TestBlockHeaderPrecedenceRoleAndGun (0.01s) === RUN TestBlockHeaderPrecedenceGunFromPath --- PASS: TestBlockHeaderPrecedenceGunFromPath (0.00s) === RUN TestImportKeys2InOneFile --- PASS: TestImportKeys2InOneFile (0.00s) === RUN TestImportKeys2InOneFileNoPath ---- PASS: TestImportKeys2InOneFileNoPath (0.00s) +--- PASS: TestImportKeys2InOneFileNoPath (0.01s) === RUN TestEncryptedKeyImportFail -time="2025-12-09T04:23:18Z" level=warning msg="failed to import key to store: Invalid key generated, key may be encrypted and does not contain path header" +time="2025-12-09T04:27:14Z" level=warning msg="failed to import key to store: Invalid key generated, key may be encrypted and does not contain path header" --- PASS: TestEncryptedKeyImportFail (0.00s) === RUN TestEncryptedKeyImportSuccess ---- PASS: TestEncryptedKeyImportSuccess (0.00s) +--- PASS: TestEncryptedKeyImportSuccess (0.01s) === RUN TestEncryption --- PASS: TestEncryption (0.00s) === RUN TestAddKey ---- PASS: TestAddKey (0.01s) +--- PASS: TestAddKey (0.03s) === RUN TestKeyStoreInternalState --- PASS: TestKeyStoreInternalState (0.00s) === RUN TestGet ---- PASS: TestGet (0.01s) +--- PASS: TestGet (0.02s) === RUN TestGetLegacyKey --- PASS: TestGetLegacyKey (0.00s) === RUN TestListKeys @@ -3440,94 +3476,94 @@ === RUN TestAddGetKeyInfoMemStore --- PASS: TestAddGetKeyInfoMemStore (0.00s) === RUN TestGetDecryptedWithTamperedCipherText -time="2025-12-09T04:23:18Z" level=error msg="PEM block is empty" +time="2025-12-09T04:27:14Z" level=error msg="PEM block is empty" --- PASS: TestGetDecryptedWithTamperedCipherText (0.00s) === RUN TestGetDecryptedWithInvalidPassphrase ---- PASS: TestGetDecryptedWithInvalidPassphrase (0.01s) +--- PASS: TestGetDecryptedWithInvalidPassphrase (0.02s) === RUN TestGetDecryptedWithConsistentlyInvalidPassphrase ---- PASS: TestGetDecryptedWithConsistentlyInvalidPassphrase (0.01s) +--- PASS: TestGetDecryptedWithConsistentlyInvalidPassphrase (0.02s) === RUN TestRemoveKey --- PASS: TestRemoveKey (0.01s) === RUN TestKeysAreCached ---- PASS: TestKeysAreCached (0.00s) +--- PASS: TestKeysAreCached (0.01s) PASS -ok github.com/theupdateframework/notary/trustmanager 0.088s +ok github.com/theupdateframework/notary/trustmanager 0.216s === RUN TestRemoteStore -time="2025-12-09T04:23:18Z" level=info msg="listing files from localhost:9888" -time="2025-12-09T04:23:18Z" level=info msg="listing files from localhost:9888" ---- PASS: TestRemoteStore (0.04s) +time="2025-12-09T04:27:17Z" level=info msg="listing files from localhost:9888" +time="2025-12-09T04:27:17Z" level=info msg="listing files from localhost:9888" +--- PASS: TestRemoteStore (0.07s) === RUN TestErrors -time="2025-12-09T04:23:18Z" level=error msg="failed to store: test error" ---- PASS: TestErrors (0.05s) +time="2025-12-09T04:27:17Z" level=error msg="failed to store: test error" +--- PASS: TestErrors (0.06s) === RUN TestNewGRPCStorage --- PASS: TestNewGRPCStorage (0.00s) === RUN TestGRPCStorage --- PASS: TestGRPCStorage (0.00s) PASS -ok github.com/theupdateframework/notary/trustmanager/remoteks 0.114s +ok github.com/theupdateframework/notary/trustmanager/remoteks 0.217s === RUN TestWildcardMatch --- PASS: TestWildcardMatch (0.00s) === RUN TestValidateRoot -2025/12/09 04:23:20 [INFO] generate received request -2025/12/09 04:23:20 [INFO] received CSR -2025/12/09 04:23:20 [INFO] generating key: ecdsa-256 -2025/12/09 04:23:20 [INFO] encoded CSR -2025/12/09 04:23:20 [INFO] signed certificate with serial number 252865301093148383295172610206848255523921508297 -2025/12/09 04:23:20 [INFO] received CSR -2025/12/09 04:23:20 [INFO] generating key: ecdsa-256 -2025/12/09 04:23:20 [INFO] encoded CSR -2025/12/09 04:23:20 [INFO] signed certificate with serial number 500630316484677394778074024403214837604991793115 -2025/12/09 04:23:20 [INFO] received CSR -2025/12/09 04:23:20 [INFO] generating key: ecdsa-256 -2025/12/09 04:23:20 [INFO] encoded CSR -2025/12/09 04:23:20 [INFO] signed certificate with serial number 475253609154370304483405276321218398322857886149 ---- PASS: TestValidateRoot (0.03s) +2025/12/09 04:27:21 [INFO] generate received request +2025/12/09 04:27:21 [INFO] received CSR +2025/12/09 04:27:21 [INFO] generating key: ecdsa-256 +2025/12/09 04:27:21 [INFO] encoded CSR +2025/12/09 04:27:21 [INFO] signed certificate with serial number 329839050315920370627289296614567723068837816674 +2025/12/09 04:27:21 [INFO] received CSR +2025/12/09 04:27:21 [INFO] generating key: ecdsa-256 +2025/12/09 04:27:21 [INFO] encoded CSR +2025/12/09 04:27:21 [INFO] signed certificate with serial number 77092151266820178856708398712479774836108920967 +2025/12/09 04:27:21 [INFO] received CSR +2025/12/09 04:27:21 [INFO] generating key: ecdsa-256 +2025/12/09 04:27:21 [INFO] encoded CSR +2025/12/09 04:27:21 [INFO] signed certificate with serial number 110428777213711570352663957141667281408274908611 +--- PASS: TestValidateRoot (0.04s) === RUN TestValidateRootWithoutTOFUS --- PASS: TestValidateRootWithoutTOFUS (0.00s) === RUN TestValidateRootWithPinnedCert ---- PASS: TestValidateRootWithPinnedCert (0.01s) +--- PASS: TestValidateRootWithPinnedCert (0.00s) === RUN TestValidateRootWithPinnedCertAndIntermediates --- PASS: TestValidateRootWithPinnedCertAndIntermediates (0.02s) === RUN TestValidateRootFailuresWithPinnedCert --- PASS: TestValidateRootFailuresWithPinnedCert (0.00s) === RUN TestValidateRootWithPinnedCA ---- PASS: TestValidateRootWithPinnedCA (0.04s) +--- PASS: TestValidateRootWithPinnedCA (0.05s) === RUN TestValidateSuccessfulRootRotation ---- PASS: TestValidateSuccessfulRootRotation (0.04s) +--- PASS: TestValidateSuccessfulRootRotation (0.06s) === RUN TestValidateRootRotationMissingOrigSig --- PASS: TestValidateRootRotationMissingOrigSig (0.05s) === RUN TestValidateRootRotationMissingNewSig ---- PASS: TestValidateRootRotationMissingNewSig (0.03s) +--- PASS: TestValidateRootRotationMissingNewSig (0.04s) === RUN TestValidateRootRotationTrustPinning ---- PASS: TestValidateRootRotationTrustPinning (0.03s) +--- PASS: TestValidateRootRotationTrustPinning (0.06s) === RUN TestValidateRootRotationTrustPinningInvalidCA --- PASS: TestValidateRootRotationTrustPinningInvalidCA (0.03s) === RUN TestParsePEMPublicKey -time="2025-12-09T04:23:21Z" level=warning msg="certificate with CN notary is near expiry" ---- PASS: TestParsePEMPublicKey (0.01s) +time="2025-12-09T04:27:21Z" level=warning msg="certificate with CN notary is near expiry" +--- PASS: TestParsePEMPublicKey (0.00s) === RUN TestCheckingCertExpiry -time="2025-12-09T04:23:21Z" level=warning msg="certificate with CN notary is near expiry" ---- PASS: TestCheckingCertExpiry (0.01s) +time="2025-12-09T04:27:21Z" level=warning msg="certificate with CN notary is near expiry" +--- PASS: TestCheckingCertExpiry (0.00s) === RUN TestValidateRootWithExpiredIntermediate ---- PASS: TestValidateRootWithExpiredIntermediate (0.01s) +--- PASS: TestValidateRootWithExpiredIntermediate (0.00s) === RUN TestCheckingWildcardCert ---- PASS: TestCheckingWildcardCert (0.01s) +--- PASS: TestCheckingWildcardCert (0.00s) === RUN TestWildcardMatching --- PASS: TestWildcardMatching (0.00s) PASS -ok github.com/theupdateframework/notary/trustpinning 0.374s +ok github.com/theupdateframework/notary/trustpinning 0.442s === RUN TestInitSnapshotNoTargets ---- PASS: TestInitSnapshotNoTargets (0.01s) +--- PASS: TestInitSnapshotNoTargets (0.03s) === RUN TestInitRepo ---- PASS: TestInitRepo (0.01s) +--- PASS: TestInitRepo (0.00s) === RUN TestUpdateDelegations ---- PASS: TestUpdateDelegations (0.00s) +--- PASS: TestUpdateDelegations (0.01s) === RUN TestPurgeDelegationsKeyFromTop -time="2025-12-09T04:23:20Z" 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-12-09T04:23:20Z" level=warning msg="role targets/vimes/carrot has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +time="2025-12-09T04:27:21Z" 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-12-09T04:27:21Z" level=warning msg="role targets/vimes/carrot has fewer keys than its threshold of 1; it will not be usable until keys are added to it" --- PASS: TestPurgeDelegationsKeyFromTop (0.00s) === RUN TestPurgeDelegationsKeyFromDeep -time="2025-12-09T04:23:20Z" level=warning msg="role targets/vimes/carrot has fewer keys than its threshold of 1; it will not be usable until keys are added to it" +time="2025-12-09T04:27:21Z" level=warning msg="role targets/vimes/carrot has fewer keys than its threshold of 1; it will not be usable until keys are added to it" --- PASS: TestPurgeDelegationsKeyFromDeep (0.00s) === RUN TestPurgeDelegationsKeyBadWildRole --- PASS: TestPurgeDelegationsKeyBadWildRole (0.00s) @@ -3540,8 +3576,8 @@ === RUN TestUpdateDelegationsRoleThatIsMissingDelegationKey --- PASS: TestUpdateDelegationsRoleThatIsMissingDelegationKey (0.00s) === RUN TestUpdateDelegationsNotEnoughKeys -time="2025-12-09T04:23:20Z" 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-12-09T04:27:21Z" 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) === RUN TestDeleteDelegations @@ -3559,7 +3595,7 @@ === RUN TestDeleteDelegationsMidSliceRole --- PASS: TestDeleteDelegationsMidSliceRole (0.00s) === RUN TestGetDelegationRoleAndMetadataExistDelegationExists ---- PASS: TestGetDelegationRoleAndMetadataExistDelegationExists (0.00s) +--- PASS: TestGetDelegationRoleAndMetadataExistDelegationExists (0.01s) === RUN TestGetDelegationRoleAndMetadataExistDelegationDoesntExists --- PASS: TestGetDelegationRoleAndMetadataExistDelegationDoesntExists (0.00s) === RUN TestGetDelegationRoleAndMetadataDoesntExists @@ -3575,7 +3611,7 @@ === RUN TestAddTargetsNoSigningKeys --- PASS: TestAddTargetsNoSigningKeys (0.00s) === RUN TestRemoveExistingAndNonexistingTargets ---- PASS: TestRemoveExistingAndNonexistingTargets (0.00s) +--- PASS: TestRemoveExistingAndNonexistingTargets (0.01s) === RUN TestRemoveTargetsRoleDoesntExist --- PASS: TestRemoveTargetsRoleDoesntExist (0.00s) === RUN TestRemoveTargetsNoSigningKeys @@ -3583,7 +3619,7 @@ === RUN TestAddBaseKeysToRoot --- PASS: TestAddBaseKeysToRoot (0.00s) === RUN TestRemoveBaseKeysFromRoot ---- PASS: TestRemoveBaseKeysFromRoot (0.00s) +--- PASS: TestRemoveBaseKeysFromRoot (0.01s) === RUN TestReplaceBaseKeysInRoot --- PASS: TestReplaceBaseKeysInRoot (0.01s) === RUN TestGetAllRoles @@ -3605,15 +3641,15 @@ === RUN TestGetBaseRoleKeyMissing --- PASS: TestGetBaseRoleKeyMissing (0.00s) === RUN TestGetDelegationRoleKeyMissing ---- PASS: TestGetDelegationRoleKeyMissing (0.00s) +--- PASS: TestGetDelegationRoleKeyMissing (0.01s) === RUN TestSignRootOldKeyCertExists ---- PASS: TestSignRootOldKeyCertExists (0.01s) +--- PASS: TestSignRootOldKeyCertExists (0.02s) === RUN TestSignRootOldKeyCertMissing ---- PASS: TestSignRootOldKeyCertMissing (0.01s) +--- PASS: TestSignRootOldKeyCertMissing (0.02s) === RUN TestRootKeyRotation ---- PASS: TestRootKeyRotation (0.03s) +--- PASS: TestRootKeyRotation (0.07s) === RUN TestBuilderLoadsValidRolesOnly ---- PASS: TestBuilderLoadsValidRolesOnly (0.00s) +--- PASS: TestBuilderLoadsValidRolesOnly (0.01s) === RUN TestBuilderOnlyAcceptsRootFirstWhenLoading --- PASS: TestBuilderOnlyAcceptsRootFirstWhenLoading (0.00s) === RUN TestBuilderOnlyAcceptsDelegationsAfterParent @@ -3621,27 +3657,27 @@ === RUN TestMarkingIsValid --- PASS: TestMarkingIsValid (0.00s) === RUN TestBuilderLoadInvalidDelegations ---- PASS: TestBuilderLoadInvalidDelegations (0.00s) +--- PASS: TestBuilderLoadInvalidDelegations (0.01s) === RUN TestBuilderLoadInvalidDelegationsOldVersion ---- PASS: TestBuilderLoadInvalidDelegationsOldVersion (0.00s) +--- PASS: TestBuilderLoadInvalidDelegationsOldVersion (0.01s) === RUN TestBuilderAcceptRoleOnce --- PASS: TestBuilderAcceptRoleOnce (0.00s) === RUN TestBuilderStopsAcceptingOrProducingDataOnceDone --- PASS: TestBuilderStopsAcceptingOrProducingDataOnceDone (0.00s) === RUN TestGenerateSnapshotInvalidOperations ---- PASS: TestGenerateSnapshotInvalidOperations (0.04s) +--- PASS: TestGenerateSnapshotInvalidOperations (0.05s) === RUN TestGenerateTimestampInvalidOperations ---- PASS: TestGenerateTimestampInvalidOperations (0.03s) +--- PASS: TestGenerateTimestampInvalidOperations (0.04s) === RUN TestGetConsistentInfo ---- PASS: TestGetConsistentInfo (0.01s) +--- PASS: TestGetConsistentInfo (0.00s) === RUN TestTimestampPreAndPostChecksumming ---- PASS: TestTimestampPreAndPostChecksumming (0.01s) +--- PASS: TestTimestampPreAndPostChecksumming (0.02s) === RUN TestSnapshotLoadedFirstChecksumsOthers --- PASS: TestSnapshotLoadedFirstChecksumsOthers (0.01s) === RUN TestSnapshotLoadedAfterChecksumsOthersRetroactively --- PASS: TestSnapshotLoadedAfterChecksumsOthersRetroactively (0.03s) PASS -ok github.com/theupdateframework/notary/tuf 0.294s +ok github.com/theupdateframework/notary/tuf 0.516s === RUN TestMergeStrSlicesExclusive --- PASS: TestMergeStrSlicesExclusive (0.00s) === RUN TestMergeStrSlicesOverlap @@ -3775,7 +3811,7 @@ === RUN TestFileMetaEquals --- PASS: TestFileMetaEquals (0.00s) PASS -ok github.com/theupdateframework/notary/tuf/data 0.058s +ok github.com/theupdateframework/notary/tuf/data 0.056s === RUN TestListKeys --- PASS: TestListKeys (0.01s) === RUN TestGetKeys @@ -3789,7 +3825,7 @@ === RUN TestSignReturnsNoSigs --- PASS: TestSignReturnsNoSigs (0.00s) === RUN TestSignWithX509 ---- PASS: TestSignWithX509 (0.00s) +--- PASS: TestSignWithX509 (0.01s) === RUN TestSignRemovesValidSigByInvalidKey --- PASS: TestSignRemovesValidSigByInvalidKey (0.00s) === RUN TestSignRemovesInvalidSig @@ -3807,7 +3843,7 @@ === RUN TestRSAPSSVerifierWithInvalidKeyType --- PASS: TestRSAPSSVerifierWithInvalidKeyType (0.00s) === RUN TestRSAPSSVerifierWithInvalidKeyLength ---- PASS: TestRSAPSSVerifierWithInvalidKeyLength (0.02s) +--- PASS: TestRSAPSSVerifierWithInvalidKeyLength (0.09s) === RUN TestRSAPSSVerifierWithInvalidKey --- PASS: TestRSAPSSVerifierWithInvalidKey (0.00s) === RUN TestRSAPSSVerifierWithInvalidSignature @@ -3821,12 +3857,12 @@ === RUN TestRSAPKCS1v15VerifierWithInvalidKey --- PASS: TestRSAPKCS1v15VerifierWithInvalidKey (0.00s) === RUN TestRSAPKCS1v15VerifierWithInvalidSignature -time="2025-12-09T04:23:20Z" level=error msg="Failed verification: crypto/rsa: verification error" ---- PASS: TestRSAPKCS1v15VerifierWithInvalidSignature (0.00s) +time="2025-12-09T04:27:21Z" level=error msg="Failed verification: crypto/rsa: verification error" +--- PASS: TestRSAPKCS1v15VerifierWithInvalidSignature (0.01s) === RUN TestECDSAVerifier --- PASS: TestECDSAVerifier (0.00s) === RUN TestECDSAVerifierOtherCurves ---- PASS: TestECDSAVerifierOtherCurves (0.03s) +--- PASS: TestECDSAVerifierOtherCurves (0.05s) === RUN TestECDSAx509Verifier --- PASS: TestECDSAx509Verifier (0.00s) === RUN TestECDSAVerifierWithInvalidKeyType @@ -3864,14 +3900,14 @@ === RUN TestVerifyVersion --- PASS: TestVerifyVersion (0.00s) === RUN TestVerifyExpiry -time="2025-12-09T04:23:20Z" level=error msg="Metadata for root expired" +time="2025-12-09T04:27:21Z" level=error msg="Metadata for root expired" --- PASS: TestVerifyExpiry (0.00s) === RUN TestVerifyPublicKeyMatchesPrivateKeyHappyCase --- PASS: TestVerifyPublicKeyMatchesPrivateKeyHappyCase (0.00s) === RUN TestVerifyPublicKeyMatchesPrivateKeyFails --- PASS: TestVerifyPublicKeyMatchesPrivateKeyFails (0.00s) PASS -ok github.com/theupdateframework/notary/tuf/signed 0.166s +ok github.com/theupdateframework/notary/tuf/signed 0.289s === RUN TestNewSwizzler --- PASS: TestNewSwizzler (0.01s) === RUN TestSwizzlerSetInvalidJSON @@ -3879,7 +3915,7 @@ === RUN TestSwizzlerAddExtraSpace --- PASS: TestSwizzlerAddExtraSpace (0.01s) === RUN TestSwizzlerSetInvalidSigned ---- PASS: TestSwizzlerSetInvalidSigned (0.01s) +--- PASS: TestSwizzlerSetInvalidSigned (0.02s) === RUN TestSwizzlerSetInvalidSignedMeta --- PASS: TestSwizzlerSetInvalidSignedMeta (0.01s) === RUN TestSwizzlerSetInvalidMetadataType @@ -3887,13 +3923,13 @@ === RUN TestSwizzlerInvalidateMetadataSignatures --- PASS: TestSwizzlerInvalidateMetadataSignatures (0.01s) === RUN TestSwizzlerRemoveMetadata ---- PASS: TestSwizzlerRemoveMetadata (0.00s) +--- PASS: TestSwizzlerRemoveMetadata (0.01s) === RUN TestSwizzlerSignMetadataWithInvalidKey --- PASS: TestSwizzlerSignMetadataWithInvalidKey (0.01s) === RUN TestSwizzlerOffsetMetadataVersion ---- PASS: TestSwizzlerOffsetMetadataVersion (0.01s) +--- PASS: TestSwizzlerOffsetMetadataVersion (0.02s) === RUN TestSwizzlerExpireMetadata ---- PASS: TestSwizzlerExpireMetadata (0.01s) +--- PASS: TestSwizzlerExpireMetadata (0.02s) === RUN TestSwizzlerSetThresholdBaseRole --- PASS: TestSwizzlerSetThresholdBaseRole (0.01s) === RUN TestSwizzlerSetThresholdDelegatedRole @@ -3901,7 +3937,7 @@ === RUN TestSwizzlerChangeRootKey --- PASS: TestSwizzlerChangeRootKey (0.01s) === RUN TestSwizzlerUpdateSnapshotHashesSpecifiedRoles ---- PASS: TestSwizzlerUpdateSnapshotHashesSpecifiedRoles (0.01s) +--- PASS: TestSwizzlerUpdateSnapshotHashesSpecifiedRoles (0.00s) === RUN TestSwizzlerUpdateSnapshotHashesNoSpecifiedRoles --- PASS: TestSwizzlerUpdateSnapshotHashesNoSpecifiedRoles (0.01s) === RUN TestSwizzlerUpdateTimestamp @@ -3911,21 +3947,21 @@ === RUN TestSwizzlerMutateRoot --- PASS: TestSwizzlerMutateRoot (0.01s) === RUN TestSwizzlerMutateTimestamp ---- PASS: TestSwizzlerMutateTimestamp (0.00s) +--- PASS: TestSwizzlerMutateTimestamp (0.01s) === RUN TestSwizzlerMutateSnapshot ---- PASS: TestSwizzlerMutateSnapshot (0.00s) +--- PASS: TestSwizzlerMutateSnapshot (0.01s) === RUN TestSwizzlerMutateTargets ---- PASS: TestSwizzlerMutateTargets (0.00s) +--- PASS: TestSwizzlerMutateTargets (0.01s) === RUN TestSwizzlerRotateKeyBaseRole ---- PASS: TestSwizzlerRotateKeyBaseRole (0.01s) +--- PASS: TestSwizzlerRotateKeyBaseRole (0.02s) === RUN TestSwizzlerRotateKeyDelegationRole --- PASS: TestSwizzlerRotateKeyDelegationRole (0.00s) PASS -ok github.com/theupdateframework/notary/tuf/testutils 0.206s +ok github.com/theupdateframework/notary/tuf/testutils 0.360s === RUN TestConvertTUFKeyToPKCS8 ---- PASS: TestConvertTUFKeyToPKCS8 (0.03s) +--- PASS: TestConvertTUFKeyToPKCS8 (0.04s) === RUN TestParsePKCS8ToTufKey ---- PASS: TestParsePKCS8ToTufKey (0.05s) +--- PASS: TestParsePKCS8ToTufKey (0.10s) === RUN TestPEMtoPEM --- PASS: TestPEMtoPEM (0.00s) === RUN TestRoleListLen @@ -3971,7 +4007,7 @@ === RUN TestNewCertificate --- PASS: TestNewCertificate (0.00s) === RUN TestKeyOperations ---- PASS: TestKeyOperations (0.01s) +--- PASS: TestKeyOperations (0.03s) === RUN TestRSAX509PublickeyID --- PASS: TestRSAX509PublickeyID (0.00s) === RUN TestECDSAX509PublickeyID @@ -3987,9 +4023,9 @@ === RUN TestValidateCertificateWithInvalidExpiry --- PASS: TestValidateCertificateWithInvalidExpiry (0.00s) === RUN TestValidateCertificateWithShortKey ---- PASS: TestValidateCertificateWithShortKey (0.04s) +--- PASS: TestValidateCertificateWithShortKey (0.11s) PASS -ok github.com/theupdateframework/notary/tuf/utils 0.161s +ok github.com/theupdateframework/notary/tuf/utils 0.348s === RUN TestNewSerializableErrorNonValidationError --- PASS: TestNewSerializableErrorNonValidationError (0.00s) === RUN TestNewSerializableErrorValidationError @@ -4005,9 +4041,9 @@ === RUN TestUnmarshalInvalidJSON --- PASS: TestUnmarshalInvalidJSON (0.00s) PASS -ok github.com/theupdateframework/notary/tuf/validation 0.042s +ok github.com/theupdateframework/notary/tuf/validation 0.060s === RUN TestSetSignalTrap ---- PASS: TestSetSignalTrap (0.00s) +--- PASS: TestSetSignalTrap (0.02s) === 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 @@ -4069,7 +4105,7 @@ === RUN TestParseTLSWithTLS --- PASS: TestParseTLSWithTLS (0.00s) === RUN TestParseTLSWithTLSRelativeToConfigFile ---- PASS: TestParseTLSWithTLSRelativeToConfigFile (0.00s) +--- PASS: TestParseTLSWithTLSRelativeToConfigFile (0.01s) === RUN TestParseTLSWithEnvironmentVariables --- PASS: TestParseTLSWithEnvironmentVariables (0.00s) === RUN TestParseViperWithInvalidFile @@ -4105,7 +4141,7 @@ === RUN TestDoAuthWildcardImage --- PASS: TestDoAuthWildcardImage (0.00s) PASS -ok github.com/theupdateframework/notary/utils 0.031s +ok github.com/theupdateframework/notary/utils 0.104s create-stamp debian/debhelper-build-stamp dh_testroot -O--builddirectory=/build/reproducible-path/notary-0.7.0\+git20240416.9d2b3b3\+ds1/_build -O--buildsystem=golang dh_prep -O--builddirectory=/build/reproducible-path/notary-0.7.0\+git20240416.9d2b3b3\+ds1/_build -O--buildsystem=golang @@ -4142,9 +4178,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-dbgsym' in '../notary-dbgsym_0.7.0+git20240416.9d2b3b3+ds1-2_arm64.deb'. dpkg-deb: building package 'notary' in '../notary_0.7.0+git20240416.9d2b3b3+ds1-2_arm64.deb'. dpkg-deb: building package 'golang-github-docker-notary-dev' in '../golang-github-docker-notary-dev_0.7.0+git20240416.9d2b3b3+ds1-2_all.deb'. -dpkg-deb: building package 'notary-dbgsym' in '../notary-dbgsym_0.7.0+git20240416.9d2b3b3+ds1-2_arm64.deb'. dpkg-genbuildinfo --build=binary -O../notary_0.7.0+git20240416.9d2b3b3+ds1-2_arm64.buildinfo dpkg-genchanges --build=binary -O../notary_0.7.0+git20240416.9d2b3b3+ds1-2_arm64.changes dpkg-genchanges: info: binary-only upload (no source code included) @@ -4152,12 +4188,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: including full source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/827934/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/827934/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/839348 and its subdirectories -I: Current time: Mon Dec 8 16:24:11 -12 2025 -I: pbuilder-time-stamp: 1765254251 +I: removing directory /srv/workspace/pbuilder/827934 and its subdirectories +I: Current time: Tue Dec 9 18:28:35 +14 2025 +I: pbuilder-time-stamp: 1765254515