aboutsummaryrefslogtreecommitdiff
path: root/ansible/roles/consul/tasks
diff options
context:
space:
mode:
Diffstat (limited to 'ansible/roles/consul/tasks')
-rw-r--r--ansible/roles/consul/tasks/main.yml49
1 files changed, 49 insertions, 0 deletions
diff --git a/ansible/roles/consul/tasks/main.yml b/ansible/roles/consul/tasks/main.yml
new file mode 100644
index 0000000..a943022
--- /dev/null
+++ b/ansible/roles/consul/tasks/main.yml
@@ -0,0 +1,49 @@
+- name: "Set consul version"
+ set_fact:
+ consul_version: 1.4.0
+
+- name: "Download and install Consul for armv7l"
+ unarchive:
+ src: "https://releases.hashicorp.com/consul/{{ consul_version }}/consul_{{ consul_version }}_linux_arm.zip"
+ dest: /usr/local/bin
+ remote_src: yes
+ when:
+ - "ansible_architecture == 'armv7l'"
+ notify:
+ - restart consul
+
+- name: "Download and install Consul for x86_64"
+ unarchive:
+ src: "https://releases.hashicorp.com/consul/{{ consul_version }}/consul_{{ consul_version }}_linux_amd64.zip"
+ dest: /usr/local/bin
+ remote_src: yes
+ when:
+ - "ansible_architecture == 'x86_64'"
+ notify:
+ - restart consul
+
+- name: "Download and install Consul for arm64"
+ unarchive:
+ src: "https://releases.hashicorp.com/consul/{{ consul_version }}/consul_{{ consul_version }}_linux_arm64.zip"
+ dest: /usr/local/bin
+ remote_src: yes
+ when:
+ - "ansible_architecture == 'aarch64'"
+ notify:
+ - restart consul
+
+- name: "Create consul configuration directory"
+ file: path=/etc/consul/ state=directory
+
+- name: "Deploy consul configuration"
+ template: src=consul.json.j2 dest=/etc/consul/consul.json
+ notify:
+ - restart consul
+
+- name: "Deploy consul systemd service"
+ copy: src=consul.service dest=/etc/systemd/system/consul.service
+ notify:
+ - restart consul
+
+- name: "Enable consul systemd service at boot"
+ service: name=consul state=started enabled=yes daemon_reload=yes