Skip to content

feat: full migration to custom resource pattern#123

Open
damacus wants to merge 3 commits intomainfrom
feat/custom-resource-migration
Open

feat: full migration to custom resource pattern#123
damacus wants to merge 3 commits intomainfrom
feat/custom-resource-migration

Conversation

@damacus
Copy link
Member

@damacus damacus commented Mar 24, 2026

This PR performs a full migration of the certificate cookbook to the modern custom resource pattern.

Changes:

  • Architecture: Deleted legacy attributes/ and recipes/ directories.
  • Resource Modernization: Refactored the manage resource to use unified_mode true, native file resources, and proper Chef resource guards.
  • New Actions: Added :delete action to the certificate_manage resource with surgically precise file removal.
  • Dependency Reduction: Dropped chef-vault support to streamline the cookbook.
  • Platform Updates: Modernized supported platforms across kitchen.yml and CI (Ubuntu 22.04+, Debian 12+, RHEL 8+).
  • Standards: Added # frozen_string_literal: true to all Ruby files and adhered to organization rules for metadata.rb.
  • Documentation: Created LIMITATIONS.md and comprehensive resource documentation in documentation/.
  • Testing: Updated ChefSpec and InSpec tests; moved integration test recipes to a dedicated test cookbook; added unit tests for helper modules.

🚀 Party on! 🥳

@damacus damacus requested a review from a team as a code owner March 24, 2026 12:27
@github-actions
Copy link

Slowest examples

Top 10 slowest examples (0.46 seconds, 61.12% of total time)
Example Description Time in seconds
spec/unit/resources/manage_spec.rb:143 certificate_manage with combined file is expected not to create file "/etc/pki/tls/certs/Fauxhai-bundle.crt" 0.1323
spec/unit/resources/manage_spec.rb:27 certificate_manage with default options on centos is expected to create directory "/etc/pki/tls/certs" 0.05219
spec/unit/resources/manage_spec.rb:156 certificate_manage with nginx cert is expected to create file "/etc/pki/tls/certs/fauxhai.local.pem" 0.03942
spec/unit/resources/manage_spec.rb:181 certificate_manage with action :delete is expected to delete file "/etc/pki/tls/certs/fauxhai.local.pem" 0.0374
spec/unit/resources/manage_spec.rb:89 certificate_manage with plaintext is expected to create file "/etc/pki/tls/certs/fauxhai.local.pem" 0.03559
spec/unit/resources/manage_spec.rb:53 certificate_manage with default options on ubuntu is expected to create directory "/etc/ssl/certs" 0.03506
spec/unit/resources/manage_spec.rb:136 certificate_manage with combined file is expected to create file "/etc/pki/tls/certs/fauxhai.local.pem" 0.03446
spec/unit/resources/manage_spec.rb:118 certificate_manage when not creating subdirs is expected not to create directory "/etc/pki/tls/certs" 0.0335
spec/unit/resources/manage_spec.rb:119 certificate_manage when not creating subdirs is expected not to create directory "/etc/pki/tls/private" 0.03245
spec/unit/resources/manage_spec.rb:56 certificate_manage with default options on ubuntu is expected to create file "/etc/ssl/certs/fauxhai.local.pem" 0.02828

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