diff --git a/seb4itik/byow/roles/caddy/tasks/caddy_install.yml b/seb4itik/byow/roles/caddy/tasks/caddy_install.yml index 58b5803..1517904 100644 --- a/seb4itik/byow/roles/caddy/tasks/caddy_install.yml +++ b/seb4itik/byow/roles/caddy/tasks/caddy_install.yml @@ -1,11 +1,3 @@ -- name: Remove packaged Go - ansible.builtin.apt: - name: - - "golang" - state: "absent" - autoremove: true - purge: true - - name: Install requirements ansible.builtin.apt: name: @@ -25,12 +17,6 @@ dest: "/usr/local/go-{{ caddy_go_version }}" remote_src: true -- name: Link Go - ansible.builtin.file: - src: "/usr/local/go-{{ caddy_go_version }}/go/bin/go" - dest: "/usr/local/bin/go" - state: "link" - - name: Create xcaddy directory ansible.builtin.file: path: "/usr/local/xcaddy-{{ caddy_xcaddy_version }}" @@ -39,39 +25,37 @@ - name: Install xcaddy ansible.builtin.unarchive: - src: "{{ caddy_xcaddy_download }}/v{{ caddy_xcaddy_version }}/xcaddy_{{ caddy_xcaddy_version }}_linux_amd64.tar.gz" + src: "https://github.com/caddyserver/xcaddy/releases/download/v{{ caddy_xcaddy_version }}/xcaddy_{{ caddy_xcaddy_version }}_linux_amd64.tar.gz" dest: "/usr/local/xcaddy-{{ caddy_xcaddy_version }}" remote_src: true -- name: Link xcaddy - ansible.builtin.file: - src: "/usr/local/xcaddy-{{ caddy_xcaddy_version }}/xcaddy" - dest: "/usr/local/bin/xcaddy" - state: "link" - - name: Create Caddy build command ansible.builtin.set_fact: caddy_build_command: > - xcaddy build v{{ caddy_caddy_version }} + /usr/local/xcaddy-{{ caddy_xcaddy_version }}/xcaddy build v{{ caddy_version }} --with github.com/pteich/caddy-tlsconsul --with github.com/corazawaf/coraza-caddy/v2@v{{ caddy_coraza_caddy_version }} --with github.com/mholt/caddy-ratelimit --with github.com/steffenbusch/caddy-bot-barrier - --output /usr/local/bin/caddy + --output /usr/local/bin/{{ caddy_my_name }} -- name: Test Caddy version +- name: Remember and test Caddy version ansible.builtin.copy: dest: "/usr/local/bin/.caddy.build" - content: "{{ caddy_build_command }}" + content: > + XCADDY_WHICH_GO=/usr/local/go-{{ caddy_go_version }}/go/bin/go + {{ caddy_build_command }}" mode: "0644" register: caddy_test_caddy_version - name: Build Caddy # noqa: no-handler when: "caddy_test_caddy_version.changed" + environment: + XCADDY_WHICH_GO: "/usr/local/go-{{ caddy_go_version }}/go/bin/go" ansible.builtin.command: cmd: "{{ caddy_build_command }}" - creates: "/usr/local/bin/caddy" + creates: "/usr/local/bin/{{ caddy_my_name }}" notify: - "Restart Caddy" @@ -108,8 +92,9 @@ mode: "0770" - name: Install OWASP CRS + loop: "{{ caddy_owasp_crs_versions }}" ansible.builtin.unarchive: - src: "https://github.com/coreruleset/coreruleset/archive/refs/tags/v{{ caddy_owasp_crs_version }}.tar.gz" + src: "https://github.com/coreruleset/coreruleset/archive/refs/tags/v{{ item }}.tar.gz" dest: "{{ caddy_config_dir }}" group: "{{ caddy_system_group }}" remote_src: true @@ -123,13 +108,7 @@ - name: Deploy caddy service file ansible.builtin.template: src: "templates/caddy.service" - dest: "/etc/systemd/system/{{ caddy_system_user }}.service" + dest: "/etc/systemd/system/{{ caddy_my_name }}.service" mode: "0644" notify: - "Restart Caddy" - -- name: Enable Caddy - ansible.builtin.service: - name: "{{ caddy_system_user }}" - enabled: true - daemon_reload: true