Skip to content

Commit 2fe3c51

Browse files
committed
feat: add :delete action to dnsmasq resource and fix managed_hosts
- Add :delete action to dnsmasq resource (stop/disable service, remove config files and directory, clean up systemd-resolved, remove package) - Add supports status/restart to service resources per systemd patterns - Fix hostsfile_entry action from :delete to :remove in managed_hosts
1 parent 245746a commit 2fe3c51

2 files changed

Lines changed: 43 additions & 1 deletion

File tree

resources/dnsmasq.rb

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,48 @@
103103
end
104104

105105
service new_resource.service_name do
106+
supports status: true, restart: true
106107
action %i(enable start)
107108
end
108109
end
110+
111+
action :delete do
112+
service new_resource.service_name do
113+
supports status: true, restart: true
114+
action %i(stop disable)
115+
end
116+
117+
file ::File.join(new_resource.config_directory, 'dns.conf') do
118+
action :delete
119+
end
120+
121+
file ::File.join(new_resource.config_directory, 'dhcp.conf') do
122+
action :delete
123+
end
124+
125+
directory new_resource.config_directory do
126+
recursive true
127+
action :delete
128+
end
129+
130+
manage_systemd_resolved = if new_resource.manage_systemd_resolved.nil?
131+
default_manage_systemd_resolved?
132+
else
133+
new_resource.manage_systemd_resolved
134+
end
135+
136+
if manage_systemd_resolved
137+
file '/etc/systemd/resolved.conf.d/dnsmasq.conf' do
138+
action :delete
139+
notifies :restart, 'service[systemd-resolved]', :immediately
140+
end
141+
142+
service 'systemd-resolved' do
143+
action :nothing
144+
end
145+
end
146+
147+
package new_resource.package_name do
148+
action :remove
149+
end
150+
end

resources/managed_hosts.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@
4444
data_bag_item_name: new_resource.data_bag_item
4545
).each_key do |ip|
4646
hostsfile_entry ip do
47-
action :delete
47+
action :remove
4848
comment new_resource.comment
4949
notifies :restart, "service[#{new_resource.service_name}]", :delayed
5050
end

0 commit comments

Comments
 (0)