ca9ea097df
Migrate older inline= syntax to pure yml syntax for module args as to be consistant with most of the rest of the tasks Cleanup some spacing in various files Rename some files named yaml to yml for consistancy
66 lines
2 KiB
YAML
66 lines
2 KiB
YAML
---
|
|
|
|
- name: set dns server for docker
|
|
set_fact:
|
|
docker_dns_servers: |-
|
|
{%- if dns_mode == 'kubedns' -%}
|
|
{{ [ skydns_server ] }}
|
|
{%- elif dns_mode == 'dnsmasq_kubedns' -%}
|
|
{{ [ dns_server ] }}
|
|
{%- endif -%}
|
|
|
|
- name: set base docker dns facts
|
|
set_fact:
|
|
docker_dns_search_domains:
|
|
- 'default.svc.{{ dns_domain }}'
|
|
- 'svc.{{ dns_domain }}'
|
|
docker_dns_options:
|
|
- ndots:{{ ndots }}
|
|
- timeout:2
|
|
- attempts:2
|
|
|
|
- name: add upstream dns servers (only when dnsmasq is not used)
|
|
set_fact:
|
|
docker_dns_servers: "{{ docker_dns_servers + upstream_dns_servers|default([]) }}"
|
|
when: dns_mode == 'kubedns'
|
|
|
|
- name: add global searchdomains
|
|
set_fact:
|
|
docker_dns_search_domains: "{{ docker_dns_search_domains + searchdomains|default([]) }}"
|
|
|
|
- name: check system nameservers
|
|
shell: grep "^nameserver" /etc/resolv.conf | sed 's/^nameserver\s*//'
|
|
changed_when: False
|
|
register: system_nameservers
|
|
check_mode: no
|
|
|
|
- name: check system search domains
|
|
shell: grep "^search" /etc/resolv.conf | sed 's/^search\s*//'
|
|
changed_when: False
|
|
register: system_search_domains
|
|
check_mode: no
|
|
|
|
- name: add system nameservers to docker options
|
|
set_fact:
|
|
docker_dns_servers: "{{ docker_dns_servers | union(system_nameservers.stdout_lines) | unique }}"
|
|
when: system_nameservers.stdout != ""
|
|
|
|
- name: add system search domains to docker options
|
|
set_fact:
|
|
docker_dns_search_domains: "{{ docker_dns_search_domains | union(system_search_domains.stdout.split(' ')|default([])) | unique }}"
|
|
when: system_search_domains.stdout != ""
|
|
|
|
- name: check number of nameservers
|
|
fail:
|
|
msg: "Too many nameservers"
|
|
when: docker_dns_servers|length > 3
|
|
|
|
- name: check number of search domains
|
|
fail:
|
|
msg: "Too many search domains"
|
|
when: docker_dns_search_domains|length > 6
|
|
|
|
- name: check length of search domains
|
|
fail:
|
|
msg: "Search domains exceeded limit of 256 characters"
|
|
when: docker_dns_search_domains|join(' ')|length > 256
|