mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-06 19:01:54 +00:00
Add tests/lint/repository/test_name_emoji_and_length.py: every Ansible task name and GitHub Actions workflow/job/step name must start with an emoji (first char not 0-9/A-Za-z) and be <= 80 chars. - emit emoji names at the source: cli/build/include generator now writes "🔧 setup <app>" / "🚿 flush handlers after <app>" so generated tasks/groups/*-roles.yml satisfy the convention too - convert existing task/step/job/workflow names to emoji-prefixed, choosing a task-fitting icon per action (📦 install, ✅ ensure, 🔍 probe, 🥾 bootstrap, 🚀 deploy, 🧩 service-module load, ⬇️ checkout, 📂 include-routines, ...) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
27 lines
1.1 KiB
YAML
27 lines
1.1 KiB
YAML
---
|
|
- name: "🔎 Check if certificate already exists for '{{ domain }}'"
|
|
cert_check_exists:
|
|
domain: "{{ domain }}"
|
|
cert_base_path: "{{ LETSENCRYPT_LIVE_PATH }}"
|
|
register: cert_check
|
|
|
|
- name: "📜 receive certificate for '{{ domain }}'"
|
|
command: >-
|
|
certbot certonly --agree-tos --email {{ lookup('users', 'administrator').email }}
|
|
--non-interactive {% if CERTBOT_ACME_CHALLENGE_METHOD != "webroot" %}
|
|
--dns-{{ CERTBOT_ACME_CHALLENGE_METHOD }}
|
|
--dns-{{ CERTBOT_ACME_CHALLENGE_METHOD }}-credentials {{ CERTBOT_CREDENTIALS_FILE }}
|
|
--dns-{{ CERTBOT_ACME_CHALLENGE_METHOD }}-propagation-seconds {{ CERTBOT_DNS_PROPAGATION_WAIT_SECONDS }}
|
|
{% else %}
|
|
--webroot -w {{ LETSENCRYPT_WEBROOT_PATH }}
|
|
{% endif %}
|
|
{% if wildcard_domain is defined and ( wildcard_domain | bool ) %}
|
|
-d {{ DOMAIN_PRIMARY }} -d *.{{ DOMAIN_PRIMARY }}
|
|
{% else %}
|
|
-d {{ domain }}
|
|
{% endif %}
|
|
{{ '--test-cert' if MODE_DUMMY | bool else '' }}
|
|
register: certbot_result
|
|
changed_when: "'Certificate not yet due for renewal' not in certbot_result.stdout"
|
|
when: not cert_check.exists
|