summaryrefslogtreecommitdiff
path: root/cloudinit/gpg.py
diff options
context:
space:
mode:
authorScott Moser <smoser@ubuntu.com>2016-08-10 09:06:15 -0600
committerScott Moser <smoser@ubuntu.com>2016-08-10 09:06:15 -0600
commitc3c3dc693c14175e110b5fe125d4d5f98ace9700 (patch)
tree8858702c2c8a6ad4bf1bb861a4565e0a9c28e588 /cloudinit/gpg.py
parent5bd3493d732e5b1902872958e8681f17cbc81ce5 (diff)
downloadcloud-init-trunk.tar.gz
README: Mention move of revision control to git.HEADtrunk
cloud-init development has moved its revision control to git. It is available at https://code.launchpad.net/cloud-init Clone with git clone https://git.launchpad.net/cloud-init or git clone git+ssh://git.launchpad.net/cloud-init For more information see https://git.launchpad.net/cloud-init/tree/HACKING.rst
Diffstat (limited to 'cloudinit/gpg.py')
-rw-r--r--cloudinit/gpg.py74
1 files changed, 0 insertions, 74 deletions
diff --git a/cloudinit/gpg.py b/cloudinit/gpg.py
deleted file mode 100644
index 6a76d785..00000000
--- a/cloudinit/gpg.py
+++ /dev/null
@@ -1,74 +0,0 @@
-"""gpg.py - Collection of gpg key related functions"""
-# vi: ts=4 expandtab
-#
-# Copyright (C) 2016 Canonical Ltd.
-#
-# Author: Scott Moser <scott.moser@canonical.com>
-# Author: Christian Ehrhardt <christian.ehrhardt@canonical.com>
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 3, as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-from cloudinit import log as logging
-from cloudinit import util
-
-LOG = logging.getLogger(__name__)
-
-
-def export_armour(key):
- """Export gpg key, armoured key gets returned"""
- try:
- (armour, _) = util.subp(["gpg", "--export", "--armour", key],
- capture=True)
- except util.ProcessExecutionError as error:
- # debug, since it happens for any key not on the system initially
- LOG.debug('Failed to export armoured key "%s": %s', key, error)
- armour = None
- return armour
-
-
-def receive_key(key, keyserver):
- """Receive gpg key from the specified keyserver"""
- LOG.debug('Receive gpg key "%s"', key)
- try:
- util.subp(["gpg", "--keyserver", keyserver, "--recv-keys", key],
- capture=True)
- except util.ProcessExecutionError as error:
- raise ValueError(('Failed to import key "%s" '
- 'from server "%s" - error %s') %
- (key, keyserver, error))
-
-
-def delete_key(key):
- """Delete the specified key from the local gpg ring"""
- try:
- util.subp(["gpg", "--batch", "--yes", "--delete-keys", key],
- capture=True)
- except util.ProcessExecutionError as error:
- LOG.warn('Failed delete key "%s": %s', key, error)
-
-
-def get_key_by_id(keyid, keyserver="keyserver.ubuntu.com"):
- """get gpg keyid from keyserver"""
- armour = export_armour(keyid)
- if not armour:
- try:
- receive_key(keyid, keyserver=keyserver)
- armour = export_armour(keyid)
- except ValueError:
- LOG.exception('Failed to obtain gpg key %s', keyid)
- raise
- finally:
- # delete just imported key to leave environment as it was before
- delete_key(keyid)
-
- return armour