resources

package
v0.0.9 Latest Latest
Warning

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

Go to latest
Published: Jul 1, 2021 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Overview

Package resources contains the Manager interface for reconciling arbitrary resources with a Kubernetes API server.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Manager

type Manager interface {
	// Reconcile will reconcile the provided yaml or json manifest with the API server. The snapshot provided
	// must match the manifest.
	ReconcileRaw(ctx context.Context, snapshot *konfigurationv1.Snapshot, manifest []byte, dryRun bool) (changeSet string, err error)
	// ReconcileUnstructured will reconcile the provided list of unstructured objects. They are assumed to be sorted
	// such that cluster scoped resources are applied before namespaced ones. The snapshot provided must match
	// the list of objects.
	ReconcileUnstructured(ctx context.Context, snapshot *konfigurationv1.Snapshot, objects []*unstructured.Unstructured, dryRun bool) (changeset string, err error)
	// Prune will attempt to garbage-collect resources represented in the lastSnapshot that
	// were not created in the newSnapshot.
	Prune(ctx context.Context, lastSnapshot, newSnapshot *konfigurationv1.Snapshot) (changeSet string, success bool)
}

Manager is the main interface for reconciling resources from built manifests.

func NewResourceManager

func NewResourceManager(cl client.Client, parent Reconcilee) Manager

NewResourceManager creates a new resource manager for the given reconcilee and client.

type Reconcilee added in v0.0.2

type Reconcilee interface {
	client.Object
	// GetTimeout should return the timeout for reconciliation options
	GetTimeout() time.Duration
	// ForceCreate should return whether objects should be deleted and recreated
	// for things such as immutable field changes.
	ForceCreate() bool
}

Reconcilee is an interface extending client.Object that includes a method for retrieving information about how resources should be managed.

Jump to

Keyboard shortcuts

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