--- - name: Include OS-specific variables include_vars: "{{ item }}" with_first_found: - files: - "{{ ansible_os_family }}-{{ ansible_distribution_major_version }}.yml" - "{{ ansible_os_family }}.yml" - name: install package package: name: "{{ consul_os_package }}" state: present - name: encure data dir exist file: state: directory owner: consul path: "{{ consul_data_dir }}" mode: 0755 - name: apply config template block: - name: server template template: src: config.hcl.j2 dest: /etc/consul.d/config.hcl owner: consul mode: 0644 - name: ensure service is started systemd: name: "{{ consul_service_name }}" state: started enabled: True