Operator Design

cloudscale

API Group and Version

The CRDs that the operator is handling are living in these groups and versions:

Property Value

API group

syn.tools

API version

v1alpha1

The API documentation of these CRDs can be found under References/CRDs.

CRD Description

A high-level description about the idea behind the objects:

CRD Description

Tenant

When a Tenant is created:

  • a GitRepo object is created to create the tenant configuration repository.

When a Tenant object is deleted:

  • All created objects are deleted by ownerReference mechanisms

Cluster

When a Cluster object is created:

  • a GitRepo object is created to create the cluster catalog configuration repository.

When a Cluster object is deleted:

  • All created objects are deleted by ownerReference mechanisms

GitRepo

Git repository management. Currently supported is GitLab. Support for GitHub and Gitea is planned.

  • Create Git repository

    • SSH key delivered by Steward is configured as deploy key

  • Delete or archive Git repository

  • Update Git repository when configuration changes