Add check ssl cert and get, if not ssl cert

This commit is contained in:
Your Name
2026-09-22 23:20:50 +05:00
parent 4c1d40ed62
commit d3d933fcce
9 changed files with 75 additions and 28 deletions
@@ -1,3 +1,14 @@
- name: Создание пользователя и директорий для метрик
ansible.builtin.import_tasks: create_user_metrics_and_dir.yml
- name: Подключение роли установки Docker
ansible.builtin.import_role:
name: install_Docker_and_utilities
- name: Получаем сертификат, если его нет
ansible.builtin.import_role:
name: get_ssl_cert
- name: Скопировать конфигурации сервисов
ansible.builtin.template:
src: "{{ item.src }}"
@@ -17,11 +28,3 @@
community.docker.docker_compose_v2:
project_src: "{{ monitoring_dir }}"
state: present
- name: Создание пользователя и директорий для метрик
ansible.builtin.import_tasks: create_user_metrics_and_dir.yml
- name: Подключение роли установки Docker
ansible.builtin.import_role:
name: install_Docker_and_utilities
+35
View File
@@ -0,0 +1,35 @@
- name: Проверка наличия SSL сертификата
ansible.builtin.stat:
path: "/etc/letsencrypt/live/{{ domain }}/fullchain.pem"
register: cert_status
- name: Собрать факты о сервисах
ansible.builtin.service_facts:
when: not cert_status.stat.exists
- name: Остановить nginx (если запущен) перед получением сертификата
ansible.builtin.service:
name: nginx
state: stopped
when:
- not cert_status.stat.exists
- "'nginx.service' in services"
- "services['nginx.service'].state == 'running'"
- name: Получение SSL сертификата через --standalone
ansible.builtin.command: >
certbot certonly --standalone
--non-interactive --agree-tos
-m "{{ email }}"
-d "{{ domain }}"
when: not cert_status.stat.exists
notify: Restart nginx
- name: Запустить nginx
ansible.builtin.service:
name: nginx
state: started
when:
- not cert_status.stat.exists
- "'nginx.service' in services"
- "services['nginx.service'].state == 'running'"
+5
View File
@@ -0,0 +1,5 @@
- name: Restart nginx
ansible.builtin.systemd_service:
name: nginx
state: restarted
daemon_reload: true
@@ -8,5 +8,6 @@
- git
- htop
- rsync
- certbot
state: present
update_cache: true