Cloud Manager Reference Manual

Docs EInnovator Posted 13 May 20

Cloud Manager » Catalogs

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.

Catalog Indexes and Installation Specs

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
  - 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
    - sso
    - security
    - email: support@einnovator.org
      name: support
    name: einnovator-sso
    - https://github.com/einnovator/einnovator-sso-starter
    - https://cdn.einnovator.org/charts/einnovator/einnovator-sso-1.0.0.tgz
    version: 1.0.0
  - apiVersion: v1

There are two types solutions packages currently supported by CloudManager:

  • Helm Charts — the packaging format used by Helm. They are not installed by CloudManager directly, but by integration with Helm.
  • Cloud Native — this are YAML manifest files, similar in structure and content to Kubernetes manifest files, but with additional features such as variable expansion and profiles.

Listing Catalogs

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:

Catalog List

Creating and Editing Catalogs

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 name
  • URL — 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 Charts
    • Cloud Native — for extended manifest files
  • an optional decorative image/thumbnail
  • Enabled — boolean flag specifying if catalog is visible to users
  • Featured — boolean flag specifying if selected catalog solutions should be display in the home dashboard
  • Remote — 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.
    • PodPod 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).

Catalog Create Catalog Create

Managing Catalog Solutions

Image below show a snapshot of the solutions list for of a catalog:

Catalog Create

Learning More

Comments and Discussion