Relocate dependent bundles during publish from archive #2669
Labels
hmm 🛑🤔
Needs more thinking time. Don't start on it yet, please.
pep003-advanced-dependencies
Implementation of the Advanced Dependencies proposal
placeholder
Tracks work that has not yet be fully designed
During
porter publish --from-archive
, normally the cnab-to-oci library handles relocating referenced images used by a bundle and updating the relocation mapping files. That library does not understand dependencies however. During publish, either in Porter or a fork of cnab-to-oci, we need to push dependencies when they don't exist, and ensure that the relocation mapping file is updated with their new location.For example:
When the bundle is published to --registry=localhost:5000, the referenced mysql bundle should be copied to localhost:5000/mysql:v1.2.3 (following porter's existing relocation naming conventions).
The dependency in the final porter.yaml should be rewritten to use the repository digest of the bundle (just like we do with invocation images):
Then an entry should be added to relocation-mapping.json
Notes
Dependencies
ℹ️ Read PEP003 - Advanced Dependencies for context about how dependencies should work, design details, and notes about desired behavior.
The text was updated successfully, but these errors were encountered: