mirror of
https://github.com/kubernetes-sigs/kubespray.git
synced 2026-01-21 06:28:03 -03:30
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.
34 lines
1007 B
YAML
34 lines
1007 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"
|