Skip to content

kudobuilder/kitt

Repository files navigation

KUDO Index Transfer Tool

PkgGoDev

kitt synchronizes KUDO repositories from an index of operator package references.

A list of YAML files describing operator package references is used to create or update a KUDO operator repository on the local file system.

Example usage:

kitt update --repository /var/kudo/repo /var/kudo/operators/*.yaml

Operator package references

kitt builds the KUDO repository from references to operator packages. Each reference describes how to retrieve one or more versioned packages of an operator.

Consider an operator that is developed in a Git repository. The actual operator package (operator.yaml, parameters.yaml, ...) is in the operator folder of this repository. Tagged versions of this operator are then referenced by the following YAML:

apiVersion: index.kudo.dev/v1alpha1
kind: Operator
name: MyOperator
gitSources:
  - name: my-git-repository
    url: https://github.com/example/myoperator.git
versions:
  - operatorVersion: "1.0.0"
    git:
      source: my-git-repository
      directory: operator
      tag: "v1.0.0"
  - operatorVersion: "2.0.0"
    git:
      source: my-git-repository
      directory: operator
      tag: "v2.0.0"

Running kitt update with this YAML as an argument will check out the referenced Git repository with the specified tags v1.0.0 and v2.0.0, build tarballs from the operator package in the operator folder, and add these tarballs to a KUDO repository.