diff --git a/lemur/dns_providers/cli.py b/lemur/dns_providers/cli.py index b111ca0e..159bdaa0 100644 --- a/lemur/dns_providers/cli.py +++ b/lemur/dns_providers/cli.py @@ -18,8 +18,12 @@ def get_all_zones(): acme_plugin = plugins.get("acme-issuer") for dns_provider in dns_providers: - zones = acme_plugin.get_all_zones(dns_provider) - set_domains(dns_provider, zones) + try: + zones = acme_plugin.get_all_zones(dns_provider) + set_domains(dns_provider, zones) + except Exception as e: + print("[+] Error with DNS Provider {}: {}".format(dns_provider.name, e)) + set_domains(dns_provider, []) status = SUCCESS_METRIC_STATUS diff --git a/lemur/plugins/lemur_acme/plugin.py b/lemur/plugins/lemur_acme/plugin.py index 876f7f8b..926035c4 100644 --- a/lemur/plugins/lemur_acme/plugin.py +++ b/lemur/plugins/lemur_acme/plugin.py @@ -212,6 +212,8 @@ class AcmeHandler(object): """ self.dns_providers_for_domain[domain] = [] for dns_provider in self.all_dns_providers: + if not dns_provider.domains: + continue for name in dns_provider.domains: if domain.endswith("." + name): self.dns_providers_for_domain[domain].append(dns_provider) diff --git a/lemur/static/app/angular/certificates/certificate/tracking.tpl.html b/lemur/static/app/angular/certificates/certificate/tracking.tpl.html index 9410f42d..b64f6e3d 100644 --- a/lemur/static/app/angular/certificates/certificate/tracking.tpl.html +++ b/lemur/static/app/angular/certificates/certificate/tracking.tpl.html @@ -129,7 +129,7 @@ -
+
+
+ +
+ Certificates for LetsEncrypt expire 90 days after creation. Enable auto-rotate to have Lemur automatically + rotate the certificate and update your endpoints. +
+
diff --git a/requirements-docs.txt b/requirements-docs.txt index 6361030c..559d2424 100644 --- a/requirements-docs.txt +++ b/requirements-docs.txt @@ -15,14 +15,14 @@ asyncpool==1.0 babel==2.6.0 # via sphinx bcrypt==3.1.4 blinker==1.4 -boto3==1.7.75 -botocore==1.10.75 +boto3==1.7.78 +botocore==1.10.78 certifi==2018.8.13 cffi==1.11.5 chardet==3.0.4 click==6.7 cloudflare==2.1.0 -cryptography==2.3 +cryptography==2.3.1 dnspython3==1.15.0 dnspython==1.15.0 docutils==0.14 @@ -49,7 +49,7 @@ jsonlines==1.2.0 lockfile==0.12.2 mako==1.0.7 markupsafe==1.0 -marshmallow-sqlalchemy==0.14.0 +marshmallow-sqlalchemy==0.14.1 marshmallow==2.15.4 mock==2.0.0 ndg-httpsclient==0.5.1 diff --git a/requirements-tests.txt b/requirements-tests.txt index 5b2a2166..0021c653 100644 --- a/requirements-tests.txt +++ b/requirements-tests.txt @@ -8,9 +8,9 @@ asn1crypto==0.24.0 # via cryptography atomicwrites==1.1.5 # via pytest attrs==18.1.0 # via pytest aws-xray-sdk==0.95 # via moto -boto3==1.7.76 # via moto +boto3==1.7.78 # via moto boto==2.49.0 # via moto -botocore==1.10.76 # via boto3, moto, s3transfer +botocore==1.10.78 # via boto3, moto, s3transfer certifi==2018.8.13 # via requests cffi==1.11.5 # via cryptography chardet==3.0.4 # via requests diff --git a/requirements.txt b/requirements.txt index 8792fcfd..883a4dd2 100644 --- a/requirements.txt +++ b/requirements.txt @@ -13,8 +13,8 @@ asn1crypto==0.24.0 # via cryptography asyncpool==1.0 bcrypt==3.1.4 # via flask-bcrypt, paramiko blinker==1.4 # via flask-mail, flask-principal, raven -boto3==1.7.76 -botocore==1.10.76 # via boto3, s3transfer +boto3==1.7.78 +botocore==1.10.78 # via boto3, s3transfer certifi==2018.8.13 cffi==1.11.5 # via bcrypt, cryptography, pynacl chardet==3.0.4 # via requests @@ -46,7 +46,7 @@ jsonlines==1.2.0 # via cloudflare lockfile==0.12.2 mako==1.0.7 # via alembic markupsafe==1.0 # via jinja2, mako -marshmallow-sqlalchemy==0.14.0 +marshmallow-sqlalchemy==0.14.1 marshmallow==2.15.4 mock==2.0.0 # via acme ndg-httpsclient==0.5.1