kwok

package
v1.0.4 Latest Latest
Warning

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

Go to latest
Published: Oct 3, 2024 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ConstructInstanceTypes

func ConstructInstanceTypes() ([]*cloudprovider.InstanceType, error)

ConstructInstanceTypes create many instance types based on the embedded instance type data

Types

type CloudProvider

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

func NewCloudProvider

func NewCloudProvider(ctx context.Context, kubeClient client.Client, instanceTypes []*cloudprovider.InstanceType) *CloudProvider

func (CloudProvider) Create

func (c CloudProvider) Create(ctx context.Context, nodeClaim *v1.NodeClaim) (*v1.NodeClaim, error)

func (CloudProvider) Delete

func (c CloudProvider) Delete(ctx context.Context, nodeClaim *v1.NodeClaim) error

func (CloudProvider) Get

func (c CloudProvider) Get(ctx context.Context, providerID string) (*v1.NodeClaim, error)

func (CloudProvider) GetInstanceTypes

func (c CloudProvider) GetInstanceTypes(ctx context.Context, nodePool *v1.NodePool) ([]*cloudprovider.InstanceType, error)

Return the hard-coded instance types.

func (CloudProvider) GetSupportedNodeClasses added in v0.34.7

func (c CloudProvider) GetSupportedNodeClasses() []status.Object

func (CloudProvider) IsDrifted

func (c CloudProvider) IsDrifted(ctx context.Context, nodeClaim *v1.NodeClaim) (cloudprovider.DriftReason, error)

Return nothing since there's no cloud provider drift.

func (CloudProvider) List

func (c CloudProvider) List(ctx context.Context) ([]*v1.NodeClaim, error)

func (CloudProvider) Name

func (c CloudProvider) Name() string

type InstanceTypeOptions

type InstanceTypeOptions struct {
	Name             string              `json:"name"`
	Offerings        KWOKOfferings       `json:"offerings"`
	Architecture     string              `json:"architecture"`
	OperatingSystems []corev1.OSName     `json:"operatingSystems"`
	Resources        corev1.ResourceList `json:"resources"`
	// contains filtered or unexported fields
}

type KWOKOffering added in v1.0.0

type KWOKOffering struct {
	cloudprovider.Offering
	Requirements []corev1.NodeSelectorRequirement
}

type KWOKOfferings added in v1.0.0

type KWOKOfferings []KWOKOffering

Wrap cloudprovider.Offerings with NodeSelectorRequirements for post-json processing translation

Jump to

Keyboard shortcuts

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