diff options
Diffstat (limited to 'roles/cloudflared/tasks')
| -rw-r--r-- | roles/cloudflared/tasks/install-alpine.yml | 32 | ||||
| -rw-r--r-- | roles/cloudflared/tasks/install-archlinux.yml | 23 | ||||
| -rw-r--r-- | roles/cloudflared/tasks/install-debian.yml | 23 | ||||
| -rw-r--r-- | roles/cloudflared/tasks/main.yml | 7 |
4 files changed, 85 insertions, 0 deletions
diff --git a/roles/cloudflared/tasks/install-alpine.yml b/roles/cloudflared/tasks/install-alpine.yml new file mode 100644 index 00000000..28437fc9 --- /dev/null +++ b/roles/cloudflared/tasks/install-alpine.yml @@ -0,0 +1,32 @@ +--- +- name: "Check if cloudflared binary exists" + ansible.builtin.stat: + path: "/usr/local/bin/cloudflared" + register: cloudflared_binary + +- name: "Download cloudflared binary" + become: true + ansible.builtin.get_url: + url: "https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64" + dest: "/usr/local/bin/cloudflared" + mode: "0755" + owner: "root" + group: "root" + when: not cloudflared_binary.stat.exists + +- name: "Deploy cloudflared OpenRC service" + become: true + ansible.builtin.template: + src: "cloudflared.initd.j2" + dest: "/etc/init.d/cloudflared" + owner: "root" + group: "root" + mode: "0755" + notify: "Restart cloudflared" + +- name: "Start and enable cloudflared" + become: true + ansible.builtin.service: + name: "cloudflared" + state: "started" + enabled: true diff --git a/roles/cloudflared/tasks/install-archlinux.yml b/roles/cloudflared/tasks/install-archlinux.yml new file mode 100644 index 00000000..5d122644 --- /dev/null +++ b/roles/cloudflared/tasks/install-archlinux.yml @@ -0,0 +1,23 @@ +--- +- name: "Install cloudflared" + become: true + ansible.builtin.package: + name: "cloudflared" + state: "present" + +- name: "Deploy cloudflared systemd service" + become: true + ansible.builtin.template: + src: "cloudflared.service.j2" + dest: "/etc/systemd/system/cloudflared.service" + owner: "root" + group: "root" + mode: "0644" + notify: "Restart cloudflared" + +- name: "Start and enable cloudflared" + become: true + ansible.builtin.service: + name: "cloudflared" + state: "started" + enabled: true diff --git a/roles/cloudflared/tasks/install-debian.yml b/roles/cloudflared/tasks/install-debian.yml new file mode 100644 index 00000000..5d122644 --- /dev/null +++ b/roles/cloudflared/tasks/install-debian.yml @@ -0,0 +1,23 @@ +--- +- name: "Install cloudflared" + become: true + ansible.builtin.package: + name: "cloudflared" + state: "present" + +- name: "Deploy cloudflared systemd service" + become: true + ansible.builtin.template: + src: "cloudflared.service.j2" + dest: "/etc/systemd/system/cloudflared.service" + owner: "root" + group: "root" + mode: "0644" + notify: "Restart cloudflared" + +- name: "Start and enable cloudflared" + become: true + ansible.builtin.service: + name: "cloudflared" + state: "started" + enabled: true diff --git a/roles/cloudflared/tasks/main.yml b/roles/cloudflared/tasks/main.yml new file mode 100644 index 00000000..e4a3b36e --- /dev/null +++ b/roles/cloudflared/tasks/main.yml @@ -0,0 +1,7 @@ +--- +- name: "Skip if tunnel token not defined" + when: cloudflared_tunnel_token is not defined + ansible.builtin.meta: end_role + +- name: "Include OS-specific installation tasks" + ansible.builtin.include_tasks: "install-{{ ansible_facts['os_family'] | lower }}.yml" |
