From 898d02fc19613dc1e45f8bfd7f960d2190f1b3fd Mon Sep 17 00:00:00 2001 From: FuHsinyu Date: Fri, 28 Feb 2025 13:20:33 +0100 Subject: [PATCH] add optional anasible task to enable custmized DNS (EL9) --- roles/common/tasks/custom_dns.yml | 30 +++++++++++++++++++++++++++++- roles/common/tasks/main-tasks.yml | 2 +- 2 files changed, 30 insertions(+), 2 deletions(-) diff --git a/roles/common/tasks/custom_dns.yml b/roles/common/tasks/custom_dns.yml index 1fb77a954..b900844e4 100644 --- a/roles/common/tasks/custom_dns.yml +++ b/roles/common/tasks/custom_dns.yml @@ -1,7 +1,7 @@ --- # copyright Utrecht University -- name: Update systemd-resolved config to use Google DNS servers +- name: Update systemd-resolved config to use Google DNS servers (Ubuntu) ansible.builtin.template: src: resolved.conf.j2 dest: /etc/systemd/resolved.conf @@ -9,7 +9,35 @@ group: root mode: "0644" notify: Restart systemd-resolved + when: ansible_os_family == 'Debian' +- name: Configure /etc/resolv.conf via Ansible (EL9) + become: true + block: + - name: Create manually configured DNS settings file + ansible.builtin.copy: + dest: /etc/resolv.conf.manually-configured + content: | + search yoda.test + nameserver {{ common_custom_dns_primary }} + nameserver {{ common_custom_dns_secondary }} + owner: root + group: root + mode: '0644' + + - name: Remove existing /etc/resolv.conf + ansible.builtin.file: + path: /etc/resolv.conf + state: absent + + - name: Create symlink for /etc/resolv.conf + ansible.builtin.file: + src: /etc/resolv.conf.manually-configured + dest: /etc/resolv.conf + state: link + force: yes + when: ansible_os_family == 'RedHat' + - name: Flush handlers for immediate effect of changing DNS configuration ansible.builtin.meta: flush_handlers diff --git a/roles/common/tasks/main-tasks.yml b/roles/common/tasks/main-tasks.yml index cc799add6..ce2bfde8d 100644 --- a/roles/common/tasks/main-tasks.yml +++ b/roles/common/tasks/main-tasks.yml @@ -6,7 +6,7 @@ - name: Update local DNS settings ansible.builtin.import_tasks: custom_dns.yml - when: common_custom_dns_enable and ansible_os_family == 'Debian' + when: common_custom_dns_enable - name: Setup EPEL repository ansible.builtin.import_tasks: epel.yml