Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .cspell.json
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,7 @@
"telemetry",
"rolearn",
"OTEL",
"oyaml",
"Istio",
"RGNAME",
"otomipool",
Expand Down
50 changes: 30 additions & 20 deletions docs/for-devs/console/catalog.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,39 @@
---
slug: catalog
title: Catalog
sidebar_label: Catalog
slug: catalogs
title: App Catalogs
sidebar_label: App Catalogs
---

## About the Catalog Helm charts

The Catalog is a library of curated Helm charts to create Kubernetes resources. By default the Catalog contains a set of Helm charts provided to get started quickly, but they can also be modified depending on your requirements or be removed from the Catalog.
A catalog is a library of curated Helm charts to create Kubernetes resources. The default Catalog contains a set of Helm charts provided to get started quickly. Platform administrators are managing the registered catalogs in the platform view and team members are deploying application from a given catalog in the team view.

The contents of the Catalog and the RBAC configuration (which Team can use which Helm chart) are managed by the platform administrator. Contact the platform administrator if you would like to add your own charts to use within your Team.
## Catalog management

The Catalog contains a set of Helm charts that can be used as quick starts. The following quick starts are available:
Each catalog has a single version that is set during the catalog registration. It is recommended to set a tag instead branch to ensure stability.
The catalog version can be changed at any time by the platform administrator. It is worth noting that the version change does not affect the existing team workloads and takes an effect only for new workloads deployed from that catalog.

Platform administrators can manage and register additional catalogs in the `Catalogs` page from the platform view.

## Deploying workloads from the catalog

A user selects a given catalog and an application to be deployed. Next, team member can adjust helm values and submit the change. The application status can be seen in the `Workloads` page.

The workload version does not follow the catalog version automatically. Team member can adjust its version independently from the catalog version.

## Catalog usage recommendations

- Use immutable Git tags (not branches) for catalog registration to ensure stable and repeatable deployments.
- Follow semantic versioning (SemVer) for catalog tags.
- Bump the catalog major version for breaking chart changes, and minor/patch versions for backward-compatible updates and fixes.
- Validate chart updates in a non-production environment before promoting a new catalog tag in the App Platform.
- Keep release notes for each catalog tag so teams can see what changed and plan workload upgrades.
- Upgrade existing workloads individually after a catalog update, because workload versions do not update automatically.

## Default Catalog

The default catalog is hosted at https://github.com/linode/apl-charts
It contains a set of Helm charts that can be used as quick starts. The following quick starts are available:

1. Kubernetes Deployment

Expand All @@ -26,7 +49,7 @@ The `k8s-deployments-canary` Helm chart can be used to create 2 Kubernetes `Depl

4. Knative-service

The `knative-service` Helm chart can be used to create a Knative `Service` (to deploy a single image), a `Service` and a `ServiceAccount`. Optionally a Prometheus `ServiceMonitor` can be created.
The `knative-service` Helm chart can be used to create a Knative `Service` (to deploy a single image), a `Service` and a `ServiceAccount`. Optionally a Prometheus `ServiceMonitor` can be created.

5. PostgreSQL cluster

Expand All @@ -41,16 +64,3 @@ The `redis-ha` Helm chart can be used to create a Redis high availability cluste
The `rabbitmq-cluster` Helm chart can be used to create a `RabbitmqCluster`, `queues` and `Policy`s.

Using the `rabbitmq-cluster` Helm chart requires `RabbitMQ` to be enabled by a platform administrator.


## Using the Catalog

1. Click on `Catalog` in the left menu

2. You will now see all the templates that are available for use

3. Click on the `k8s-deployment` template. In the Info tab you'll see some information about the Chart like the version and additional instructions.

4. Click on the `Values` tab

5. Continue to [create a workload](workloads.md)