|
4 | 4 | {% from "letsencrypt/map.jinja" import letsencrypt with context %}
|
5 | 5 |
|
6 | 6 | {% 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' %} |
9 | 8 | {% set renew_cert_cmd = letsencrypt._cli_path ~ ' renew' %}
|
| 9 | + {% set create_cert_cmd = letsencrypt._cli_path %} |
| 10 | +
|
10 | 11 | {% set old_check_cert_cmd_state = 'absent' %}
|
11 | 12 | {% set old_renew_cert_cmd_state = 'absent' %}
|
12 | 13 | {% set old_cron_state = 'absent' %}
|
13 |
| - {% set create_cert_cmd = letsencrypt._cli_path %} |
14 | 14 |
|
15 | 15 | {% else %}
|
16 | 16 | {% set check_cert_cmd = '/usr/local/bin/check_letsencrypt_cert.sh' %}
|
17 | 17 | {% set renew_cert_cmd = '/usr/local/bin/renew_letsencrypt_cert.sh' %}
|
| 18 | + {% set create_cert_cmd = letsencrypt.cli_install_dir ~ '/letsencrypt-auto' %} |
| 19 | +
|
18 | 20 | {% set old_check_cert_cmd_state = 'managed' %}
|
19 | 21 | {% set old_renew_cert_cmd_state = 'managed' %}
|
20 | 22 | {% set old_cron_state = 'present' %}
|
21 |
| - {% set create_cert_cmd = letsencrypt.cli_install_dir ~ '/letsencrypt-auto' %} |
22 |
| -{% endif %} |
23 | 23 |
|
24 | 24 | {{ check_cert_cmd }}:
|
25 | 25 | file.{{ old_check_cert_cmd_state }}:
|
|
35 | 35 | - require:
|
36 | 36 | - file: {{ check_cert_cmd }}
|
37 | 37 |
|
| 38 | +{% endif %} |
| 39 | +
|
38 | 40 | {% for setname, domainlist in letsencrypt.domainsets.items() %}
|
39 | 41 |
|
40 | 42 | # domainlist[0] represents the "CommonName", and the rest
|
41 | 43 | # represent SubjectAlternativeNames
|
42 | 44 | create-initial-cert-{{ setname }}-{{ domainlist | join('+') }}:
|
43 | 45 | 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 ') }} |
46 | 52 | {% if not letsencrypt.use_package %}
|
47 | 53 | - cwd: {{ letsencrypt.cli_install_dir }}
|
48 | 54 | {% endif %}
|
| 55 | + - unless: |
| 56 | + {% if letsencrypt.use_package %} |
| 57 | + - fun: cmd.run |
| 58 | + python_shell: true |
| 59 | + cmd: | |
| 60 | + {{ check_cert_cmd }} {{ setname }} \ |
| 61 | + -d {{ domainlist|join(' -d ') }} | \ |
| 62 | + /bin/grep -q "Certificate Name: {{ setname }}" |
| 63 | + {% else %} |
| 64 | + - {{ check_cert_cmd }} {{ setname }} {{ domainlist | join(' ') }} |
| 65 | + {% endif %} |
49 | 66 | - require:
|
50 | 67 | {% if letsencrypt.use_package %}
|
51 | 68 | - pkg: letsencrypt-client
|
|
0 commit comments