feat: add external data injection and fix registry prune resilience #4417
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.
This PR introduces a new feature for external data injection and improves the resilience of the registry prune command.
1. External Data Injection (Resolves #2121)
This feature allows users to inject data from the local filesystem at deploy time, rather than requiring the data to be bundled into the Zarf package during creation. This is particularly useful for large datasets, sensitive data, or dynamic data that is only generated at deploy time.
Changes:
ZarfDataInjectionschema to include atypefield (embedded|external).zarf package createto skip bundling sources forexternaldata injections.zarf package deployto resolve external sources using Zarf variables and pass the local path to the injection logic.2. Resilient Registry Prune (Resolves #2641)
The
zarf tools registry prunecommand has been updated to handle missing image manifests gracefully. Previously, if the command encountered an image digest that was expected but missing from the registry (e.g., due to a failed push), it would error out.Changes: