<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Tutorials on Open Component Model</title><link>https://ocm.software/0.17/docs/tutorials/</link><description>Recent content in Tutorials on Open Component Model</description><generator>Hugo</generator><language>en-US</language><atom:link href="https://ocm.software/0.17/docs/tutorials/index.xml" rel="self" type="application/rss+xml"/><item><title>Create a Multi-Component Product</title><link>https://ocm.software/0.17/docs/tutorials/create-a-multi-component-product/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://ocm.software/0.17/docs/tutorials/create-a-multi-component-product/</guid><description>&lt;h2 id="overview"&gt;Overview&lt;/h2&gt;&#10;&lt;p&gt;Real-world software products rarely consist of a single component. A web platform, for example, might combine a frontend, a backend, shared configuration, and deployment manifests — each versioned independently. The OCM component constructor lets you model this entire hierarchy in a single file, wiring components together with references, attaching provenance metadata, and injecting versions through environment variables.&lt;/p&gt;</description></item><item><title>Understand Credential Resolution</title><link>https://ocm.software/0.17/docs/tutorials/understand-credential-resolution/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://ocm.software/0.17/docs/tutorials/understand-credential-resolution/</guid><description>&lt;h2 id="overview"&gt;Overview&lt;/h2&gt;&#10;&lt;p&gt;Every time OCM accesses a registry, it resolves credentials automatically. This tutorial walks you through how that resolution works — given a config, which credentials does OCM pick for each request, and why?&lt;/p&gt;</description></item><item><title>Deploy an Application from a Helm Chart with OCM and kro</title><link>https://ocm.software/0.17/docs/tutorials/deploy-an-application-from-a-helm-chart-with-ocm-and-kro/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://ocm.software/0.17/docs/tutorials/deploy-an-application-from-a-helm-chart-with-ocm-and-kro/</guid><description>&lt;h2 id="what-youll-learn"&gt;What You&amp;rsquo;ll Learn&lt;/h2&gt;&#10;&lt;p&gt;Your application already ships as a Helm chart, and you want its delivery to be just as repeatable: one versioned&#10;OCM component that carries the chart, its container image, and the instructions to deploy it. Promote that component&#10;from a staging registry to production, or hand it to an air-gapped cluster, and the image references should update&#10;themselves. Patching a values file to correct a registry path is exactly what this avoids.&lt;/p&gt;</description></item><item><title>Deploy an Application from Chained RGDs with OCM and kro</title><link>https://ocm.software/0.17/docs/tutorials/deploy-an-application-from-chained-rgds-with-ocm-and-kro/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://ocm.software/0.17/docs/tutorials/deploy-an-application-from-chained-rgds-with-ocm-and-kro/</guid><description>&lt;p&gt;You have an application to run on Kubernetes. You want to ship it the same way every time:&#10;one versioned package that carries the container image and the instructions to run it.&#10;When you move that package from a development registry to production, or into an air-gapped&#10;cluster, the image references must follow automatically. You should never hand-edit a&#10;manifest to fix a registry path.&lt;/p&gt;</description></item><item><title>Working with HTTP Resources</title><link>https://ocm.software/0.17/docs/tutorials/working-with-http-resources/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://ocm.software/0.17/docs/tutorials/working-with-http-resources/</guid><description>&lt;h2 id="overview"&gt;Overview&lt;/h2&gt;&#10;&lt;p&gt;OCM can add a file served over HTTP or HTTPS to a component version using the &lt;code&gt;Wget/v1&lt;/code&gt; type. There is one download&#10;engine underneath, with two front doors:&lt;/p&gt;</description></item><item><title>Working with SBOMs</title><link>https://ocm.software/0.17/docs/tutorials/working-with-sboms/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://ocm.software/0.17/docs/tutorials/working-with-sboms/</guid><description>&lt;p&gt;A component version tells you &lt;em&gt;which artifacts&lt;/em&gt; you deliver. It does not tell you &lt;em&gt;what is inside&lt;/em&gt; them. That answer&#10;lives in a Software Bill of Materials. Today, SBOMs might be located in various places, and we need a way to unify them&#10;and get all of them together to one location. For the why, see &lt;a href="https://ocm.software/0.17/docs/concepts/software-bills-of-materials/"&gt;Software Bills of Materials&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Working with Resolvers</title><link>https://ocm.software/0.17/docs/tutorials/working-with-resolvers/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://ocm.software/0.17/docs/tutorials/working-with-resolvers/</guid><description>&lt;h2 id="overview"&gt;Overview&lt;/h2&gt;&#10;&lt;p&gt;When a component has &lt;strong&gt;references&lt;/strong&gt; to other components stored in different repositories, the CLI needs to know where to&#10;find them. &lt;strong&gt;Resolvers&lt;/strong&gt; map component name patterns to repositories so the CLI can automatically locate referenced&#10;components during recursive operations. For a high-level introduction, see the &lt;a href="https://ocm.software/0.17/docs/concepts/resolvers/"&gt;Resolvers concept page&lt;/a&gt;.&#10;For configuration details and pattern syntax, see the &lt;a href="https://ocm.software/0.17/docs/reference/resolver-configuration/"&gt;Resolver Configuration Reference&lt;/a&gt;.&lt;/p&gt;</description></item></channel></rss>