Welcome to the Open Component Model community!
This repository outlines all the necessary steps to get started with learning about, using, and contributing to the OCM projects. You can find all this and much, much more also on our web page.
The Open Component Model provides a standard for describing delivery artifacts that can be accessed from many types of component repositories.
The following projects build the foundation of OCM:
- OCM Specification - The
ocm-spec
repository contains the OCM specification, which provides a formal description of OCM and its format to describe software artifacts and a storage layer to persist those and make them accessible from remote. - OCM Core Library - The
ocm
core library is written in Golang and contains an API for interacting with OCM elements. A guided tour how to work with the library can be found here. - OCM CLI - With the
ocm
command line interface end users can interact with OCM elements. It makes it easy to create component versions and embed them in CI and CD processes. Examples can be found in this Makefile. - OCM Controller - The
ocm-controllers
are designed to enable the automated deployment of software using the Open Component Model and Flux. - OCM Website - The
ocm-website
you are currently visiting. It is built using Hugo and hosted on Netlify.
Here are some suggested starting points:
- Read about the problem statement that the OCM set of solutions can help to solve.
- Start with the documentation about Model Elements.
- Check out this demo that shows an end-2-end scenario in an air-gapped environment, integrating OCM with Flux.
We welcome all contributions from the community!
Please read the Contributing Guide for instructions on how to contribute.