mirror of
https://github.com/Expand-sys/caddyconfigure
synced 2026-03-22 12:37:14 +11:00
58 lines
No EOL
1.6 KiB
YAML
58 lines
No EOL
1.6 KiB
YAML
---
|
|
- name: Configure caddy
|
|
hosts: caddyserver
|
|
vars:
|
|
become: false
|
|
tasks:
|
|
- name: copy existing Caddyfile to make sure there is a backup
|
|
ansible.builtin.copy:
|
|
src: /Caddyfile
|
|
remote_src: true
|
|
dest: /Caddyfile.bak
|
|
owner: root
|
|
group: root
|
|
mode: '0644'
|
|
|
|
- name: Insert/Update configuration using a local file and validate it
|
|
ansible.builtin.blockinfile:
|
|
block: "{{ lookup('ansible.builtin.file', './caddyfile/Caddyfile') }}"
|
|
path: /Caddyfile
|
|
|
|
- name: restart Caddy
|
|
ansible.builtin.docker_container:
|
|
name: caddy-caddy-1
|
|
state: started
|
|
restart: true
|
|
|
|
- name: Pause play until a URL is reachable from this host
|
|
ansible.builtin.uri:
|
|
url: "https://pve.dubois.zip"
|
|
follow_redirects: none
|
|
method: GET
|
|
register: _result
|
|
until: _result.status == 200
|
|
retries: 6 # 6 * 5 seconds = 30sec
|
|
delay: 5 # Every 5 seconds
|
|
ignore_errors: true
|
|
|
|
- name: if _result.status != 200 revert file
|
|
ansible.builtin.copy:
|
|
src: /Caddyfile.bak
|
|
remote_src: true
|
|
dest: /Caddyfile
|
|
owner: root
|
|
group: root
|
|
mode: '0644'
|
|
when: _result.status != 200
|
|
|
|
- name: if _result.status != 200 restart caddy
|
|
ansible.builtin.docker_container:
|
|
name: caddy-caddy-1
|
|
state: started
|
|
restart: true
|
|
when: _result.status != 200
|
|
|
|
- name: if _result.status != 200, fail
|
|
ansible.builtin.fail:
|
|
msg: you messed up your config doofus
|
|
when: _result.status != 200 |