ansible/roles/consul/tasks/main.yml (38 lines of code) (raw):

- name: get consul zip get_url: dest: "/etc/{{ consul_zip_file }}" url: "https://releases.hashicorp.com/consul/{{ consul_version }}/{{ consul_zip_file }}" become: yes - name: ensure unzip present apt: name: unzip update_cache: yes become: yes - name: place unzipped consul on path unarchive: src: "/etc/{{ consul_zip_file }}" dest: "{{ consul_install_dir }}" remote_src: yes become: yes - name: ensure directories for data and config exists file: path: "{{ item }}" state: directory with_items: - "{{ consul_config_dir }}" - "{{ consul_data_dir }}" become: yes - name: send consul configuration file template: dest: "{{ consul_config_dir }}/config.json" src: consul.config.j2 notify: restart consul become: yes - name: ensure consul service file exists template: dest: /etc/systemd/system/consul.service src: consul.service.j2 force: yes mode: 0644 notify: restart consul become: yes