Add some of caddy to ansible

This commit is contained in:
Tobias Reisinger 2023-12-14 20:30:34 +01:00
parent c1ec46aed5
commit 297325cce5
Signed by: serguzim
GPG key ID: 13AD60C237A28DFE
13 changed files with 156 additions and 37 deletions
_ansible/roles/caddy/tasks

View file

@ -1,11 +0,0 @@
- name: Find caddy site configs, but exclude managed sites
ansible.builtin.find:
paths: "{{ caddy_config_path }}"
excludes: "{{ managed_sites | default([]) }}"
register: files_to_delete
- name: Remove unmanaged sites
file:
path: "{{ item.path }}"
state: absent
with_items: "{{ files_to_delete.files }}"

View file

@ -7,12 +7,37 @@
svc: "{{ caddy_svc }}"
env: "{{ caddy_env }}"
compose: "{{ caddy_compose }}"
- name: Deploy {{ svc.name }}
block:
- name: Import tasks to deploy common service
ansible.builtin.import_tasks: tasks/deploy-common-service.yml
- name: Import prepare tasks for common service
ansible.builtin.import_tasks: tasks/prepare-common-service.yml
- name: Import tasks for cleaning sites
ansible.builtin.import_tasks: tasks/clean-sites.yml
- name: Import tasks to reload caddy
ansible.builtin.import_tasks: tasks/reload-caddy.yml
- name: Set caddy config path
ansible.builtin.set_fact:
config_path: "{{ (service_path, 'config') | path_join }}"
- name: Create config directory
ansible.builtin.file:
path: "{{ config_path }}"
state: directory
mode: "0755"
- name: Template caddyfile
ansible.builtin.template:
src: Caddyfile.j2
dest: "{{ (config_path, 'Caddyfile') | path_join }}"
mode: "0644"
- name: Copy snippets file
ansible.builtin.copy:
src: snippets
dest: "{{ (config_path, 'snippets') | path_join }}"
mode: "0644"
- name: Create sites-config directory
ansible.builtin.file:
path: "{{ caddy_config_path }}"
state: directory
mode: "0755"
- name: Import start tasks for common service
ansible.builtin.import_tasks: tasks/start-common-service.yml

View file

@ -1,16 +0,0 @@
- name: Check caddy configuration
ansible.builtin.command:
cmd: docker compose exec app sh -c "caddy validate --config /etc/caddy/Caddyfile"
chdir: "{{ service_path }}"
when: "'local-dev' != inventory_hostname"
register: cmd_result
changed_when: false
- name: Reload caddy configuration
ansible.builtin.command:
cmd: docker compose exec app sh -c "caddy reload --config /etc/caddy/Caddyfile"
chdir: "{{ service_path }}"
when:
- "'local-dev' != inventory_hostname"
- cmd_result.rc == 0
changed_when: true # TODO find a way to detect changes