2.1.19 testing failures on the debian build daemons

Daniel Kahn Gillmor dkg at fifthhorseman.net
Fri Mar 17 17:27:14 CET 2017


Hey all--

the debian build daemons are all failing to build 2.1.19-1 (which
includes many post-release bugfix patches, on top of 2.1.19 itself):

https://buildd.debian.org/status/logs.php?pkg=gnupg2&ver=2.1.19-1&suite=experimental

The failures are in the test suite.

(the one visible success -- m68k -- is a build daemon that deliberately
doesn't run the test suites)

An example of the failures is:

make[3]: Leaving directory '/«PKGBUILDDIR»/build/tests/gpgscm'
Making check in openpgp
make[3]: Entering directory '/«PKGBUILDDIR»/build/tests/openpgp'
LC_ALL=C EXEEXT= PATH=../gpgscm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games srcdir=/«PKGBUILDDIR»/build/../tests/openpgp objdir=/«PKGBUILDDIR»/build GPGSCM_PATH=/«PKGBUILDDIR»/build/../tests/gpgscm:/«PKGBUILDDIR»/build/../tests/openpgp /«PKGBUILDDIR»/build/tests/gpgscm/gpgscm \
  run-tests.scm  version.scm enarmor.scm mds.scm decrypt.scm decrypt-multifile.scm decrypt-dsa.scm decrypt-session-key.scm sigs.scm sigs-dsa.scm encrypt.scm encrypt-multifile.scm encrypt-dsa.scm compression.scm seat.scm clearsig.scm encryptp.scm detach.scm detachm.scm armsigs.scm armencrypt.scm armencryptp.scm signencrypt.scm signencrypt-dsa.scm armsignencrypt.scm armdetach.scm armdetachm.scm genkey1024.scm conventional.scm conventional-mdc.scm multisig.scm verify.scm verify-multifile.scm gpgv-forged-keyring.scm armor.scm import.scm import-revocation-certificate.scm ecc.scm 4gb-packet.scm tofu.scm gpgtar.scm use-exact-key.scm default-key.scm export.scm ssh-import.scm ssh-export.scm quick-key-manipulation.scm key-selection.scm delete-keys.scm gpgconf.scm issue2015.scm issue2346.scm issue2417.scm issue2419.scm issue2929.scm issue2941.scm
("/«PKGBUILDDIR»/build/tools/gpg-connect-agent" --verbose "--agent-program=/«PKGBUILDDIR»/build/agent/gpg-agent|--debug-quick-random" /bye) failed: ("gpg-connect-agent: no running gpg-agent - starting '/«PKGBUILDDIR»/build/agent/gpg-agent|--debug-quick-random'\ngpg-connect-agent: waiting for the agent to come up ... (5s)\ngpg-connect-agent: waiting for the agent to come up ... (4s)\ngpg-connect-agent: waiting for the agent to come up ... (3s)\ngpg-connect-agent: waiting for the agent to come up ... (2s)\ngpg-connect-agent: waiting for the agent to come up ... (1s)\ngpg-connect-agent: can't connect to the agent: File name too long\ngpg-connect-agent: error sending standard options: No agent running\n")
FAIL: setup.scm 
("/«PKGBUILDDIR»/build/tools/gpg-connect-agent" --verbose "--agent-program=/«PKGBUILDDIR»/build/agent/gpg-agent|--debug-quick-random" /bye) failed: ("gpg-connect-agent: no running gpg-agent - starting '/«PKGBUILDDIR»/build/agent/gpg-agent|--debug-quick-random'\ngpg-connect-agent: waiting for the agent to come up ... (5s)\ngpg-connect-agent: waiting for the agent to come up ... (4s)\ngpg-connect-agent: waiting for the agent to come up ... (3s)\ngpg-connect-agent: waiting for the agent to come up ... (2s)\ngpg-connect-agent: waiting for the agent to come up ... (1s)\ngpg-connect-agent: can't connect to the agent: IPC connect call failed\ngpg-connect-agent: error sending standard options: No agent running\n")
FAIL: version.scm
("/«PKGBUILDDIR»/build/tools/gpgtar" --extract --directory=. "/«PKGBUILDDIR»/build/tests/openpgp/gpgscm-20170317T084956-run-tests-UA2ct9/gpgscm-20170317T084956-run-tests-SYHm3M/environment-cache") failed: ("gpgtar: error opening '/«PKGBUILDDIR»/build/tests/openpgp/gpgscm-20170317T084956-run-tests-UA2ct9/gpgscm-20170317T084956-run-tests-SYHm3M/environment-cache': No such file or directory\n")
0: tests.scm:133: (throw (string-append (stringify what) " failed") (:stderr result))
1: defs.scm:435: (call-check `(,(tool 'gpgtar) --extract --directory=. ,(cadr *args*)))

unpacking those first failures, it looks like "gpg-connect-agent" call
is failing, because the agent fails to start the gpg-agent daemon.

in this case, the path for the tests in question is:

  /build/gnupg2-K_EEBD/gnupg2-2.1.19/build/tests/openpgp

which should be short enough if it were used as a homedir, though i
think setup.scm uses an ephemeral homedir -- whose path i haven't
tracked down yet.

the version.scm failure shows:

 gpgtar: error opening
 '/build/gnupg2-K_EEBD/gnupg2-2.1.19/build/tests/openpgp/gpgscm-20170317T084956-run-tests-UA2ct9/gpgscm-20170317T084956-run-tests-SYHm3M/environment-cache':
 No such file or directory

if that's the test path, then it certainly is longer than sun-path.  I
don't understand why there would be two nested directories named
gpgscm-$TIMESTAMP-run-tests-$SUFFIX though.

Doing the build myself in a normal environment *doesn't* have these
failures, but building in a pbuilder/cowbuilder environment *does* show
them.

Any suggestions?

Sorry to keep raising these build process hiccups.  clearly the build
process and test suite are more brittle than we'd like them to be.  are
there checks we should be doing up front in the test process to detect
whether the local system is one we can actually run the tests on?

    --dkg
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 832 bytes
Desc: not available
URL: </pipermail/attachments/20170317/09ac2271/attachment.sig>


More information about the Gnupg-devel mailing list