23 lines
985 B
YAML
23 lines
985 B
YAML
# TODO
|
|
- hosts: [{{ip}}]
|
|
sudo: yes
|
|
vars:
|
|
config_dir: {src: {{ config_dir.value['src'] }}, dst: {{ config_dir.value['dst'] }}}
|
|
haproxy_ip: {{ ip }}
|
|
haproxy_services:
|
|
{% for service, ports, listen_port, protocol in zip(configs.value, configs_ports.value, listen_ports.value, configs_protocols.value) %}
|
|
- name: {{ service['emitter_attached_to'] }}
|
|
listen_port: {{ listen_port['value'] }}
|
|
protocol: {{ protocol['value'] }}
|
|
servers:
|
|
{% for server_ip, server_port in zip(service['value'], ports['value']) %}
|
|
- name: {{ server_ip['emitter_attached_to'] }}
|
|
ip: {{ server_ip['value'] }}
|
|
port: {{ server_port['value'] }}
|
|
{% endfor %}
|
|
{% endfor %}
|
|
tasks:
|
|
- file: path={{ config_dir.value['src'] }}/ state=directory
|
|
- file: path={{ config_dir.value['src'] }}/haproxy.cfg state=touch
|
|
- template: src={{ resource_dir }}/templates/haproxy.cfg dest=/etc/haproxy/haproxy.cfg
|