workloadmanager

package
v1.7.0 Latest Latest
Warning

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

Go to latest
Published: May 6, 2026 License: Apache-2.0 Imports: 22 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ApplyTweaksToDeployment

func ApplyTweaksToDeployment(deployment *v1.Deployment, tweaks []*v1beta1.Tweaks) error

TODO: optimize implementation of applying tweaks

func ApplyTweaksToStatefulSet

func ApplyTweaksToStatefulSet(statefulset *v1.StatefulSet, tweaks []*v1beta1.Tweaks) error

func CombineMaps

func CombineMaps(maps ...map[string]string) map[string]string

func CreateNodeSelectorByNodepoolName

func CreateNodeSelectorByNodepoolName(nodepool string) map[string]string

func GetNodePoolTweaksFromYurtAppSet

func GetNodePoolTweaksFromYurtAppSet(
	cli client.Client,
	nodepoolName string,
	yas *v1beta1.YurtAppSet,
) (tweaksList []*v1beta1.Tweaks, err error)

func GetNodePoolsFromYurtAppSet

func GetNodePoolsFromYurtAppSet(cli client.Client, yas *v1beta1.YurtAppSet) (npNames sets.Set[string], err error)

GetNodePoolsFromYurtAppSet selected NodePools from YurtAppSet return sets for deduplication of NodePools

func GetWorkloadHash

func GetWorkloadHash(workload metav1.Object) string

func GetWorkloadRefNodePool

func GetWorkloadRefNodePool(workload metav1.Object) string

func IsNodePoolRelatedToYurtAppSet

func IsNodePoolRelatedToYurtAppSet(nodePool client.Object, yas *v1beta1.YurtAppSet) bool

func NewLabelSelectorForYurtAppSet

func NewLabelSelectorForYurtAppSet(yas *v1beta1.YurtAppSet) (*metav1.LabelSelector, error)

Get label selector from yurtappset generated from yas name

func StringsContain

func StringsContain(strs []string, str string) bool

Types

type DeploymentManager

type DeploymentManager struct {
	client.Client
	Scheme *runtime.Scheme
}

func (*DeploymentManager) ApplyTemplate

func (d *DeploymentManager) ApplyTemplate(yas *v1beta1.YurtAppSet, nodepoolName, revision string, workload *appsv1.Deployment) error

ApplyTemplate updates the object to the latest revision, depending on the YurtAppSet.

func (*DeploymentManager) Create

func (d *DeploymentManager) Create(yas *v1beta1.YurtAppSet, nodepoolName, revision string) error

func (*DeploymentManager) Delete

func (d *DeploymentManager) Delete(yas *v1beta1.YurtAppSet, workload metav1.Object) error

func (*DeploymentManager) GetTemplateType

func (d *DeploymentManager) GetTemplateType() TemplateType

func (*DeploymentManager) List

func (*DeploymentManager) Update

func (d *DeploymentManager) Update(yas *v1beta1.YurtAppSet, workload metav1.Object, nodepoolName, revision string) error

type StatefulSetManager

type StatefulSetManager struct {
	client.Client
	Scheme *runtime.Scheme
}

func (*StatefulSetManager) ApplyTemplate

func (s *StatefulSetManager) ApplyTemplate(yas *v1beta1.YurtAppSet, nodepoolName, revision string, workload *appsv1.StatefulSet) error

func (*StatefulSetManager) Create

func (s *StatefulSetManager) Create(yas *v1beta1.YurtAppSet, nodepoolName, revision string) error

func (*StatefulSetManager) Delete

func (s *StatefulSetManager) Delete(yas *v1beta1.YurtAppSet, workload metav1.Object) error

func (*StatefulSetManager) GetTemplateType

func (s *StatefulSetManager) GetTemplateType() TemplateType

func (*StatefulSetManager) List

func (*StatefulSetManager) Update

func (s *StatefulSetManager) Update(yas *v1beta1.YurtAppSet, workload metav1.Object, nodepoolName, revision string) error

type TemplateType

type TemplateType string
const (
	StatefulSetTemplateType TemplateType = "StatefulSet"
	DeploymentTemplateType  TemplateType = "Deployment"
)

type WorkloadManager

type WorkloadManager interface {
	GetTemplateType() TemplateType

	List(yas *v1beta1.YurtAppSet) ([]metav1.Object, error)
	Create(yas *v1beta1.YurtAppSet, nodepoolName, revision string) error
	Update(yas *v1beta1.YurtAppSet, workload metav1.Object, nodepoolName, revision string) error
	Delete(yas *v1beta1.YurtAppSet, workload metav1.Object) error
}

Jump to

Keyboard shortcuts

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