Skip to content

Commit 771a712

Browse files
committed
Adding docs for kapp controller v0.53.x
Signed-off-by: Rohit Aggarwal <rohit.aggarwal@broadcom.com>
1 parent c85583b commit 771a712

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

61 files changed

+5150
-33
lines changed

site/config.yaml

+3-2
Original file line numberDiff line numberDiff line change
@@ -141,15 +141,16 @@ params:
141141
name: kapp-controller
142142
short_name: kc
143143
root_link: /kapp-controller/
144-
latest_docs_link: /kapp-controller/docs/v0.50.x/
144+
latest_docs_link: /kapp-controller/docs/v0.53.x/
145145
github_url: https://github.com/carvel-dev/kapp-controller
146146
search: true
147147
search_index_name: carvel-kapp-controller
148148
search_api_key: a38560864c2e9128ae57d5734df438ff
149149
versioning: true
150-
version_latest: v0.50.x
150+
version_latest: v0.53.x
151151
versions:
152152
- develop
153+
- v0.53.x
153154
- v0.50.x
154155
- v0.49.x
155156
- v0.48.x

site/content/kapp-controller/docs/v0.50.x/_index.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/]
2+
33
title: "About kapp-controller"
44
toc: "false"
55
cascade:

site/content/kapp-controller/docs/v0.50.x/air-gapped-workflow.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/air-gapped-workflow]
2+
33
title: Install Packages in an air-gapped (offline) environment
44
---
55

site/content/kapp-controller/docs/v0.50.x/app-examples.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/app-examples]
2+
33
title: Example Usage
44
---
55

site/content/kapp-controller/docs/v0.50.x/app-overview.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/app-overview]
2+
33
title: App CR High Level Overview
44
---
55

site/content/kapp-controller/docs/v0.50.x/app-spec.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/app-spec]
2+
33
title: App CR spec
44
---
55

site/content/kapp-controller/docs/v0.50.x/authoring-command.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/authoring-command]
2+
33
title: Authoring Commands Reference
44
---
55

site/content/kapp-controller/docs/v0.50.x/controller-config.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/controller-config]
2+
33
title: Configuring the Controller
44
---
55

site/content/kapp-controller/docs/v0.50.x/debugging-crs.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/debugging-crs]
2+
33
title: Debugging CRs
44
---
55

site/content/kapp-controller/docs/v0.50.x/debugging-kc.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/debugging-kc]
2+
33
title: Debugging kapp-controller
44
---
55

site/content/kapp-controller/docs/v0.50.x/dev.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/dev]
2+
33
title: Development & Deploy
44
---
55

site/content/kapp-controller/docs/v0.50.x/faq.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/faq]
2+
33
title: FAQ
44
---
55

site/content/kapp-controller/docs/v0.50.x/install.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/install]
2+
33
title: Install
44
---
55

site/content/kapp-controller/docs/v0.50.x/kctrl-faq.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/kctrl-faq]
3-
aliases: [/kapp-controller/docs/latest/kctrl-faq]
2+
3+
44
title: "`kctrl` FAQ"
55
---
66

site/content/kapp-controller/docs/v0.50.x/kctrl-package-authoring.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/kctrl-package-authoring]
3-
aliases: [/kapp-controller/docs/latest/kctrl-package-authoring]
2+
3+
44
title: Authoring packages with kctrl
55
---
66

site/content/kapp-controller/docs/v0.50.x/kctrl-package-tutorial.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/kctrl-package-tutorial]
2+
33
title: Consuming Packages using the CLI
44
---
55

site/content/kapp-controller/docs/v0.50.x/management-command.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/management-command]
2+
33
title: Management Commands Reference
44
---
55

site/content/kapp-controller/docs/v0.50.x/oss-packages.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/oss-packages]
2+
33
title: OSS Carvel Packages
44
---
55

site/content/kapp-controller/docs/v0.50.x/package-consumer-concepts.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/package-consumer-concepts]
2+
33
title: Concepts for Package Consumers
44
---
55

site/content/kapp-controller/docs/v0.50.x/package-install-extensions.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/package-install-extensions]
2+
33
title: Overlays with PackageInstall
44
---
55

site/content/kapp-controller/docs/v0.50.x/packaging-artifact-formats.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/packaging-artifact-formats]
2+
33
title: Artifact formats
44
---
55

site/content/kapp-controller/docs/v0.50.x/packaging-gitops.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/packaging-gitops]
2+
33
title: Package Management with GitOps
44
---
55

site/content/kapp-controller/docs/v0.50.x/packaging-tutorial.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/packaging-tutorial]
2+
33
title: "Tutorial: Create and Install a Package"
44
---
55

site/content/kapp-controller/docs/v0.50.x/packaging.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/packaging]
2+
33
title: Package Management
44
---
55

site/content/kapp-controller/docs/v0.50.x/private-registry-auth.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/private-registry-auth]
2+
33
title: Authenticating to Private Registries
44
---
55

site/content/kapp-controller/docs/v0.50.x/security-model.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/security-model]
2+
33
title: Security Model
44
---
55

site/content/kapp-controller/docs/v0.50.x/security.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/security]
2+
33
title: Security
44
---
55

site/content/kapp-controller/docs/v0.50.x/sops.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/sops]
2+
33
title: Sops
44
---
55

site/content/kapp-controller/docs/v0.50.x/startup.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/startup]
2+
33
Title: Kapp Controller Startup
44
---
55

site/content/kapp-controller/docs/v0.50.x/walkthrough.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
aliases: [/kapp-controller/docs/latest/walkthrough]
2+
33
title: Install an Application
44
---
55

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
---
2+
aliases: [/kapp-controller/docs/latest/]
3+
title: "About kapp-controller"
4+
toc: "false"
5+
cascade:
6+
version: v0.53.x
7+
toc: "true"
8+
type: docs
9+
layout: docs
10+
---
11+
12+
kapp-controller provides declarative APIs to customize, install, and update your Kubernetes applications and packages. It is a part of the Carvel toolkit and follows core Carvel design principles. Get started with the [tutorial](packaging-tutorial.md)!
13+
14+
The kapp-controller CLI `kctrl` ("k-control") helps users to observe and interact custom resources surfaced by kapp-controller effectively. It also allows package consumers get up and running with Carvel packages faster.
15+
16+
#### Choice for authors; consistency for consumers
17+
Kubernetes configuration takes many forms -- plain YAML configurations, Helm charts, ytt templates, jsonnet templates, etc.
18+
Software running on Kubernetes lives in many different places: a Git repository, an archive over HTTP, a Helm repository, etc.
19+
20+
kapp-controller provides software authors flexibility to choose their own configuration tools, while providing software consumers with consistent declarative APIs to customize, install, and update software on Kubernetes from various sources.
21+
22+
#### Lightweight and composable
23+
kapp-controller breaks down the installation of applications and packages into three easy to understand steps:
24+
- Fetch: get configuration and OCI images from various sources including a Git repository, a local ConfigMap, a Helm chart, an OCI registry, etc.
25+
- Template: take user provided values to customize software using ytt templates, helm templates, and more
26+
- Deploy: create/update resources on the cluster
27+
28+
#### GitOps and Continuous Delivery
29+
With its layered approach, kapp-controller can be used as:
30+
- Continuous delivery for Kubernetes applications using [App CR](app-spec.md)
31+
- Kubernetes Package Management using [Package CR and supplementary CRs](packaging.md)
32+
- Managing applications and packages using GitOps
33+
34+
#### Share software and build distributions
35+
Use kapp-controller's Package Management features along with Carvel's imgpkg bundles to distribute Package Repositories that can be added to cluster to provide a catalog of software for users to install. Package Repositries can be automatically updated ensuring users always have access to latest versions of software. Package Repositories and Packages can also be relocated and run in air-gapped environments.
36+
37+
#### Reliable and ready for production!
38+
kapp-controller has been hardened and is in use on production Kubernetes clusters. Learn more through [case studies](/blog/casestudy-modernizing-the-us-army) on our blog.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
---
2+
aliases: [/kapp-controller/docs/latest/air-gapped-workflow]
3+
title: Install Packages in an air-gapped (offline) environment
4+
---
5+
6+
The documentation below covers topics from the [imgpkg air-gapped workflow docs](/imgpkg/docs/latest/air-gapped-workflow)
7+
more concisely in order to focus on applying these workflows to kapp-controller package repositories.
8+
9+
## Scenario
10+
11+
You have a [PackageRepository](packaging#packagerepository-cr) in an [imgpkg bundle format](/imgpkg/docs/latest/resources/#bundle)
12+
in an external OCI registry that you would like to move into an OCI registry in an air-gapped environment. Once relocated, you would
13+
like to deploy the bundle as part of a PackageRepository to a Kubernetes cluster.
14+
15+
## Prerequisites
16+
17+
In order to go through this process of moving an imgpkg bundle to an air-gapped environment, you will need to have [imgpkg](/imgpkg)
18+
installed. More information on installing Carvel tools, including `imgpkg`, can be found [here](/#whole-suite).
19+
20+
## Copy PackageRepository bundle to new location
21+
22+
Most of the steps documented for the [imgpkg air-gapped workflow docs](/imgpkg/docs/latest/air-gapped-workflow#step-1-finding-bundle-in-source-registry)
23+
still apply in the case of working with kapp-controller package repositories. A summary of these docs is that you will need to copy your package repository
24+
bundle with `imgpkg` via one of the following options:
25+
26+
- **Option 1:** From a common location connected to both registries. This option is more efficient because only changed image layers will be transferred between registries.
27+
- **Option 2:** With intermediate tarball. This option works best when registries have no common network access.
28+
29+
More detailed documents for [Option 1](/imgpkg/docs/latest/air-gapped-workflow/#option-1-from-a-location-connected-to-both-registries) and
30+
[Option 2](/imgpkg/docs/latest/air-gapped-workflow/#option-2-with-intermediate-tarball) can be found at the attached links.
31+
32+
A summary of steps for relocating a package repository bundle to an air-gapped environment are documented for both options below:
33+
34+
For **Option 1**:
35+
36+
1. Navigate to a location that can access both registries. If there is no such location, you have to use **Option 2** steps.
37+
1. [Authenticate](/imgpkg/docs/latest/auth.md) with both source and destination registries.
38+
1. Copy PackageRepository bundle to the new location by running:
39+
40+
```
41+
imgpkg copy -b index.docker.io/user1/simple-app-bundle:v1.0.0 --to-repo final-registry.corp.com/apps/simple-app-bundle
42+
```
43+
44+
For **Option 2**:
45+
46+
1. Navigate to a location that can access the source registry.
47+
1. [Authenticate](/imgpkg/docs/latest/auth.md) with the source registry.
48+
1. Compress PackageRepository bundle into a tarball file by running:
49+
50+
```
51+
imgpkg copy -b index.docker.io/user1/simple-app-bundle:v1.0.0 --to-tar /tmp/my-image.tar
52+
```
53+
54+
**Note:** Make sure the tar file is in a location that has access to the destination registry.
55+
56+
1. [Authenticate](/imgpkg/docs/latest/auth.md) with the destination registry.
57+
58+
1. Copy the tarball file to the new location by running:
59+
60+
```
61+
imgpkg copy --tar /tmp/my-image.tar --to-repo final-registry.corp.com/apps/simple-app-bundle
62+
```
63+
64+
## Use Relocated Bundle or Image with PackageRepository
65+
66+
Once you have relocated the package repository bundle into the destination OCI registry in your air-gapped environment, you can
67+
now reference the relocated bundle in a PackageRepository definition:
68+
69+
```yaml
70+
---
71+
apiVersion: install.package.carvel.dev/v1alpha1
72+
kind: PackageRepository
73+
metadata:
74+
name: simple-package-repository
75+
spec:
76+
fetch:
77+
imgpkgBundle:
78+
image: final-registry.corp.com/apps/simple-app-bundle
79+
```
80+
81+
In the event your PackageRepository needs authentication to pull the bundle, you can read more about kapp-controller's
82+
[private authentication workflows using secretgen-controller](private-registry-auth.md) or [without secretgen-controller](private-registry-auth.md#packagerepository-authentication-without-secretgen-controller).
83+
84+
After applying the PackageRepository definition above to your Kubernetes cluster, you will be able to check that the PackageRepository and
85+
its associated Packages were successfully deployed by checking the PackageRepository status:
86+
87+
```bash
88+
$ kubectl get packagerepository/simple-package-repository
89+
```
90+
91+
You will see a message of `Reconcile Succeeded` in the `DESCRIPTION` column of the output from `kubectl` if the PackageRepository was deloyed
92+
successfully. You can also run `kubectl get packages` to see that all Packages were introduced successfully.

0 commit comments

Comments
 (0)