From 60bf19b73a95a41c2dcfe45347fea34c0706c1b3 Mon Sep 17 00:00:00 2001 From: Hannes Feldt <feldt@astron.nl> Date: Tue, 7 Jan 2025 15:31:48 +0100 Subject: [PATCH] improve error reporting --- lofar_cryptocoryne/cli.py | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/lofar_cryptocoryne/cli.py b/lofar_cryptocoryne/cli.py index 0bedb5f..d8e05ac 100644 --- a/lofar_cryptocoryne/cli.py +++ b/lofar_cryptocoryne/cli.py @@ -2,6 +2,8 @@ # SPDX-License-Identifier: Apache-2.0 """ Cryptocoryne certbot cli entrypoint """ +import time + import acme.errors import hvac @@ -37,15 +39,24 @@ def main(): print("Waiting for DNS to propagate...") if client.check_dns_propagation(timeout=1200): print("Succeed. Request certificate") - client.request_certificate() + for _ in range(3): + try: + client.request_certificate() + except acme.errors.ValidationError as ve: + print(f"ValidationError: {ve.failed_authzrs}") + else: + break + print("Request failed. Retry in", end=" ") + for t in range(5): + time.sleep(1) + print(t, end=" ") + print("...") certificate.fullchain = client.certificate vault_store.put_certificate(certificate) print("Done") else: print("Failed to issue certificate for " + str(client.domains)) - except acme.errors.ValidationError as ve: - print(f"ValidatinError: {ve.failed_authzrs}") except Exception as e: # pylint: disable=broad-exception-caught print(f"{type(e)}: {e}") finally: -- GitLab