diff --git a/docs/how-to/developer/concepts/app-charts/app-charts.mdx b/docs/how-to/developer/concepts/app-charts/app-charts.mdx
index 8ef1d2a5ddf..c3a1897142c 100644
--- a/docs/how-to/developer/concepts/app-charts/app-charts.mdx
+++ b/docs/how-to/developer/concepts/app-charts/app-charts.mdx
@@ -15,6 +15,7 @@ import TabItem from '@theme/TabItem';
This guide explores working with application charts. App charts are reusable application templates packaged as Helm charts that allow users to deploy preconfigured applications. For more information see the [application charts reference](../../../../reference/concepts/appcharts.md) page.
## View Application Charts
+
@@ -37,7 +38,95 @@ epinio app chart list
-### Application Charts CRUD Coming Soon!
+## Create an Application Chart
+
+
+
+
+Click **Create** on the Application Charts page to open the creation modal. Here you can provide a name and short description which will be displayed when creating an application, a detailed description for display in the table, as well as a Helm Chart URL and/or a Helm Repo URL. You can also establish settings that will prompt the user for values during app creation if they select the corresponding chart.
+
+
+
+
+
+
+
+Create an application chart:
+
+```console
+epinio app chart create --name mychart \
+ --short-description "My application chart" \
+ --description "A longer description of my application chart" \
+ --helm-repo https://charts.example.com \
+ --helm-chart https://charts.example.com/mychart-1.0.0.tgz \
+ --set replicaCount=2 \
+ --set image.tag=latest
+```
+
+The `--set` flag takes a `key=value` pair and can be repeated to provide multiple values.
+
+
+
+
+## Edit an Application Chart
+
+
+
+
+Select **Edit** from the action menu for the row of the app chart you wish to edit. Use caution when editing charts that are being used by applications, as you may cause issues for future rebuilds.
+
+
+
+
+
+
+
+Update an application chart. Flags you do not set leave the corresponding fields unchanged:
+
+```console
+epinio app chart update mychart \
+ --short-description "An updated description" \
+ --helm-chart https://charts.example.com/mychart-1.1.0.tgz \
+ --set replicaCount=3
+```
+
+
+
+
+## Delete an Application Chart
+
+
+
+
+Open the action menu for the application chart and select **Delete**. Confirm the deletion.
+
+
+
+
+
+
+
+Delete an application chart:
+
+```console
+epinio app chart delete mychart
+```
+
+
+
+
## Additional CLI Commands
For additional documentation on the CLI commands above, along with additional commands, see the [epinio app chart](../../../../reference/cli/app/chart/epinio_app_chart.md) CLI reference.
\ No newline at end of file
diff --git a/docs/how-to/developer/concepts/app-charts/charts-create-modal.png b/docs/how-to/developer/concepts/app-charts/charts-create-modal.png
new file mode 100644
index 00000000000..11dd411cabf
Binary files /dev/null and b/docs/how-to/developer/concepts/app-charts/charts-create-modal.png differ
diff --git a/docs/how-to/developer/concepts/app-charts/charts-delete-modal.png b/docs/how-to/developer/concepts/app-charts/charts-delete-modal.png
new file mode 100644
index 00000000000..666071635ea
Binary files /dev/null and b/docs/how-to/developer/concepts/app-charts/charts-delete-modal.png differ
diff --git a/docs/how-to/developer/concepts/app-charts/charts-edit-modal.png b/docs/how-to/developer/concepts/app-charts/charts-edit-modal.png
new file mode 100644
index 00000000000..eb27c9adb38
Binary files /dev/null and b/docs/how-to/developer/concepts/app-charts/charts-edit-modal.png differ
diff --git a/docs/how-to/developer/concepts/app-charts/charts-screen.png b/docs/how-to/developer/concepts/app-charts/charts-screen.png
index c5d9c1f38ca..321a988ac0a 100644
Binary files a/docs/how-to/developer/concepts/app-charts/charts-screen.png and b/docs/how-to/developer/concepts/app-charts/charts-screen.png differ
diff --git a/docs/how-to/developer/concepts/applications/applications.mdx b/docs/how-to/developer/concepts/applications/applications.mdx
index cbb3df8c452..82a74a6b2ad 100644
--- a/docs/how-to/developer/concepts/applications/applications.mdx
+++ b/docs/how-to/developer/concepts/applications/applications.mdx
@@ -56,7 +56,9 @@ Provide your application source to Epinio. If you have an [application manifest]
- GitHub
- GitLab
-After providing your source, select the [application chart](../app-charts/app-charts.mdx) and builder image you would like Epinio to use.
+Selecting any of the Git options will allow you to select from your [git configurations](../git-configs/git-configs.mdx) so Epinio can access prive repos/projects.
+
+After providing your source, select the [builder image](../builder-images/builder-images.mdx) you would like Epinio to use when building your application and the [application chart](../app-charts/app-charts.mdx) you would like Epinio to use when deploying it.
diff --git a/docs/how-to/developer/concepts/builder-images/builder-create-modal.png b/docs/how-to/developer/concepts/builder-images/builder-create-modal.png
new file mode 100644
index 00000000000..922d266e33b
Binary files /dev/null and b/docs/how-to/developer/concepts/builder-images/builder-create-modal.png differ
diff --git a/docs/how-to/developer/concepts/builder-images/builder-delete-modal.png b/docs/how-to/developer/concepts/builder-images/builder-delete-modal.png
new file mode 100644
index 00000000000..031648bdd3b
Binary files /dev/null and b/docs/how-to/developer/concepts/builder-images/builder-delete-modal.png differ
diff --git a/docs/how-to/developer/concepts/builder-images/builder-edit-modal.png b/docs/how-to/developer/concepts/builder-images/builder-edit-modal.png
new file mode 100644
index 00000000000..5dfc325c670
Binary files /dev/null and b/docs/how-to/developer/concepts/builder-images/builder-edit-modal.png differ
diff --git a/docs/how-to/developer/concepts/builder-images/builder-images.mdx b/docs/how-to/developer/concepts/builder-images/builder-images.mdx
new file mode 100644
index 00000000000..e7e31ae328f
--- /dev/null
+++ b/docs/how-to/developer/concepts/builder-images/builder-images.mdx
@@ -0,0 +1,132 @@
+---
+sidebar_label: Builder Images
+sidebar_position: 7
+title: Builder Images
+description: How to use Epinio builder images.
+keywords: [epinio, kubernetes, builder images]
+doc-type: [how-to]
+doc-topic: [epinio, how-to, builder images]
+doc-persona: [epinio-developer, epinio-operator]
+---
+
+import Tabs from '@theme/Tabs';
+import TabItem from '@theme/TabItem';
+
+This guide explores working with builder images. Builder images transform source code into runnable container images. For more information see the [builder images reference](../../../../reference/customization/staging.md) page.
+
+## View Builder Images
+
+
+
+
+To view all available builder images, navigate to the **Builder Images** page under the **Advanced** section of the side navigation menu.
+
+
+
+
+
+
+List all known builder images:
+
+```console
+epinio buildimage list
+```
+
+Show the details of a single builder image:
+
+```console
+epinio buildimage show myimage
+```
+
+
+
+
+## Create a Builder Image
+
+
+
+
+Click **Create** on the Builder Images page to open the creation modal. Here you can provide a name, descriptions and the image itself.
+
+
+
+
+
+
+
+Create a builder image. Both `--name` and `--image` are required:
+
+```console
+epinio buildimage create --name myimage \
+ --image paketobuildpacks/builder-jammy-full:latest \
+ --short-description "My builder image" \
+ --description "A longer description of my builder image"
+```
+
+
+
+
+## Edit a Builder Image
+
+
+
+
+Select **Edit** from the action menu for the row of the builder image you wish to edit. Use caution when editing images that are being used by applications, as you may cause issues for future rebuilds.
+
+
+
+
+
+
+
+Update a builder image. Flags you do not set leave the corresponding fields unchanged:
+
+```console
+epinio buildimage update myimage \
+ --image paketobuildpacks/builder-jammy-full:0.4.0 \
+ --short-description "An updated description"
+```
+
+
+
+
+## Delete a Builder Image
+
+
+
+
+Open the action menu for the builder image and select **Delete**. Confirm the deletion.
+
+
+
+
+
+
+
+Delete a builder image:
+
+```console
+epinio buildimage delete myimage
+```
+
+
+
+
+
+## Additional CLI Commands
+For additional documentation on the CLI commands above, along with additional commands, see the [epinio buildimage](../../../../reference/cli/buildimage/epinio_buildimage.md) CLI reference.
\ No newline at end of file
diff --git a/docs/how-to/developer/concepts/builder-images/builder-screen.png b/docs/how-to/developer/concepts/builder-images/builder-screen.png
new file mode 100644
index 00000000000..c2d7819cb08
Binary files /dev/null and b/docs/how-to/developer/concepts/builder-images/builder-screen.png differ
diff --git a/docs/how-to/developer/concepts/git-configs/git-configs-create-modal.png b/docs/how-to/developer/concepts/git-configs/git-configs-create-modal.png
new file mode 100644
index 00000000000..495fcce8006
Binary files /dev/null and b/docs/how-to/developer/concepts/git-configs/git-configs-create-modal.png differ
diff --git a/docs/how-to/developer/concepts/git-configs/git-configs-delete-modal.png b/docs/how-to/developer/concepts/git-configs/git-configs-delete-modal.png
new file mode 100644
index 00000000000..20df76776fd
Binary files /dev/null and b/docs/how-to/developer/concepts/git-configs/git-configs-delete-modal.png differ
diff --git a/docs/how-to/developer/concepts/git-configs/git-configs-screen.png b/docs/how-to/developer/concepts/git-configs/git-configs-screen.png
new file mode 100644
index 00000000000..3d1269e5986
Binary files /dev/null and b/docs/how-to/developer/concepts/git-configs/git-configs-screen.png differ
diff --git a/docs/how-to/developer/concepts/git-configs/git-configs.mdx b/docs/how-to/developer/concepts/git-configs/git-configs.mdx
new file mode 100644
index 00000000000..cb795bf59e5
--- /dev/null
+++ b/docs/how-to/developer/concepts/git-configs/git-configs.mdx
@@ -0,0 +1,108 @@
+---
+sidebar_label: Git Configurations
+sidebar_position: 8
+title: Git Configurations
+description: How to use Epinio git configurations.
+keywords: [epinio, kubernetes, git configuartions]
+doc-type: [how-to]
+doc-topic: [epinio, how-to, git configurations]
+doc-persona: [epinio-developer, epinio-operator]
+---
+
+import Tabs from '@theme/Tabs';
+import TabItem from '@theme/TabItem';
+
+This guide explores working with git configurations. Git configurations enable cloning of private repositories, disabling of SSL verification, and/or extending verification through a custom bundle of certificates. For more information see the [git configurations reference](../../../../reference/concepts/git_configuration.md) page.
+
+## View Git Configurations
+
+
+
+
+To view all available git configurations, navigate to the **Git Configs** page under the **Advanced** section of the side navigation menu.
+
+
+
+
+
+
+List all git configs:
+
+```console
+epinio gitconfig list
+```
+
+
+
+
+## Create a Git Configuration
+
+
+
+
+Click **Create** on the Git Configs page to open the creation modal. First, you must provide a unique id for your git config.
+
+Epinio offers several git providers to choose from, including GitHub and GitLab. If you select enterprise versions of GitHub or GitLab, you will also have to provide the host URL.
+
+You can also provide your Git username, as well as a password/token, so Epinio can access private repos/projects.
+
+Finally, you can provide epinio with git certificates and toggle some addtional config options.
+
+
+
+
+
+
+
+Create git config:
+
+```console
+epinio gitconfig create github-epinio-example-go-configuration https://github.com \
+ --git-provider github \
+ --user-org epinio \
+ --repository example-go \
+ --skip-ssl \
+ --username myuser \
+ --password abcde12345 \
+ --cert-file /path/to/some/certfile
+```
+
+
+
+
+## Delete a Git Configuration
+
+
+
+
+Open the action menu for the git config and select **Delete**. Confirm the deletion.
+
+
+
+
+
+
+
+Delete git config:
+
+```console
+epinio gitconfig delete my-git-config
+```
+
+
+
+
+
+## Additional CLI Commands
+For additional documentation on the CLI commands above, along with additional commands, see the [epinio gitconfig chart](../../../../reference/cli/gitconfig/epinio_gitconfig.md) CLI reference.
\ No newline at end of file
diff --git a/docs/how-to/developer/concepts/git_configuration.md b/docs/how-to/developer/concepts/git_configuration.md
deleted file mode 100644
index 0223d438ddb..00000000000
--- a/docs/how-to/developer/concepts/git_configuration.md
+++ /dev/null
@@ -1,41 +0,0 @@
----
-sidebar_label: Creating a Git configuration
-sidebar_position: 13
-title: Creating a Git configuration
-description: How to create a Git configuration
-keywords: [epinio, kubernetes, git configuration]
-doc-type: [how-to]
-doc-topic: [epinio, how-to, customize, create-git-config]
-doc-persona: [epinio-operator]
----
-
-
-As described
-[in the Git Configuration reference page](../../../reference/concepts/git_configuration.md),
-Epinio Git Configurations are Kubernetes secrets with a particular label.
-
-Creation is done with the
-[epinio gitconfig create](../../../reference/cli/gitconfig/epinio_gitconfig_create.md)
-command.
-
-For example:
-
-```console
-epinio gitconfig create github-epinio-example-go-configuration https://github.com \
- --git-provider github \
- --user-org epinio \
- --repository example-go \
- --skip-ssl \
- --username myuser \
- --password abcde12345 \
- --cert-file /path/to/some/certfile
-```
-
-The only required arguments are the name of the git configuration, and the repository URL.
-Everything else is optional, and specified through flags.
-
-If, for example, to skip the SSL configuration for a particular provider use:
-
-```bash
-epinio gitconfig create mygit-config https://gitlab.mydomain.com --skip-ssl
-```
diff --git a/docs/how-to/developer/concepts/service-catalog/catalog-screen.png b/docs/how-to/developer/concepts/service-catalog/catalog-screen.png
index 2ec4648044c..1f5301fa62d 100644
Binary files a/docs/how-to/developer/concepts/service-catalog/catalog-screen.png and b/docs/how-to/developer/concepts/service-catalog/catalog-screen.png differ
diff --git a/docs/how-to/developer/concepts/service-catalog/catalog-service-create-modal.png b/docs/how-to/developer/concepts/service-catalog/catalog-service-create-modal.png
new file mode 100644
index 00000000000..176de98ac96
Binary files /dev/null and b/docs/how-to/developer/concepts/service-catalog/catalog-service-create-modal.png differ
diff --git a/docs/how-to/developer/concepts/service-catalog/catalog-service-delete-modal.png b/docs/how-to/developer/concepts/service-catalog/catalog-service-delete-modal.png
new file mode 100644
index 00000000000..b2a7a910763
Binary files /dev/null and b/docs/how-to/developer/concepts/service-catalog/catalog-service-delete-modal.png differ
diff --git a/docs/how-to/developer/concepts/service-catalog/catalog-service-edit-modal.png b/docs/how-to/developer/concepts/service-catalog/catalog-service-edit-modal.png
new file mode 100644
index 00000000000..8577eae50d3
Binary files /dev/null and b/docs/how-to/developer/concepts/service-catalog/catalog-service-edit-modal.png differ
diff --git a/docs/how-to/developer/concepts/service-catalog/catalog-service-screen.png b/docs/how-to/developer/concepts/service-catalog/catalog-service-screen.png
index 94d41c78197..736da190114 100644
Binary files a/docs/how-to/developer/concepts/service-catalog/catalog-service-screen.png and b/docs/how-to/developer/concepts/service-catalog/catalog-service-screen.png differ
diff --git a/docs/how-to/developer/concepts/service-catalog/service-catalog.mdx b/docs/how-to/developer/concepts/service-catalog/service-catalog.mdx
index a0127270193..cba813aa794 100644
--- a/docs/how-to/developer/concepts/service-catalog/service-catalog.mdx
+++ b/docs/how-to/developer/concepts/service-catalog/service-catalog.mdx
@@ -62,7 +62,112 @@ epinio service catalog myservice
-### Service Catalog CRUD Coming Soon!
+## Create a Catalog Service
+
+
+
+
+Click **Create** on the Catalog page to open the creation modal. Here you can provide a name and descriptions used to identify the service.
+
+You can also provide an image url that will be used as the icon when displaying the service in the catalog.
+
+You will need to provide the name of the chart to install and can optionally provide the version of the chart and/or the version of the app packaged by the chart. Next, provide the information relating to the Helm repo where the chart lives.
+
+You can also add configurable settings that can be provided when provisioning the service.
+
+Under the Advanced Options you can tell Epinio what kinds of Kubernetes Secrets are compatible with the service.
+
+
+
+
+
+
+
+Create a catalog service. Both `--name` and `--chart` are required:
+
+```console
+epinio service catalog create --name mysql \
+ --chart mysql \
+ --chart-version 9.4.1 \
+ --app-version 8.0.30 \
+ --helm-repo-name bitnami \
+ --helm-repo-url https://charts.bitnami.com/bitnami \
+ --short-description "MySQL database" \
+ --description "A MySQL database provisioned from the Bitnami chart" \
+ --service-icon https://example.com/mysql.png \
+ --secret-types "mysql,database"
+```
+
+Use `--values-file` to pass a YAML file with the settings that can be configured when provisioning the service:
+
+```console
+epinio service catalog create --name mysql --chart mysql \
+ --helm-repo-url https://charts.bitnami.com/bitnami \
+ --values-file ./mysql-values.yaml
+```
+
+If the Helm repository requires credentials, reference the secret holding them with `--helm-repo-secret`.
+
+
+
+
+## Edit a Catalog Service
+
+
+
+
+Select **Edit** from the action menu from the card of the catalog service you wish to edit. You can also open the edit modal from the details page. Use caution when editing catalog services when there are associated service instances.
+
+
+
+
+
+
+
+Update a catalog service. Flags you do not set leave the corresponding fields unchanged:
+
+```console
+epinio service catalog update mysql \
+ --chart-version 9.5.0 \
+ --short-description "An updated description"
+```
+
+
+
+
+## Delete a Catalog Service
+
+
+
+
+Open the action menu for the catalog service and select **Delete**. Confirm the deletion. This can also be done from the details page
+
+
+
+
+
+
+
+Delete a catalog service:
+
+```console
+epinio service catalog delete mysql
+```
+
+
+
## Additional CLI Commands
-For additional documentation on the CLI commands above, along with additional commands, see the [epinio service catalog](../../../../reference/cli/service/epinio_service_catalog.md) CLI reference.
\ No newline at end of file
+For additional documentation on the CLI commands above, along with additional commands, see the [epinio service catalog](../../../../reference/cli/service/catalog/epinio_service_catalog.md) CLI reference.
\ No newline at end of file
diff --git a/docs/how-to/operator/customization/create_custom_appcharts.md b/docs/how-to/operator/customization/create_custom_appcharts.md
index b35752760a0..6ff33e08106 100644
--- a/docs/how-to/operator/customization/create_custom_appcharts.md
+++ b/docs/how-to/operator/customization/create_custom_appcharts.md
@@ -163,6 +163,22 @@ You can also see the details of the chart in Epinio:
epinio app chart show fluentd
```
+:::tip
+
+Instead of applying the custom resource with `kubectl`, you can register the chart directly with Epinio:
+
+```console
+epinio app chart create --name fluentd \
+ --short-description "Fluentd filterable standard deployment" \
+ --description "Epinio standard support chart extended for fluentd filtering" \
+ --helm-chart https://mydomain.org/epinio-application-fluentd.tgz
+```
+
+The same can be done from the **Application Charts** page in the web UI.
+See the [app charts how-to](../../developer/concepts/app-charts/app-charts.mdx) for details.
+
+:::
+
### User-settable configuration values
To expose the user-settable configuration value `foo` the created application chart has to look for this variable in the `.Values.userConfig` map.
diff --git a/docs/how-to/operator/customization/create_custom_service.md b/docs/how-to/operator/customization/create_custom_service.md
index 6e5e31b516e..f4d072d88bf 100644
--- a/docs/how-to/operator/customization/create_custom_service.md
+++ b/docs/how-to/operator/customization/create_custom_service.md
@@ -40,6 +40,23 @@ If everything worked correctly, you can see your Service in the Epinio `service-
epinio service catalog
```
+:::tip
+
+Instead of applying the custom resource with `kubectl`, you can create the catalog service directly with Epinio:
+
+```console
+epinio service catalog create --name mysql-custom \
+ --chart mysql \
+ --helm-repo-name bitnami \
+ --helm-repo-url https://charts.bitnami.com/bitnami \
+ --short-description "MySQL database"
+```
+
+The same can be done from the **Catalog** page in the web UI.
+See the [service catalog how-to](../../developer/concepts/service-catalog/service-catalog.mdx) for details.
+
+:::
+
## Adding an Image to the service
The consumers of the API (that is, the web UI of Epinio) can show an icon when listing the available services.
diff --git a/docs/how-to/operator/customization/custom_builder.md b/docs/how-to/operator/customization/custom_builder.md
index 20e7134b2e8..2356f5e1807 100644
--- a/docs/how-to/operator/customization/custom_builder.md
+++ b/docs/how-to/operator/customization/custom_builder.md
@@ -97,6 +97,18 @@ You can then push your application to Epinio and use your image with the `--buil
epinio push -n myapp -p app_directory --builder-image myorg/epicustombuilder:latest
```
+Alternatively, register the image with Epinio so it's offered to your developers as a choice when
+they create an application:
+
+```console
+epinio buildimage create --name epicustombuilder \
+ --image myorg/epicustombuilder:latest \
+ --short-description "Custom builder with Python support"
+```
+
+The same can be done from the **Builder Images** page in the web UI.
+See the [builder images how-to](../../developer/concepts/builder-images/builder-images.mdx) for details.
+
## More examples
You can find a more complete example on how to build and deploy a custom builder at
diff --git a/docs/reference/cli/app/chart/epinio_app_chart.md b/docs/reference/cli/app/chart/epinio_app_chart.md
index 00c6bf12688..04ac3e7e5e7 100644
--- a/docs/reference/cli/app/chart/epinio_app_chart.md
+++ b/docs/reference/cli/app/chart/epinio_app_chart.md
@@ -39,7 +39,10 @@ Manage epinio application charts
### SEE ALSO
* [epinio app](../epinio_app.md) - Epinio application features
+* [epinio app chart create](./epinio_app_chart_create.md) - Create an application chart
* [epinio app chart default](./epinio_app_chart_default.md) - Set or show app chart default
+* [epinio app chart delete](./epinio_app_chart_delete.md) - Delete an application chart
* [epinio app chart list](./epinio_app_chart_list.md) - List application charts
* [epinio app chart show](./epinio_app_chart_show.md) - Describe application chart
+* [epinio app chart update](./epinio_app_chart_update.md) - Update an application chart
diff --git a/docs/reference/cli/app/chart/epinio_app_chart_create.md b/docs/reference/cli/app/chart/epinio_app_chart_create.md
new file mode 100644
index 00000000000..655450325b0
--- /dev/null
+++ b/docs/reference/cli/app/chart/epinio_app_chart_create.md
@@ -0,0 +1,50 @@
+---
+sidebar_label: epinio app chart create
+title: ""
+description: epinio app chart create
+keywords: [epinio, kubernetes, epinio app chart create]
+doc-type: [reference]
+doc-topic: [epinio, reference, epinio-cli, epinio-app-chart-create]
+doc-persona: [epinio-developer, epinio-operator]
+---
+## epinio app chart create
+
+Create an application chart
+
+### Synopsis
+
+Create an application chart
+
+```
+epinio app chart create --name NAME [flags]
+```
+
+### Options
+
+```
+ --description string long description
+ --helm-chart string Helm chart URL
+ --helm-repo string Helm repository URL
+ -h, --help help for create
+ --name string application chart name (required)
+ --set strings values map entry as key=value (repeatable)
+ --short-description string short description
+```
+
+### Options inherited from parent commands
+
+```
+ -H, --header stringArray Add custom header to every request executed
+ -c, --kubeconfig string (KUBECONFIG) path to a kubeconfig, not required in-cluster
+ --log-level string (LOG_LEVEL) Only prints log messages at or above this level (debug, info, warn, error, fatal) (default "info")
+ --no-colors Suppress colorized output
+ --settings-file string (EPINIO_SETTINGS) set path of settings file (default "~/.config/epinio/settings.yaml")
+ --skip-ssl-verification (SKIP_SSL_VERIFICATION) Skip the verification of TLS certificates
+ --timeout-multiplier int (EPINIO_TIMEOUT_MULTIPLIER) Multiply timeouts by this factor (default 1)
+ --verbosity int (VERBOSITY) Only print progress messages at or above this level (0 or 1, default 0)
+```
+
+### SEE ALSO
+
+* [epinio app chart](./epinio_app_chart.md) - Epinio application chart management
+
diff --git a/docs/reference/cli/app/chart/epinio_app_chart_delete.md b/docs/reference/cli/app/chart/epinio_app_chart_delete.md
new file mode 100644
index 00000000000..23f90f5d5a2
--- /dev/null
+++ b/docs/reference/cli/app/chart/epinio_app_chart_delete.md
@@ -0,0 +1,40 @@
+---
+sidebar_label: epinio app chart delete
+title: ""
+description: epinio app chart delete
+keywords: [epinio, kubernetes, epinio app chart delete]
+doc-type: [reference]
+doc-topic: [epinio, reference, epinio-cli, epinio-app-chart-delete]
+doc-persona: [epinio-developer, epinio-operator]
+---
+## epinio app chart delete
+
+Delete an application chart
+
+```
+epinio app chart delete NAME [flags]
+```
+
+### Options
+
+```
+ -h, --help help for delete
+```
+
+### Options inherited from parent commands
+
+```
+ -H, --header stringArray Add custom header to every request executed
+ -c, --kubeconfig string (KUBECONFIG) path to a kubeconfig, not required in-cluster
+ --log-level string (LOG_LEVEL) Only prints log messages at or above this level (debug, info, warn, error, fatal) (default "info")
+ --no-colors Suppress colorized output
+ --settings-file string (EPINIO_SETTINGS) set path of settings file (default "~/.config/epinio/settings.yaml")
+ --skip-ssl-verification (SKIP_SSL_VERIFICATION) Skip the verification of TLS certificates
+ --timeout-multiplier int (EPINIO_TIMEOUT_MULTIPLIER) Multiply timeouts by this factor (default 1)
+ --verbosity int (VERBOSITY) Only print progress messages at or above this level (0 or 1, default 0)
+```
+
+### SEE ALSO
+
+* [epinio app chart](./epinio_app_chart.md) - Epinio application chart management
+
diff --git a/docs/reference/cli/app/chart/epinio_app_chart_update.md b/docs/reference/cli/app/chart/epinio_app_chart_update.md
new file mode 100644
index 00000000000..438f0998d48
--- /dev/null
+++ b/docs/reference/cli/app/chart/epinio_app_chart_update.md
@@ -0,0 +1,49 @@
+---
+sidebar_label: epinio app chart update
+title: ""
+description: epinio app chart update
+keywords: [epinio, kubernetes, epinio app chart update]
+doc-type: [reference]
+doc-topic: [epinio, reference, epinio-cli, epinio-app-chart-update]
+doc-persona: [epinio-developer, epinio-operator]
+---
+## epinio app chart update
+
+Update an application chart
+
+### Synopsis
+
+Update an application chart. Unset flags leave the corresponding fields unchanged.
+
+```
+epinio app chart update NAME [flags]
+```
+
+### Options
+
+```
+ --description string long description
+ --helm-chart string Helm chart URL
+ --helm-repo string Helm repository URL
+ -h, --help help for update
+ --set strings values map entry as key=value (repeatable)
+ --short-description string short description
+```
+
+### Options inherited from parent commands
+
+```
+ -H, --header stringArray Add custom header to every request executed
+ -c, --kubeconfig string (KUBECONFIG) path to a kubeconfig, not required in-cluster
+ --log-level string (LOG_LEVEL) Only prints log messages at or above this level (debug, info, warn, error, fatal) (default "info")
+ --no-colors Suppress colorized output
+ --settings-file string (EPINIO_SETTINGS) set path of settings file (default "~/.config/epinio/settings.yaml")
+ --skip-ssl-verification (SKIP_SSL_VERIFICATION) Skip the verification of TLS certificates
+ --timeout-multiplier int (EPINIO_TIMEOUT_MULTIPLIER) Multiply timeouts by this factor (default 1)
+ --verbosity int (VERBOSITY) Only print progress messages at or above this level (0 or 1, default 0)
+```
+
+### SEE ALSO
+
+* [epinio app chart](./epinio_app_chart.md) - Epinio application chart management
+
diff --git a/docs/reference/cli/buildimage/_category_.json b/docs/reference/cli/buildimage/_category_.json
new file mode 100644
index 00000000000..d7472401a15
--- /dev/null
+++ b/docs/reference/cli/buildimage/_category_.json
@@ -0,0 +1,8 @@
+{
+ "label": "epinio buildimage",
+ "collapsed": true,
+ "link": {
+ "type": "doc",
+ "id": "reference/cli/buildimage/epinio_buildimage"
+ }
+}
diff --git a/docs/reference/cli/buildimage/epinio_buildimage.md b/docs/reference/cli/buildimage/epinio_buildimage.md
new file mode 100644
index 00000000000..4862ae723c6
--- /dev/null
+++ b/docs/reference/cli/buildimage/epinio_buildimage.md
@@ -0,0 +1,45 @@
+---
+sidebar_label: epinio buildimage
+title: ""
+description: epinio buildimage
+keywords: [epinio, kubernetes, epinio buildimage]
+doc-type: [reference]
+doc-topic: [epinio, reference, epinio-cli, epinio-buildimage]
+doc-persona: [epinio-developer, epinio-operator]
+---
+## epinio buildimage
+
+Epinio builder image management
+
+### Synopsis
+
+Manage epinio builder images
+
+### Options
+
+```
+ -h, --help help for buildimage
+```
+
+### Options inherited from parent commands
+
+```
+ -H, --header stringArray Add custom header to every request executed
+ -c, --kubeconfig string (KUBECONFIG) path to a kubeconfig, not required in-cluster
+ --log-level string (LOG_LEVEL) Only prints log messages at or above this level (debug, info, warn, error, fatal) (default "info")
+ --no-colors Suppress colorized output
+ --settings-file string (EPINIO_SETTINGS) set path of settings file (default "~/.config/epinio/settings.yaml")
+ --skip-ssl-verification (SKIP_SSL_VERIFICATION) Skip the verification of TLS certificates
+ --timeout-multiplier int (EPINIO_TIMEOUT_MULTIPLIER) Multiply timeouts by this factor (default 1)
+ --verbosity int (VERBOSITY) Only print progress messages at or above this level (0 or 1, default 0)
+```
+
+### SEE ALSO
+
+* [epinio](../epinio.md) - Epinio cli
+* [epinio buildimage create](./epinio_buildimage_create.md) - Create a builder image
+* [epinio buildimage delete](./epinio_buildimage_delete.md) - Delete a builder image
+* [epinio buildimage list](./epinio_buildimage_list.md) - List builder images
+* [epinio buildimage show](./epinio_buildimage_show.md) - Describe a builder image
+* [epinio buildimage update](./epinio_buildimage_update.md) - Update a builder image
+
diff --git a/docs/reference/cli/buildimage/epinio_buildimage_create.md b/docs/reference/cli/buildimage/epinio_buildimage_create.md
new file mode 100644
index 00000000000..29cffebb7cb
--- /dev/null
+++ b/docs/reference/cli/buildimage/epinio_buildimage_create.md
@@ -0,0 +1,48 @@
+---
+sidebar_label: epinio buildimage create
+title: ""
+description: epinio buildimage create
+keywords: [epinio, kubernetes, epinio buildimage create]
+doc-type: [reference]
+doc-topic: [epinio, reference, epinio-cli, epinio-buildimage-create]
+doc-persona: [epinio-developer, epinio-operator]
+---
+## epinio buildimage create
+
+Create a builder image
+
+### Synopsis
+
+Create a builder image
+
+```
+epinio buildimage create --name NAME --image IMAGE [flags]
+```
+
+### Options
+
+```
+ --description string long description
+ -h, --help help for create
+ --image string full image reference
+ --name string builder image name (required)
+ --short-description string short description
+```
+
+### Options inherited from parent commands
+
+```
+ -H, --header stringArray Add custom header to every request executed
+ -c, --kubeconfig string (KUBECONFIG) path to a kubeconfig, not required in-cluster
+ --log-level string (LOG_LEVEL) Only prints log messages at or above this level (debug, info, warn, error, fatal) (default "info")
+ --no-colors Suppress colorized output
+ --settings-file string (EPINIO_SETTINGS) set path of settings file (default "~/.config/epinio/settings.yaml")
+ --skip-ssl-verification (SKIP_SSL_VERIFICATION) Skip the verification of TLS certificates
+ --timeout-multiplier int (EPINIO_TIMEOUT_MULTIPLIER) Multiply timeouts by this factor (default 1)
+ --verbosity int (VERBOSITY) Only print progress messages at or above this level (0 or 1, default 0)
+```
+
+### SEE ALSO
+
+* [epinio buildimage](./epinio_buildimage.md) - Epinio builder image management
+
diff --git a/docs/reference/cli/buildimage/epinio_buildimage_delete.md b/docs/reference/cli/buildimage/epinio_buildimage_delete.md
new file mode 100644
index 00000000000..69416fedfa3
--- /dev/null
+++ b/docs/reference/cli/buildimage/epinio_buildimage_delete.md
@@ -0,0 +1,44 @@
+---
+sidebar_label: epinio buildimage delete
+title: ""
+description: epinio buildimage delete
+keywords: [epinio, kubernetes, epinio buildimage delete]
+doc-type: [reference]
+doc-topic: [epinio, reference, epinio-cli, epinio-buildimage-delete]
+doc-persona: [epinio-developer, epinio-operator]
+---
+## epinio buildimage delete
+
+Delete a builder image
+
+### Synopsis
+
+Delete a builder image
+
+```
+epinio buildimage delete NAME [flags]
+```
+
+### Options
+
+```
+ -h, --help help for delete
+```
+
+### Options inherited from parent commands
+
+```
+ -H, --header stringArray Add custom header to every request executed
+ -c, --kubeconfig string (KUBECONFIG) path to a kubeconfig, not required in-cluster
+ --log-level string (LOG_LEVEL) Only prints log messages at or above this level (debug, info, warn, error, fatal) (default "info")
+ --no-colors Suppress colorized output
+ --settings-file string (EPINIO_SETTINGS) set path of settings file (default "~/.config/epinio/settings.yaml")
+ --skip-ssl-verification (SKIP_SSL_VERIFICATION) Skip the verification of TLS certificates
+ --timeout-multiplier int (EPINIO_TIMEOUT_MULTIPLIER) Multiply timeouts by this factor (default 1)
+ --verbosity int (VERBOSITY) Only print progress messages at or above this level (0 or 1, default 0)
+```
+
+### SEE ALSO
+
+* [epinio buildimage](./epinio_buildimage.md) - Epinio builder image management
+
diff --git a/docs/reference/cli/buildimage/epinio_buildimage_list.md b/docs/reference/cli/buildimage/epinio_buildimage_list.md
new file mode 100644
index 00000000000..81a5bf44b84
--- /dev/null
+++ b/docs/reference/cli/buildimage/epinio_buildimage_list.md
@@ -0,0 +1,44 @@
+---
+sidebar_label: epinio buildimage list
+title: ""
+description: epinio buildimage list
+keywords: [epinio, kubernetes, epinio buildimage list]
+doc-type: [reference]
+doc-topic: [epinio, reference, epinio-cli, epinio-buildimage-list]
+doc-persona: [epinio-developer, epinio-operator]
+---
+## epinio buildimage list
+
+List builder images
+
+### Synopsis
+
+List all known builder images
+
+```
+epinio buildimage list [flags]
+```
+
+### Options
+
+```
+ -h, --help help for list
+```
+
+### Options inherited from parent commands
+
+```
+ -H, --header stringArray Add custom header to every request executed
+ -c, --kubeconfig string (KUBECONFIG) path to a kubeconfig, not required in-cluster
+ --log-level string (LOG_LEVEL) Only prints log messages at or above this level (debug, info, warn, error, fatal) (default "info")
+ --no-colors Suppress colorized output
+ --settings-file string (EPINIO_SETTINGS) set path of settings file (default "~/.config/epinio/settings.yaml")
+ --skip-ssl-verification (SKIP_SSL_VERIFICATION) Skip the verification of TLS certificates
+ --timeout-multiplier int (EPINIO_TIMEOUT_MULTIPLIER) Multiply timeouts by this factor (default 1)
+ --verbosity int (VERBOSITY) Only print progress messages at or above this level (0 or 1, default 0)
+```
+
+### SEE ALSO
+
+* [epinio buildimage](./epinio_buildimage.md) - Epinio builder image management
+
diff --git a/docs/reference/cli/buildimage/epinio_buildimage_show.md b/docs/reference/cli/buildimage/epinio_buildimage_show.md
new file mode 100644
index 00000000000..9be8a9eaeb3
--- /dev/null
+++ b/docs/reference/cli/buildimage/epinio_buildimage_show.md
@@ -0,0 +1,44 @@
+---
+sidebar_label: epinio buildimage show
+title: ""
+description: epinio buildimage show
+keywords: [epinio, kubernetes, epinio buildimage show]
+doc-type: [reference]
+doc-topic: [epinio, reference, epinio-cli, epinio-buildimage-show]
+doc-persona: [epinio-developer, epinio-operator]
+---
+## epinio buildimage show
+
+Describe a builder image
+
+### Synopsis
+
+Show the details of the named builder image
+
+```
+epinio buildimage show NAME [flags]
+```
+
+### Options
+
+```
+ -h, --help help for show
+```
+
+### Options inherited from parent commands
+
+```
+ -H, --header stringArray Add custom header to every request executed
+ -c, --kubeconfig string (KUBECONFIG) path to a kubeconfig, not required in-cluster
+ --log-level string (LOG_LEVEL) Only prints log messages at or above this level (debug, info, warn, error, fatal) (default "info")
+ --no-colors Suppress colorized output
+ --settings-file string (EPINIO_SETTINGS) set path of settings file (default "~/.config/epinio/settings.yaml")
+ --skip-ssl-verification (SKIP_SSL_VERIFICATION) Skip the verification of TLS certificates
+ --timeout-multiplier int (EPINIO_TIMEOUT_MULTIPLIER) Multiply timeouts by this factor (default 1)
+ --verbosity int (VERBOSITY) Only print progress messages at or above this level (0 or 1, default 0)
+```
+
+### SEE ALSO
+
+* [epinio buildimage](./epinio_buildimage.md) - Epinio builder image management
+
diff --git a/docs/reference/cli/buildimage/epinio_buildimage_update.md b/docs/reference/cli/buildimage/epinio_buildimage_update.md
new file mode 100644
index 00000000000..532e6b9ca4e
--- /dev/null
+++ b/docs/reference/cli/buildimage/epinio_buildimage_update.md
@@ -0,0 +1,47 @@
+---
+sidebar_label: epinio buildimage update
+title: ""
+description: epinio buildimage update
+keywords: [epinio, kubernetes, epinio buildimage update]
+doc-type: [reference]
+doc-topic: [epinio, reference, epinio-cli, epinio-buildimage-update]
+doc-persona: [epinio-developer, epinio-operator]
+---
+## epinio buildimage update
+
+Update a builder image
+
+### Synopsis
+
+Update a builder image. Unset flags leave the corresponding fields unchanged.
+
+```
+epinio buildimage update NAME [flags]
+```
+
+### Options
+
+```
+ --description string long description
+ -h, --help help for update
+ --image string full image reference
+ --short-description string short description
+```
+
+### Options inherited from parent commands
+
+```
+ -H, --header stringArray Add custom header to every request executed
+ -c, --kubeconfig string (KUBECONFIG) path to a kubeconfig, not required in-cluster
+ --log-level string (LOG_LEVEL) Only prints log messages at or above this level (debug, info, warn, error, fatal) (default "info")
+ --no-colors Suppress colorized output
+ --settings-file string (EPINIO_SETTINGS) set path of settings file (default "~/.config/epinio/settings.yaml")
+ --skip-ssl-verification (SKIP_SSL_VERIFICATION) Skip the verification of TLS certificates
+ --timeout-multiplier int (EPINIO_TIMEOUT_MULTIPLIER) Multiply timeouts by this factor (default 1)
+ --verbosity int (VERBOSITY) Only print progress messages at or above this level (0 or 1, default 0)
+```
+
+### SEE ALSO
+
+* [epinio buildimage](./epinio_buildimage.md) - Epinio builder image management
+
diff --git a/docs/reference/cli/epinio.md b/docs/reference/cli/epinio.md
index 1b6c38258ee..ca433156ff2 100644
--- a/docs/reference/cli/epinio.md
+++ b/docs/reference/cli/epinio.md
@@ -34,6 +34,7 @@ epinio cli is the official command line interface for Epinio PaaS
### SEE ALSO
* [epinio app](./app/epinio_app.md) - Epinio application features
+* [epinio buildimage](./buildimage/epinio_buildimage.md) - Epinio builder image management
* [epinio client-sync](./epinio_client-sync.md) - Downloads a client binary matching the currently logged server
* [epinio completion](./epinio_completion.md) - Generate completion script for a shell
* [epinio configuration](./configuration/epinio_configuration.md) - Epinio configuration features
diff --git a/docs/reference/cli/gitconfig/epinio_gitconfig_create.md b/docs/reference/cli/gitconfig/epinio_gitconfig_create.md
index 8b8c90531a6..73de227a6cb 100644
--- a/docs/reference/cli/gitconfig/epinio_gitconfig_create.md
+++ b/docs/reference/cli/gitconfig/epinio_gitconfig_create.md
@@ -20,6 +20,7 @@ epinio gitconfig create ID URL [flags]
```
--cert-file string path to file holding supporting certificates
--git-provider string Git provider code [git|github|github_enterprise|gitlab|gitlab_enterprise] (default "git")
+ --global make the configuration available to all users
-h, --help help for create
--password string password for logging into the host
--repository string specific repository
diff --git a/docs/reference/cli/index.md b/docs/reference/cli/index.md
index 89059710ee6..84fb48bd4d5 100644
--- a/docs/reference/cli/index.md
+++ b/docs/reference/cli/index.md
@@ -41,6 +41,20 @@ If you have not installed the CLI yet, start with
| [`epinio app port-forward`](./app/epinio_app_port-forward.md) | Forward a local port to an application |
| [`epinio app env`](./app/env/epinio_app_env.md) | Manage application environment variables |
| [`epinio app chart`](./app/chart/epinio_app_chart.md) | Inspect and select application charts |
+| [`epinio app chart create`](./app/chart/epinio_app_chart_create.md) | Create an application chart |
+| [`epinio app chart update`](./app/chart/epinio_app_chart_update.md) | Update an application chart |
+| [`epinio app chart delete`](./app/chart/epinio_app_chart_delete.md) | Delete an application chart |
+
+## Builder images
+
+| Command | What it does |
+| --- | --- |
+| [`epinio buildimage`](./buildimage/epinio_buildimage.md) | Top-level command for builder image management |
+| [`epinio buildimage list`](./buildimage/epinio_buildimage_list.md) | List builder images |
+| [`epinio buildimage show`](./buildimage/epinio_buildimage_show.md) | Describe a builder image |
+| [`epinio buildimage create`](./buildimage/epinio_buildimage_create.md) | Create a builder image |
+| [`epinio buildimage update`](./buildimage/epinio_buildimage_update.md) | Update a builder image |
+| [`epinio buildimage delete`](./buildimage/epinio_buildimage_delete.md) | Delete a builder image |
## Configurations
@@ -56,7 +70,10 @@ If you have not installed the CLI yet, start with
| Command | What it does |
| --- | --- |
| [`epinio service`](./service/epinio_service.md) | Top-level command for service management |
-| [`epinio service catalog`](./service/epinio_service_catalog.md) | Browse the service catalog |
+| [`epinio service catalog`](./service/catalog/epinio_service_catalog.md) | Browse the service catalog |
+| [`epinio service catalog create`](./service/catalog/epinio_service_catalog_create.md) | Create a catalog service |
+| [`epinio service catalog update`](./service/catalog/epinio_service_catalog_update.md) | Update a catalog service |
+| [`epinio service catalog delete`](./service/catalog/epinio_service_catalog_delete.md) | Delete a catalog service |
| [`epinio service create`](./service/epinio_service_create.md) | Provision a service from the catalog |
| [`epinio service bind`](./service/epinio_service_bind.md) | Bind a service to an application |
diff --git a/docs/reference/cli/service/catalog/_category_.json b/docs/reference/cli/service/catalog/_category_.json
new file mode 100644
index 00000000000..16c8fa00327
--- /dev/null
+++ b/docs/reference/cli/service/catalog/_category_.json
@@ -0,0 +1,8 @@
+{
+ "label": "epinio service catalog",
+ "collapsed": true,
+ "link": {
+ "type": "doc",
+ "id": "reference/cli/service/catalog/epinio_service_catalog"
+ }
+}
diff --git a/docs/reference/cli/service/epinio_service_catalog.md b/docs/reference/cli/service/catalog/epinio_service_catalog.md
similarity index 69%
rename from docs/reference/cli/service/epinio_service_catalog.md
rename to docs/reference/cli/service/catalog/epinio_service_catalog.md
index 7c876b3c375..f1c490ed132 100644
--- a/docs/reference/cli/service/epinio_service_catalog.md
+++ b/docs/reference/cli/service/catalog/epinio_service_catalog.md
@@ -26,17 +26,18 @@ epinio service catalog [NAME] [flags]
```
-H, --header stringArray Add custom header to every request executed
-c, --kubeconfig string (KUBECONFIG) path to a kubeconfig, not required in-cluster
+ --log-level string (LOG_LEVEL) Only prints log messages at or above this level (debug, info, warn, error, fatal) (default "info")
--no-colors Suppress colorized output
--settings-file string (EPINIO_SETTINGS) set path of settings file (default "~/.config/epinio/settings.yaml")
--skip-ssl-verification (SKIP_SSL_VERIFICATION) Skip the verification of TLS certificates
--timeout-multiplier int (EPINIO_TIMEOUT_MULTIPLIER) Multiply timeouts by this factor (default 1)
- --trace-file string (TRACE_FILE) Print trace messages to the specified file
- --trace-level int (TRACE_LEVEL) Only print trace messages at or above this level (0 to 255, default 0, print nothing)
- --trace-output string (TRACE_OUTPUT) Sets trace output format [text,json] (default "text")
--verbosity int (VERBOSITY) Only print progress messages at or above this level (0 or 1, default 0)
```
### SEE ALSO
-* [epinio service](./epinio_service.md) - Epinio service management
+* [epinio service](../epinio_service.md) - Epinio service management
+* [epinio service catalog create](./epinio_service_catalog_create.md) - Create an Epinio catalog service
+* [epinio service catalog delete](./epinio_service_catalog_delete.md) - Delete an Epinio catalog service
+* [epinio service catalog update](./epinio_service_catalog_update.md) - Update an Epinio catalog service
diff --git a/docs/reference/cli/service/catalog/epinio_service_catalog_create.md b/docs/reference/cli/service/catalog/epinio_service_catalog_create.md
new file mode 100644
index 00000000000..f3f398625d0
--- /dev/null
+++ b/docs/reference/cli/service/catalog/epinio_service_catalog_create.md
@@ -0,0 +1,52 @@
+---
+sidebar_label: epinio service catalog create
+title: ""
+description: epinio service catalog create
+keywords: [epinio, kubernetes, epinio service catalog create]
+doc-type: [reference]
+doc-topic: [epinio, reference, epinio-cli, epinio-service-catalog-create]
+doc-persona: [epinio-developer, epinio-operator]
+---
+## epinio service catalog create
+
+Create an Epinio catalog service
+
+```
+epinio service catalog create --name NAME --chart CHART [flags]
+```
+
+### Options
+
+```
+ --app-version string application version
+ --chart string Helm chart
+ --chart-version string Helm chart version
+ --description string long description
+ --helm-repo-name string Helm repository name
+ --helm-repo-secret string Helm repository credentials secret
+ --helm-repo-url string Helm repository URL
+ -h, --help help for create
+ --name string catalog service name (required)
+ --secret-types strings comma-separated secret types
+ --service-icon string service icon
+ --short-description string short description
+ --values-file string path to a YAML file whose contents are sent as the values string field
+```
+
+### Options inherited from parent commands
+
+```
+ -H, --header stringArray Add custom header to every request executed
+ -c, --kubeconfig string (KUBECONFIG) path to a kubeconfig, not required in-cluster
+ --log-level string (LOG_LEVEL) Only prints log messages at or above this level (debug, info, warn, error, fatal) (default "info")
+ --no-colors Suppress colorized output
+ --settings-file string (EPINIO_SETTINGS) set path of settings file (default "~/.config/epinio/settings.yaml")
+ --skip-ssl-verification (SKIP_SSL_VERIFICATION) Skip the verification of TLS certificates
+ --timeout-multiplier int (EPINIO_TIMEOUT_MULTIPLIER) Multiply timeouts by this factor (default 1)
+ --verbosity int (VERBOSITY) Only print progress messages at or above this level (0 or 1, default 0)
+```
+
+### SEE ALSO
+
+* [epinio service catalog](./epinio_service_catalog.md) - Lists all available Epinio catalog services, or show the details of the specified one
+
diff --git a/docs/reference/cli/service/catalog/epinio_service_catalog_delete.md b/docs/reference/cli/service/catalog/epinio_service_catalog_delete.md
new file mode 100644
index 00000000000..58b4d8f9551
--- /dev/null
+++ b/docs/reference/cli/service/catalog/epinio_service_catalog_delete.md
@@ -0,0 +1,40 @@
+---
+sidebar_label: epinio service catalog delete
+title: ""
+description: epinio service catalog delete
+keywords: [epinio, kubernetes, epinio service catalog delete]
+doc-type: [reference]
+doc-topic: [epinio, reference, epinio-cli, epinio-service-catalog-delete]
+doc-persona: [epinio-developer, epinio-operator]
+---
+## epinio service catalog delete
+
+Delete an Epinio catalog service
+
+```
+epinio service catalog delete NAME [flags]
+```
+
+### Options
+
+```
+ -h, --help help for delete
+```
+
+### Options inherited from parent commands
+
+```
+ -H, --header stringArray Add custom header to every request executed
+ -c, --kubeconfig string (KUBECONFIG) path to a kubeconfig, not required in-cluster
+ --log-level string (LOG_LEVEL) Only prints log messages at or above this level (debug, info, warn, error, fatal) (default "info")
+ --no-colors Suppress colorized output
+ --settings-file string (EPINIO_SETTINGS) set path of settings file (default "~/.config/epinio/settings.yaml")
+ --skip-ssl-verification (SKIP_SSL_VERIFICATION) Skip the verification of TLS certificates
+ --timeout-multiplier int (EPINIO_TIMEOUT_MULTIPLIER) Multiply timeouts by this factor (default 1)
+ --verbosity int (VERBOSITY) Only print progress messages at or above this level (0 or 1, default 0)
+```
+
+### SEE ALSO
+
+* [epinio service catalog](./epinio_service_catalog.md) - Lists all available Epinio catalog services, or show the details of the specified one
+
diff --git a/docs/reference/cli/service/catalog/epinio_service_catalog_update.md b/docs/reference/cli/service/catalog/epinio_service_catalog_update.md
new file mode 100644
index 00000000000..bdf3d417e78
--- /dev/null
+++ b/docs/reference/cli/service/catalog/epinio_service_catalog_update.md
@@ -0,0 +1,51 @@
+---
+sidebar_label: epinio service catalog update
+title: ""
+description: epinio service catalog update
+keywords: [epinio, kubernetes, epinio service catalog update]
+doc-type: [reference]
+doc-topic: [epinio, reference, epinio-cli, epinio-service-catalog-update]
+doc-persona: [epinio-developer, epinio-operator]
+---
+## epinio service catalog update
+
+Update an Epinio catalog service
+
+```
+epinio service catalog update NAME [flags]
+```
+
+### Options
+
+```
+ --app-version string application version
+ --chart string Helm chart
+ --chart-version string Helm chart version
+ --description string long description
+ --helm-repo-name string Helm repository name
+ --helm-repo-secret string Helm repository credentials secret
+ --helm-repo-url string Helm repository URL
+ -h, --help help for update
+ --secret-types strings comma-separated secret types
+ --service-icon string service icon
+ --short-description string short description
+ --values-file string path to a YAML file whose contents are sent as the values string field
+```
+
+### Options inherited from parent commands
+
+```
+ -H, --header stringArray Add custom header to every request executed
+ -c, --kubeconfig string (KUBECONFIG) path to a kubeconfig, not required in-cluster
+ --log-level string (LOG_LEVEL) Only prints log messages at or above this level (debug, info, warn, error, fatal) (default "info")
+ --no-colors Suppress colorized output
+ --settings-file string (EPINIO_SETTINGS) set path of settings file (default "~/.config/epinio/settings.yaml")
+ --skip-ssl-verification (SKIP_SSL_VERIFICATION) Skip the verification of TLS certificates
+ --timeout-multiplier int (EPINIO_TIMEOUT_MULTIPLIER) Multiply timeouts by this factor (default 1)
+ --verbosity int (VERBOSITY) Only print progress messages at or above this level (0 or 1, default 0)
+```
+
+### SEE ALSO
+
+* [epinio service catalog](./epinio_service_catalog.md) - Lists all available Epinio catalog services, or show the details of the specified one
+
diff --git a/docs/reference/cli/service/epinio_service.md b/docs/reference/cli/service/epinio_service.md
index d4986957d57..87397d76959 100644
--- a/docs/reference/cli/service/epinio_service.md
+++ b/docs/reference/cli/service/epinio_service.md
@@ -44,7 +44,7 @@ epinio service [flags]
* [epinio](../epinio.md) - Epinio cli
* [epinio service bind](./epinio_service_bind.md) - Bind a service SERVICENAME to an Epinio app APPNAME
-* [epinio service catalog](./epinio_service_catalog.md) - Lists all available Epinio catalog services, or show the details of the specified one
+* [epinio service catalog](./catalog/epinio_service_catalog.md) - Lists all available Epinio catalog services, or show the details of the specified one
* [epinio service create](./epinio_service_create.md) - Create a service SERVICENAME of an Epinio catalog service CATALOGSERVICENAME
* [epinio service delete](./epinio_service_delete.md) - Delete one or more services
* [epinio service list](./epinio_service_list.md) - List all the services in the targeted namespace
diff --git a/docs/reference/concepts/git_configuration.md b/docs/reference/concepts/git_configuration.md
index b5ce0a00ff5..086c8e5430a 100644
--- a/docs/reference/concepts/git_configuration.md
+++ b/docs/reference/concepts/git_configuration.md
@@ -117,4 +117,4 @@ stringData:
-----END CERTIFICATE-----
```
-For more examples check the [How-to](../../how-to/developer/concepts/git_configuration.md).
+For more examples check the [How-to](../../how-to/developer/concepts/git-configs).