Pack

Author component versions and add resources such as GitHub archives, HTTP downloads, OCI artifacts, SBOMs, and Git repositories.

Packing is where you author a component version and add resources to it. These guides cover declaring resources from different origins — GitHub archives, HTTP URLs, OCI artifacts, SBOMs, and Git repositories — composing multi-component products, recording ownership, and configuring a versioning scheme.

Add Resources from GitHub
Add the source archive of a GitHub commit to a component version using the GitHub access type: credentials, tags, and commit references.
Add HTTP Resources
Add a file served over HTTP or HTTPS to a component version with the Wget input or access type: media types, credentials, non-GET requests, and v1 migration.
Add OCI Artifacts
Embed OCI image layouts and external OCI images as local blobs inside a component version, ready to transfer to an OCI registry.
Add Helm Chart Resources
Add a Helm chart to a component version as a helmChart resource: embed it with Helm/v1 input or reference it with Helm/v1 access for OCI transfer.
Add Component References
Declare componentReferences in a constructor and push the referenced components, so an app component can depend on backend and frontend components.
Add SBOMs
Link an SBOM to the resource it describes and attach it to a component version that ships a binary and a third-party image, ready for retrieval after transfer.
Add Git Repositories
Add a Git repository to a component version as a referenced resource and as an embedded snapshot, then download the files back.
Add and Verify Ownership Information
Make an OCM resource traceable back to its owning component version with an ownership record, then verify the link with oras.
Compose a Multi-Component Product
Learn to compose a multi-level product from independently versioned components using the component constructor.
Configure a Versioning Scheme
Teach OCM to accept and order calendar-versioned (CalVer) component versions using a versioning configuration.