provisioners

package
v0.0.0-...-162ddea Latest Latest
Warning

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

Go to latest
Published: Dec 1, 2023 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const (
	TagClusterName            = "instancegroups.keikoproj.io/ClusterName"
	TagInstanceGroupName      = "instancegroups.keikoproj.io/InstanceGroup"
	TagInstanceGroupNamespace = "instancegroups.keikoproj.io/Namespace"
	TagClusterOwnershipFmt    = "kubernetes.io/cluster/%s"
	TagKubernetesCluster      = "KubernetesCluster"

	ConfigurationExclusionAnnotationKey = "instancemgr.keikoproj.io/config-excluded"
	UpgradeLockedAnnotationKey          = "instancemgr.keikoproj.io/lock-upgrades"
)

Variables

View Source
var (
	EKSConfigurationPath  = "spec.eks.configuration"
	EKSTagsPath           = fmt.Sprintf("%v.tags", EKSConfigurationPath)
	EKSVolumesPath        = fmt.Sprintf("%v.volumes", EKSConfigurationPath)
	EKSLifecycleHooksPath = fmt.Sprintf("%v.lifecycleHooks", EKSConfigurationPath)
	EKSUserDataPath       = fmt.Sprintf("%v.userData", EKSConfigurationPath)

	// MergeSchema defines the key to merge by
	MergeSchema = map[string]string{
		EKSTagsPath:           "key",
		EKSVolumesPath:        "name",
		EKSLifecycleHooksPath: "name",
		EKSUserDataPath:       "name",
	}
)

Functions

func IsRetryable

func IsRetryable(instanceGroup *v1alpha1.InstanceGroup) bool

func Merge

func Merge(x, y interface{}, path string, override bool) interface{}

Types

type Conditional

type Conditional struct {
	AnnotationSelector string                 `yaml:"annotationSelector,omitempty"`
	Defaults           map[string]interface{} `yaml:"defaults,omitempty"`
}

type ProvisionerConfiguration

type ProvisionerConfiguration struct {
	Boundaries    ResourceFieldBoundary
	Defaults      map[string]interface{}
	Conditionals  []Conditional
	InstanceGroup *v1alpha1.InstanceGroup
}

func NewProvisionerConfiguration

func NewProvisionerConfiguration(config *corev1.ConfigMap, instanceGroup *v1alpha1.InstanceGroup) (*ProvisionerConfiguration, error)

func (*ProvisionerConfiguration) SetDefaults

func (c *ProvisionerConfiguration) SetDefaults() error

func (*ProvisionerConfiguration) Unmarshal

func (c *ProvisionerConfiguration) Unmarshal(cm *corev1.ConfigMap) error

type ProvisionerInput

type ProvisionerInput struct {
	AwsWorker                  awsprovider.AwsWorker
	Kubernetes                 kubeprovider.KubernetesClientSet
	InstanceGroup              *v1alpha1.InstanceGroup
	Configuration              *corev1.ConfigMap
	Log                        logr.Logger
	ConfigRetention            int
	Metrics                    *common.MetricsCollector
	DisableWinClusterInjection bool
}

type ResourceFieldBoundary

type ResourceFieldBoundary struct {
	Restricted []string         `yaml:"restricted,omitempty"`
	Shared     SharedBoundaries `yaml:"shared,omitempty"`
}

type SelectableAnnotations

type SelectableAnnotations struct {
	Annotations map[string]string
}

func (*SelectableAnnotations) Get

func (a *SelectableAnnotations) Get(label string) (value string)

Get returns the value for the provided label.

func (*SelectableAnnotations) Has

func (a *SelectableAnnotations) Has(label string) (exists bool)

type SharedBoundaries

type SharedBoundaries struct {
	MergeOverride []string `yaml:"mergeOverride,omitempty"`
	Merge         []string `yaml:"merge,omitempty"`
	Replace       []string `yaml:"replace,omitempty"`
}

Directories

Path Synopsis
eks

Jump to

Keyboard shortcuts

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