runtime

package
v0.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 18, 2023 License: Apache-2.0 Imports: 19 Imported by: 0

Documentation

Overview

Package runtime manages the reflection of Timoni's instances on Kubernetes clusters.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewResourceManager

func NewResourceManager(rcg genericclioptions.RESTClientGetter) (*ssa.ResourceManager, error)

NewResourceManager creates a ResourceManager for the given cluster.

Types

type InstanceManager

type InstanceManager struct {
	Instance apiv1.Instance
}

InstanceManager performs operations on the instance's inventory.

func NewInstanceManager

func NewInstanceManager(name, namespace, values string, moduleRef apiv1.ModuleReference) *InstanceManager

NewInstanceManager creates an InstanceManager for the given module.

func (*InstanceManager) AddObjects

func (m *InstanceManager) AddObjects(objects []*unstructured.Unstructured) error

AddObjects extracts the metadata from the given objects and adds it to the instance inventory.

func (*InstanceManager) Diff

Diff returns the slice of objects that do not exist in the target inventory.

func (*InstanceManager) ListMeta

func (m *InstanceManager) ListMeta() (object.ObjMetadataSet, error)

ListMeta returns the inventory entries as object.ObjMetadata objects.

func (*InstanceManager) ListObjects

func (m *InstanceManager) ListObjects() ([]*unstructured.Unstructured, error)

ListObjects returns the inventory entries as unstructured.Unstructured objects.

func (*InstanceManager) VersionOf

func (m *InstanceManager) VersionOf(objMetadata object.ObjMetadata) string

VersionOf returns the API version of the given object if found in this instance.

type StorageManager

type StorageManager struct {
	// contains filtered or unexported fields
}

StorageManager manages the inventory in-cluster storage.

func NewStorageManager

func NewStorageManager(resManager *ssa.ResourceManager) *StorageManager

NewStorageManager creates a storage manager for the given cluster.

func (*StorageManager) Apply

func (s *StorageManager) Apply(ctx context.Context, i *apiv1.Instance, createNamespace bool) error

Apply creates or updates the storage object for the given instance.

func (*StorageManager) Delete

func (s *StorageManager) Delete(ctx context.Context, name, namespace string) error

Delete removes the storage for the given instance name and namespace.

func (*StorageManager) Get

func (s *StorageManager) Get(ctx context.Context, name, namespace string) (*apiv1.Instance, error)

Get retrieves the instance from the storage.

func (*StorageManager) GetStaleObjects

func (s *StorageManager) GetStaleObjects(ctx context.Context, i *apiv1.Instance) ([]*unstructured.Unstructured, error)

GetStaleObjects returns the list of objects metadata subject to pruning.

func (*StorageManager) List

func (s *StorageManager) List(ctx context.Context, namespace string) ([]*apiv1.Instance, error)

List returns the instances found in the given namespace.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL