Skip to content

Latest commit

 

History

History
62 lines (42 loc) · 1.37 KB

File metadata and controls

62 lines (42 loc) · 1.37 KB

Operator Design

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.

GitRepo

Git repository management (CRUD repositories on GitLab, GitHub and Gitea). Lieutenant manages the CR objects and queries the status fields to get the status.

The Operator manages the following objects:

GitRepo

  • Create Git repository

    • By default on git.vshn.net GitLab

    • Supported is GitLab. Support for GitHub and Gitea is planned.

    • SSH key delivered by Steward is configured as deploy key

  • Delete Git repository

  • Update Git repository when configuration changes

    • Only SSH deploy key change supported

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