tests: Create temporary directories in '/tmp'.

* tests/gpgscm/tests.scm (mkdtemp): Create temporary directories in
'/tmp' on UNIX, or in '%Temp' on Windows.
* tests/migrations/common.scm (run-test): Turn error into a warning.
* tests/openpgp/defs.scm (start-agent): Likewise.
--

This fixes the problem of GnuPG components being unable to communicate
because of too long GnuPG home directories in important build
environments like the Debian build servers despite the use of socket
directories.

This reverts d75d20909d.

Signed-off-by: Justus Winter <justus@g10code.com>
This commit is contained in:
Justus Winter 2017-03-21 13:15:38 +01:00
parent ceb4b24575
commit 06f1f163e9
No known key found for this signature in database
GPG Key ID: DD1A52F9DA8C9020
3 changed files with 7 additions and 5 deletions

View File

@ -271,9 +271,11 @@
;; generic name is used. Returns an absolute path.
(define (mkdtemp . components)
(canonical-path (_mkdtemp (if (null? components)
(string-append "gpgscm-" (get-isotime) "-"
(basename-suffix *scriptname* ".scm")
"-XXXXXX")
(path-join
(if *win32* (getenv "Temp") "/tmp")
(string-append "gpgscm-" (get-isotime) "-"
(basename-suffix *scriptname* ".scm")
"-XXXXXX"))
(apply path-join components)))))
(define-macro (with-temporary-working-directory . expressions)

View File

@ -53,7 +53,7 @@
(untar-armored src-tarball)
(setenv "GNUPGHOME" (getcwd) #t)
(catch (fail "Creating socket directory failed (see README):" (car *error*))
(catch (log "Warning: Creating socket directory failed:" (car *error*))
(call-popen `(,gpgconf --create-socketdir) ""))
(test (getcwd))
(catch (log "Warning: Removing socket directory failed.")

View File

@ -446,7 +446,7 @@
(atexit (lambda ()
(with-home-directory gnupghome
(stop-agent)))))
(catch (fail "Creating socket directory failed (see README):" (car *error*))
(catch (log "Warning: Creating socket directory failed:" (car *error*))
(call-popen `(,(tool 'gpgconf) --create-socketdir) ""))
(call-check `(,(tool 'gpg-connect-agent) --verbose
,(string-append "--agent-program=" (tool 'gpg-agent)