Carvel kapp-controller

What Carvel kapp-controller is
Carvel kapp-controller provides declarative APIs for installing, managing, and updating Kubernetes applications and packages. Its App custom resource describes application lifecycle work on a cluster, while Package, PackageMetadata, PackageRepository, and PackageInstall resources support authoring and consuming software packages. It can fetch configuration and OCI images from Git repositories, ConfigMaps, Helm charts, and OCI registries, then customize software with ytt templates, Helm templates, or other tools. For GitOps, a Git repository can serve as the source of truth for Kubernetes package management. The kctrl CLI helps users inspect and interact with kapp-controller resources and gives package consumers a way to get started. Integration with Mozilla SOPS supports decrypting fetched secret material with GPG or age encryption. Each App must specify a service account or kubeconfig Secret, and those references are limited to the same namespace. Packages and repositories can be relocated for air-gapped environments. The software is free under the Apache 2.0 license and is identified as a CNCF sandbox project.
Who it suits
It suits teams managing Kubernetes applications and packages declaratively, including those using GitOps or air-gapped environments. Its namespace-scoped credentials may also suit multi-tenant deployments.
What it does well
- Declarative application installation, management, and upgrades
- Fetches from Git, ConfigMaps, Helm charts, and OCI registries
- Supports ytt and Helm templates
- Packages can be relocated for air-gapped use
- Free under the Apache 2.0 license
What to know first
- Linux and self-hosted platforms only
- Versions at or below v0.36.1 have a Kubernetes v1.24 limitation
- No free trial
Limits
The plan is free, with no free trial. Versions at or below v0.36.1 cannot reconcile App and PackageInstall resources with Kubernetes v1.24's default LegacyServiceAccountTokenNoAutoGeneration feature gate.
Plans
| Plan | Billed and limits | Price |
|---|---|---|
| kapp-controller | Open source · Apache 2.0 license | Free |
As carvel.dev lists them, read 4 Oct 2026. The maker's own page has the final word.
Getting started
- Visit the kapp-controller website.
- Use a Linux environment for a self-hosted deployment.
- Install kapp-controller on a Kubernetes cluster.
- Use the App, Package, PackageMetadata, PackageRepository, or PackageInstall resources for the relevant workflow.
- Use kctrl to observe and interact with resources or to get started as a package consumer.
Verdict
kapp-controller combines application lifecycle management, package resources, and multiple configuration sources for Kubernetes. Check its version compatibility guidance if using Kubernetes v1.24.
Questions
How much does kapp-controller cost?
The kapp-controller plan is free: free. It is open source under the Apache 2.0 license.
What does kapp-controller run on?
It is listed for Linux and self-hosted use, and its deployment target is Kubernetes.
What can it fetch?
It can fetch configuration and OCI images from Git repositories, ConfigMaps, Helm charts, and OCI registries.
Does it support encrypted secrets?
It integrates with Mozilla SOPS to decrypt secret material in fetched configuration, with GPG and age encryption support.
Who makes kapp-controller, and what support is available?
Carvel identifies kapp-controller as a CNCF sandbox project. Community support is available through GitHub project issues and its Kubernetes Slack channel.
Can it be used in air-gapped environments?
Yes. Package repositories and packages can be relocated and run in air-gapped environments.
Facts from Carvel kapp-controller's own pages
- Air-gapped use
- Package repositories and packages can be relocated and run in air-gapped environments. · carvel.dev, 4 Oct 2026
- CLI
- The kctrl CLI helps users observe and interact with kapp-controller custom resources and helps package consumers get started faster. · carvel.dev, 4 Oct 2026
- Continuous delivery
- Its App custom resource supports declarative installation, management, and upgrades of applications on a Kubernetes cluster. · carvel.dev, 4 Oct 2026
- Fetch sources
- It can fetch configuration and OCI images from Git repositories, ConfigMaps, Helm charts, and OCI registries. · carvel.dev, 4 Oct 2026
- GitOps
- Carvel describes kapp-controller as supporting GitOps, including using a Git repository as the single source of truth for Kubernetes package management. · github.com, 4 Oct 2026
- Integrations
- kapp-controller integrates with Mozilla SOPS to decrypt secret material in fetched configuration, with GPG and age encryption support. · carvel.dev, 4 Oct 2026
- Kubernetes compatibility
- The install guide says versions at or below v0.36.1 cannot reconcile App and PackageInstall resources with Kubernetes v1.24's default LegacyServiceAccountTokenNoAutoGeneration feature gate. · carvel.dev, 4 Oct 2026
- Multi-tenancy
- The security documentation says App resources can reference service accounts or kubeconfig Secrets only from the same namespace, supporting use in multi-tenant environments. · carvel.dev, 4 Oct 2026
- Package management
- Package, PackageMetadata, PackageRepository, and PackageInstall custom resources support authoring and consuming software packages. · github.com, 4 Oct 2026
- Project status
- Carvel identifies kapp-controller as a Cloud Native Computing Foundation sandbox project. · carvel.dev, 4 Oct 2026
- Purpose
- kapp-controller provides declarative APIs to customize, install, and update Kubernetes applications and packages. · carvel.dev, 4 Oct 2026
- Security model
- Each App resource must specify a service account or kubeconfig Secret, making the privileges for managing app resources explicit. · carvel.dev, 4 Oct 2026
- Support
- Carvel provides community support through GitHub project issues and invites users to its Kubernetes Slack channel. · carvel.dev, 4 Oct 2026
- Templates
- It supports customizing software with ytt templates, Helm templates, and other tools. · carvel.dev, 4 Oct 2026
Where Carvel kapp-controller stands on Freedom251
- GitOps Tools#10 of 35
- Kubernetes Deployment Tools#9 of 28