Skip to content

feat!: migrate dnsmasq to resources#116

Merged
damacus merged 11 commits intomainfrom
feat/migrate-dnsmasq-resources
Apr 22, 2026
Merged

feat!: migrate dnsmasq to resources#116
damacus merged 11 commits intomainfrom
feat/migrate-dnsmasq-resources

Conversation

@damacus
Copy link
Copy Markdown
Member

@damacus damacus commented Apr 21, 2026

Summary

  • replace recipe and attribute driven orchestration with real dnsmasq custom resources
  • add resource documentation, helper code, LIMITATIONS.md, and resource-focused ChefSpec and InSpec coverage
  • move test cookbook usage to test/cookbooks/test and update Kitchen and CI platform coverage for the migrated resource model

Testing

  • cookstyle
  • mise exec -- chef exec rspec --format documentation
  • env KITCHEN_LOCAL_YAML=kitchen.dokken.yml kitchen test default-ubuntu-2404 --destroy=always

@damacus damacus requested a review from a team as a code owner April 21, 2026 09:48
damacus added 4 commits April 21, 2026 14:05
Signed-off-by: Dan Webb <dan.webb@damacus.io>
- Remove EOL debian-11 from kitchen files and CI matrix
- Add debian-13 (trixie) to all platform lists
- Update kitchen.yml provisioner from chef_zero to chef_infra
- Update LIMITATIONS.md with Debian 13 package availability
- 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
@damacus damacus force-pushed the feat/migrate-dnsmasq-resources branch from 4a567b8 to 4ba513b Compare April 21, 2026 14:36
- Add :delete action spec for dnsmasq (stop, disable, remove files/dirs/package)
- Add :delete action spec for dnsmasq_dns
- Add :delete action spec for dnsmasq_dhcp
- Add :delete action spec for dnsmasq_managed_hosts (uses :remove matcher)

Signed-off-by: Dan Webb <dan.webb@damacus.io>
@damacus damacus force-pushed the feat/migrate-dnsmasq-resources branch 3 times, most recently from 2979da3 to 9669866 Compare April 21, 2026 15:03
Signed-off-by: Dan Webb <dan.webb@damacus.io>
@damacus damacus force-pushed the feat/migrate-dnsmasq-resources branch from 9669866 to aa80468 Compare April 21, 2026 15:07
@damacus damacus changed the title feat: migrate dnsmasq to resources feat!: migrate dnsmasq to resources Apr 21, 2026
eth1 does not exist in Dokken containers - only eth0 is available.
Fixes dnsmasq service startup failure on all platforms.

Signed-off-by: Dan Webb <dan.webb@damacus.io>
@damacus damacus force-pushed the feat/migrate-dnsmasq-resources branch from 552de60 to 8221dd6 Compare April 21, 2026 21:01
damacus added 3 commits April 21, 2026 22:02
Signed-off-by: Dan Webb <dan.webb@damacus.io>
Signed-off-by: Dan Webb <dan.webb@damacus.io>
@damacus damacus force-pushed the feat/migrate-dnsmasq-resources branch from 936eb31 to 886cb19 Compare April 22, 2026 10:14
@github-actions
Copy link
Copy Markdown

Slowest examples

Top 10 slowest examples (0.66 seconds, 40.51% of total time)
Example Description Time in seconds
spec/unit/resources/dnsmasq_spec.rb:22 dnsmasq with default properties is expected to delete file "/etc/dnsmasq.d/dhcp.conf" 0.13761
spec/unit/resources/dns_spec.rb:19 dnsmasq_dns with default properties is expected to render file "/etc/dnsmasq.d/dns.conf" 0.06334
spec/unit/resources/dnsmasq_spec.rb:46 dnsmasq with dhcp and managed hosts enabled does not render no-dhcp-interface when dhcp is enabled 0.06211
spec/unit/resources/dns_spec.rb:37 dnsmasq_dns when dhcp is also enabled does not render no-dhcp-interface 0.06016
spec/unit/resources/dhcp_spec.rb:28 dnsmasq_dhcp is expected to render file "/etc/dnsmasq.d/dhcp.conf" 0.0587
spec/unit/resources/dhcp_spec.rb:26 dnsmasq_dhcp is expected to create directory "/var/lib/tftpboot" 0.05828
spec/unit/resources/dnsmasq_spec.rb:20 dnsmasq with default properties is expected to start service "dnsmasq" 0.05682
spec/unit/resources/dnsmasq_spec.rb:42 dnsmasq with dhcp and managed hosts enabled is expected to create template "/etc/dnsmasq.d/dhcp.conf" 0.05613
spec/unit/resources/dnsmasq_spec.rb:43 dnsmasq with dhcp and managed hosts enabled is expected to create directory "/var/lib/tftpboot" 0.05412
spec/unit/resources/dnsmasq_spec.rb:61 dnsmasq action :delete is expected to delete file "/etc/dnsmasq.d/dhcp.conf" 0.05376

@damacus damacus enabled auto-merge (rebase) April 22, 2026 10:17
@damacus damacus disabled auto-merge April 22, 2026 10:17
@damacus damacus merged commit c967c59 into main Apr 22, 2026
18 checks passed
@damacus damacus deleted the feat/migrate-dnsmasq-resources branch April 22, 2026 10:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant