Skip to content

Commit a11fa8b

Browse files
committed
fix(domains): check cert exists with desired domains
fixes #57
1 parent a73cde0 commit a11fa8b

File tree

1 file changed

+20
-7
lines changed

1 file changed

+20
-7
lines changed

letsencrypt/domains.sls

Lines changed: 20 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,22 +4,22 @@
44
{% from "letsencrypt/map.jinja" import letsencrypt with context %}
55
66
{% if letsencrypt.use_package %}
7-
# Renew checks if the cert exists and needs to be renewed
8-
{% set check_cert_cmd = letsencrypt._cli_path ~ ' renew --dry-run --no-random-sleep-on-renew --cert-name' %}
7+
{% set check_cert_cmd = letsencrypt._cli_path ~ ' certificates --cert-name' %}
98
{% set renew_cert_cmd = letsencrypt._cli_path ~ ' renew' %}
9+
{% set create_cert_cmd = letsencrypt._cli_path %}
10+
1011
{% set old_check_cert_cmd_state = 'absent' %}
1112
{% set old_renew_cert_cmd_state = 'absent' %}
1213
{% set old_cron_state = 'absent' %}
13-
{% set create_cert_cmd = letsencrypt._cli_path %}
1414
1515
{% else %}
1616
{% set check_cert_cmd = '/usr/local/bin/check_letsencrypt_cert.sh' %}
1717
{% set renew_cert_cmd = '/usr/local/bin/renew_letsencrypt_cert.sh' %}
18+
{% set create_cert_cmd = letsencrypt.cli_install_dir ~ '/letsencrypt-auto' %}
19+
1820
{% set old_check_cert_cmd_state = 'managed' %}
1921
{% set old_renew_cert_cmd_state = 'managed' %}
2022
{% set old_cron_state = 'present' %}
21-
{% set create_cert_cmd = letsencrypt.cli_install_dir ~ '/letsencrypt-auto' %}
22-
{% endif %}
2323
2424
{{ check_cert_cmd }}:
2525
file.{{ old_check_cert_cmd_state }}:
@@ -35,17 +35,30 @@
3535
- require:
3636
- file: {{ check_cert_cmd }}
3737
38+
{% endif %}
39+
3840
{% for setname, domainlist in letsencrypt.domainsets.items() %}
3941
4042
# domainlist[0] represents the "CommonName", and the rest
4143
# represent SubjectAlternativeNames
4244
create-initial-cert-{{ setname }}-{{ domainlist | join('+') }}:
4345
cmd.run:
44-
- unless: {{ check_cert_cmd }} {{ setname }}
45-
- name: {{ create_cert_cmd }} {{ letsencrypt.create_init_cert_subcmd }} --quiet --cert-name {{ setname }} -d {{ domainlist|join(' -d ') }} --non-interactive
46+
- name: |
47+
{{ create_cert_cmd }} {{ letsencrypt.create_init_cert_subcmd }} \
48+
--quiet \
49+
--non-interactive \
50+
--cert-name {{ setname }} \
51+
-d {{ domainlist|join(' -d ') }}
4652
{% if not letsencrypt.use_package %}
4753
- cwd: {{ letsencrypt.cli_install_dir }}
4854
{% endif %}
55+
- unless:
56+
- fun: cmd.run
57+
python_shell: true
58+
cmd: |
59+
{{ check_cert_cmd }} {{ setname }} \
60+
-d {{ domainlist|join(' -d ') }} | \
61+
/bin/grep -q "Certificate Name: {{ setname }}"
4962
- require:
5063
{% if letsencrypt.use_package %}
5164
- pkg: letsencrypt-client

0 commit comments

Comments
 (0)