From 319ccbac2940dff1aa6ba2f5b4db5f11e7a3bce8 Mon Sep 17 00:00:00 2001 From: Expand Date: Fri, 22 Sep 2023 09:38:57 +1000 Subject: [PATCH] made some changes dont remembger what they are --- caddyfile/Caddyfile | 20 ++++++++++++++++ inventory | 3 +++ main.ansible.yml | 58 +++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 81 insertions(+) create mode 100644 caddyfile/Caddyfile create mode 100644 inventory create mode 100644 main.ansible.yml diff --git a/caddyfile/Caddyfile b/caddyfile/Caddyfile new file mode 100644 index 0000000..7a235a4 --- /dev/null +++ b/caddyfile/Caddyfile @@ -0,0 +1,20 @@ + +edocs.dubois.zip { + reverse_proxy 10.10.0.24:8787 + import cloudflare +} + +jelly.duboiss.com { + reverse_proxy 10.10.0.189:8096 { + transport http { + tls_insecure_skip_verify + } + } +} + + +camera.dubois.zip { + reverse_proxy 10.10.0.213:8080 { + } + import cloudflare +} \ No newline at end of file diff --git a/inventory b/inventory new file mode 100644 index 0000000..a9fd4de --- /dev/null +++ b/inventory @@ -0,0 +1,3 @@ +[caddyserver] +10.10.0.24 ansible_ssh_user=root + diff --git a/main.ansible.yml b/main.ansible.yml new file mode 100644 index 0000000..1e08d36 --- /dev/null +++ b/main.ansible.yml @@ -0,0 +1,58 @@ +--- +- 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 \ No newline at end of file