503ab0f722
If running Kubespray on static IP environments, a task was failed like: TASK [kubernetes/preinstall : Configure dhclient hooks for resolv.conf (RH-only)] fatal: [ak8s2]: FAILED! => { "changed": false, "checksum": "..", "msg": "Destination directory /etc/dhcp/dhclient.d does not exist"} This adds a check for dhclientconffile for running 0100-dhclient-hooks to run the task only if dhcpclient is enabled.
33 lines
1,007 B
YAML
33 lines
1,007 B
YAML
---
|
|
- name: Configure dhclient to supersede search/domain/nameservers
|
|
blockinfile:
|
|
block: |-
|
|
{% for item in [ supersede_domain, supersede_search, supersede_nameserver ] -%}
|
|
{{ item }}
|
|
{% endfor %}
|
|
path: "{{ dhclientconffile }}"
|
|
create: yes
|
|
state: present
|
|
insertbefore: BOF
|
|
backup: yes
|
|
marker: "# Ansible entries {mark}"
|
|
mode: 0644
|
|
notify: Preinstall | propagate resolvconf to k8s components
|
|
|
|
- name: Configure dhclient hooks for resolv.conf (non-RH)
|
|
template:
|
|
src: dhclient_dnsupdate.sh.j2
|
|
dest: "{{ dhclienthookfile }}"
|
|
owner: root
|
|
mode: 0755
|
|
notify: Preinstall | propagate resolvconf to k8s components
|
|
when: ansible_os_family not in [ "RedHat", "Suse" ]
|
|
|
|
- name: Configure dhclient hooks for resolv.conf (RH-only)
|
|
template:
|
|
src: dhclient_dnsupdate_rh.sh.j2
|
|
dest: "{{ dhclienthookfile }}"
|
|
owner: root
|
|
mode: 0755
|
|
notify: Preinstall | propagate resolvconf to k8s components
|
|
when: ansible_os_family == "RedHat"
|