CloudManager allows for administrators to define Catalogs from which users can pick up packaged artifacts — designed as Solutions — for installation in the Spaces they are authorized. Each Catalog is configured with an index file with meta-data about the list of Solutions that can be installed. The actual installations instructions for each Solution are setup externally to the index file and referenced via a URL.
Management of Catalogs is only available for *CloudManager administrators. Thus, the Admin
link should be clicked first — in the user info dropdown, or Apps left-side tray – to navigate to the Admin dashboard.
A Catalog is configured with an index file that specifies a list of Solutions, with descriptive meta-data and URL to external installation package resource. The format of the index file is the same as supported by the Helm
— one of most widely used command-line solution installer for K8s. This allows existing Helm
catalogs indexes files to be used directly in CloudManager.
The index file is a YAML file describing package solutions. The index file can be build manually, or with the help of a tool. Helm
command repo index
can be used to created an index file from a set of packaged helm charts. The generated index can be subsequently edited to add additional information.
The information in an index file is mostly descriptive, and is used to allow solutions to be browsed, searched, and installed easily with the help of tools (web based like CloudManager, or others). The most important field is urls
which specifies one (or more) URLs where the package solution can be download from.
An example of an index file is show below:
apiVersion: v1
entries:
einnovator-sso:
- apiVersion: v1
appVersion: 1.0.0
created: 2020-01-01T12:00:00Z
description: EInnovator SSO Gateway
digest: xxxxx
home: https://home.einnovator.org/sso-gateway
icon: https://cdn.einnovator.org/img/solution/sso-gateway-blue200.png
keywords:
- sso
- security
maintainers:
- email: support@einnovator.org
name: support
name: einnovator-sso
sources:
- https://github.com/einnovator/einnovator-sso-starter
urls:
- https://cdn.einnovator.org/charts/einnovator/einnovator-sso-1.0.0.tgz
version: 1.0.0
einnovator-notifications:
- apiVersion: v1
...
There are two types solutions packages currently supported by CloudManager:
Helm
. They are not installed by CloudManager directly, but by integration with Helm.The Button Catalogs
in the top toolbar in the navigates to the list of catalogs.
Image below shows an example of list Catalogs available to a user:
Administrators can define any number of Catalogs. The button Add New in the Catalog list page, opens a form page to create a new catalog.
The following fields should be specified when defining a Catalog:
Name
— descriptive nameURL
— URL of the index file (should be accessible from the cluster/pod/machine where CloudManager is running)Type
— Format used for packaged solutions:
Helm
— for Helm ChartsCloud Native
— for extended manifest filesEnabled
— boolean flag specifying if catalog is visible to usersFeatured
— boolean flag specifying if selected catalog solutions should be display in the home dashboardRemote
— boolean flag specifying if integration is done with a remote package manager (e.g. helm
). If true, the following field should also the specified:
Namespace
— namespace of the Pod where the the package manager is installed.Pod
— Pod where the the package manager is installed.Binary/Executable
— path of the binary executable for the package manager (e.g. /bin/helm
)Images below show an example of SolutionCatalog being created for helm
(left-hand side), and the details of the catalog after created (righ-hand side).
Image below show a snapshot of the solutions list for of a catalog:
Comments and Discussion