feat!: migrate network_interfaces to custom resources#63
Merged
Conversation
Slowest examplesTop 10 slowest examples (0.85 seconds, 63.45% of total time)
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Selected cookbook:
network_interfaces.Full Migration: this removes the legacy public
recipe[network_interfaces]and root attribute API and replaces the behavior with explicit custom resources. Rootrecipes/andattributes/are absent after the migration.Changes:
network_interfaces_basefor the former default recipe behavior that manages/etc/network/interfacesand/etc/network/interfaces.d.network_interfacesresource withprovides,unified_mode true, frozen string literals, explicit properties, and no node attribute fallback reads.network_interfaces_eniresource from Add new resource: network_interfaces_eni #32, updated it for the modern AWS SDK namespace and EC2 API parameters, and added ChefSpec coverage with AWS/metadata calls stubbed.test/cookbooks/test/recipes/default.rbwith a full InSpec profile undertest/integration/default.migration.md, andLIMITATIONS.md.Attribution
The
network_interfaces_eniresource is based on the work from #32. Original implementation credit goes to @eherot, and PR/rebase credit goes to @jeffbyrnes. The follow-up commit also includes co-author trailers for both contributors.Verification
Additional checks:
Structural audit:
ls -Rwas run after verification.recipes/is absent.attributes/is absent.Platform and Support Evidence
ifupdownconfiguration through/etc/network/interfacesand/etc/network/interfaces.d.ifupdownis available for Debian 12 and Debian 13.ifupdownis available for Ubuntu 24.04; Ubuntu 22.04 remains in the active LTS support window.metadata.rb,kitchen.yml,kitchen.dokken.yml,kitchen.global.yml, and CI.LIMITATIONS.mddocuments that modern Ubuntu defaults to Netplan and this cookbook is for hosts intentionally usingifupdown.Workflow Permission Sources Checked
Checked exact upstream files at the pinned refs before editing workflow permissions:
sous-chefs/.github/.github/workflows/lint-unit.yml@6.0.0contents: read,checks: write,pull-requests: write,statuses: write.sous-chefs/.github/.github/workflows/prevent-file-change.yml@6.0.0pull-requests: write; caller now setspull-requests: write.sous-chefs/.github/.github/workflows/conventional-commits.yml@6.0.0pull-requests: read; caller now setspull-requests: read.xalvarez/prevent-file-change-action@v3action.ymlrequires a token input and declares no additional workflow permissions.sous-chefs/.github/.github/actions/install-workstation/action.yml@6.0.0sous-chefs/.github/.github/workflows/release-cookbook.yml@6.0.0token,supermarket_user,supermarket_key,slack_bot_token, andslack_channel_id; release workflow now passes all five required secrets.