testing interaction between gpg and qgpg
This commit is contained in:
39
Bakefile
39
Bakefile
@@ -58,6 +58,45 @@ test_decrypt() {
|
||||
}
|
||||
|
||||
|
||||
test_gpg() {
|
||||
cd ~/tmp/
|
||||
. useve-runner
|
||||
useve qgpg
|
||||
set -e
|
||||
mkdir -p ./gpghomedir
|
||||
chmod 700 ./gpghomedir
|
||||
# Simulate user creating keys with GPG, and person with qGPG encrypts for them.
|
||||
@ gpg --homedir ./gpghomedir -K
|
||||
cat <<EOF | @ gpg --homedir ./gpghomedir --batch --generate-key -
|
||||
%echo Generating a default key
|
||||
Key-Type: default
|
||||
Subkey-Type: default
|
||||
Name-Real: Joe Tester
|
||||
Name-Comment: with stupid passphrase
|
||||
Name-Email: joe@foo.bar
|
||||
Expire-Date: 0
|
||||
Passphrase: abc
|
||||
# Do a commit here, so that we can later print "done" :-)
|
||||
%commit
|
||||
%echo done
|
||||
EOF
|
||||
@ gpg --homedir ./gpghomedir --armor --export joe@foo.bar > key-for-collaborator.pub
|
||||
@ qgpg -e --force --key key-for-collaborator.pub key-for-collaborator.pub key-for-collaborator.pub.gpg
|
||||
echo abc | @ gpg --homedir ./gpghomedir --pinentry-mode loopback --batch --yes --passphrase-fd 0 -d -o key-for-collaborator.pub.2 key-for-collaborator.pub.gpg
|
||||
@ diff key-for-collaborator.pub key-for-collaborator.pub.2
|
||||
@ rm -rf ./gpghomedir
|
||||
# Simulate person creating keys with qGPG, while someone else with GPG encrypts for them
|
||||
GPGPASS=abc.2 @ qgpg -k --force --key qgpg.user --name qgpg@user
|
||||
mkdir -p ./gpghomedir
|
||||
chmod 700 ./gpghomedir
|
||||
@ gpg --homedir ./gpghomedir --import qgpg.user.pub
|
||||
@ gpg --homedir ./gpghomedir -e --trust-model always --yes -r qgpg@user -o qgpg.user.pub.gpg qgpg.user.pub
|
||||
GPGPASS=abc.2 @ qgpg -d --force --key qgpg.user qgpg.user.pub.gpg qgpg.user.pub.2
|
||||
@ diff qgpg.user.pub qgpg.user.pub.2
|
||||
@ rm -rf ./gpghomedir
|
||||
@ sha1sum *
|
||||
}
|
||||
|
||||
install_without_tools() {
|
||||
python3 -m venv .local/share/qgpg
|
||||
.local/share/qgpg/bin/pip install -U pip https://six9.net/py/qgpg/qgpg-1.0.tar.gz
|
||||
|
||||
Reference in New Issue
Block a user