diff --git a/templates/worker/00-worker/openstack/files/NetworkManager-resolv-prepender.yaml b/templates/worker/00-worker/openstack/files/NetworkManager-resolv-prepender.yaml index d65fadf18f..e6d4b933f8 100644 --- a/templates/worker/00-worker/openstack/files/NetworkManager-resolv-prepender.yaml +++ b/templates/worker/00-worker/openstack/files/NetworkManager-resolv-prepender.yaml @@ -22,6 +22,10 @@ contents: case "$STATUS" in up|down|dhcp4-change|dhcp6-change) logger -s "NM resolv-prepender triggered by ${1} ${2}." + + # Ensure resolv.conf exists before we try to run podman + cp /var/run/NetworkManager/resolv.conf /etc/resolv.conf + NAMESERVER_IP=$(/usr/bin/podman run --rm \ --authfile /var/lib/kubelet/config.json \ --net=host \ @@ -37,9 +41,6 @@ contents: sed -e "/^search/d" \ -e "/Generated by/c# Generated by OpenStack resolv prepender NM dispatcher script\nsearch $DOMAIN\nnameserver $NAMESERVER_IP" \ /var/run/NetworkManager/resolv.conf > /etc/resolv.tmp - else - logger -s "Couldn't find a non-virtual IP, just updating resolv.conf" - cp /var/run/NetworkManager/resolv.conf /etc/resolv.tmp fi # Only leave the first 3 nameservers in /etc/resolv.conf sed -i ':a $!{N; ba}; s/\(^\|\n\)nameserver/\n# nameserver/4g' /etc/resolv.tmp