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.
Click to show internal directories.
Click to hide internal directories.