instance

package
v0.17.1 Latest Latest
Warning

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

Go to latest
Published: Oct 19, 2020 License: Apache-2.0 Imports: 35 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ParamsMap added in v0.11.0

func ParamsMap(instance *kudoapi.Instance, operatorVersion *kudoapi.OperatorVersion) (map[string]interface{}, error)

ParamsMap generates {{ Params.* }} map of keys and values which is later used during template rendering.

func PipesMap added in v0.11.0

func PipesMap(planName string, plan *kudoapi.Plan, tasks []kudoapi.Task, emeta *engine.Metadata) (map[string]string, error)

PipesMap generates {{ Pipes.* }} map of keys and values which is later used during template rendering.

Types

type InClusterResolver added in v0.15.0

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

InClusterResolver is a server-side package resolver for packages that are already installed in the cluster. It is a simpler version of the client-side pkg/kudoctl/packages/resolver/resolver_incluster.go. The client-side version would search the installed OperatorVersions and try to resolve any valid combination of the operator name and its app and operator versions, same as we would search in the repository. This resolver is only used to make sure that all the dependencies of an operator exist and that referenced operator versions are installed and uniquely identifiable by the passed operator name, appVersion and operatorVersion parameters (see pkg/apis/kudo/v1beta1/operatorversion_types_helpers.go::OperatorVersionName method). Also, note that unlike other resolvers, the resulting 'packages.Package' struct does not contain package 'packages.Files' (we don't have the original files) and doesn't have an Instance resource because multiple Instances of the same Operator/OperatorVersion can exist.

func (InClusterResolver) Resolve added in v0.15.0

func (r InClusterResolver) Resolve(name string, appVersion string, operatorVersion string) (*packages.Package, error)

type Reconciler added in v0.7.0

type Reconciler struct {
	client.Client
	Discovery discovery.CachedDiscoveryInterface
	Config    *rest.Config
	Recorder  record.EventRecorder
	Scheme    *runtime.Scheme
}

Reconciler reconciles an Instance object.

func (*Reconciler) Reconcile added in v0.7.0

func (r *Reconciler) Reconcile(request ctrl.Request) (ctrl.Result, error)

Reconcile is the main controller method that gets called every time something about the instance changes

+-------------------------------+
| Query state of Instance       |
| and OperatorVersion           |
+-------------------------------+
               |
               v
+-------------------------------+
| Execute the scheduled plan    |
| if exists                     |
+-------------------------------+
               |
               v
+-------------------------------+
| Update instance with new      |
| state of the execution        |
+-------------------------------+
               |
               v
+-------------------------------+
| Update readiness even if      |
| no plan running               |
+-------------------------------+

Automatically generate RBAC rules to allow the Controller to read and write Deployments

func (*Reconciler) SetupWithManager added in v0.7.0

func (r *Reconciler) SetupWithManager(
	mgr ctrl.Manager) error

SetupWithManager registers this reconciler with the controller manager

Jump to

Keyboard shortcuts

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