diff options
author | Tomáš Levora <t.levora@partner.samsung.com> | 2018-12-19 15:47:04 +0100 |
---|---|---|
committer | Tomáš Levora <t.levora@partner.samsung.com> | 2018-12-19 15:50:00 +0100 |
commit | 290bf4088ac26232076f0eec1255d89687399539 (patch) | |
tree | f48dcce564e15eee8478b6b63ff63d3bbde3ae9c /ansible/roles/dns | |
parent | 788be5eb73d8213a450050e149cfa34d670e4ffa (diff) |
Add ansible role for dns simulation
Adding role to simulate domain names for offline installation from
private nexus repositories
Issue-ID: OOM-1551
Change-Id: Ia3fe274e95ef078332627af9229195bd6e9a667d
Signed-off-by: Tomáš Levora <t.levora@partner.samsung.com>
Diffstat (limited to 'ansible/roles/dns')
-rw-r--r-- | ansible/roles/dns/handlers/main.yml | 14 | ||||
-rw-r--r-- | ansible/roles/dns/tasks/main.yml | 36 | ||||
-rw-r--r-- | ansible/roles/dns/templates/simulated_hosts.j2 | 3 |
3 files changed, 53 insertions, 0 deletions
diff --git a/ansible/roles/dns/handlers/main.yml b/ansible/roles/dns/handlers/main.yml new file mode 100644 index 00000000..ac3209dc --- /dev/null +++ b/ansible/roles/dns/handlers/main.yml @@ -0,0 +1,14 @@ +--- +- name: Restart dnsmasq container + docker_container: + name: dnsmasq + image: andyshinn/dnsmasq:2.76 + command: -H /simulated_hosts --log-facility=- + capabilities: NET_ADMIN + volumes: + - "{{ app_data_path }}/cfg/simulated_hosts:/simulated_hosts:ro" + ports: + - "53:53/tcp" + - "53:53/udp" + state: started + restart_policy: unless-stopped diff --git a/ansible/roles/dns/tasks/main.yml b/ansible/roles/dns/tasks/main.yml new file mode 100644 index 00000000..2bc05648 --- /dev/null +++ b/ansible/roles/dns/tasks/main.yml @@ -0,0 +1,36 @@ +--- +- name: Ensure cfg directory exist + file: + path: "{{ app_data_path }}/cfg" + state: directory + +- name: Create simulated hostnames file + template: + src: simulated_hosts.j2 + dest: "{{ app_data_path }}/cfg/simulated_hosts" + notify: Restart dnsmasq container + +- name: Load dnsmasq container + docker_image: + name: andyshinn/dnsmasq:2.76 + load_path: "{{ app_data_path }}/offline_data/docker_images_infra/andyshinn_dnsmasq_2.76.tar" + state: present + timeout: 120 + notify: Restart dnsmasq container + +- name: Start dnsmasq container + docker_container: + name: dnsmasq + network_mode: host + image: andyshinn/dnsmasq:2.76 + command: -H /simulated_hosts --log-facility=- + capabilities: NET_ADMIN + dns_servers: + - 127.0.0.1 + volumes: + - "{{ app_data_path }}/cfg/simulated_hosts:/simulated_hosts:ro" + ports: + - "53:53/tcp" + - "53:53/udp" + state: started + restart_policy: unless-stopped diff --git a/ansible/roles/dns/templates/simulated_hosts.j2 b/ansible/roles/dns/templates/simulated_hosts.j2 new file mode 100644 index 00000000..637aef6a --- /dev/null +++ b/ansible/roles/dns/templates/simulated_hosts.j2 @@ -0,0 +1,3 @@ +{% for host in all_simulated_hosts -%} + {{ ansible_host }} {{ host }} +{% endfor %} |