summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--changes/bug_3985-soledad-boostrap-problem2
-rw-r--r--src/leap/bitmask/services/soledad/soledadbootstrapper.py18
2 files changed, 19 insertions, 1 deletions
diff --git a/changes/bug_3985-soledad-boostrap-problem b/changes/bug_3985-soledad-boostrap-problem
new file mode 100644
index 00000000..629481de
--- /dev/null
+++ b/changes/bug_3985-soledad-boostrap-problem
@@ -0,0 +1,2 @@
+ o Add more verbose error handling during key generation and syncing.
+ Helps diagnose: #3985; Addresses in part: #3965
diff --git a/src/leap/bitmask/services/soledad/soledadbootstrapper.py b/src/leap/bitmask/services/soledad/soledadbootstrapper.py
index d348661d..6731cc84 100644
--- a/src/leap/bitmask/services/soledad/soledadbootstrapper.py
+++ b/src/leap/bitmask/services/soledad/soledadbootstrapper.py
@@ -362,11 +362,27 @@ class SoledadBootstrapper(AbstractBootstrapper):
try:
self._keymanager.get_key(
address, openpgp.OpenPGPKey, private=True, fetch_remote=False)
+ return
except KeyNotFound:
logger.debug("Key not found. Generating key for %s" % (address,))
+
+ # generate key
+ try:
self._keymanager.gen_key(openpgp.OpenPGPKey)
+ except Exception as exc:
+ logger.error("error while generating key!")
+ logger.exception(exc)
+ raise
+
+ # send key
+ try:
self._keymanager.send_key(openpgp.OpenPGPKey)
- logger.debug("Key generated successfully.")
+ except Exception as exc:
+ logger.error("error while sending key!")
+ logger.exception(exc)
+ raise
+
+ logger.debug("Key generated successfully.")
def run_soledad_setup_checks(self,
provider_config,