Diff of the two buildlogs: -- --- b1/build.log 2024-05-07 14:59:19.364077757 +0000 +++ b2/build.log 2024-05-07 15:19:53.359550585 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Tue May 7 02:52:16 -12 2024 -I: pbuilder-time-stamp: 1715093536 +I: Current time: Wed May 8 04:59:35 +14 2024 +I: pbuilder-time-stamp: 1715093975 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/trixie-reproducible-base.tgz] I: copying local configuration @@ -36,52 +36,84 @@ dpkg-source: info: applying 014-switch-webauthn-library.patch I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/29936/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/21835/tmp/hooks/D01_modify_environment starting +debug: Running on cbxi4a. +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 May 7 15:00 /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/21835/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/21835/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='armhf' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=3 ' - DISTRIBUTION='trixie' - HOME='/root' - HOST_ARCH='armhf' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="2" [2]="21" [3]="1" [4]="release" [5]="arm-unknown-linux-gnueabihf") + BASH_VERSION='5.2.21(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=armhf + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=4 ' + DIRSTACK=() + DISTRIBUTION=trixie + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=arm + HOST_ARCH=armhf IFS=' ' - INVOCATION_ID='e4734102078a4fe0b2f33b37fce54cf9' - 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='29936' - PS1='# ' - PS2='> ' + INVOCATION_ID=3ab20bebf41d4657907e43cc27901a97 + LANG=C + LANGUAGE=it_CH:it + LC_ALL=C + MACHTYPE=arm-unknown-linux-gnueabihf + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnueabihf + 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=21835 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.c3qmCz67/pbuilderrc_7UTD --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.c3qmCz67/b1 --logfile b1/build.log golang-github-canonical-candid_1.12.3-1.dsc' - SUDO_GID='113' - SUDO_UID='107' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://10.0.0.15:3142/' + 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.c3qmCz67/pbuilderrc_AVB9 --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.c3qmCz67/b2 --logfile b2/build.log golang-github-canonical-candid_1.12.3-1.dsc' + SUDO_GID=113 + SUDO_UID=107 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://10.0.0.15:3142/ I: uname -a - Linux virt64c 6.1.0-21-arm64 #1 SMP Debian 6.1.90-1 (2024-05-03) aarch64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-21-armmp #1 SMP Debian 6.1.90-1 (2024-05-03) armv7l GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 May 7 11:24 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/29936/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 May 6 11:27 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/21835/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -382,7 +414,7 @@ Get: 177 http://deb.debian.org/debian trixie/main armhf golang-github-mwitkow-go-conntrack-dev all 0.0~git20190716.2f06839-3 [14.6 kB] Get: 178 http://deb.debian.org/debian trixie/main armhf golang-gopkg-goose.v1-dev all 0.0~git20170406.3228e4f-4 [97.8 kB] Get: 179 http://deb.debian.org/debian trixie/main armhf golang-gopkg-natefinch-lumberjack.v2-dev all 2.1-2 [13.1 kB] -Fetched 103 MB in 2s (42.4 MB/s) +Fetched 103 MB in 14s (7416 kB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package sensible-utils. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19444 files and directories currently installed.) @@ -1113,7 +1145,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/golang-github-canonical-candid-1.12.3/ && 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 > ../golang-github-canonical-candid_1.12.3-1_source.changes +I: user script /srv/workspace/pbuilder/21835/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for trixie +I: user script /srv/workspace/pbuilder/21835/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/golang-github-canonical-candid-1.12.3/ && 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 > ../golang-github-canonical-candid_1.12.3-1_source.changes dpkg-buildpackage: info: source package golang-github-canonical-candid dpkg-buildpackage: info: source version 1.12.3-1 dpkg-buildpackage: info: source distribution unstable @@ -1131,7 +1167,7 @@ dh_autoreconf -O--builddirectory=_build -O--buildsystem=golang dh_auto_configure -O--builddirectory=_build -O--buildsystem=golang dh_auto_test -O--builddirectory=_build -O--buildsystem=golang - cd _build && go test -vet=off -v -p 3 github.com/canonical/candid github.com/canonical/candid/candidclient github.com/canonical/candid/candidclient/redirect github.com/canonical/candid/candidclient/ussodischarge github.com/canonical/candid/candidclient/ussologin github.com/canonical/candid/candidtest github.com/canonical/candid/cmd/candid github.com/canonical/candid/cmd/candid/internal/admincmd github.com/canonical/candid/cmd/candidsrv github.com/canonical/candid/cmd/migrate-db github.com/canonical/candid/cmd/migrate-db/internal github.com/canonical/candid/cmd/migrate-db/internal/mongodoc github.com/canonical/candid/config github.com/canonical/candid/idp github.com/canonical/candid/idp/adfs github.com/canonical/candid/idp/agent github.com/canonical/candid/idp/azure github.com/canonical/candid/idp/google github.com/canonical/candid/idp/idptest github.com/canonical/candid/idp/idputil github.com/canonical/candid/idp/idputil/msgraph github.com/canonical/candid/idp/idputil/secret github.com/canonical/candid/idp/keycloak github.com/canonical/candid/idp/keystone github.com/canonical/candid/idp/keystone/internal/keystone github.com/canonical/candid/idp/keystone/internal/mockkeystone github.com/canonical/candid/idp/ldap github.com/canonical/candid/idp/openid github.com/canonical/candid/idp/static github.com/canonical/candid/idp/usso github.com/canonical/candid/idp/usso/internal/kvnoncestore github.com/canonical/candid/idp/usso/internal/mockusso github.com/canonical/candid/idp/usso/ussodischarge github.com/canonical/candid/idp/usso/ussodischarge/cmd/login github.com/canonical/candid/idp/usso/ussooauth github.com/canonical/candid/internal/auth github.com/canonical/candid/internal/auth/httpauth github.com/canonical/candid/internal/candidtest github.com/canonical/candid/internal/debug github.com/canonical/candid/internal/discharger github.com/canonical/candid/internal/discharger/internal github.com/canonical/candid/internal/identity github.com/canonical/candid/internal/mfa github.com/canonical/candid/internal/monitoring github.com/canonical/candid/internal/v1 github.com/canonical/candid/meeting github.com/canonical/candid/params github.com/canonical/candid/store github.com/canonical/candid/store/memstore github.com/canonical/candid/store/mgostore github.com/canonical/candid/store/sqlstore github.com/canonical/candid/store/storetest github.com/canonical/candid/version + cd _build && go test -vet=off -v -p 4 github.com/canonical/candid github.com/canonical/candid/candidclient github.com/canonical/candid/candidclient/redirect github.com/canonical/candid/candidclient/ussodischarge github.com/canonical/candid/candidclient/ussologin github.com/canonical/candid/candidtest github.com/canonical/candid/cmd/candid github.com/canonical/candid/cmd/candid/internal/admincmd github.com/canonical/candid/cmd/candidsrv github.com/canonical/candid/cmd/migrate-db github.com/canonical/candid/cmd/migrate-db/internal github.com/canonical/candid/cmd/migrate-db/internal/mongodoc github.com/canonical/candid/config github.com/canonical/candid/idp github.com/canonical/candid/idp/adfs github.com/canonical/candid/idp/agent github.com/canonical/candid/idp/azure github.com/canonical/candid/idp/google github.com/canonical/candid/idp/idptest github.com/canonical/candid/idp/idputil github.com/canonical/candid/idp/idputil/msgraph github.com/canonical/candid/idp/idputil/secret github.com/canonical/candid/idp/keycloak github.com/canonical/candid/idp/keystone github.com/canonical/candid/idp/keystone/internal/keystone github.com/canonical/candid/idp/keystone/internal/mockkeystone github.com/canonical/candid/idp/ldap github.com/canonical/candid/idp/openid github.com/canonical/candid/idp/static github.com/canonical/candid/idp/usso github.com/canonical/candid/idp/usso/internal/kvnoncestore github.com/canonical/candid/idp/usso/internal/mockusso github.com/canonical/candid/idp/usso/ussodischarge github.com/canonical/candid/idp/usso/ussodischarge/cmd/login github.com/canonical/candid/idp/usso/ussooauth github.com/canonical/candid/internal/auth github.com/canonical/candid/internal/auth/httpauth github.com/canonical/candid/internal/candidtest github.com/canonical/candid/internal/debug github.com/canonical/candid/internal/discharger github.com/canonical/candid/internal/discharger/internal github.com/canonical/candid/internal/identity github.com/canonical/candid/internal/mfa github.com/canonical/candid/internal/monitoring github.com/canonical/candid/internal/v1 github.com/canonical/candid/meeting github.com/canonical/candid/params github.com/canonical/candid/store github.com/canonical/candid/store/memstore github.com/canonical/candid/store/mgostore github.com/canonical/candid/store/sqlstore github.com/canonical/candid/store/storetest github.com/canonical/candid/version === RUN TestServer === RUN TestServer/TestNewServerRemovesAgentIDP === RUN TestServer/TestNewServerWithNoVersions @@ -1139,26 +1175,26 @@ === RUN TestServer/TestNewServerWithVersions http.go:99: JSON call, url "/debug/info" === RUN TestServer/TestVersions ---- PASS: TestServer (0.02s) - --- PASS: TestServer/TestNewServerRemovesAgentIDP (0.01s) +--- PASS: TestServer (0.05s) + --- PASS: TestServer/TestNewServerRemovesAgentIDP (0.02s) --- PASS: TestServer/TestNewServerWithNoVersions (0.00s) --- PASS: TestServer/TestNewServerWithUnregisteredVersion (0.00s) - --- PASS: TestServer/TestNewServerWithVersions (0.01s) + --- PASS: TestServer/TestNewServerWithVersions (0.03s) --- PASS: TestServer/TestVersions (0.00s) PASS -ok github.com/canonical/candid 0.051s +ok github.com/canonical/candid 0.143s === RUN TestIdentityClient ---- PASS: TestIdentityClient (0.11s) +--- PASS: TestIdentityClient (0.30s) === RUN TestIdentityClientWithDomainStrip ---- PASS: TestIdentityClientWithDomainStrip (0.14s) +--- PASS: TestIdentityClientWithDomainStrip (0.25s) === RUN TestIdentityClientWithDomainStripNoDomains ---- PASS: TestIdentityClientWithDomainStripNoDomains (0.13s) +--- PASS: TestIdentityClientWithDomainStripNoDomains (0.25s) === RUN TestPermChecker ---- PASS: TestPermChecker (0.12s) +--- PASS: TestPermChecker (0.35s) === RUN TestGroupCache ---- PASS: TestGroupCache (0.12s) +--- PASS: TestGroupCache (0.39s) PASS -ok github.com/canonical/candid/candidclient 0.653s +ok github.com/canonical/candid/candidclient 1.656s === RUN TestRedirectURL --- PASS: TestRedirectURL (0.00s) === RUN TestInteractor @@ -1166,7 +1202,7 @@ === RUN TestParseLoginResult --- PASS: TestParseLoginResult (0.00s) PASS -ok github.com/canonical/candid/candidclient/redirect 0.041s +ok github.com/canonical/candid/candidclient/redirect 0.065s === RUN TestClient === RUN TestClient/TestAcquireDischarge === RUN TestClient/TestAcquireDischargeError @@ -1177,14 +1213,14 @@ === RUN TestClient/TestVisitor === RUN TestClient/TestVisitorFunctionError === RUN TestClient/TestVisitorMethodNotSupported ---- PASS: TestClient (0.03s) +--- PASS: TestClient (0.07s) --- PASS: TestClient/TestAcquireDischarge (0.01s) - --- PASS: TestClient/TestAcquireDischargeError (0.00s) - --- PASS: TestClient/TestDischargeAll (0.00s) + --- PASS: TestClient/TestAcquireDischargeError (0.01s) + --- PASS: TestClient/TestDischargeAll (0.01s) --- PASS: TestClient/TestDischargeAllError (0.01s) --- PASS: TestClient/TestMacaroon (0.01s) - --- PASS: TestClient/TestMacaroonError (0.00s) - --- PASS: TestClient/TestVisitor (0.00s) + --- PASS: TestClient/TestMacaroonError (0.01s) + --- PASS: TestClient/TestVisitor (0.01s) --- PASS: TestClient/TestVisitorFunctionError (0.00s) --- PASS: TestClient/TestVisitorMethodNotSupported (0.00s) === RUN TestUnmarshalUSSOMacaroon @@ -1196,9 +1232,9 @@ === RUN TestUnmarshalUSSOMacaroonBadBinary --- PASS: TestUnmarshalUSSOMacaroonBadBinary (0.00s) PASS -ok github.com/canonical/candid/candidclient/ussodischarge 0.049s +ok github.com/canonical/candid/candidclient/ussodischarge 0.149s === RUN TestPutGetToken ---- PASS: TestPutGetToken (0.01s) +--- PASS: TestPutGetToken (0.02s) === RUN TestReadInvalidToken --- PASS: TestReadInvalidToken (0.00s) === RUN TestTokenInStore @@ -1218,21 +1254,21 @@ === RUN TestInteractGetTokenError --- PASS: TestInteractGetTokenError (0.00s) === RUN TestAuthenticatedRequest ---- PASS: TestAuthenticatedRequest (0.01s) +--- PASS: TestAuthenticatedRequest (0.02s) === RUN TestAuthenticatedRequestError ---- PASS: TestAuthenticatedRequestError (0.00s) +--- PASS: TestAuthenticatedRequestError (0.02s) PASS -ok github.com/canonical/candid/candidclient/ussologin 0.053s +ok github.com/canonical/candid/candidclient/ussologin 0.236s === RUN TestDischarge ---- PASS: TestDischarge (0.15s) +--- PASS: TestDischarge (0.50s) === RUN TestDischargeDefaultUser ---- PASS: TestDischargeDefaultUser (0.11s) +--- PASS: TestDischargeDefaultUser (0.23s) === RUN TestGroups ---- PASS: TestGroups (0.16s) +--- PASS: TestGroups (0.32s) === RUN TestAddUserWithExistingGroups ---- PASS: TestAddUserWithExistingGroups (0.11s) +--- PASS: TestAddUserWithExistingGroups (0.21s) PASS -ok github.com/canonical/candid/candidtest 0.576s +ok github.com/canonical/candid/candidtest 1.451s ? github.com/canonical/candid/cmd/candid [no test files] === RUN TestACL === RUN TestACL/TestACLGrant @@ -1245,17 +1281,17 @@ === RUN TestACL/TestACLShowInvalid === RUN TestACL/TestACLShowNoACL === RUN TestACL/TestACLShowTwoACLs ---- PASS: TestACL (0.34s) - --- PASS: TestACL/TestACLGrant (0.07s) - --- PASS: TestACL/TestACLGrantInvalid (0.04s) - --- PASS: TestACL/TestACLGrantNoArguments (0.01s) - --- PASS: TestACL/TestACLRevoke (0.06s) - --- PASS: TestACL/TestACLRevokeInvalid (0.03s) - --- PASS: TestACL/TestACLRevokeNoArguments (0.01s) - --- PASS: TestACL/TestACLShow (0.03s) - --- PASS: TestACL/TestACLShowInvalid (0.04s) - --- PASS: TestACL/TestACLShowNoACL (0.02s) - --- PASS: TestACL/TestACLShowTwoACLs (0.02s) +--- PASS: TestACL (0.66s) + --- PASS: TestACL/TestACLGrant (0.11s) + --- PASS: TestACL/TestACLGrantInvalid (0.09s) + --- PASS: TestACL/TestACLGrantNoArguments (0.02s) + --- PASS: TestACL/TestACLRevoke (0.08s) + --- PASS: TestACL/TestACLRevokeInvalid (0.09s) + --- PASS: TestACL/TestACLRevokeNoArguments (0.03s) + --- PASS: TestACL/TestACLShow (0.08s) + --- PASS: TestACL/TestACLShowInvalid (0.10s) + --- PASS: TestACL/TestACLShowNoACL (0.03s) + --- PASS: TestACL/TestACLShowTwoACLs (0.03s) === RUN TestAddGroup === RUN TestAddGroup/TestAddGroup === RUN TestAddGroup/TestAddGroupForEmail @@ -1263,19 +1299,19 @@ === RUN TestAddGroup/TestAddGroupForEmailNotFound === RUN TestAddGroup/TestAddGroupNoUser === RUN TestAddGroup/TestAddGroupUserAndEmail ---- PASS: TestAddGroup (0.25s) - --- PASS: TestAddGroup/TestAddGroup (0.04s) - --- PASS: TestAddGroup/TestAddGroupForEmail (0.06s) - --- PASS: TestAddGroup/TestAddGroupForEmailMultipleUsers (0.06s) - --- PASS: TestAddGroup/TestAddGroupForEmailNotFound (0.06s) - --- PASS: TestAddGroup/TestAddGroupNoUser (0.02s) - --- PASS: TestAddGroup/TestAddGroupUserAndEmail (0.02s) +--- PASS: TestAddGroup (0.74s) + --- PASS: TestAddGroup/TestAddGroup (0.14s) + --- PASS: TestAddGroup/TestAddGroupForEmail (0.13s) + --- PASS: TestAddGroup/TestAddGroupForEmailMultipleUsers (0.19s) + --- PASS: TestAddGroup/TestAddGroupForEmailNotFound (0.16s) + --- PASS: TestAddGroup/TestAddGroupNoUser (0.06s) + --- PASS: TestAddGroup/TestAddGroupUserAndEmail (0.06s) === RUN TestClearMFACredentials === RUN TestClearMFACredentials/TestClearMFACredentials ---- PASS: TestClearMFACredentials (0.05s) - --- PASS: TestClearMFACredentials/TestClearMFACredentials (0.05s) +--- PASS: TestClearMFACredentials (0.15s) + --- PASS: TestClearMFACredentials/TestClearMFACredentials (0.15s) === RUN TestLoadCACerts ---- PASS: TestLoadCACerts (0.12s) +--- PASS: TestLoadCACerts (0.22s) === RUN TestCreateAgent === RUN TestCreateAgent/TestCreateAgentWithAdminFlag === RUN TestCreateAgent/TestCreateAgentWithExistingAgentsFile @@ -1286,13 +1322,13 @@ create-agent_test.go:53: test 0: agent file and agent key specified together create-agent_test.go:53: test 1: empty public key create-agent_test.go:53: test 2: invalid public key ---- PASS: TestCreateAgent (0.25s) - --- PASS: TestCreateAgent/TestCreateAgentWithAdminFlag (0.02s) - --- PASS: TestCreateAgent/TestCreateAgentWithExistingAgentsFile (0.07s) - --- PASS: TestCreateAgent/TestCreateAgentWithGeneratedKeyAndAgentFileNotSpecified (0.06s) - --- PASS: TestCreateAgent/TestCreateAgentWithNonExistentAgentsFileSpecified (0.03s) - --- PASS: TestCreateAgent/TestCreateAgentWithParentFlag (0.04s) - --- PASS: TestCreateAgent/TestUsage (0.04s) +--- PASS: TestCreateAgent (0.72s) + --- PASS: TestCreateAgent/TestCreateAgentWithAdminFlag (0.04s) + --- PASS: TestCreateAgent/TestCreateAgentWithExistingAgentsFile (0.09s) + --- PASS: TestCreateAgent/TestCreateAgentWithGeneratedKeyAndAgentFileNotSpecified (0.14s) + --- PASS: TestCreateAgent/TestCreateAgentWithNonExistentAgentsFileSpecified (0.21s) + --- PASS: TestCreateAgent/TestCreateAgentWithParentFlag (0.16s) + --- PASS: TestCreateAgent/TestUsage (0.08s) === RUN TestFind === RUN TestFind/TestFindEmail === RUN TestFind/TestFindEmailNotFound @@ -1301,23 +1337,23 @@ === RUN TestFind/TestFindNoParameters === RUN TestFind/TestFindWithEmail === RUN TestFind/TestFindWithEmailAndGravatar ---- PASS: TestFind (0.33s) - --- PASS: TestFind/TestFindEmail (0.04s) - --- PASS: TestFind/TestFindEmailNotFound (0.04s) - --- PASS: TestFind/TestFindLastDischargeTime (0.04s) - --- PASS: TestFind/TestFindLastLoginTime (0.05s) - --- PASS: TestFind/TestFindNoParameters (0.05s) - --- PASS: TestFind/TestFindWithEmail (0.06s) - --- PASS: TestFind/TestFindWithEmailAndGravatar (0.04s) +--- PASS: TestFind (0.68s) + --- PASS: TestFind/TestFindEmail (0.10s) + --- PASS: TestFind/TestFindEmailNotFound (0.10s) + --- PASS: TestFind/TestFindLastDischargeTime (0.08s) + --- PASS: TestFind/TestFindLastLoginTime (0.08s) + --- PASS: TestFind/TestFindNoParameters (0.07s) + --- PASS: TestFind/TestFindWithEmail (0.12s) + --- PASS: TestFind/TestFindWithEmailAndGravatar (0.14s) === RUN TestRemoveGroup === RUN TestRemoveGroup/TestRemoveGroup === RUN TestRemoveGroup/TestRemoveGroupForEmail === RUN TestRemoveGroup/TestRemoveGroupForEmailNotFound === RUN TestRemoveGroup/TestRemoveGroupNoUser ---- PASS: TestRemoveGroup (0.16s) - --- PASS: TestRemoveGroup/TestRemoveGroup (0.06s) - --- PASS: TestRemoveGroup/TestRemoveGroupForEmail (0.05s) - --- PASS: TestRemoveGroup/TestRemoveGroupForEmailNotFound (0.03s) +--- PASS: TestRemoveGroup (0.26s) + --- PASS: TestRemoveGroup/TestRemoveGroup (0.09s) + --- PASS: TestRemoveGroup/TestRemoveGroupForEmail (0.07s) + --- PASS: TestRemoveGroup/TestRemoveGroupForEmailNotFound (0.07s) --- PASS: TestRemoveGroup/TestRemoveGroupNoUser (0.02s) === RUN TestShow === RUN TestShow/TestShowAgentUser @@ -1329,21 +1365,21 @@ === RUN TestShow/TestShowUserJSON === RUN TestShow/TestShowUserWithAgentEnv === RUN TestShow/TestShowZeroValues ---- PASS: TestShow (0.39s) - --- PASS: TestShow/TestShowAgentUser (0.04s) - --- PASS: TestShow/TestShowEmail (0.04s) - --- PASS: TestShow/TestShowEmailNotFound (0.05s) - --- PASS: TestShow/TestShowNoParameters (0.01s) - --- PASS: TestShow/TestShowUser (0.05s) - --- PASS: TestShow/TestShowUserError (0.06s) - --- PASS: TestShow/TestShowUserJSON (0.04s) - --- PASS: TestShow/TestShowUserWithAgentEnv (0.06s) - --- PASS: TestShow/TestShowZeroValues (0.05s) +--- PASS: TestShow (0.72s) + --- PASS: TestShow/TestShowAgentUser (0.07s) + --- PASS: TestShow/TestShowEmail (0.16s) + --- PASS: TestShow/TestShowEmailNotFound (0.08s) + --- PASS: TestShow/TestShowNoParameters (0.03s) + --- PASS: TestShow/TestShowUser (0.07s) + --- PASS: TestShow/TestShowUserError (0.07s) + --- PASS: TestShow/TestShowUserJSON (0.08s) + --- PASS: TestShow/TestShowUserWithAgentEnv (0.07s) + --- PASS: TestShow/TestShowZeroValues (0.08s) PASS -ok github.com/canonical/candid/cmd/candid/internal/admincmd 1.975s +ok github.com/canonical/candid/cmd/candid/internal/admincmd 4.220s ? github.com/canonical/candid/cmd/candidsrv [no test files] -? github.com/canonical/candid/cmd/migrate-db [no test files] ? github.com/canonical/candid/cmd/migrate-db/internal/mongodoc [no test files] +? github.com/canonical/candid/cmd/migrate-db [no test files] === RUN TestSplitStoreSpecification migrate_test.go:51: 0. postgres:host=/var/run/postgresql migrate_test.go:51: 1. legacy: @@ -1362,35 +1398,35 @@ === RUN TestCopySrcError --- PASS: TestCopySrcError (0.00s) === RUN TestCopyDstError -2024/05/07 14:57:43 error checking destination store: test error +2024/05/07 15:17:06 error checking destination store: test error --- PASS: TestCopyDstError (0.01s) PASS -ok github.com/canonical/candid/cmd/migrate-db/internal 0.051s +ok github.com/canonical/candid/cmd/migrate-db/internal 0.066s ? github.com/canonical/candid/idp [no test files] === RUN TestRead --- PASS: TestRead (0.01s) === RUN TestReadErrorNotFound --- PASS: TestReadErrorNotFound (0.00s) === RUN TestReadErrorEmpty ---- PASS: TestReadErrorEmpty (0.01s) +--- PASS: TestReadErrorEmpty (0.00s) === RUN TestReadErrorInvalidYAML --- PASS: TestReadErrorInvalidYAML (0.00s) === RUN TestUnrecognisedIDP --- PASS: TestUnrecognisedIDP (0.00s) PASS -ok github.com/canonical/candid/config 0.084s +ok github.com/canonical/candid/config 0.075s === RUN TestConfig === RUN TestConfig/good_config === RUN TestConfig/no_client-id === RUN TestConfig/no_client-secret === RUN TestConfig/no_issuer ---- PASS: TestConfig (0.00s) +--- PASS: TestConfig (0.01s) --- PASS: TestConfig/good_config (0.00s) --- PASS: TestConfig/no_client-id (0.00s) --- PASS: TestConfig/no_client-secret (0.00s) --- PASS: TestConfig/no_issuer (0.00s) PASS -ok github.com/canonical/candid/idp/adfs 0.050s +ok github.com/canonical/candid/idp/adfs 0.068s === RUN TestConfig --- PASS: TestConfig (0.00s) === RUN TestName @@ -1408,17 +1444,17 @@ === RUN TestInitProducesError --- PASS: TestInitProducesError (0.00s) PASS -ok github.com/canonical/candid/idp/agent 0.036s +ok github.com/canonical/candid/idp/agent 0.050s === RUN TestConfig === RUN TestConfig/good_config === RUN TestConfig/no_client-id === RUN TestConfig/no_client-secret ---- PASS: TestConfig (0.01s) +--- PASS: TestConfig (0.00s) --- PASS: TestConfig/good_config (0.00s) --- PASS: TestConfig/no_client-id (0.00s) --- PASS: TestConfig/no_client-secret (0.00s) PASS -ok github.com/canonical/candid/idp/azure 0.053s +ok github.com/canonical/candid/idp/azure 0.059s === RUN TestConfig === RUN TestConfig/good_config === RUN TestConfig/no_client-id @@ -1428,72 +1464,72 @@ --- PASS: TestConfig/no_client-id (0.00s) --- PASS: TestConfig/no_client-secret (0.00s) PASS -ok github.com/canonical/candid/idp/google 0.040s +ok github.com/canonical/candid/idp/google 0.059s +? github.com/canonical/candid/idp/idptest [no test files] ? github.com/canonical/candid/idp/idputil [no test files] ? github.com/canonical/candid/idp/idputil/msgraph [no test files] -? github.com/canonical/candid/idp/idptest [no test files] === RUN TestRoundTrip --- PASS: TestRoundTrip (0.01s) === RUN TestDecodeBadBase64 ---- PASS: TestDecodeBadBase64 (0.00s) +--- PASS: TestDecodeBadBase64 (0.01s) === RUN TestDecodeBadPublicKey --- PASS: TestDecodeBadPublicKey (0.01s) === RUN TestDecodeDecryptionError ---- PASS: TestDecodeDecryptionError (0.00s) +--- PASS: TestDecodeDecryptionError (0.01s) === RUN TestDecodeBufferTooShort --- PASS: TestDecodeBufferTooShort (0.01s) === RUN TestDecodeUnmarshalError ---- PASS: TestDecodeUnmarshalError (0.00s) +--- PASS: TestDecodeUnmarshalError (0.01s) === RUN TestEncodeMarshalError ---- PASS: TestEncodeMarshalError (0.00s) +--- PASS: TestEncodeMarshalError (0.01s) === RUN TestCookieRoundTrip --- PASS: TestCookieRoundTrip (0.01s) === RUN TestCookieNoCookie ---- PASS: TestCookieNoCookie (0.00s) +--- PASS: TestCookieNoCookie (0.01s) === RUN TestCookieDecodeError --- PASS: TestCookieDecodeError (0.01s) === RUN TestCookieValidationError ---- PASS: TestCookieValidationError (0.00s) +--- PASS: TestCookieValidationError (0.01s) PASS -ok github.com/canonical/candid/idp/idputil/secret 0.076s +ok github.com/canonical/candid/idp/idputil/secret 0.170s === RUN TestConfig === RUN TestConfig/good_config === RUN TestConfig/another_good_config === RUN TestConfig/no_client-id === RUN TestConfig/no_keycloak-realm ---- PASS: TestConfig (0.01s) +--- PASS: TestConfig (0.02s) --- PASS: TestConfig/good_config (0.00s) - --- PASS: TestConfig/another_good_config (0.00s) + --- PASS: TestConfig/another_good_config (0.01s) --- PASS: TestConfig/no_client-id (0.00s) --- PASS: TestConfig/no_keycloak-realm (0.00s) PASS -ok github.com/canonical/candid/idp/keycloak 0.040s +ok github.com/canonical/candid/idp/keycloak 0.080s ? github.com/canonical/candid/idp/keystone/internal/mockkeystone [no test files] === RUN TestDischarge === RUN TestDischarge/TestFormDischarge logging.go:37: DEBUG candid.internal.identity API error response (bakery): 401 (Unauthorized) macaroon discharge required: authentication required - logging.go:37: DEBUG candid.internal.discharger authorization for &auth.Identity{Identity:store.Identity{ID:"1", ProviderID:"form:abc@openstack", Username:"testuser@openstack", Name:"", Email:"", Groups:[]string(nil), PublicKeys:[]bakery.PublicKey(nil), LastLogin:time.Date(2024, time.May, 7, 14, 57, 59, 961302757, time.Local), LastDischarge:time.Date(1, time.January, 1, 0, 0, 0, 0, time.UTC), ProviderInfo:map[string][]string{"groups":[]string{"abc_project"}}, ExtraInfo:map[string][]string{}, Owner:""}, authorizer:(*auth.Authorizer)(0x2616000), resolvedGroups:[]string(nil)} succeeded + logging.go:37: DEBUG candid.internal.discharger authorization for &auth.Identity{Identity:store.Identity{ID:"1", ProviderID:"form:abc@openstack", Username:"testuser@openstack", Name:"", Email:"", Groups:[]string(nil), PublicKeys:[]bakery.PublicKey(nil), LastLogin:time.Date(2024, time.May, 7, 15, 17, 27, 583003264, time.Local), LastDischarge:time.Date(1, time.January, 1, 0, 0, 0, 0, time.UTC), ProviderInfo:map[string][]string{"groups":[]string{"abc_project"}}, ExtraInfo:map[string][]string{}, Owner:""}, authorizer:(*auth.Authorizer)(0x16116e0), resolvedGroups:[]string(nil)} succeeded logging.go:37: DEBUG candid.internal.identity Closing Server === RUN TestDischarge/TestInteractiveDischarge logging.go:37: DEBUG candid.internal.identity API error response (bakery): 401 (Unauthorized) macaroon discharge required: authentication required - logging.go:37: DEBUG candid.internal.discharger opForRequest &discharger.loginRequest{Route:httprequest.Route{}, Domain:"", DischargeID:"d1a37c77a7a247734b9f05411b6e1ecbcff6490129d4ae4eac5aa1ce3384b664ID"} -> bakery.Op{Entity:"global", Action:"login"} - logging.go:37: DEBUG candid.internal.discharger opForRequest &discharger.redirectLoginRequest{Route:httprequest.Route{}, Domain:"", ReturnTo:"http://127.0.0.1:37201/login-complete", State:"E5ZGVKELR9STaJNibSiJrHCIPxdnxnyKpRc73KxqpjE"} -> bakery.Op{Entity:"global", Action:"login"} - logging.go:37: DEBUG candid.internal.discharger opForRequest &discharger.loginCompleteRequest{Route:httprequest.Route{}, State:"E5ZGVKELR9STaJNibSiJrHCIPxdnxnyKpRc73KxqpjE", Code:"qYvonhMm88paaMckIFdIQt35IAAsS1yw9l3f3tB1NFk", ErrorCode:"", Error:""} -> bakery.Op{Entity:"global", Action:"login"} + logging.go:37: DEBUG candid.internal.discharger opForRequest &discharger.loginRequest{Route:httprequest.Route{}, Domain:"", DischargeID:"4209cb14e1f11e4c118e54f51942e3f4cc8944db4d3e3dedc91d6239ceb989dcID"} -> bakery.Op{Entity:"global", Action:"login"} + logging.go:37: DEBUG candid.internal.discharger opForRequest &discharger.redirectLoginRequest{Route:httprequest.Route{}, Domain:"", ReturnTo:"http://127.0.0.1:36543/login-complete", State:"hmJ5WN3Htp8_5wxNIZ_6Pgghkgv4Zx0fEyaTg_6QgKU"} -> bakery.Op{Entity:"global", Action:"login"} + logging.go:37: DEBUG candid.internal.discharger opForRequest &discharger.loginCompleteRequest{Route:httprequest.Route{}, State:"hmJ5WN3Htp8_5wxNIZ_6Pgghkgv4Zx0fEyaTg_6QgKU", Code:"pHDvFfK7xIOUmLsqNBbAAEtLvJr7EtfsVV6DPdQ33_4", ErrorCode:"", Error:""} -> bakery.Op{Entity:"global", Action:"login"} logging.go:37: WARNING candid.internal.discharger MFA authenticator not specified - logging.go:37: DEBUG candid.internal.discharger opForRequest &discharger.waitTokenRequest{Route:httprequest.Route{}, DischargeID:"d1a37c77a7a247734b9f05411b6e1ecbcff6490129d4ae4eac5aa1ce3384b664ID"} -> bakery.Op{Entity:"global", Action:"login"} - logging.go:37: INFO candid.meeting Wait "d1a37c77a7a247734b9f05411b6e1ecbcff6490129d4ae4eac5aa1ce3384b664ID" - logging.go:37: INFO candid.meeting localWait "d1a37c77a7a247734b9f05411b6e1ecbcff6490129d4ae4eac5aa1ce3384b664ID" + logging.go:37: DEBUG candid.internal.discharger opForRequest &discharger.waitTokenRequest{Route:httprequest.Route{}, DischargeID:"4209cb14e1f11e4c118e54f51942e3f4cc8944db4d3e3dedc91d6239ceb989dcID"} -> bakery.Op{Entity:"global", Action:"login"} + logging.go:37: INFO candid.meeting Wait "4209cb14e1f11e4c118e54f51942e3f4cc8944db4d3e3dedc91d6239ceb989dcID" + logging.go:37: INFO candid.meeting localWait "4209cb14e1f11e4c118e54f51942e3f4cc8944db4d3e3dedc91d6239ceb989dcID" logging.go:37: INFO candid.meeting timeout 1m0s - logging.go:37: DEBUG candid.internal.discharger authorization for &auth.Identity{Identity:store.Identity{ID:"1", ProviderID:"openstack:abc@openstack", Username:"testuser@openstack", Name:"", Email:"", Groups:[]string(nil), PublicKeys:[]bakery.PublicKey(nil), LastLogin:time.Date(2024, time.May, 7, 14, 58, 0, 29961277, time.Local), LastDischarge:time.Date(1, time.January, 1, 0, 0, 0, 0, time.UTC), ProviderInfo:map[string][]string{"groups":[]string{"abc_project"}}, ExtraInfo:map[string][]string{}, Owner:""}, authorizer:(*auth.Authorizer)(0x268cde0), resolvedGroups:[]string(nil)} succeeded + logging.go:37: DEBUG candid.internal.discharger authorization for &auth.Identity{Identity:store.Identity{ID:"1", ProviderID:"openstack:abc@openstack", Username:"testuser@openstack", Name:"", Email:"", Groups:[]string(nil), PublicKeys:[]bakery.PublicKey(nil), LastLogin:time.Date(2024, time.May, 7, 15, 17, 27, 678546011, time.Local), LastDischarge:time.Date(1, time.January, 1, 0, 0, 0, 0, time.UTC), ProviderInfo:map[string][]string{"groups":[]string{"abc_project"}}, ExtraInfo:map[string][]string{}, Owner:""}, authorizer:(*auth.Authorizer)(0x14011d0), resolvedGroups:[]string(nil)} succeeded logging.go:37: DEBUG candid.internal.identity Closing Server === RUN TestDischarge/TestTokenDischarge logging.go:37: DEBUG candid.internal.identity API error response (bakery): 401 (Unauthorized) macaroon discharge required: authentication required - logging.go:37: DEBUG candid.internal.discharger authorization for &auth.Identity{Identity:store.Identity{ID:"1", ProviderID:"token:abc@openstack", Username:"testuser@openstack", Name:"", Email:"", Groups:[]string(nil), PublicKeys:[]bakery.PublicKey(nil), LastLogin:time.Date(2024, time.May, 7, 14, 58, 0, 78976417, time.Local), LastDischarge:time.Date(1, time.January, 1, 0, 0, 0, 0, time.UTC), ProviderInfo:map[string][]string{"groups":[]string{"abc_project"}}, ExtraInfo:map[string][]string{}, Owner:""}, authorizer:(*auth.Authorizer)(0x27cf020), resolvedGroups:[]string(nil)} succeeded + logging.go:37: DEBUG candid.internal.discharger authorization for &auth.Identity{Identity:store.Identity{ID:"1", ProviderID:"token:abc@openstack", Username:"testuser@openstack", Name:"", Email:"", Groups:[]string(nil), PublicKeys:[]bakery.PublicKey(nil), LastLogin:time.Date(2024, time.May, 7, 15, 17, 27, 744330968, time.Local), LastDischarge:time.Date(1, time.January, 1, 0, 0, 0, 0, time.UTC), ProviderInfo:map[string][]string{"groups":[]string{"abc_project"}}, ExtraInfo:map[string][]string{}, Owner:""}, authorizer:(*auth.Authorizer)(0x181e720), resolvedGroups:[]string(nil)} succeeded logging.go:37: DEBUG candid.internal.identity Closing Server ---- PASS: TestDischarge (0.17s) - --- PASS: TestDischarge/TestFormDischarge (0.06s) - --- PASS: TestDischarge/TestInteractiveDischarge (0.07s) - --- PASS: TestDischarge/TestTokenDischarge (0.04s) +--- PASS: TestDischarge (0.25s) + --- PASS: TestDischarge/TestFormDischarge (0.09s) + --- PASS: TestDischarge/TestInteractiveDischarge (0.09s) + --- PASS: TestDischarge/TestTokenDischarge (0.06s) === RUN TestKeystone === RUN TestKeystone/TestAbsoluteIconURL === RUN TestKeystone/TestIconURL @@ -1512,24 +1548,24 @@ === RUN TestKeystone/TestKeystoneIdentityProviderURL === RUN TestKeystone/TestKeystoneIdentityProviderUseNameForDescription === RUN TestKeystone/TestRelativeIconURL ---- PASS: TestKeystone (0.21s) +--- PASS: TestKeystone (0.26s) --- PASS: TestKeystone/TestAbsoluteIconURL (0.01s) --- PASS: TestKeystone/TestIconURL (0.01s) --- PASS: TestKeystone/TestKeystoneIdentityProviderDescription (0.01s) --- PASS: TestKeystone/TestKeystoneIdentityProviderHandleExistingUser (0.03s) - --- PASS: TestKeystone/TestKeystoneIdentityProviderHandlePostBadPassword (0.01s) - --- PASS: TestKeystone/TestKeystoneIdentityProviderHandlePostNoTenants (0.06s) - --- PASS: TestKeystone/TestKeystoneIdentityProviderHandleSuccess (0.02s) - --- PASS: TestKeystone/TestKeystoneIdentityProviderHidden (0.02s) - --- PASS: TestKeystone/TestKeystoneIdentityProviderInteractive (0.02s) + --- PASS: TestKeystone/TestKeystoneIdentityProviderHandlePostBadPassword (0.03s) + --- PASS: TestKeystone/TestKeystoneIdentityProviderHandlePostNoTenants (0.03s) + --- PASS: TestKeystone/TestKeystoneIdentityProviderHandleSuccess (0.03s) + --- PASS: TestKeystone/TestKeystoneIdentityProviderHidden (0.01s) + --- PASS: TestKeystone/TestKeystoneIdentityProviderInteractive (0.01s) --- PASS: TestKeystone/TestKeystoneIdentityProviderName (0.01s) - --- PASS: TestKeystone/TestKeystoneIdentityProviderRegisterConfig (0.01s) + --- PASS: TestKeystone/TestKeystoneIdentityProviderRegisterConfig (0.02s) --- PASS: TestKeystone/TestKeystoneIdentityProviderRegisterConfig/good_config (0.00s) --- PASS: TestKeystone/TestKeystoneIdentityProviderRegisterConfig/no_name (0.00s) --- PASS: TestKeystone/TestKeystoneIdentityProviderRegisterConfig/no_url (0.00s) - --- PASS: TestKeystone/TestKeystoneIdentityProviderURL (0.00s) - --- PASS: TestKeystone/TestKeystoneIdentityProviderUseNameForDescription (0.00s) - --- PASS: TestKeystone/TestRelativeIconURL (0.00s) + --- PASS: TestKeystone/TestKeystoneIdentityProviderURL (0.01s) + --- PASS: TestKeystone/TestKeystoneIdentityProviderUseNameForDescription (0.01s) + --- PASS: TestKeystone/TestRelativeIconURL (0.01s) === RUN TestToken === RUN TestToken/TestKeystoneTokenIdentityProviderHandle === RUN TestToken/TestKeystoneTokenIdentityProviderHandleBadRequest @@ -1537,13 +1573,13 @@ === RUN TestToken/TestKeystoneTokenIdentityProviderHidden === RUN TestToken/TestKeystoneTokenIdentityProviderInteractive === RUN TestToken/TestRegisterConfig ---- PASS: TestToken (0.03s) - --- PASS: TestToken/TestKeystoneTokenIdentityProviderHandle (0.01s) - --- PASS: TestToken/TestKeystoneTokenIdentityProviderHandleBadRequest (0.00s) - --- PASS: TestToken/TestKeystoneTokenIdentityProviderHandleBadToken (0.00s) - --- PASS: TestToken/TestKeystoneTokenIdentityProviderHidden (0.00s) - --- PASS: TestToken/TestKeystoneTokenIdentityProviderInteractive (0.00s) - --- PASS: TestToken/TestRegisterConfig (0.00s) +--- PASS: TestToken (0.19s) + --- PASS: TestToken/TestKeystoneTokenIdentityProviderHandle (0.03s) + --- PASS: TestToken/TestKeystoneTokenIdentityProviderHandleBadRequest (0.03s) + --- PASS: TestToken/TestKeystoneTokenIdentityProviderHandleBadToken (0.03s) + --- PASS: TestToken/TestKeystoneTokenIdentityProviderHidden (0.02s) + --- PASS: TestToken/TestKeystoneTokenIdentityProviderInteractive (0.04s) + --- PASS: TestToken/TestRegisterConfig (0.04s) === RUN TestTokenV3 === RUN TestTokenV3/TestKeystoneV3TokenIdentityProviderHandle === RUN TestTokenV3/TestKeystoneV3TokenIdentityProviderHandleBadRequest @@ -1551,13 +1587,13 @@ === RUN TestTokenV3/TestKeystoneV3TokenIdentityProviderHidden === RUN TestTokenV3/TestKeystoneV3TokenIdentityProviderInteractive === RUN TestTokenV3/TestRegisterConfig ---- PASS: TestTokenV3 (0.03s) - --- PASS: TestTokenV3/TestKeystoneV3TokenIdentityProviderHandle (0.01s) - --- PASS: TestTokenV3/TestKeystoneV3TokenIdentityProviderHandleBadRequest (0.00s) - --- PASS: TestTokenV3/TestKeystoneV3TokenIdentityProviderHandleBadToken (0.00s) - --- PASS: TestTokenV3/TestKeystoneV3TokenIdentityProviderHidden (0.00s) - --- PASS: TestTokenV3/TestKeystoneV3TokenIdentityProviderInteractive (0.00s) - --- PASS: TestTokenV3/TestRegisterConfig (0.00s) +--- PASS: TestTokenV3 (0.11s) + --- PASS: TestTokenV3/TestKeystoneV3TokenIdentityProviderHandle (0.03s) + --- PASS: TestTokenV3/TestKeystoneV3TokenIdentityProviderHandleBadRequest (0.01s) + --- PASS: TestTokenV3/TestKeystoneV3TokenIdentityProviderHandleBadToken (0.02s) + --- PASS: TestTokenV3/TestKeystoneV3TokenIdentityProviderHidden (0.01s) + --- PASS: TestTokenV3/TestKeystoneV3TokenIdentityProviderInteractive (0.01s) + --- PASS: TestTokenV3/TestRegisterConfig (0.01s) === RUN TestUserPass === RUN TestUserPass/TestKeystoneUserpassIdentityProviderHandle === RUN TestUserPass/TestKeystoneUserpassIdentityProviderHandleBadRequest @@ -1566,16 +1602,16 @@ === RUN TestUserPass/TestKeystoneUserpassIdentityProviderHidden === RUN TestUserPass/TestKeystoneUserpassIdentityProviderInteractive === RUN TestUserPass/TestRegisterConfig ---- PASS: TestUserPass (0.03s) - --- PASS: TestUserPass/TestKeystoneUserpassIdentityProviderHandle (0.00s) - --- PASS: TestUserPass/TestKeystoneUserpassIdentityProviderHandleBadRequest (0.00s) - --- PASS: TestUserPass/TestKeystoneUserpassIdentityProviderHandleNoUsername (0.00s) - --- PASS: TestUserPass/TestKeystoneUserpassIdentityProviderHandleResponse (0.01s) - --- PASS: TestUserPass/TestKeystoneUserpassIdentityProviderHidden (0.00s) - --- PASS: TestUserPass/TestKeystoneUserpassIdentityProviderInteractive (0.00s) - --- PASS: TestUserPass/TestRegisterConfig (0.00s) +--- PASS: TestUserPass (0.11s) + --- PASS: TestUserPass/TestKeystoneUserpassIdentityProviderHandle (0.01s) + --- PASS: TestUserPass/TestKeystoneUserpassIdentityProviderHandleBadRequest (0.01s) + --- PASS: TestUserPass/TestKeystoneUserpassIdentityProviderHandleNoUsername (0.01s) + --- PASS: TestUserPass/TestKeystoneUserpassIdentityProviderHandleResponse (0.02s) + --- PASS: TestUserPass/TestKeystoneUserpassIdentityProviderHidden (0.02s) + --- PASS: TestUserPass/TestKeystoneUserpassIdentityProviderInteractive (0.02s) + --- PASS: TestUserPass/TestRegisterConfig (0.01s) PASS -ok github.com/canonical/candid/idp/keystone 0.495s +ok github.com/canonical/candid/idp/keystone 1.003s === RUN TestUnmarshalError === RUN TestUnmarshalError/error === RUN TestUnmarshalError/bad_json @@ -1591,10 +1627,10 @@ --- PASS: TestTimeUnmarshalJSON/test1 (0.00s) --- PASS: TestTimeUnmarshalJSON/test2 (0.00s) PASS -ok github.com/canonical/candid/idp/keystone/internal/keystone 0.036s +ok github.com/canonical/candid/idp/keystone/internal/keystone 0.057s === RUN TestInteractiveDischarge -2024-05-07 14:58:04 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified ---- PASS: TestInteractiveDischarge (0.05s) +2024-05-07 15:17:37 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +--- PASS: TestInteractiveDischarge (0.10s) === RUN TestLDAP === RUN TestLDAP/TestAbsoluteIconURL === RUN TestLDAP/TestDescription @@ -1624,24 +1660,24 @@ === RUN TestLDAP/TestNewIdentityProvider/invalid_group_query_filter_expression === RUN TestLDAP/TestRelativeIconURL === RUN TestLDAP/TestURL ---- PASS: TestLDAP (0.13s) - --- PASS: TestLDAP/TestAbsoluteIconURL (0.00s) +--- PASS: TestLDAP (0.29s) + --- PASS: TestLDAP/TestAbsoluteIconURL (0.01s) --- PASS: TestLDAP/TestDescription (0.01s) --- PASS: TestLDAP/TestDomain (0.01s) - --- PASS: TestLDAP/TestHandle (0.01s) + --- PASS: TestLDAP/TestHandle (0.02s) --- PASS: TestLDAP/TestHandleCustomGroupFilter (0.02s) - --- PASS: TestLDAP/TestHandleCustomUserFilter (0.01s) - --- PASS: TestLDAP/TestHandleFailedLogin (0.01s) - --- PASS: TestLDAP/TestHandleIncorrectUsername (0.01s) - --- PASS: TestLDAP/TestHandleUserDetails (0.01s) - --- PASS: TestLDAP/TestHandleUserDetailsCustomIDAttr (0.01s) - --- PASS: TestLDAP/TestHandleUserFilterNoMatch (0.01s) - --- PASS: TestLDAP/TestHandleWithGroups (0.01s) - --- PASS: TestLDAP/TestHidden (0.00s) - --- PASS: TestLDAP/TestIconURL (0.00s) - --- PASS: TestLDAP/TestInteractive (0.00s) - --- PASS: TestLDAP/TestName (0.00s) - --- PASS: TestLDAP/TestNewIdentityProvider (0.01s) + --- PASS: TestLDAP/TestHandleCustomUserFilter (0.02s) + --- PASS: TestLDAP/TestHandleFailedLogin (0.02s) + --- PASS: TestLDAP/TestHandleIncorrectUsername (0.02s) + --- PASS: TestLDAP/TestHandleUserDetails (0.02s) + --- PASS: TestLDAP/TestHandleUserDetailsCustomIDAttr (0.02s) + --- PASS: TestLDAP/TestHandleUserFilterNoMatch (0.02s) + --- PASS: TestLDAP/TestHandleWithGroups (0.02s) + --- PASS: TestLDAP/TestHidden (0.01s) + --- PASS: TestLDAP/TestIconURL (0.01s) + --- PASS: TestLDAP/TestInteractive (0.01s) + --- PASS: TestLDAP/TestName (0.01s) + --- PASS: TestLDAP/TestNewIdentityProvider (0.02s) --- PASS: TestLDAP/TestNewIdentityProvider/good_params (0.00s) --- PASS: TestLDAP/TestNewIdentityProvider/unparsable_url (0.00s) --- PASS: TestLDAP/TestNewIdentityProvider/unsupported_scheme (0.00s) @@ -1651,10 +1687,10 @@ --- PASS: TestLDAP/TestNewIdentityProvider/invalid_group_query_filter_template (0.00s) --- PASS: TestLDAP/TestNewIdentityProvider/malformed_group_query_filter (0.00s) --- PASS: TestLDAP/TestNewIdentityProvider/invalid_group_query_filter_expression (0.00s) - --- PASS: TestLDAP/TestRelativeIconURL (0.00s) - --- PASS: TestLDAP/TestURL (0.00s) + --- PASS: TestLDAP/TestRelativeIconURL (0.01s) + --- PASS: TestLDAP/TestURL (0.01s) PASS -ok github.com/canonical/candid/idp/ldap 0.201s +ok github.com/canonical/candid/idp/ldap 0.470s === RUN TestConfig === RUN TestConfig/OK === RUN TestConfig/NoName @@ -1680,36 +1716,36 @@ === RUN TestIsForEmailAddr --- PASS: TestIsForEmailAddr (0.00s) === RUN TestURL ---- PASS: TestURL (0.00s) +--- PASS: TestURL (0.01s) === RUN TestIconURL ---- PASS: TestIconURL (0.00s) +--- PASS: TestIconURL (0.01s) === RUN TestHandleLogin ---- PASS: TestHandleLogin (0.01s) +--- PASS: TestHandleLogin (0.02s) === RUN TestHandleCallback === RUN TestHandleCallback/NewUserWithUsername === RUN TestHandleCallback/NewUserNoUsername === RUN TestHandleCallback/ExistingUserNoClaims === RUN TestHandleCallback/ExistingUserUpdateClaims === RUN TestHandleCallback/PreferredUsernameTaken ---- PASS: TestHandleCallback (0.28s) - --- PASS: TestHandleCallback/NewUserWithUsername (0.06s) - --- PASS: TestHandleCallback/NewUserNoUsername (0.04s) - --- PASS: TestHandleCallback/ExistingUserNoClaims (0.03s) - --- PASS: TestHandleCallback/ExistingUserUpdateClaims (0.05s) - --- PASS: TestHandleCallback/PreferredUsernameTaken (0.10s) +--- PASS: TestHandleCallback (0.64s) + --- PASS: TestHandleCallback/NewUserWithUsername (0.10s) + --- PASS: TestHandleCallback/NewUserNoUsername (0.15s) + --- PASS: TestHandleCallback/ExistingUserNoClaims (0.10s) + --- PASS: TestHandleCallback/ExistingUserUpdateClaims (0.16s) + --- PASS: TestHandleCallback/PreferredUsernameTaken (0.13s) === RUN TestHandleRegister === RUN TestHandleRegister/Success === RUN TestHandleRegister/InvalidUsername === RUN TestHandleRegister/InvalidUsername#01 ---- PASS: TestHandleRegister (0.04s) - --- PASS: TestHandleRegister/Success (0.01s) - --- PASS: TestHandleRegister/InvalidUsername (0.01s) - --- PASS: TestHandleRegister/InvalidUsername#01 (0.01s) +--- PASS: TestHandleRegister (0.05s) + --- PASS: TestHandleRegister/Success (0.02s) + --- PASS: TestHandleRegister/InvalidUsername (0.02s) + --- PASS: TestHandleRegister/InvalidUsername#01 (0.02s) PASS -ok github.com/canonical/candid/idp/openid 0.383s +ok github.com/canonical/candid/idp/openid 0.817s === RUN TestInteractiveDischarge -2024-05-07 14:58:08 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified ---- PASS: TestInteractiveDischarge (0.05s) +2024-05-07 15:17:37 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +--- PASS: TestInteractiveDischarge (0.09s) === RUN TestStatic === RUN TestStatic/TestAbsoluteIconURL === RUN TestStatic/TestDescription @@ -1725,26 +1761,27 @@ === RUN TestStatic/TestInteractive === RUN TestStatic/TestName === RUN TestStatic/TestRelativeIconURL ---- PASS: TestStatic (0.13s) +--- PASS: TestStatic (0.20s) --- PASS: TestStatic/TestAbsoluteIconURL (0.01s) --- PASS: TestStatic/TestDescription (0.01s) - --- PASS: TestStatic/TestDomain (0.00s) + --- PASS: TestStatic/TestDomain (0.01s) --- PASS: TestStatic/TestGetGroups (0.02s) --- PASS: TestStatic/TestGetGroupsReturnsNewSlice (0.02s) - --- PASS: TestStatic/TestHandle (0.01s) - --- PASS: TestStatic/TestHandleFailedLoginUnknownUser (0.01s) - --- PASS: TestStatic/TestHandleFailedLoginWrongPassword (0.01s) - --- PASS: TestStatic/TestHandleWithDomain (0.01s) + --- PASS: TestStatic/TestHandle (0.02s) + --- PASS: TestStatic/TestHandleFailedLoginUnknownUser (0.02s) + --- PASS: TestStatic/TestHandleFailedLoginWrongPassword (0.02s) + --- PASS: TestStatic/TestHandleWithDomain (0.02s) --- PASS: TestStatic/TestHidden (0.01s) - --- PASS: TestStatic/TestIconURL (0.00s) + --- PASS: TestStatic/TestIconURL (0.01s) --- PASS: TestStatic/TestInteractive (0.01s) - --- PASS: TestStatic/TestName (0.00s) + --- PASS: TestStatic/TestName (0.01s) --- PASS: TestStatic/TestRelativeIconURL (0.01s) PASS -ok github.com/canonical/candid/idp/static 0.248s +ok github.com/canonical/candid/idp/static 0.375s +? github.com/canonical/candid/idp/usso/internal/mockusso [no test files] === RUN TestInteractiveDischarge -2024-05-07 14:58:09 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified ---- PASS: TestInteractiveDischarge (0.03s) +2024-05-07 15:17:46 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +--- PASS: TestInteractiveDischarge (0.10s) === RUN TestUSSO === RUN TestUSSO/TestAbsoluteIconURL === RUN TestUSSO/TestConfig @@ -1769,36 +1806,35 @@ === RUN TestUSSO/TestUpdateIdentity === RUN TestUSSO/TestUpdateIdentityKeepsUsernameIfFixed === RUN TestUSSO/TestUpdateIdentityKeepsUsernameIfNewNameInvalid -2024-05-07 14:58:09 WARNING candid.idp.usso usso.go:250 not updating username for usso:https://login.ubuntu.com/+id/test to invalid username "test-changed-" +2024-05-07 15:17:47 WARNING candid.idp.usso usso.go:250 not updating username for usso:https://login.ubuntu.com/+id/test to invalid username "test-changed-" === RUN TestUSSO/TestWithDomain ---- PASS: TestUSSO (0.17s) - --- PASS: TestUSSO/TestAbsoluteIconURL (0.00s) - --- PASS: TestUSSO/TestConfig (0.00s) - --- PASS: TestUSSO/TestDescription (0.00s) - --- PASS: TestUSSO/TestDomain (0.00s) - --- PASS: TestUSSO/TestGetGroups (0.00s) - --- PASS: TestUSSO/TestGetGroupsReturnsNewSlice (0.00s) - --- PASS: TestUSSO/TestHandleNoExtensionsNotFound (0.01s) - --- PASS: TestUSSO/TestHandleRegisterUserError (0.01s) - --- PASS: TestUSSO/TestHandleSuccess (0.01s) - --- PASS: TestUSSO/TestHandleSuccessNoExtensions (0.01s) - --- PASS: TestUSSO/TestHidden (0.00s) - --- PASS: TestUSSO/TestIconURL (0.00s) - --- PASS: TestUSSO/TestInteractive (0.00s) - --- PASS: TestUSSO/TestInteractiveLoginFromDifferentProvider (0.01s) - --- PASS: TestUSSO/TestInvalidCookie (0.00s) +--- PASS: TestUSSO (0.53s) + --- PASS: TestUSSO/TestAbsoluteIconURL (0.01s) + --- PASS: TestUSSO/TestConfig (0.02s) + --- PASS: TestUSSO/TestDescription (0.01s) + --- PASS: TestUSSO/TestDomain (0.01s) + --- PASS: TestUSSO/TestGetGroups (0.01s) + --- PASS: TestUSSO/TestGetGroupsReturnsNewSlice (0.01s) + --- PASS: TestUSSO/TestHandleNoExtensionsNotFound (0.03s) + --- PASS: TestUSSO/TestHandleRegisterUserError (0.03s) + --- PASS: TestUSSO/TestHandleSuccess (0.03s) + --- PASS: TestUSSO/TestHandleSuccessNoExtensions (0.03s) + --- PASS: TestUSSO/TestHidden (0.01s) + --- PASS: TestUSSO/TestIconURL (0.01s) + --- PASS: TestUSSO/TestInteractive (0.01s) + --- PASS: TestUSSO/TestInteractiveLoginFromDifferentProvider (0.03s) + --- PASS: TestUSSO/TestInvalidCookie (0.01s) --- PASS: TestUSSO/TestName (0.01s) - --- PASS: TestUSSO/TestRedirect (0.00s) + --- PASS: TestUSSO/TestRedirect (0.01s) --- PASS: TestUSSO/TestRedirectWithLaunchpadTeams (0.01s) - --- PASS: TestUSSO/TestRelativeIconURL (0.00s) - --- PASS: TestUSSO/TestURL (0.00s) - --- PASS: TestUSSO/TestUpdateIdentity (0.02s) - --- PASS: TestUSSO/TestUpdateIdentityKeepsUsernameIfFixed (0.01s) - --- PASS: TestUSSO/TestUpdateIdentityKeepsUsernameIfNewNameInvalid (0.01s) - --- PASS: TestUSSO/TestWithDomain (0.01s) + --- PASS: TestUSSO/TestRelativeIconURL (0.01s) + --- PASS: TestUSSO/TestURL (0.01s) + --- PASS: TestUSSO/TestUpdateIdentity (0.06s) + --- PASS: TestUSSO/TestUpdateIdentityKeepsUsernameIfFixed (0.05s) + --- PASS: TestUSSO/TestUpdateIdentityKeepsUsernameIfNewNameInvalid (0.06s) + --- PASS: TestUSSO/TestWithDomain (0.03s) PASS -ok github.com/canonical/candid/idp/usso 0.262s -? github.com/canonical/candid/idp/usso/internal/mockusso [no test files] +ok github.com/canonical/candid/idp/usso 0.705s === RUN TestAccept === RUN TestAccept/not_seen store_test.go:74: 0. not seen @@ -1814,7 +1850,7 @@ store_test.go:74: 5. bad time === RUN TestAccept/too_old store_test.go:74: 6. too old ---- PASS: TestAccept (0.00s) +--- PASS: TestAccept (0.01s) --- PASS: TestAccept/not_seen (0.00s) --- PASS: TestAccept/seen_before (0.00s) --- PASS: TestAccept/seen_at_another_endpoint (0.00s) @@ -1823,7 +1859,7 @@ --- PASS: TestAccept/bad_time (0.00s) --- PASS: TestAccept/too_old (0.00s) PASS -ok github.com/canonical/candid/idp/usso/internal/kvnoncestore 0.062s +ok github.com/canonical/candid/idp/usso/internal/kvnoncestore 0.077s ? github.com/canonical/candid/idp/usso/ussodischarge/cmd/login [no test files] === RUN TestConfig --- PASS: TestConfig (0.00s) @@ -1837,15 +1873,15 @@ === RUN TestSuite/TestInteractive === RUN TestSuite/TestName === RUN TestSuite/TestURL ---- PASS: TestSuite (0.21s) - --- PASS: TestSuite/TestDescription (0.00s) - --- PASS: TestSuite/TestHandleGetSuccess (0.06s) - --- PASS: TestSuite/TestHandleGetV1Success (0.08s) - --- PASS: TestSuite/TestHandlePostV1 (0.02s) +--- PASS: TestSuite (0.28s) + --- PASS: TestSuite/TestDescription (0.01s) + --- PASS: TestSuite/TestHandleGetSuccess (0.10s) + --- PASS: TestSuite/TestHandleGetV1Success (0.10s) + --- PASS: TestSuite/TestHandlePostV1 (0.01s) --- PASS: TestSuite/TestHidden (0.01s) - --- PASS: TestSuite/TestIconURL (0.00s) - --- PASS: TestSuite/TestInteractive (0.00s) - --- PASS: TestSuite/TestName (0.02s) + --- PASS: TestSuite/TestIconURL (0.01s) + --- PASS: TestSuite/TestInteractive (0.01s) + --- PASS: TestSuite/TestName (0.01s) --- PASS: TestSuite/TestURL (0.01s) === RUN TestHandlePost === RUN TestHandlePost/success @@ -1857,22 +1893,22 @@ === RUN TestHandlePost/account_bad_base64 === RUN TestHandlePost/account_bad_json === RUN TestHandlePost/without_argument ---- PASS: TestHandlePost (0.11s) - --- PASS: TestHandlePost/success (0.01s) +--- PASS: TestHandlePost (0.13s) + --- PASS: TestHandlePost/success (0.02s) --- PASS: TestHandlePost/no_account (0.01s) - --- PASS: TestHandlePost/expires_bad_format (0.00s) - --- PASS: TestHandlePost/expires_in_past (0.02s) + --- PASS: TestHandlePost/expires_bad_format (0.01s) + --- PASS: TestHandlePost/expires_in_past (0.01s) --- PASS: TestHandlePost/multiple_account_info (0.01s) --- PASS: TestHandlePost/unrecognised_caveat (0.01s) - --- PASS: TestHandlePost/account_bad_base64 (0.01s) - --- PASS: TestHandlePost/account_bad_json (0.00s) - --- PASS: TestHandlePost/without_argument (0.02s) + --- PASS: TestHandlePost/account_bad_base64 (0.02s) + --- PASS: TestHandlePost/account_bad_json (0.02s) + --- PASS: TestHandlePost/without_argument (0.01s) === RUN TestMultipleLogins ---- PASS: TestMultipleLogins (0.01s) +--- PASS: TestMultipleLogins (0.02s) PASS -ok github.com/canonical/candid/idp/usso/ussodischarge 0.416s +ok github.com/canonical/candid/idp/usso/ussodischarge 0.523s === RUN TestDischarge ---- PASS: TestDischarge (0.04s) +--- PASS: TestDischarge (0.07s) === RUN TestConfig --- PASS: TestConfig (0.00s) === RUN TestUSSOAuth @@ -1884,17 +1920,18 @@ === RUN TestUSSOAuth/TestInteractive === RUN TestUSSOAuth/TestName === RUN TestUSSOAuth/TestURL ---- PASS: TestUSSOAuth (0.06s) +--- PASS: TestUSSOAuth (0.10s) --- PASS: TestUSSOAuth/TestDescription (0.01s) - --- PASS: TestUSSOAuth/TestHandleSuccess (0.01s) - --- PASS: TestUSSOAuth/TestHandleVerifyFail (0.00s) + --- PASS: TestUSSOAuth/TestHandleSuccess (0.02s) + --- PASS: TestUSSOAuth/TestHandleVerifyFail (0.01s) --- PASS: TestUSSOAuth/TestHidden (0.01s) --- PASS: TestUSSOAuth/TestIconURL (0.01s) - --- PASS: TestUSSOAuth/TestInteractive (0.00s) - --- PASS: TestUSSOAuth/TestName (0.00s) + --- PASS: TestUSSOAuth/TestInteractive (0.01s) + --- PASS: TestUSSOAuth/TestName (0.01s) --- PASS: TestUSSOAuth/TestURL (0.01s) PASS -ok github.com/canonical/candid/idp/usso/ussooauth 0.143s +ok github.com/canonical/candid/idp/usso/ussooauth 0.240s +? github.com/canonical/candid/internal/candidtest [no test files] === RUN TestAuth === RUN TestAuth/TestACLForOp === RUN TestAuth/TestACLForOp/other-read @@ -1931,8 +1968,8 @@ === RUN TestAuth/TestNonExistentUser === RUN TestAuth/TestUserHasPublicKeyCaveat === RUN TestAuth/TestUserHasPublicKeyChecker ---- PASS: TestAuth (0.08s) - --- PASS: TestAuth/TestACLForOp (0.01s) +--- PASS: TestAuth (0.14s) + --- PASS: TestAuth/TestACLForOp (0.02s) --- PASS: TestAuth/TestACLForOp/other-read (0.00s) --- PASS: TestAuth/TestACLForOp/global-read (0.00s) --- PASS: TestAuth/TestACLForOp/global-verify (0.00s) @@ -1951,13 +1988,13 @@ --- PASS: TestAuth/TestACLForOp/u-bob-readSSHKeys (0.00s) --- PASS: TestAuth/TestACLForOp/u-bob-writeSSHKeys (0.00s) --- PASS: TestAuth/TestAdminUserGroups (0.01s) - --- PASS: TestAuth/TestAuthorizeMacaroonRequired (0.00s) + --- PASS: TestAuth/TestAuthorizeMacaroonRequired (0.01s) --- PASS: TestAuth/TestAuthorizeWithAdminCredentials (0.01s) --- PASS: TestAuth/TestAuthorizeWithAdminCredentials/good_credentials (0.00s) --- PASS: TestAuth/TestAuthorizeWithAdminCredentials/bad_username (0.00s) --- PASS: TestAuth/TestAuthorizeWithAdminCredentials/bad_password (0.00s) --- PASS: TestAuth/TestExistingUserGroups (0.01s) - --- PASS: TestAuth/TestIdentityAllow (0.00s) + --- PASS: TestAuth/TestIdentityAllow (0.02s) --- PASS: TestAuth/TestIdentityAllow/everyone_is_allowed_even_with_no_store (0.00s) --- PASS: TestAuth/TestIdentityAllow/user_is_allowed_even_with_no_store (0.00s) --- PASS: TestAuth/TestIdentityAllow/empty_ACL_doesn't_require_store (0.00s) @@ -1965,11 +2002,10 @@ --- PASS: TestAuth/TestIdentityAllow/user_is_allowed_if_they're_in_the_expected_group_externally (0.00s) --- PASS: TestAuth/TestIdentityAllow/user_is_not_allowed_if_they're_not_in_the_expected_group (0.00s) --- PASS: TestAuth/TestNonExistentUser (0.01s) - --- PASS: TestAuth/TestUserHasPublicKeyCaveat (0.01s) - --- PASS: TestAuth/TestUserHasPublicKeyChecker (0.01s) + --- PASS: TestAuth/TestUserHasPublicKeyCaveat (0.02s) + --- PASS: TestAuth/TestUserHasPublicKeyChecker (0.02s) PASS -ok github.com/canonical/candid/internal/auth 0.164s -? github.com/canonical/candid/internal/candidtest [no test files] +ok github.com/canonical/candid/internal/auth 0.208s === RUN TestAuth === RUN TestAuth/TestAuthorizeMacaroonRequired === RUN TestAuth/TestAuthorizeWithAdminCredentials @@ -1977,18 +2013,20 @@ === RUN TestAuth/TestAuthorizeWithAdminCredentials/bad_username === RUN TestAuth/TestAuthorizeWithAdminCredentials/bad_password === RUN TestAuth/TestAuthorizeWithAdminCredentials/empty_password_denies_access ---- PASS: TestAuth (0.02s) +--- PASS: TestAuth (0.03s) --- PASS: TestAuth/TestAuthorizeMacaroonRequired (0.01s) - --- PASS: TestAuth/TestAuthorizeWithAdminCredentials (0.00s) + --- PASS: TestAuth/TestAuthorizeWithAdminCredentials (0.01s) --- PASS: TestAuth/TestAuthorizeWithAdminCredentials/good_credentials (0.00s) --- PASS: TestAuth/TestAuthorizeWithAdminCredentials/bad_username (0.00s) --- PASS: TestAuth/TestAuthorizeWithAdminCredentials/bad_password (0.00s) --- PASS: TestAuth/TestAuthorizeWithAdminCredentials/empty_password_denies_access (0.00s) PASS -ok github.com/canonical/candid/internal/auth/httpauth 0.072s +ok github.com/canonical/candid/internal/auth/httpauth 0.099s testing: warning: no tests to run PASS -ok github.com/canonical/candid/internal/debug 0.071s [no tests to run] +ok github.com/canonical/candid/internal/debug 0.052s [no tests to run] +? github.com/canonical/candid/internal/mfa [no test files] +? github.com/canonical/candid/internal/monitoring [no test files] === RUN TestDischarge === RUN TestDischarge/TestDischargeBrowserRedirectLogin === RUN TestDischarge/TestDischargeBrowserRedirectLoginNotTrusted @@ -1996,111 +2034,111 @@ discharge_test.go:462: test 0. discharge macaroon discharge_test.go:462: test 1. no authentication discharge_test.go:462: test 2. unsupported user -2024-05-07 14:58:27 ERROR candid.internal.identity json.go:56 Internal Server Error: cannot discharge: could not determine identity: user jbloggs2 not found ([{/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/httpbakery/discharge.go:284: cannot discharge} {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/bakery/discharge.go:134: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/discharger/discharge.go:132: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/auth/auth.go:293: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/bakery/identchecker/checker.go:165: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/bakery/identchecker/checker.go:296: could not determine identity} {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/auth/auth.go:336: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/auth/auth.go:316: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/store/memstore/store.go:81: user jbloggs2 not found}]) +2024-05-07 15:18:14 ERROR candid.internal.identity json.go:56 Internal Server Error: cannot discharge: could not determine identity: user jbloggs2 not found ([{/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/httpbakery/discharge.go:284: cannot discharge} {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/bakery/discharge.go:134: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/discharger/discharge.go:132: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/auth/auth.go:293: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/bakery/identchecker/checker.go:165: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/bakery/identchecker/checker.go:296: could not determine identity} {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/auth/auth.go:336: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/auth/auth.go:316: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/store/memstore/store.go:81: user jbloggs2 not found}]) discharge_test.go:462: test 3. unsupported condition -2024-05-07 14:58:27 ERROR candid.internal.identity json.go:56 Internal Server Error: cannot discharge: caveat not recognized ([{/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/httpbakery/discharge.go:284: cannot discharge} {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/bakery/discharge.go:134: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/bakery/checkers/checkers.go:166: caveat not recognized}]) +2024-05-07 15:18:14 ERROR candid.internal.identity json.go:56 Internal Server Error: cannot discharge: caveat not recognized ([{/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/httpbakery/discharge.go:284: cannot discharge} {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/bakery/discharge.go:134: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/bakery/checkers/checkers.go:166: caveat not recognized}]) discharge_test.go:462: test 4. bad credentials discharge_test.go:462: test 5. is-authenticated-user with domain discharge_test.go:462: test 6. is-authenticated-user with wrong domain -2024-05-07 14:58:27 ERROR candid.internal.identity json.go:56 Internal Server Error: cannot discharge: could not determine identity: "jbloggs@test" not in required domain "test2" ([{/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/httpbakery/discharge.go:284: cannot discharge} {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/bakery/discharge.go:134: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/discharger/discharge.go:132: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/auth/auth.go:293: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/bakery/identchecker/checker.go:165: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/bakery/identchecker/checker.go:296: could not determine identity} {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/auth/auth.go:330: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/auth/auth.go:373: "jbloggs@test" not in required domain "test2"}]) +2024-05-07 15:18:14 ERROR candid.internal.identity json.go:56 Internal Server Error: cannot discharge: could not determine identity: "jbloggs@test" not in required domain "test2" ([{/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/httpbakery/discharge.go:284: cannot discharge} {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/bakery/discharge.go:134: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/discharger/discharge.go:132: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/auth/auth.go:293: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/bakery/identchecker/checker.go:165: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/bakery/identchecker/checker.go:296: could not determine identity} {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/auth/auth.go:330: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/auth/auth.go:373: "jbloggs@test" not in required domain "test2"}]) discharge_test.go:462: test 7. is-authenticated-user with invalid domain discharge_test.go:462: test 8. invalid caveat === RUN TestDischarge/TestDischargeFromDifferentOriginWhenLoggedIn discharge_test.go:340: origin caveats on identity cookies not yet supported === RUN TestDischarge/TestDischargeMemberOf === RUN TestDischarge/TestDischargeMemberOf/SingleGroupsIsUsername -2024-05-07 14:58:27 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:14 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestDischarge/TestDischargeMemberOf/ManyGroupsOneIsUsername -2024-05-07 14:58:27 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:14 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestDischarge/TestDischargeMemberOf/SingleGroupMatch -2024-05-07 14:58:27 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:14 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestDischarge/TestDischargeMemberOf/ManyGroupsAllMatch -2024-05-07 14:58:27 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:14 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestDischarge/TestDischargeMemberOf/SingleGroupNoMatch -2024-05-07 14:58:27 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified -2024-05-07 14:58:27 ERROR candid.internal.identity json.go:56 Internal Server Error: cannot discharge: permission denied ([{/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/httpbakery/discharge.go:284: cannot discharge} {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/bakery/discharge.go:134: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/discharger/discharge.go:132: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/auth/auth.go:293: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/bakery/identchecker/checker.go:220: permission denied}]) +2024-05-07 15:18:14 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:14 ERROR candid.internal.identity json.go:56 Internal Server Error: cannot discharge: permission denied ([{/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/httpbakery/discharge.go:284: cannot discharge} {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/bakery/discharge.go:134: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/discharger/discharge.go:132: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/auth/auth.go:293: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/bakery/identchecker/checker.go:220: permission denied}]) === RUN TestDischarge/TestDischargeMemberOf/ManyGroupsOneMatches -2024-05-07 14:58:27 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:14 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestDischarge/TestDischargeMemberOf/ManyGroupsNoMatch -2024-05-07 14:58:27 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified -2024-05-07 14:58:27 ERROR candid.internal.identity json.go:56 Internal Server Error: cannot discharge: permission denied ([{/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/httpbakery/discharge.go:284: cannot discharge} {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/bakery/discharge.go:134: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/discharger/discharge.go:132: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/auth/auth.go:293: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/bakery/identchecker/checker.go:220: permission denied}]) +2024-05-07 15:18:14 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:14 ERROR candid.internal.identity json.go:56 Internal Server Error: cannot discharge: permission denied ([{/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/httpbakery/discharge.go:284: cannot discharge} {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/bakery/discharge.go:134: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/discharger/discharge.go:132: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/auth/auth.go:293: } {/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/go-macaroon-bakery/macaroon-bakery/bakery/identchecker/checker.go:220: permission denied}]) === RUN TestDischarge/TestDischargeStatusProxyAuthRequiredResponse === RUN TestDischarge/TestDischargeStatusUnauthorizedResponse === RUN TestDischarge/TestDischargeUserID === RUN TestDischarge/TestDischargeWhenLoggedIn -2024-05-07 14:58:28 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:15 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestDischarge/TestDischargeWithDomainWithExistingNonDomainAuth -2024-05-07 14:58:28 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified -2024-05-07 14:58:28 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:15 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:15 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestDischarge/TestDischargeXMemberOfX -2024-05-07 14:58:28 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:15 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestDischarge/TestDomainInInteractionURLs === RUN TestDischarge/TestDomainInInteractionURLs/domain_login -2024-05-07 14:58:28 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:15 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestDischarge/TestDomainInInteractionURLs/no_domain -2024-05-07 14:58:28 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:15 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestDischarge/TestDomainInInteractionURLs/domain_from_cookies -2024-05-07 14:58:28 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:15 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestDischarge/TestDomainInInteractionURLs/condition_trumps_cookies -2024-05-07 14:58:28 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:15 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestDischarge/TestIdentityCookieParameters -2024-05-07 14:58:28 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:15 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestDischarge/TestInteractiveDischarge -2024-05-07 14:58:28 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:15 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestDischarge/TestInteractiveDischargeJSON -2024-05-07 14:58:28 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:15 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestDischarge/TestInteractiveDischargeWithOldClientCaveat -2024-05-07 14:58:28 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:15 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestDischarge/TestLastDischargeTimeUpdates -2024-05-07 14:58:28 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified -2024-05-07 14:58:28 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:15 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:15 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestDischarge/TestNonInteractiveDischarge === RUN TestDischarge/TestPublicKey - http.go:99: JSON call, url "http://127.0.0.1:44693/publickey" + http.go:99: JSON call, url "http://127.0.0.1:40483/publickey" === RUN TestDischarge/TestTwoDischargesOfSameCaveat -2024-05-07 14:58:28 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified -2024-05-07 14:58:28 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:16 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:16 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestDischarge/TestVisitURLWithDomainCookie -2024-05-07 14:58:28 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:16 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestDischarge/TestVisitURLWithEscapedDomainCookie -2024-05-07 14:58:28 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:16 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestDischarge/TestVisitURLWithInvalidDomainCookie -2024-05-07 14:58:28 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified ---- PASS: TestDischarge (0.74s) - --- PASS: TestDischarge/TestDischargeBrowserRedirectLogin (0.04s) - --- PASS: TestDischarge/TestDischargeBrowserRedirectLoginNotTrusted (0.02s) - --- PASS: TestDischarge/TestDischargeForUser (0.05s) - --- SKIP: TestDischarge/TestDischargeFromDifferentOriginWhenLoggedIn (0.01s) - --- PASS: TestDischarge/TestDischargeMemberOf (0.12s) - --- PASS: TestDischarge/TestDischargeMemberOf/SingleGroupsIsUsername (0.02s) - --- PASS: TestDischarge/TestDischargeMemberOf/ManyGroupsOneIsUsername (0.02s) - --- PASS: TestDischarge/TestDischargeMemberOf/SingleGroupMatch (0.02s) - --- PASS: TestDischarge/TestDischargeMemberOf/ManyGroupsAllMatch (0.01s) - --- PASS: TestDischarge/TestDischargeMemberOf/SingleGroupNoMatch (0.01s) - --- PASS: TestDischarge/TestDischargeMemberOf/ManyGroupsOneMatches (0.01s) - --- PASS: TestDischarge/TestDischargeMemberOf/ManyGroupsNoMatch (0.01s) - --- PASS: TestDischarge/TestDischargeStatusProxyAuthRequiredResponse (0.01s) - --- PASS: TestDischarge/TestDischargeStatusUnauthorizedResponse (0.01s) - --- PASS: TestDischarge/TestDischargeUserID (0.04s) - --- PASS: TestDischarge/TestDischargeWhenLoggedIn (0.03s) - --- PASS: TestDischarge/TestDischargeWithDomainWithExistingNonDomainAuth (0.04s) - --- PASS: TestDischarge/TestDischargeXMemberOfX (0.03s) - --- PASS: TestDischarge/TestDomainInInteractionURLs (0.07s) - --- PASS: TestDischarge/TestDomainInInteractionURLs/domain_login (0.02s) - --- PASS: TestDischarge/TestDomainInInteractionURLs/no_domain (0.01s) - --- PASS: TestDischarge/TestDomainInInteractionURLs/domain_from_cookies (0.01s) - --- PASS: TestDischarge/TestDomainInInteractionURLs/condition_trumps_cookies (0.01s) - --- PASS: TestDischarge/TestIdentityCookieParameters (0.02s) - --- PASS: TestDischarge/TestInteractiveDischarge (0.02s) - --- PASS: TestDischarge/TestInteractiveDischargeJSON (0.02s) - --- PASS: TestDischarge/TestInteractiveDischargeWithOldClientCaveat (0.02s) - --- PASS: TestDischarge/TestLastDischargeTimeUpdates (0.05s) - --- PASS: TestDischarge/TestNonInteractiveDischarge (0.03s) - --- PASS: TestDischarge/TestPublicKey (0.01s) - --- PASS: TestDischarge/TestTwoDischargesOfSameCaveat (0.04s) - --- PASS: TestDischarge/TestVisitURLWithDomainCookie (0.02s) - --- PASS: TestDischarge/TestVisitURLWithEscapedDomainCookie (0.02s) - --- PASS: TestDischarge/TestVisitURLWithInvalidDomainCookie (0.02s) +2024-05-07 15:18:16 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +--- PASS: TestDischarge (2.03s) + --- PASS: TestDischarge/TestDischargeBrowserRedirectLogin (0.09s) + --- PASS: TestDischarge/TestDischargeBrowserRedirectLoginNotTrusted (0.05s) + --- PASS: TestDischarge/TestDischargeForUser (0.15s) + --- SKIP: TestDischarge/TestDischargeFromDifferentOriginWhenLoggedIn (0.02s) + --- PASS: TestDischarge/TestDischargeMemberOf (0.35s) + --- PASS: TestDischarge/TestDischargeMemberOf/SingleGroupsIsUsername (0.05s) + --- PASS: TestDischarge/TestDischargeMemberOf/ManyGroupsOneIsUsername (0.06s) + --- PASS: TestDischarge/TestDischargeMemberOf/SingleGroupMatch (0.03s) + --- PASS: TestDischarge/TestDischargeMemberOf/ManyGroupsAllMatch (0.04s) + --- PASS: TestDischarge/TestDischargeMemberOf/SingleGroupNoMatch (0.04s) + --- PASS: TestDischarge/TestDischargeMemberOf/ManyGroupsOneMatches (0.03s) + --- PASS: TestDischarge/TestDischargeMemberOf/ManyGroupsNoMatch (0.07s) + --- PASS: TestDischarge/TestDischargeStatusProxyAuthRequiredResponse (0.08s) + --- PASS: TestDischarge/TestDischargeStatusUnauthorizedResponse (0.08s) + --- PASS: TestDischarge/TestDischargeUserID (0.14s) + --- PASS: TestDischarge/TestDischargeWhenLoggedIn (0.07s) + --- PASS: TestDischarge/TestDischargeWithDomainWithExistingNonDomainAuth (0.10s) + --- PASS: TestDischarge/TestDischargeXMemberOfX (0.06s) + --- PASS: TestDischarge/TestDomainInInteractionURLs (0.16s) + --- PASS: TestDischarge/TestDomainInInteractionURLs/domain_login (0.03s) + --- PASS: TestDischarge/TestDomainInInteractionURLs/no_domain (0.03s) + --- PASS: TestDischarge/TestDomainInInteractionURLs/domain_from_cookies (0.03s) + --- PASS: TestDischarge/TestDomainInInteractionURLs/condition_trumps_cookies (0.03s) + --- PASS: TestDischarge/TestIdentityCookieParameters (0.06s) + --- PASS: TestDischarge/TestInteractiveDischarge (0.06s) + --- PASS: TestDischarge/TestInteractiveDischargeJSON (0.06s) + --- PASS: TestDischarge/TestInteractiveDischargeWithOldClientCaveat (0.06s) + --- PASS: TestDischarge/TestLastDischargeTimeUpdates (0.10s) + --- PASS: TestDischarge/TestNonInteractiveDischarge (0.06s) + --- PASS: TestDischarge/TestPublicKey (0.03s) + --- PASS: TestDischarge/TestTwoDischargesOfSameCaveat (0.08s) + --- PASS: TestDischarge/TestVisitURLWithDomainCookie (0.06s) + --- PASS: TestDischarge/TestVisitURLWithEscapedDomainCookie (0.06s) + --- PASS: TestDischarge/TestVisitURLWithInvalidDomainCookie (0.06s) === RUN TestIDP === RUN TestIDP/TestLoginFailure === RUN TestIDP/TestLoginFailureWithWait @@ -2112,32 +2150,32 @@ === RUN TestIDP/TestLoginRedirectSuccessReturnToTrustedDomainInsecure === RUN TestIDP/TestLoginRedirectSuccessReturnToTrustedDomainWildcard === RUN TestIDP/TestLoginSuccess -2024-05-07 14:58:28 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:16 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestIDP/TestLoginSuccessWithTemplate -2024-05-07 14:58:28 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified ---- PASS: TestIDP (0.03s) - --- PASS: TestIDP/TestLoginFailure (0.00s) - --- PASS: TestIDP/TestLoginFailureWithWait (0.00s) - --- PASS: TestIDP/TestLoginRedirectFailureInvalidReturnTo (0.00s) - --- PASS: TestIDP/TestLoginRedirectSuccess (0.00s) - --- PASS: TestIDP/TestLoginRedirectSuccessInvalidReturnTo (0.00s) - --- PASS: TestIDP/TestLoginRedirectSuccessReturnToNotTrusted (0.00s) - --- PASS: TestIDP/TestLoginRedirectSuccessReturnToTrustedDomain (0.00s) - --- PASS: TestIDP/TestLoginRedirectSuccessReturnToTrustedDomainInsecure (0.00s) - --- PASS: TestIDP/TestLoginRedirectSuccessReturnToTrustedDomainWildcard (0.00s) - --- PASS: TestIDP/TestLoginSuccess (0.00s) - --- PASS: TestIDP/TestLoginSuccessWithTemplate (0.00s) +2024-05-07 15:18:16 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +--- PASS: TestIDP (0.08s) + --- PASS: TestIDP/TestLoginFailure (0.01s) + --- PASS: TestIDP/TestLoginFailureWithWait (0.01s) + --- PASS: TestIDP/TestLoginRedirectFailureInvalidReturnTo (0.01s) + --- PASS: TestIDP/TestLoginRedirectSuccess (0.01s) + --- PASS: TestIDP/TestLoginRedirectSuccessInvalidReturnTo (0.01s) + --- PASS: TestIDP/TestLoginRedirectSuccessReturnToNotTrusted (0.01s) + --- PASS: TestIDP/TestLoginRedirectSuccessReturnToTrustedDomain (0.01s) + --- PASS: TestIDP/TestLoginRedirectSuccessReturnToTrustedDomainInsecure (0.01s) + --- PASS: TestIDP/TestLoginRedirectSuccessReturnToTrustedDomainWildcard (0.01s) + --- PASS: TestIDP/TestLoginSuccess (0.01s) + --- PASS: TestIDP/TestLoginSuccessWithTemplate (0.01s) === RUN TestLoginCookiePath === RUN TestLoginCookiePath/location_in_the_cookie === RUN TestLoginCookiePath/location_NOT_in_the_cookie ---- PASS: TestLoginCookiePath (0.02s) - --- PASS: TestLoginCookiePath/location_in_the_cookie (0.01s) - --- PASS: TestLoginCookiePath/location_NOT_in_the_cookie (0.01s) +--- PASS: TestLoginCookiePath (0.05s) + --- PASS: TestLoginCookiePath/location_in_the_cookie (0.02s) + --- PASS: TestLoginCookiePath/location_NOT_in_the_cookie (0.03s) === RUN TestLogin === RUN TestLogin/TestInteractiveLogin -2024-05-07 14:58:28 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:16 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestLogin/TestLegacyInteractiveLogin -2024-05-07 14:58:28 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:16 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestLogin/TestLegacyLoginFailure discharge.go:169: interaction returned error status (400 Bad Request): {"message":"unsupported method \"PUT\"","code":"bad request"} === RUN TestLogin/TestLegacyNonInteractiveLogin @@ -2152,23 +2190,23 @@ === RUN TestLogin/TestLoginRedirect === RUN TestLogin/TestLoginRedirectNotTrusted === RUN TestLogin/TestNonInteractiveLogin ---- PASS: TestLogin (0.26s) - --- PASS: TestLogin/TestInteractiveLogin (0.02s) - --- PASS: TestLogin/TestLegacyInteractiveLogin (0.02s) - --- PASS: TestLogin/TestLegacyLoginFailure (0.03s) - --- PASS: TestLogin/TestLegacyNonInteractiveLogin (0.04s) - --- PASS: TestLogin/TestLoginEmail (0.01s) - --- PASS: TestLogin/TestLoginEmailSubmitMatch (0.01s) - --- PASS: TestLogin/TestLoginEmailSubmitNoMatch (0.01s) - --- PASS: TestLogin/TestLoginFailure (0.02s) - --- PASS: TestLogin/TestLoginIDPChoice (0.01s) - --- PASS: TestLogin/TestLoginIDPChoiceHidden (0.01s) - --- PASS: TestLogin/TestLoginMethodsIncludesAgent (0.02s) - --- PASS: TestLogin/TestLoginRedirect (0.01s) - --- PASS: TestLogin/TestLoginRedirectNotTrusted (0.02s) - --- PASS: TestLogin/TestNonInteractiveLogin (0.02s) +--- PASS: TestLogin (0.67s) + --- PASS: TestLogin/TestInteractiveLogin (0.08s) + --- PASS: TestLogin/TestLegacyInteractiveLogin (0.08s) + --- PASS: TestLogin/TestLegacyLoginFailure (0.05s) + --- PASS: TestLogin/TestLegacyNonInteractiveLogin (0.07s) + --- PASS: TestLogin/TestLoginEmail (0.03s) + --- PASS: TestLogin/TestLoginEmailSubmitMatch (0.04s) + --- PASS: TestLogin/TestLoginEmailSubmitNoMatch (0.03s) + --- PASS: TestLogin/TestLoginFailure (0.05s) + --- PASS: TestLogin/TestLoginIDPChoice (0.03s) + --- PASS: TestLogin/TestLoginIDPChoiceHidden (0.03s) + --- PASS: TestLogin/TestLoginMethodsIncludesAgent (0.03s) + --- PASS: TestLogin/TestLoginRedirect (0.04s) + --- PASS: TestLogin/TestLoginRedirectNotTrusted (0.03s) + --- PASS: TestLogin/TestNonInteractiveLogin (0.07s) PASS -ok github.com/canonical/candid/internal/discharger 1.071s +ok github.com/canonical/candid/internal/discharger 2.905s === RUN TestStore === RUN TestStore/TestExpiredEntry === RUN TestStore/TestGetCanceled @@ -2179,7 +2217,7 @@ === RUN TestStore/TestPutCanceled === RUN TestStore/TestPutDeadlineExceeded === RUN TestStore/TestRoundTrip ---- PASS: TestStore (0.00s) +--- PASS: TestStore (0.01s) --- PASS: TestStore/TestExpiredEntry (0.00s) --- PASS: TestStore/TestGetCanceled (0.00s) --- PASS: TestStore/TestGetDeadlineExceeded (0.00s) @@ -2190,26 +2228,24 @@ --- PASS: TestStore/TestPutDeadlineExceeded (0.00s) --- PASS: TestStore/TestRoundTrip (0.00s) PASS -ok github.com/canonical/candid/internal/discharger/internal 0.038s -? github.com/canonical/candid/internal/mfa [no test files] -? github.com/canonical/candid/internal/monitoring [no test files] +ok github.com/canonical/candid/internal/discharger/internal 0.078s === RUN TestHandleErrors +=== RUN TestHandleErrors/service_unavailable + http.go:99: JSON call, url "/error/" +=== RUN TestHandleErrors/not_found + http.go:99: JSON call, url "/error/" === RUN TestHandleErrors/forbidden http.go:99: JSON call, url "/error/" === RUN TestHandleErrors/bad_request http.go:99: JSON call, url "/error/" === RUN TestHandleErrors/unauthorized http.go:99: JSON call, url "/error/" -=== RUN TestHandleErrors/service_unavailable - http.go:99: JSON call, url "/error/" -=== RUN TestHandleErrors/not_found - http.go:99: JSON call, url "/error/" ---- PASS: TestHandleErrors (0.02s) - --- PASS: TestHandleErrors/forbidden (0.00s) - --- PASS: TestHandleErrors/bad_request (0.01s) - --- PASS: TestHandleErrors/unauthorized (0.00s) +--- PASS: TestHandleErrors (0.03s) --- PASS: TestHandleErrors/service_unavailable (0.01s) - --- PASS: TestHandleErrors/not_found (0.00s) + --- PASS: TestHandleErrors/not_found (0.01s) + --- PASS: TestHandleErrors/forbidden (0.01s) + --- PASS: TestHandleErrors/bad_request (0.00s) + --- PASS: TestHandleErrors/unauthorized (0.00s) === RUN TestHandleErrorsInternalServerError http.go:99: JSON call, url "/error/" logging.go:37: ERROR candid.internal.identity Internal Server Error: bad wolf ([{/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/identity/json_test.go:57: bad wolf}]) @@ -2235,51 +2271,51 @@ === RUN TestServer/TestServerPanicRecovery http.go:99: JSON call, url "/a" logging.go:37: ERROR candid.internal.identity PANIC!: test panic - goroutine 247 [running]: + goroutine 232 [running]: runtime/debug.Stack() /usr/lib/go-1.22/src/runtime/debug/stack.go:24 +0x78 github.com/canonical/candid/internal/identity.(*Server).ServeHTTP.func1() /build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/identity/server.go:186 +0x4c panic({0x742528, 0x8e61c8}) /usr/lib/go-1.22/src/runtime/panic.go:770 +0xfc - github.com/canonical/candid/internal/identity_test.(*serverSuite).TestServerPanicRecovery.func1.1({0x8eac38, 0x171bcc8}, 0x14d0f08, {0x0, 0x0, 0x0}) + github.com/canonical/candid/internal/identity_test.(*serverSuite).TestServerPanicRecovery.func1.1({0x8eac38, 0x16d6288}, 0x16d61e8, {0x0, 0x0, 0x0}) /build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/identity/server_test.go:182 +0x24 - github.com/julienschmidt/httprouter.(*Router).ServeHTTP(0x14c3c20, {0x8eac38, 0x171bcc8}, 0x14d0f08) + github.com/julienschmidt/httprouter.(*Router).ServeHTTP(0x16d0300, {0x8eac38, 0x16d6288}, 0x16d61e8) /build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/julienschmidt/httprouter/router.go:387 +0x928 - github.com/canonical/candid/internal/identity.(*Server).ServeHTTP(0x140fad0, {0x8eac38, 0x171bcc8}, 0x14d0f08) + github.com/canonical/candid/internal/identity.(*Server).ServeHTTP(0x16158e0, {0x8eac38, 0x16d6288}, 0x16d61e8) /build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/identity/server.go:196 +0x2e0 - net/http.serverHandler.ServeHTTP({0x14d0d28}, {0x8eac38, 0x171bcc8}, 0x14d0f08) + net/http.serverHandler.ServeHTTP({0x16d60a8}, {0x8eac38, 0x16d6288}, 0x16d61e8) /usr/lib/go-1.22/src/net/http/server.go:3137 +0xe0 - net/http.(*conn).serve(0x14933e0, {0x8eb9e0, 0x14ea0f0}) + net/http.(*conn).serve(0x1679c80, {0x8eb9e0, 0x1557860}) /usr/lib/go-1.22/src/net/http/server.go:2039 +0x61c - created by net/http.(*Server).Serve in goroutine 244 + created by net/http.(*Server).Serve in goroutine 229 /usr/lib/go-1.22/src/net/http/server.go:3285 +0x468 logging.go:37: DEBUG candid.internal.identity Closing Server === RUN TestServer/TestServerStaticFiles ---- PASS: TestServer (0.11s) +--- PASS: TestServer (0.18s) --- PASS: TestServer/TestNewServerWithNoVersions (0.00s) - --- PASS: TestServer/TestNewServerWithVersions (0.04s) - --- PASS: TestServer/TestServerHasAccessControlAllowHeaders (0.01s) + --- PASS: TestServer/TestNewServerWithVersions (0.07s) + --- PASS: TestServer/TestServerHasAccessControlAllowHeaders (0.02s) --- PASS: TestServer/TestServerPanicRecovery (0.01s) - --- PASS: TestServer/TestServerStaticFiles (0.05s) + --- PASS: TestServer/TestServerStaticFiles (0.08s) PASS -ok github.com/canonical/candid/internal/identity 0.194s +ok github.com/canonical/candid/internal/identity 0.309s === RUN TestGravatarHash --- PASS: TestGravatarHash (0.00s) === RUN TestUsersAPI === RUN TestUsersAPI/TestCreateAgent -2024-05-07 14:58:35 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:25 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestUsersAPI/TestCreateAgentAsAgent -2024-05-07 14:58:35 ERROR candid.internal.identity json.go:56 Internal Server Error: cannot create an agent using an agent account ([{/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/v1/users.go:164: cannot create an agent using an agent account}]) +2024-05-07 15:18:26 ERROR candid.internal.identity json.go:56 Internal Server Error: cannot create an agent using an agent account ([{/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/v1/users.go:164: cannot create an agent using an agent account}]) === RUN TestUsersAPI/TestCreateAgentAsParentAgent -2024-05-07 14:58:35 ERROR candid.internal.identity json.go:56 Internal Server Error: cannot create an agent using an agent account ([{/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/v1/users.go:164: cannot create an agent using an agent account}]) +2024-05-07 15:18:26 ERROR candid.internal.identity json.go:56 Internal Server Error: cannot create an agent using an agent account ([{/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/v1/users.go:164: cannot create an agent using an agent account}]) === RUN TestUsersAPI/TestCreateAgentWithGroups -2024-05-07 14:58:35 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:26 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestUsersAPI/TestCreateParentAgent === RUN TestUsersAPI/TestCreateParentAgentNotInGroups -2024-05-07 14:58:35 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:26 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestUsersAPI/TestCreateParentAgentUnauthorized -2024-05-07 14:58:35 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified +2024-05-07 15:18:26 WARNING candid.internal.discharger idp.go:190 MFA authenticator not specified === RUN TestUsersAPI/TestDischargeToken === RUN TestUsersAPI/TestExtraInfo === RUN TestUsersAPI/TestExtraInfoNotFound @@ -2312,9 +2348,9 @@ === RUN TestUsersAPI/TestQueryUsers/combined_login_and_discharge_(found) === RUN TestUsersAPI/TestQueryUsers/combined_login_and_discharge_(not_found) === RUN TestUsersAPI/TestQueryUsersBadLastDischarge -2024-05-07 14:58:36 ERROR candid.internal.identity json.go:56 Internal Server Error: cannot unmarshal last-discharge-since: parsing time "yesterday" as "2006-01-02T15:04:05Z07:00": cannot parse "yesterday" as "2006" ([{/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/v1/users.go:60: cannot unmarshal last-discharge-since} {parsing time "yesterday" as "2006-01-02T15:04:05Z07:00": cannot parse "yesterday" as "2006"}]) +2024-05-07 15:18:27 ERROR candid.internal.identity json.go:56 Internal Server Error: cannot unmarshal last-discharge-since: parsing time "yesterday" as "2006-01-02T15:04:05Z07:00": cannot parse "yesterday" as "2006" ([{/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/v1/users.go:60: cannot unmarshal last-discharge-since} {parsing time "yesterday" as "2006-01-02T15:04:05Z07:00": cannot parse "yesterday" as "2006"}]) === RUN TestUsersAPI/TestQueryUsersBadLastLogin -2024-05-07 14:58:36 ERROR candid.internal.identity json.go:56 Internal Server Error: cannot unmarshal last-login-since: parsing time "yesterday" as "2006-01-02T15:04:05Z07:00": cannot parse "yesterday" as "2006" ([{/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/v1/users.go:52: cannot unmarshal last-login-since} {parsing time "yesterday" as "2006-01-02T15:04:05Z07:00": cannot parse "yesterday" as "2006"}]) +2024-05-07 15:18:27 ERROR candid.internal.identity json.go:56 Internal Server Error: cannot unmarshal last-login-since: parsing time "yesterday" as "2006-01-02T15:04:05Z07:00": cannot parse "yesterday" as "2006" ([{/build/reproducible-path/golang-github-canonical-candid-1.12.3/_build/src/github.com/canonical/candid/internal/v1/users.go:52: cannot unmarshal last-login-since} {parsing time "yesterday" as "2006-01-02T15:04:05Z07:00": cannot parse "yesterday" as "2006"}]) === RUN TestUsersAPI/TestQueryUsersUnauthorized === RUN TestUsersAPI/TestRemoveUserMFACredentials === RUN TestUsersAPI/TestRoundTripUser @@ -2333,94 +2369,94 @@ === RUN TestUsersAPI/TestVerifyUserToken === RUN TestUsersAPI/TestWhoAmIWithAuthenticatedUser === RUN TestUsersAPI/TestWhoAmIWithNoUser ---- PASS: TestUsersAPI (0.94s) - --- PASS: TestUsersAPI/TestCreateAgent (0.05s) - --- PASS: TestUsersAPI/TestCreateAgentAsAgent (0.02s) - --- PASS: TestUsersAPI/TestCreateAgentAsParentAgent (0.07s) - --- PASS: TestUsersAPI/TestCreateAgentWithGroups (0.04s) - --- PASS: TestUsersAPI/TestCreateParentAgent (0.04s) - --- PASS: TestUsersAPI/TestCreateParentAgentNotInGroups (0.02s) - --- PASS: TestUsersAPI/TestCreateParentAgentUnauthorized (0.02s) - --- PASS: TestUsersAPI/TestDischargeToken (0.02s) - --- PASS: TestUsersAPI/TestExtraInfo (0.04s) - --- PASS: TestUsersAPI/TestExtraInfoNotFound (0.03s) - --- PASS: TestUsersAPI/TestGetUserIDGroups (0.03s) - --- PASS: TestUsersAPI/TestGetUserIDGroups/no_groups (0.02s) +--- PASS: TestUsersAPI (3.20s) + --- PASS: TestUsersAPI/TestCreateAgent (0.15s) + --- PASS: TestUsersAPI/TestCreateAgentAsAgent (0.09s) + --- PASS: TestUsersAPI/TestCreateAgentAsParentAgent (0.19s) + --- PASS: TestUsersAPI/TestCreateAgentWithGroups (0.18s) + --- PASS: TestUsersAPI/TestCreateParentAgent (0.23s) + --- PASS: TestUsersAPI/TestCreateParentAgentNotInGroups (0.09s) + --- PASS: TestUsersAPI/TestCreateParentAgentUnauthorized (0.07s) + --- PASS: TestUsersAPI/TestDischargeToken (0.07s) + --- PASS: TestUsersAPI/TestExtraInfo (0.10s) + --- PASS: TestUsersAPI/TestExtraInfoNotFound (0.09s) + --- PASS: TestUsersAPI/TestGetUserIDGroups (0.08s) + --- PASS: TestUsersAPI/TestGetUserIDGroups/no_groups (0.05s) --- PASS: TestUsersAPI/TestGetUserIDGroups/groups (0.00s) - --- PASS: TestUsersAPI/TestGetUserIDGroups/no_such_user (0.00s) - --- PASS: TestUsersAPI/TestGetUserWithID (0.03s) - --- PASS: TestUsersAPI/TestGetUserWithID/no_groups (0.02s) - --- PASS: TestUsersAPI/TestGetUserWithID/groups (0.00s) - --- PASS: TestUsersAPI/TestGetUserWithID/no_such_user (0.00s) - --- PASS: TestUsersAPI/TestModifyUserGroups (0.03s) - --- PASS: TestUsersAPI/TestModifyUserGroups/add_groups (0.02s) - --- PASS: TestUsersAPI/TestModifyUserGroups/remove_groups (0.00s) - --- PASS: TestUsersAPI/TestModifyUserGroups/add_and_remove_groups (0.00s) - --- PASS: TestUsersAPI/TestModifyUserGroups/remove_groups_not_a_member_of (0.00s) - --- PASS: TestUsersAPI/TestModifyUserGroups/user_not_found (0.00s) - --- PASS: TestUsersAPI/TestQueryAgentUsers (0.03s) - --- PASS: TestUsersAPI/TestQueryAgentUsersOwnerNotFound (0.03s) - --- PASS: TestUsersAPI/TestQueryUsers (0.04s) - --- PASS: TestUsersAPI/TestQueryUsers/query_existing_user (0.02s) + --- PASS: TestUsersAPI/TestGetUserIDGroups/no_such_user (0.01s) + --- PASS: TestUsersAPI/TestGetUserWithID (0.09s) + --- PASS: TestUsersAPI/TestGetUserWithID/no_groups (0.05s) + --- PASS: TestUsersAPI/TestGetUserWithID/groups (0.01s) + --- PASS: TestUsersAPI/TestGetUserWithID/no_such_user (0.01s) + --- PASS: TestUsersAPI/TestModifyUserGroups (0.11s) + --- PASS: TestUsersAPI/TestModifyUserGroups/add_groups (0.05s) + --- PASS: TestUsersAPI/TestModifyUserGroups/remove_groups (0.02s) + --- PASS: TestUsersAPI/TestModifyUserGroups/add_and_remove_groups (0.01s) + --- PASS: TestUsersAPI/TestModifyUserGroups/remove_groups_not_a_member_of (0.01s) + --- PASS: TestUsersAPI/TestModifyUserGroups/user_not_found (0.01s) + --- PASS: TestUsersAPI/TestQueryAgentUsers (0.08s) + --- PASS: TestUsersAPI/TestQueryAgentUsersOwnerNotFound (0.07s) + --- PASS: TestUsersAPI/TestQueryUsers (0.13s) + --- PASS: TestUsersAPI/TestQueryUsers/query_existing_user (0.05s) --- PASS: TestUsersAPI/TestQueryUsers/query_non-existing_user (0.00s) - --- PASS: TestUsersAPI/TestQueryUsers/no_query_parameter (0.00s) - --- PASS: TestUsersAPI/TestQueryUsers/query_email (0.00s) - --- PASS: TestUsersAPI/TestQueryUsers/query_email_not_found (0.00s) - --- PASS: TestUsersAPI/TestQueryUsers/last_login_in_range (0.00s) + --- PASS: TestUsersAPI/TestQueryUsers/no_query_parameter (0.01s) + --- PASS: TestUsersAPI/TestQueryUsers/query_email (0.01s) + --- PASS: TestUsersAPI/TestQueryUsers/query_email_not_found (0.01s) + --- PASS: TestUsersAPI/TestQueryUsers/last_login_in_range (0.01s) --- PASS: TestUsersAPI/TestQueryUsers/last_login_too_soon (0.00s) --- PASS: TestUsersAPI/TestQueryUsers/last_discharge_in_range (0.00s) --- PASS: TestUsersAPI/TestQueryUsers/last_discharge_too_soon (0.00s) --- PASS: TestUsersAPI/TestQueryUsers/combined_login_and_discharge_(found) (0.00s) --- PASS: TestUsersAPI/TestQueryUsers/combined_login_and_discharge_(not_found) (0.00s) - --- PASS: TestUsersAPI/TestQueryUsersBadLastDischarge (0.02s) - --- PASS: TestUsersAPI/TestQueryUsersBadLastLogin (0.02s) - --- PASS: TestUsersAPI/TestQueryUsersUnauthorized (0.02s) - --- PASS: TestUsersAPI/TestRemoveUserMFACredentials (0.04s) - --- PASS: TestUsersAPI/TestRoundTripUser (0.03s) - --- PASS: TestUsersAPI/TestSSHKeys (0.03s) - --- PASS: TestUsersAPI/TestSetUserGroups (0.03s) - --- PASS: TestUsersAPI/TestUserErrors (0.02s) - --- PASS: TestUsersAPI/TestUserErrors/not_found (0.02s) + --- PASS: TestUsersAPI/TestQueryUsersBadLastDischarge (0.07s) + --- PASS: TestUsersAPI/TestQueryUsersBadLastLogin (0.15s) + --- PASS: TestUsersAPI/TestQueryUsersUnauthorized (0.14s) + --- PASS: TestUsersAPI/TestRemoveUserMFACredentials (0.15s) + --- PASS: TestUsersAPI/TestRoundTripUser (0.07s) + --- PASS: TestUsersAPI/TestSSHKeys (0.10s) + --- PASS: TestUsersAPI/TestSetUserGroups (0.07s) + --- PASS: TestUsersAPI/TestUserErrors (0.07s) + --- PASS: TestUsersAPI/TestUserErrors/not_found (0.05s) --- PASS: TestUsersAPI/TestUserErrors/bad_username (0.00s) - --- PASS: TestUsersAPI/TestUserGroups (0.03s) - --- PASS: TestUsersAPI/TestUserGroups/no_groups (0.01s) - --- PASS: TestUsersAPI/TestUserGroups/groups (0.00s) + --- PASS: TestUsersAPI/TestUserGroups (0.10s) + --- PASS: TestUsersAPI/TestUserGroups/no_groups (0.05s) + --- PASS: TestUsersAPI/TestUserGroups/groups (0.01s) --- PASS: TestUsersAPI/TestUserGroups/no_such_user (0.00s) - --- PASS: TestUsersAPI/TestUserIDPGroups (0.02s) - --- PASS: TestUsersAPI/TestUserTokenNotFound (0.02s) - --- PASS: TestUsersAPI/TestUsernameContainingUnderscore (0.03s) - --- PASS: TestUsersAPI/TestVerifyUserToken (0.03s) - --- PASS: TestUsersAPI/TestWhoAmIWithAuthenticatedUser (0.02s) - --- PASS: TestUsersAPI/TestWhoAmIWithNoUser (0.01s) + --- PASS: TestUsersAPI/TestUserIDPGroups (0.08s) + --- PASS: TestUsersAPI/TestUserTokenNotFound (0.07s) + --- PASS: TestUsersAPI/TestUsernameContainingUnderscore (0.07s) + --- PASS: TestUsersAPI/TestVerifyUserToken (0.08s) + --- PASS: TestUsersAPI/TestWhoAmIWithAuthenticatedUser (0.07s) + --- PASS: TestUsersAPI/TestWhoAmIWithNoUser (0.04s) PASS -ok github.com/canonical/candid/internal/v1 0.970s +ok github.com/canonical/candid/internal/v1 3.293s === RUN TestRendezvousWaitBeforeDone ---- PASS: TestRendezvousWaitBeforeDone (0.00s) +--- PASS: TestRendezvousWaitBeforeDone (0.01s) === RUN TestRendezvousDoneBeforeWait --- PASS: TestRendezvousDoneBeforeWait (0.00s) === RUN TestRendezvousDifferentPlaces ---- PASS: TestRendezvousDifferentPlaces (0.01s) +--- PASS: TestRendezvousDifferentPlaces (0.02s) === RUN TestEntriesRemovedOnClose --- PASS: TestEntriesRemovedOnClose (0.00s) === RUN TestRunGCNotDying ---- PASS: TestRunGCNotDying (0.00s) +--- PASS: TestRunGCNotDying (0.02s) === RUN TestPartialRemoveOldFailure --- PASS: TestPartialRemoveOldFailure (0.00s) === RUN TestPutFailure --- PASS: TestPutFailure (0.00s) === RUN TestWaitTimeout - meeting_test.go:408: starting wait "07c95e860600a197136de169dab9daed" + meeting_test.go:408: starting wait "bb5051777c320eddbc3625b2ed7f6f7a" meeting_test.go:436: after second wait, now: 2016-01-01 12:00:02.000000002 +0000 UTC meeting_test.go:441: expiry deadline 2016-01-01 12:00:05 +0000 UTC meeting_test.go:451: final wait from 2016-01-01 12:00:04.999 +0000 UTC: 1.000001ms meeting_test.go:454: final time 2016-01-01 12:00:05.000000001 +0000 UTC ---- PASS: TestWaitTimeout (0.03s) +--- PASS: TestWaitTimeout (0.04s) === RUN TestRequestCompletedCalled --- PASS: TestRequestCompletedCalled (0.00s) === RUN TestRequestsExpiredCalled --- PASS: TestRequestsExpiredCalled (0.00s) PASS -ok github.com/canonical/candid/meeting 0.064s +ok github.com/canonical/candid/meeting 0.159s === RUN TestUsernameTextUnmarshal === RUN TestUsernameTextUnmarshal/user === RUN TestUsernameTextUnmarshal/admin@idm @@ -2432,7 +2468,7 @@ --- PASS: TestUsernameTextUnmarshal/agent@admin@idm (0.00s) --- PASS: TestUsernameTextUnmarshal/toolongusername_0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef_ (0.00s) PASS -ok github.com/canonical/candid/params 0.028s +ok github.com/canonical/candid/params 0.057s === RUN TestNotFoundError --- PASS: TestNotFoundError (0.00s) === RUN TestDuplicateUsernameError @@ -2440,7 +2476,7 @@ === RUN TestProviderIdentity --- PASS: TestProviderIdentity (0.00s) PASS -ok github.com/canonical/candid/store 0.036s +ok github.com/canonical/candid/store 0.063s === RUN TestKeyValueStore === RUN TestKeyValueStore/TestGetNotFound === RUN TestKeyValueStore/TestSet @@ -2455,7 +2491,7 @@ === RUN TestKeyValueStore/TestUpdateReturnNilThenUpdatesAsNonNil === RUN TestKeyValueStore/TestUpdateSuccessWithPreexistingKey === RUN TestKeyValueStore/TestUpdateSuccessWithoutPreexistingKey ---- PASS: TestKeyValueStore (0.46s) +--- PASS: TestKeyValueStore (0.29s) --- PASS: TestKeyValueStore/TestGetNotFound (0.00s) --- PASS: TestKeyValueStore/TestSet (0.00s) --- PASS: TestKeyValueStore/TestSetKeyOnce (0.00s) @@ -2463,7 +2499,7 @@ --- PASS: TestKeyValueStore/TestSetNilUpdatesAsNonNil (0.00s) --- PASS: TestKeyValueStore/TestTwoStoresForDifferentIDPsAreIndependent (0.00s) --- PASS: TestKeyValueStore/TestTwoStoresForTheSameIDPCommunicate (0.00s) - --- PASS: TestKeyValueStore/TestUpdateConcurrent (0.45s) + --- PASS: TestKeyValueStore/TestUpdateConcurrent (0.28s) --- PASS: TestKeyValueStore/TestUpdateErrorWithExistingKey (0.00s) --- PASS: TestKeyValueStore/TestUpdateErrorWithNonExistentKey (0.00s) --- PASS: TestKeyValueStore/TestUpdateReturnNilThenUpdatesAsNonNil (0.00s) @@ -2560,8 +2596,8 @@ === RUN TestStore/TestUpdateIdentity/providerID_empty_update === RUN TestStore/TestUpdateNotFoundNoQuery === RUN TestStore/TestUserCredentials ---- PASS: TestStore (0.15s) - --- PASS: TestStore/TestFindIdentities (0.07s) +--- PASS: TestStore (0.44s) + --- PASS: TestStore/TestFindIdentities (0.27s) --- PASS: TestStore/TestIdentity (0.00s) --- PASS: TestStore/TestIdentityCounts (0.00s) --- PASS: TestStore/TestIdentityNotFound (0.00s) @@ -2570,7 +2606,7 @@ --- PASS: TestStore/TestInsertDuplicateUsername (0.00s) --- PASS: TestStore/TestUpdateIDDuplicateUsername (0.00s) --- PASS: TestStore/TestUpdateIDEmpty (0.00s) - --- PASS: TestStore/TestUpdateIdentity (0.07s) + --- PASS: TestStore/TestUpdateIdentity (0.15s) --- PASS: TestStore/TestUpdateIdentity/new_identity (0.00s) --- PASS: TestStore/TestUpdateIdentity/new_identity_with_existing_username (0.00s) --- PASS: TestStore/TestUpdateIdentity/set_username (0.00s) @@ -2590,17 +2626,17 @@ --- PASS: TestStore/TestUpdateIdentity/push_groups_empty (0.00s) --- PASS: TestStore/TestUpdateIdentity/pull_groups (0.00s) --- PASS: TestStore/TestUpdateIdentity/pull_groups_empty (0.00s) - --- PASS: TestStore/TestUpdateIdentity/set_public_keys (0.00s) + --- PASS: TestStore/TestUpdateIdentity/set_public_keys (0.01s) --- PASS: TestStore/TestUpdateIdentity/set_public_keys_empty (0.00s) --- PASS: TestStore/TestUpdateIdentity/clear_public_keys (0.00s) --- PASS: TestStore/TestUpdateIdentity/push_public_keys (0.01s) - --- PASS: TestStore/TestUpdateIdentity/push_public_keys_empty (0.00s) - --- PASS: TestStore/TestUpdateIdentity/pull_public_keys (0.00s) - --- PASS: TestStore/TestUpdateIdentity/pull_public_keys_empty (0.02s) + --- PASS: TestStore/TestUpdateIdentity/push_public_keys_empty (0.01s) + --- PASS: TestStore/TestUpdateIdentity/pull_public_keys (0.01s) + --- PASS: TestStore/TestUpdateIdentity/pull_public_keys_empty (0.01s) --- PASS: TestStore/TestUpdateIdentity/set_provider_info (0.00s) --- PASS: TestStore/TestUpdateIdentity/set_provider_info_empty (0.00s) --- PASS: TestStore/TestUpdateIdentity/clear_provider_info (0.00s) - --- PASS: TestStore/TestUpdateIdentity/push_provider_info (0.01s) + --- PASS: TestStore/TestUpdateIdentity/push_provider_info (0.00s) --- PASS: TestStore/TestUpdateIdentity/push_provider_info_empty (0.00s) --- PASS: TestStore/TestUpdateIdentity/pull_provider_info (0.00s) --- PASS: TestStore/TestUpdateIdentity/pull_provider_info_empty (0.00s) @@ -2619,33 +2655,33 @@ --- PASS: TestStore/TestUpdateIdentity/empty_update (0.00s) --- PASS: TestStore/TestUpdateIdentity/providerID_empty_update (0.00s) --- PASS: TestStore/TestUpdateNotFoundNoQuery (0.00s) - --- PASS: TestStore/TestUserCredentials (0.00s) + --- PASS: TestStore/TestUserCredentials (0.01s) === RUN TestMeetingStore === RUN TestMeetingStore/TestContext === RUN TestMeetingStore/TestPutGetRemove === RUN TestMeetingStore/TestPutSameIDTwice === RUN TestMeetingStore/TestRemoveNothingRemoved === RUN TestMeetingStore/TestRemoveOld ---- PASS: TestMeetingStore (0.00s) +--- PASS: TestMeetingStore (0.03s) --- PASS: TestMeetingStore/TestContext (0.00s) --- PASS: TestMeetingStore/TestPutGetRemove (0.00s) --- PASS: TestMeetingStore/TestPutSameIDTwice (0.00s) --- PASS: TestMeetingStore/TestRemoveNothingRemoved (0.00s) - --- PASS: TestMeetingStore/TestRemoveOld (0.00s) + --- PASS: TestMeetingStore/TestRemoveOld (0.02s) === RUN TestACLStore --- PASS: TestACLStore (0.00s) === RUN TestConfigUnmarshal --- PASS: TestConfigUnmarshal (0.00s) PASS -ok github.com/canonical/candid/store/memstore 0.640s +ok github.com/canonical/candid/store/memstore 0.861s testing: warning: no tests to run PASS -ok github.com/canonical/candid/store/mgostore 0.012s [no tests to run] -? github.com/canonical/candid/store/storetest [no test files] -? github.com/canonical/candid/version [no test files] +ok github.com/canonical/candid/store/mgostore 0.056s [no tests to run] testing: warning: no tests to run PASS -ok github.com/canonical/candid/store/sqlstore 0.012s [no tests to run] +ok github.com/canonical/candid/store/sqlstore 0.057s [no tests to run] +? github.com/canonical/candid/store/storetest [no test files] +? github.com/canonical/candid/version [no test files] create-stamp debian/debhelper-build-stamp dh_testroot -O--builddirectory=_build -O--buildsystem=golang dh_prep -O--builddirectory=_build -O--buildsystem=golang @@ -2672,12 +2708,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/21835/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/21835/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/29936 and its subdirectories -I: Current time: Tue May 7 02:59:14 -12 2024 -I: pbuilder-time-stamp: 1715093954 +I: removing directory /srv/workspace/pbuilder/21835 and its subdirectories +I: Current time: Wed May 8 05:19:48 +14 2024 +I: pbuilder-time-stamp: 1715095188