Concepts

Understand the fundamental principles and architecture of the Open Component Model: components, credentials, signing, and transport.

Understand how OCM works through clear explanations of its core concepts, architecture, and design principles. This section provides the theoretical foundation you need to make informed decisions when working with OCM.

What Are Concepts?

Concepts are explanation-oriented articles that help you understand why OCM works the way it does. These pages explain the thinking behind OCM’s design, clarify relationships between different parts of the system, and provide context for the choices you’ll make when using OCM.

Each concept article:

  • Explains the “why” behind OCM features and design
  • Clarifies terminology and relationships
  • Provides architectural context
  • Connects theory to practice

Prerequisites

To get the most from these explanations, you should:

  • Have basic familiarity with software delivery concepts
  • Understand fundamental concepts like artifacts, versions, and registries
  • Ideally have tried OCM through the Getting Started guides

No hands-on experience is required - these are theoretical explanations.

Learning Path

These concepts follow the explanation-oriented approach from the Diataxis framework. They deepen your understanding of OCM’s architecture and design principles.

If you’re new to OCM, we recommend trying the Getting Started guides first to see OCM in action.

For task-specific guidance, check the Guides section.

Canonical Component Repositories
What canonical repositories are, why component references are location-free, and how this design enables portable software delivery.
Component Identity
How OCM identifies components, versions, and artifacts, from naming conventions and repository references to component descriptors.
Credential Resolution
Learn how OCM resolves credentials by building a config and observing which credentials get picked for different requests.
Credential System
Why OCM manages credentials centrally and how its resolution model resolves the right secret for each registry or remote service.
Kubernetes Component Discovery
How the Discovery controller resolves a Component's transitive reference graph, filters it with CEL selectors, and projects it into status.
Kubernetes Controllers
Learn about the OCM Kubernetes controllers: what they do, how they interact, and how they automate component delivery into a cluster.
Kubernetes Deployer
Understand how the OCM Deployer reconciles OCM resources into a Kubernetes cluster using ApplySet semantics and controller patterns.
Ownership
How OCM traces a resource back to the component version that owns it, without modifying the resource or its original content.
Plugin System
Learn about the OCM Plugin System: how plugins extend access types, upload handlers, and downloaders without modifying the core CLI.
Resolvers
Learn how OCM resolvers map component name patterns to target repositories, enabling recursive resolution across multiple registries.
Resource Repositories
Why OCM separates resource storage from component version storage, and how resource repositories work alongside component repositories.
Signing and Verification
How OCM ensures component integrity and authenticity through cryptographic signatures: signing workflows, verification, and trust anchors.
Software Bills of Materials
What an SBOM is, why it matters for software supply chains, and how OCM supports attaching and retrieving SBOMs from component versions.
Transfer and Transport
Understand how OCM moves component versions between repositories while preserving identity, integrity, and signatures.
Vendor Repository Uploaders
How OCM's JFrog Artifactory and Sonatype Nexus uploaders move matched resources into a vendor repository during transfer and republish them as native access.