mirror of
https://github.com/aptly-dev/aptly.git
synced 2026-01-12 03:21:33 +00:00
57 lines
1.5 KiB
Python
57 lines
1.5 KiB
Python
import inspect
|
|
import os
|
|
import subprocess
|
|
import tempfile
|
|
|
|
from api_lib import APITest
|
|
|
|
|
|
def check_gpgkey_exists(gpg_key, keyring):
|
|
subprocess.check_call([
|
|
"gpg", "--no-default-keyring",
|
|
"--keyring", keyring,
|
|
"--fingerprint", gpg_key,
|
|
])
|
|
|
|
|
|
class GPGAPITestAddKey(APITest):
|
|
"""
|
|
POST /gpg/key
|
|
"""
|
|
|
|
skipTest = "Using obsolete keys.gnupg.net"
|
|
|
|
def check(self):
|
|
with tempfile.NamedTemporaryFile(suffix=".pub") as keyring:
|
|
gpgkeyid = "9E3E53F19C7DE460"
|
|
resp = self.post("/api/gpg/key", json={
|
|
"Keyserver": "keys.gnupg.net",
|
|
"Keyring": keyring.name,
|
|
"GpgKeyID": gpgkeyid
|
|
})
|
|
|
|
self.check_equal(resp.status_code, 200)
|
|
check_gpgkey_exists(gpgkeyid, keyring.name)
|
|
|
|
|
|
class GPGAPITestAddKeyArmor(APITest):
|
|
"""
|
|
POST /gpg/key
|
|
"""
|
|
def check(self):
|
|
keyfile = os.path.join(os.path.dirname(inspect.getsourcefile(APITest)),
|
|
"files") + "/launchpad.key"
|
|
gpgkeyid = "3B1F56C0"
|
|
|
|
with open(keyfile, 'r') as keyf:
|
|
gpgkeyarmor = keyf.read()
|
|
|
|
with tempfile.NamedTemporaryFile(suffix=".pub") as keyring:
|
|
resp = self.post("/api/gpg/key", json={
|
|
"Keyring": keyring.name,
|
|
"GpgKeyArmor": gpgkeyarmor
|
|
})
|
|
|
|
self.check_equal(resp.status_code, 200)
|
|
check_gpgkey_exists(gpgkeyid, keyring.name)
|