gpg integration tests fail in environment where /run/user dir of build user is missing (e.g. package build environment)
Hi! I'm currently trying to package this project for Arch Linux. Unfortunately the tests do not pass.
cargo fetch --locked --target "$CARCH-unknown-linux-gnu"
export RUSTUP_TOOLCHAIN=stable
export CARGO_TARGET_DIR=target
cargo build --frozen --release --all-features
export RUSTUP_TOOLCHAIN=stable
cargo test --frozen --all-features
Using:
- rust 1.66.0
- gnupg 2.2.40
I get:
Compiling cfg-if v1.0.0
Compiling autocfg v1.1.0
Compiling libc v0.2.138
Compiling proc-macro2 v1.0.47
Compiling quote v1.0.21
Compiling unicode-ident v1.0.5
Compiling version_check v0.9.4
Compiling syn v1.0.105
Compiling scopeguard v1.1.0
Compiling log v0.4.17
Compiling memchr v2.5.0
Compiling bitflags v1.3.2
Compiling regex-syntax v0.6.28
Compiling pkg-config v0.3.26
Compiling cc v1.0.78
Compiling parking_lot_core v0.9.5
Compiling glob v0.3.0
Compiling smallvec v1.10.0
Compiling crunchy v0.2.2
Compiling fastrand v1.8.0
Compiling siphasher v0.3.10
Compiling remove_dir_all v0.5.3
Compiling hashbrown v0.12.3
Compiling tiny-keccak v2.0.2
Compiling libloading v0.7.4
Compiling typenum v1.16.0
Compiling either v1.8.0
Compiling phf_shared v0.10.0
Compiling fixedbitset v0.4.2
Compiling once_cell v1.16.0
Compiling new_debug_unreachable v1.0.4
Compiling precomputed-hash v0.1.1
Compiling futures-core v0.3.25
Compiling bit-vec v0.6.3
Compiling crossbeam-utils v0.8.14
Compiling bindgen v0.57.0
Compiling ena v0.14.0
Compiling nom v5.1.2
Compiling generic-array v0.14.6
Compiling itertools v0.10.5
Compiling shlex v0.1.1
Compiling bit-set v0.5.3
Compiling diff v0.1.13
Compiling lock_api v0.4.9
Compiling indexmap v1.9.2
Compiling clang-sys v1.4.0
Compiling unicode-xid v0.2.4
Compiling lazy_static v1.4.0
Compiling thiserror v1.0.37
Compiling lazycell v1.3.0
Compiling rustc-hash v1.1.0
Compiling lalrpop-util v0.19.8
Compiling peeking_take_while v0.1.2
Compiling slab v0.4.7
Compiling memoffset v0.7.1
Compiling pin-project-lite v0.2.9
Compiling futures-channel v0.3.25
Compiling futures-task v0.3.25
Compiling futures-sink v0.3.25
Compiling crc32fast v1.3.2
Compiling crossbeam-epoch v0.9.13
Compiling anyhow v1.0.66
Compiling futures-io v0.3.25
Compiling tinyvec_macros v0.1.0
Compiling futures-util v0.3.25
Compiling adler v1.0.2
Compiling tinyvec v1.6.0
Compiling dirs-sys-next v0.1.2
Compiling atty v0.2.14
Compiling tempfile v3.3.0
Compiling miniz_oxide v0.6.2
Compiling pin-utils v0.1.0
Compiling aho-corasick v0.7.20
Compiling dirs-next v2.0.0
Compiling num-traits v0.2.15
Compiling term v0.7.0
Compiling parking_lot v0.12.1
Compiling petgraph v0.6.2
Compiling unicode-bidi v0.3.8
Compiling io-lifetimes v1.0.3
Compiling crossbeam-channel v0.5.6
Compiling string_cache v0.8.4
Compiling num-integer v0.1.45
Compiling ascii-canvas v3.0.0
Compiling bzip2-sys v0.1.11+1.0.8
Compiling flate2 v1.0.25
Compiling crossbeam-deque v0.8.2
Compiling tokio v1.23.0
Compiling crossbeam-queue v0.3.8
Compiling getrandom v0.2.8
Compiling num_cpus v1.14.0
Compiling unicode-normalization v0.1.22
Compiling dyn-clone v1.0.9
Compiling memsec v0.6.2
Compiling base64 v0.13.1
Compiling regex v1.7.0
Compiling rustix v0.36.5
Compiling xxhash-rust v0.8.6
Compiling rand_core v0.6.4
Compiling digest v0.9.0
Compiling term_size v0.3.2
Compiling socket2 v0.4.7
Compiling mio v0.8.5
Compiling dirs-sys v0.3.7
Compiling sha1collisiondetection v0.2.6
Compiling bzip2 v0.4.3
Compiling capnp v0.14.11
Compiling rayon-core v1.10.1
Compiling ppv-lite86 v0.2.17
Compiling unicode-width v0.1.10
Compiling linux-raw-sys v0.1.4
Compiling nix v0.18.0
Compiling bytes v1.3.0
Compiling dirs v4.0.0
Compiling buffered-reader v1.1.3
Compiling idna v0.3.0
Compiling textwrap v0.11.0
Compiling cexpr v0.4.0
Compiling time v0.1.45
Compiling vec_map v0.8.2
Compiling iana-time-zone v0.1.53
Compiling rand_chacha v0.3.1
Compiling time-core v0.1.0
Compiling sequoia-wot v0.3.0
Compiling ansi_term v0.12.1
Compiling cfg-if v0.1.10
Compiling strsim v0.8.0
Compiling time v0.3.17
Compiling lalrpop v0.19.8
Compiling crossbeam v0.8.2
Compiling rand v0.8.5
Compiling clap v2.34.0
Compiling fs2 v0.4.3
Compiling filetime v0.2.19
Compiling edit-distance v2.1.0
Compiling chrono v0.4.23
Compiling rayon v1.6.1
Compiling fd-lock v3.0.8
Compiling thiserror-impl v1.0.37
Compiling futures-macro v0.3.25
Compiling enumber v0.3.0
Compiling tokio-util v0.7.4
Compiling openpgp-cert-d v0.1.0
Compiling home-dir v0.1.0
Compiling nettle-sys v2.1.0
Compiling futures-executor v0.3.25
Compiling futures v0.3.25
Compiling capnp-futures v0.14.2
Compiling capnp-rpc v0.14.1
Compiling nettle v7.2.0
Compiling sequoia-openpgp v1.12.0
Compiling sequoia-ipc v0.29.0
Compiling sequoia-openpgp-mt v0.1.0
Compiling sequoia-chameleon-gnupg v0.1.0 (/build/sequoia-chameleon-gnupg/src/sequoia-chameleon-gnupg-v0.1.0)
Finished test [unoptimized + debuginfo] target(s) in 33.12s
Running unittests src/gpg.rs (target/debug/deps/sequoia_chameleon_gpg-1a1b56985f8970ca)
running 2 tests
test argparse::tests::commandline ... ok
test argparse::tests::file ... ok
test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
Running unittests src/gpgv.rs (target/debug/deps/sequoia_chameleon_gpgv-42efd2110a5a37f8)
running 2 tests
test argparse::tests::commandline ... ok
test argparse::tests::file ... ok
test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
Running tests/gpg.rs (target/debug/deps/gpg-6c6399d86aa750e3)
running 35 tests
test gpg::list_keys::empty ... FAILED
test gpg::decrypt::simple ... FAILED
test gpg::decrypt::general_purpose_cv25519 ... FAILED
test gpg::decrypt::general_purpose_p256 ... FAILED
test gpg::encrypt::no_encryption_subkey ... FAILED
test gpg::decrypt::general_purpose_p384 ... FAILED
test gpg::list_keys::expired_subkey ... FAILED
test gpg::list_keys::expired ... FAILED
test gpg::list_keys::disabled ... FAILED
test gpg::version::dump_options ... FAILED
test gpg::list_keys::general_purpose_cv25519 ... FAILED
test gpg::encrypt::general_purpose_cv25519 ... FAILED
test gpg::version::help ... FAILED
test gpg::version::version ... FAILED
test gpg::decrypt::general_purpose_p521 ... FAILED
test gpg::encrypt::general_purpose_p256 ... FAILED
test gpg::list_keys::general_purpose_p256 ... FAILED
test gpg::list_keys::valid ... FAILED
test gpg::list_keys::revoked ... FAILED
test gpg::trust_models::pgp ... FAILED
test gpg::trust_models::always ... FAILED
test gpg::list_keys::general_purpose_p384 ... FAILED
test gpg::encrypt::general_purpose_p384 ... FAILED
test gpg::trust_models::auto ... FAILED
test gpg::list_keys::general_purpose_p521 ... FAILED
test gpg::encrypt::general_purpose_p521 ... FAILED
test gpg::decrypt::general_purpose_rsa2k ... FAILED
test gpg::list_keys::general_purpose_rsa2k ... FAILED
test gpg::encrypt::general_purpose_rsa2k ... FAILED
test gpg::encrypt::general_purpose_rsa3k ... FAILED
test gpg::decrypt::general_purpose_rsa3k ... FAILED
test gpg::list_keys::general_purpose_rsa3k ... FAILED
test gpg::encrypt::general_purpose_rsa4k ... FAILED
test gpg::list_keys::general_purpose_rsa4k ... FAILED
test gpg::decrypt::general_purpose_rsa4k ... FAILED
failures:
---- gpg::list_keys::empty stdout ----
Error: No such file or directory (os error 2)
---- gpg::decrypt::simple stdout ----
Error: No such file or directory (os error 2)
---- gpg::decrypt::general_purpose_cv25519 stdout ----
Error: No such file or directory (os error 2)
---- gpg::decrypt::general_purpose_p256 stdout ----
Error: No such file or directory (os error 2)
---- gpg::encrypt::no_encryption_subkey stdout ----
Importing cert...
Error: No such file or directory (os error 2)
---- gpg::decrypt::general_purpose_p384 stdout ----
Error: No such file or directory (os error 2)
---- gpg::list_keys::expired_subkey stdout ----
Importing cert...
Error: No such file or directory (os error 2)
---- gpg::list_keys::expired stdout ----
Importing cert...
Error: No such file or directory (os error 2)
---- gpg::list_keys::disabled stdout ----
Importing cert...
Error: No such file or directory (os error 2)
---- gpg::version::dump_options stdout ----
Error: No such file or directory (os error 2)
---- gpg::list_keys::general_purpose_cv25519 stdout ----
Importing cert...
Error: No such file or directory (os error 2)
---- gpg::encrypt::general_purpose_cv25519 stdout ----
Importing cert...
Error: No such file or directory (os error 2)
---- gpg::version::help stdout ----
Error: No such file or directory (os error 2)
---- gpg::version::version stdout ----
Error: No such file or directory (os error 2)
---- gpg::decrypt::general_purpose_p521 stdout ----
Error: No such file or directory (os error 2)
---- gpg::encrypt::general_purpose_p256 stdout ----
Importing cert...
Error: No such file or directory (os error 2)
---- gpg::list_keys::general_purpose_p256 stdout ----
Importing cert...
Error: No such file or directory (os error 2)
---- gpg::list_keys::valid stdout ----
Importing cert...
Error: No such file or directory (os error 2)
---- gpg::list_keys::revoked stdout ----
Importing cert...
Error: No such file or directory (os error 2)
---- gpg::trust_models::pgp stdout ----
Importing cert...
Error: No such file or directory (os error 2)
---- gpg::trust_models::always stdout ----
Importing cert...
Error: No such file or directory (os error 2)
---- gpg::list_keys::general_purpose_p384 stdout ----
Importing cert...
Error: No such file or directory (os error 2)
---- gpg::encrypt::general_purpose_p384 stdout ----
Importing cert...
Error: No such file or directory (os error 2)
---- gpg::trust_models::auto stdout ----
Importing cert...
Error: No such file or directory (os error 2)
---- gpg::list_keys::general_purpose_p521 stdout ----
Importing cert...
Error: No such file or directory (os error 2)
---- gpg::encrypt::general_purpose_p521 stdout ----
Importing cert...
Error: No such file or directory (os error 2)
---- gpg::decrypt::general_purpose_rsa2k stdout ----
Error: No such file or directory (os error 2)
---- gpg::list_keys::general_purpose_rsa2k stdout ----
Importing cert...
Error: No such file or directory (os error 2)
---- gpg::encrypt::general_purpose_rsa2k stdout ----
Importing cert...
Error: No such file or directory (os error 2)
---- gpg::encrypt::general_purpose_rsa3k stdout ----
Importing cert...
Error: No such file or directory (os error 2)
---- gpg::decrypt::general_purpose_rsa3k stdout ----
Error: No such file or directory (os error 2)
---- gpg::list_keys::general_purpose_rsa3k stdout ----
Importing cert...
Error: No such file or directory (os error 2)
---- gpg::encrypt::general_purpose_rsa4k stdout ----
Importing cert...
Error: No such file or directory (os error 2)
---- gpg::list_keys::general_purpose_rsa4k stdout ----
Importing cert...
Error: No such file or directory (os error 2)
---- gpg::decrypt::general_purpose_rsa4k stdout ----
Error: No such file or directory (os error 2)
failures:
gpg::decrypt::general_purpose_cv25519
gpg::decrypt::general_purpose_p256
gpg::decrypt::general_purpose_p384
gpg::decrypt::general_purpose_p521
gpg::decrypt::general_purpose_rsa2k
gpg::decrypt::general_purpose_rsa3k
gpg::decrypt::general_purpose_rsa4k
gpg::decrypt::simple
gpg::encrypt::general_purpose_cv25519
gpg::encrypt::general_purpose_p256
gpg::encrypt::general_purpose_p384
gpg::encrypt::general_purpose_p521
gpg::encrypt::general_purpose_rsa2k
gpg::encrypt::general_purpose_rsa3k
gpg::encrypt::general_purpose_rsa4k
gpg::encrypt::no_encryption_subkey
gpg::list_keys::disabled
gpg::list_keys::empty
gpg::list_keys::expired
gpg::list_keys::expired_subkey
gpg::list_keys::general_purpose_cv25519
gpg::list_keys::general_purpose_p256
gpg::list_keys::general_purpose_p384
gpg::list_keys::general_purpose_p521
gpg::list_keys::general_purpose_rsa2k
gpg::list_keys::general_purpose_rsa3k
gpg::list_keys::general_purpose_rsa4k
gpg::list_keys::revoked
gpg::list_keys::valid
gpg::trust_models::always
gpg::trust_models::auto
gpg::trust_models::pgp
gpg::version::dump_options
gpg::version::help
gpg::version::version
test result: FAILED. 0 passed; 35 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.62s
error: test failed, to rerun pass `--test gpg`