From 87e7b2d9fb5ef0c4bd5a792e628fb4b841322cd2 Mon Sep 17 00:00:00 2001 From: Jimmy Provencher Date: Fri, 4 Apr 2025 07:15:00 -0400 Subject: [PATCH 1/7] Adding choice for Systemd Resolved DNSStubListener option --- attributes/default.rb | 5 +++++ recipes/default.rb | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/attributes/default.rb b/attributes/default.rb index b8027ad..cc0c1a5 100644 --- a/attributes/default.rb +++ b/attributes/default.rb @@ -11,3 +11,8 @@ default['dnsmasq']['managed_hosts'] = {} default['dnsmasq']['managed_hosts_bag'] = 'managed_hosts' default['dnsmasq']['user'] = 'dnsmasq' +default['dnsmasq']['stublistener'] = if platform?('ubuntu') && node['platform_version'].to_i == 20 + 'yes' +else + 'no' +end diff --git a/recipes/default.rb b/recipes/default.rb index 158d872..5918a2a 100644 --- a/recipes/default.rb +++ b/recipes/default.rb @@ -3,7 +3,7 @@ file 'Fix systemd-resolved conflict' do path '/etc/systemd/resolved.conf.d/dnsmasq.conf' - content "[Resolve]\nDNSStubListener=no" + content "[Resolve]\nDNSStubListener=#{node['dnsmasq']['stublistener']}" notifies :restart, 'service[systemd-resolved]', :immediately end From 3c868b580c7f25be1c233a05dc493e98c9747e49 Mon Sep 17 00:00:00 2001 From: Jimmy Provencher Date: Fri, 4 Apr 2025 07:17:54 -0400 Subject: [PATCH 2/7] Bump to version 1.1.14 --- metadata.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/metadata.rb b/metadata.rb index 6e984aa..3c951c5 100644 --- a/metadata.rb +++ b/metadata.rb @@ -7,7 +7,7 @@ chef_version '>= 15.3' source_url 'https://github.com/sous-chefs/dnsmasq' issues_url 'https://github.com/sous-chefs/dnsmasq/issues' -version '1.1.13' +version '1.1.14' supports 'ubuntu' supports 'debian' From 3b23c30e9f332e1c422f4fe90b4730558dc1c1a9 Mon Sep 17 00:00:00 2001 From: Jimmy Provencher Date: Fri, 4 Apr 2025 07:43:41 -0400 Subject: [PATCH 3/7] Adding choice for Systemd Resolved DNSStubListener option for Ubuntu 20 and older --- attributes/default.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/attributes/default.rb b/attributes/default.rb index cc0c1a5..d8e0065 100644 --- a/attributes/default.rb +++ b/attributes/default.rb @@ -11,7 +11,7 @@ default['dnsmasq']['managed_hosts'] = {} default['dnsmasq']['managed_hosts_bag'] = 'managed_hosts' default['dnsmasq']['user'] = 'dnsmasq' -default['dnsmasq']['stublistener'] = if platform?('ubuntu') && node['platform_version'].to_i == 20 +default['dnsmasq']['stublistener'] = if platform?('ubuntu') && node['platform_version'].to_i <= 20 'yes' else 'no' From 4e70c2dd9e93186df256045c0309240bc4c6c0ac Mon Sep 17 00:00:00 2001 From: Jimmy Provencher Date: Fri, 4 Apr 2025 08:03:56 -0400 Subject: [PATCH 4/7] Adding debug log for stublistener option --- metadata.rb | 2 +- recipes/default.rb | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/metadata.rb b/metadata.rb index 3c951c5..a2d44cf 100644 --- a/metadata.rb +++ b/metadata.rb @@ -7,7 +7,7 @@ chef_version '>= 15.3' source_url 'https://github.com/sous-chefs/dnsmasq' issues_url 'https://github.com/sous-chefs/dnsmasq/issues' -version '1.1.14' +version '1.1.15' supports 'ubuntu' supports 'debian' diff --git a/recipes/default.rb b/recipes/default.rb index 5918a2a..31b259a 100644 --- a/recipes/default.rb +++ b/recipes/default.rb @@ -1,4 +1,5 @@ if platform?('ubuntu') && node['platform_version'] >= '18.04' + Chef::Log.debug("Ubuntu 18.04 or higher detected, configuring systemd-resolved with DNSStubListener option at #{node['dnsmasq']['stublistener']}") directory '/etc/systemd/resolved.conf.d' file 'Fix systemd-resolved conflict' do From d6dc991ceedecf3fbf01bfc6e6e44df6c8f72f00 Mon Sep 17 00:00:00 2001 From: Jimmy Provencher Date: Sat, 5 Apr 2025 09:49:03 -0400 Subject: [PATCH 5/7] Adjust to Pull Request Sous-Chef integration --- attributes/default.rb | 6 +----- metadata.rb | 2 +- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/attributes/default.rb b/attributes/default.rb index d8e0065..fd5bbbe 100644 --- a/attributes/default.rb +++ b/attributes/default.rb @@ -11,8 +11,4 @@ default['dnsmasq']['managed_hosts'] = {} default['dnsmasq']['managed_hosts_bag'] = 'managed_hosts' default['dnsmasq']['user'] = 'dnsmasq' -default['dnsmasq']['stublistener'] = if platform?('ubuntu') && node['platform_version'].to_i <= 20 - 'yes' -else - 'no' -end +default['dnsmasq']['stublistener'] = if platform?('ubuntu') && node['platform_version'].to_i <= 20 ? 'yes' : 'no' diff --git a/metadata.rb b/metadata.rb index a2d44cf..6e984aa 100644 --- a/metadata.rb +++ b/metadata.rb @@ -7,7 +7,7 @@ chef_version '>= 15.3' source_url 'https://github.com/sous-chefs/dnsmasq' issues_url 'https://github.com/sous-chefs/dnsmasq/issues' -version '1.1.15' +version '1.1.13' supports 'ubuntu' supports 'debian' From eb232ba425b750ed22981eba80202b8639da1eed Mon Sep 17 00:00:00 2001 From: Jimmy Provencher Date: Sat, 5 Apr 2025 09:57:33 -0400 Subject: [PATCH 6/7] Resolve cookstyle issue --- attributes/default.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/attributes/default.rb b/attributes/default.rb index fd5bbbe..8d7f5c4 100644 --- a/attributes/default.rb +++ b/attributes/default.rb @@ -11,4 +11,8 @@ default['dnsmasq']['managed_hosts'] = {} default['dnsmasq']['managed_hosts_bag'] = 'managed_hosts' default['dnsmasq']['user'] = 'dnsmasq' -default['dnsmasq']['stublistener'] = if platform?('ubuntu') && node['platform_version'].to_i <= 20 ? 'yes' : 'no' +default['dnsmasq']['stublistener'] = if platform?('ubuntu') && node['platform_version'].to_i <= 20 + 'yes' + else + 'no' + end From 246f6d8b4b90cf8933d3c1130e45e9d60e68d040 Mon Sep 17 00:00:00 2001 From: Jimmy Provencher Date: Sat, 5 Apr 2025 11:34:59 -0400 Subject: [PATCH 7/7] Resolving kitchen.yml platform name --- attributes/default.rb | 2 +- kitchen.yml | 16 +++++++++------- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/attributes/default.rb b/attributes/default.rb index 8d7f5c4..730d6d1 100644 --- a/attributes/default.rb +++ b/attributes/default.rb @@ -12,7 +12,7 @@ default['dnsmasq']['managed_hosts_bag'] = 'managed_hosts' default['dnsmasq']['user'] = 'dnsmasq' default['dnsmasq']['stublistener'] = if platform?('ubuntu') && node['platform_version'].to_i <= 20 - 'yes' + node['dnsmasq']['enable_dhcp'] ? 'no' : 'yes' else 'no' end diff --git a/kitchen.yml b/kitchen.yml index 0a83ec1..80931bf 100644 --- a/kitchen.yml +++ b/kitchen.yml @@ -13,13 +13,13 @@ verifier: name: inspec platforms: - - amazonlinux-2 - - debian-9 - - debian-10 - - centos-7 - - centos-8 - - ubuntu-1804 - - ubuntu-2004 + - name: amazonlinux-2 + - name: debian-9 + - name: debian-10 + - name: centos-7 + - name: centos-8 + - name: ubuntu-18.04 + - name: ubuntu-20.04 suites: - name: default @@ -39,3 +39,5 @@ suites: tftp-root: '/var/lib/tftpboot' enable-tftp: null interface: 'eth1' + + - name: nodhcp