// Module included in the following assemblies:
//
// * operators/understanding/olm-packaging-format.adoc
// * operators/olm_v1/olmv1_rukpak.adoc

:_mod-docs-content-type: CONCEPT
[id="olm-rukpak-about_{context}"]
ifeval::["{context}" == "olm-packaging-format"]
= RukPak (Technology Preview)

:FeatureName: RukPak
include::snippets/technology-preview.adoc[]

{product-title} 4.14 introduces {olmv1-first} as a Technology Preview feature, which relies on the RukPak component.
endif::[]
ifeval::["{context}" == "olmv1-rukpak"]
= About RukPak
endif::[]

RukPak is a pluggable solution for packaging and distributing cloud-native content. It supports advanced strategies for installation, updates, and policy.

RukPak provides a content ecosystem for installing artifacts on a Kubernetes cluster. In {product-title} 4.16, RukPak supports {olmv0-first} bundles as artifacts. RukPak can then manage, scale, and upgrade these artifacts in a safe way to enable powerful cluster extensions.

include::snippets/olmv1-rukpak-does-not-support-fips.adoc[]

At its core, RukPak is a set of controllers and the `BundleDeployment` API. The API is packaged as a custom resource definition (CRD) that expresses what content to install on a cluster and how to create a running deployment of the content. The controllers watch for the API.

.Common terminology

Bundle::
A collection of Kubernetes manifests that define content to be deployed to a cluster
Bundle image::
A container image that contains a bundle within its filesystem
Bundle Git repository::
A Git repository that contains a bundle within a directory
Provisioner::
Controllers that install and manage content on a Kubernetes cluster
Bundle deployment::
Generates deployed instances of a bundle
