solver

package
v0.23.1 Latest Latest
Warning

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

Go to latest
Published: Feb 6, 2021 License: Apache-2.0 Imports: 16 Imported by: 1

Documentation

Overview

The solver package is responsible for constructing a taskqueue based on the set of resources that should be applied. This involves setting up the appropriate sequence of apply, wait and prune tasks so any dependencies between resources doesn't cause a later apply operation to fail. Currently this package assumes that the resources have already been sorted in the appropriate order. We might want to consider moving the sorting functionality into this package.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func IsCRD added in v0.10.0

func IsCRD(info *unstructured.Unstructured) bool

Types

type Options

type Options struct {
	ServerSideOptions      common.ServerSideOptions
	ReconcileTimeout       time.Duration
	Prune                  bool
	DryRunStrategy         common.DryRunStrategy
	PrunePropagationPolicy metav1.DeletionPropagation
	PruneTimeout           time.Duration
	InventoryPolicy        inventory.InventoryPolicy
}

type TaskQueueSolver

type TaskQueueSolver struct {
	PruneOptions *prune.PruneOptions
	InfoHelper   info.InfoHelper
	Factory      util.Factory
	Mapper       meta.RESTMapper
}

func (*TaskQueueSolver) BuildTaskQueue

func (t *TaskQueueSolver) BuildTaskQueue(ro resourceObjects,
	o Options) chan taskrunner.Task

BuildTaskQueue takes a set of resources in the form of info objects and constructs the task queue. The options parameter allows customization of how the task queue are built.

Jump to

Keyboard shortcuts

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