mutator

package
v1.0.3 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ApplyFluidObjectSpecs

func ApplyFluidObjectSpecs(pod common.FluidObject, specs *MutatingPodSpecs) error

func FindExtraArgsFromMetadata added in v1.0.2

func FindExtraArgsFromMetadata(metaObj metav1.ObjectMeta, platform string) (extraArgs map[string]string)

FindExtraArgsFromMetadata tries to get extra build args for a given mutator from a metaObj. For any platform-specific mutator, its extra args should be key-values and defined in the format of "{platform}.fluid.io/{key}={value}" in metaObj.annotaions.

Types

type DefaultMutator

type DefaultMutator struct {
	Specs *MutatingPodSpecs
	// contains filtered or unexported fields
}

TODO: DefaultMutator will be rewritten with polymorphism withe platform-specific mutation logic

func (*DefaultMutator) GetMutatedPodSpecs

func (mutator *DefaultMutator) GetMutatedPodSpecs() *MutatingPodSpecs

func (*DefaultMutator) MutateWithRuntimeInfo

func (mutator *DefaultMutator) MutateWithRuntimeInfo(pvcName string, runtimeInfo base.RuntimeInfoInterface, nameSuffix string) error

func (*DefaultMutator) PostMutate

func (mutator *DefaultMutator) PostMutate() error

type MutatingPodSpecs

type MutatingPodSpecs struct {
	Volumes        []corev1.Volume
	VolumeMounts   []corev1.VolumeMount
	Containers     []corev1.Container
	InitContainers []corev1.Container
	MetaObj        metav1.ObjectMeta
}

func CollectFluidObjectSpecs

func CollectFluidObjectSpecs(pod common.FluidObject) (*MutatingPodSpecs, error)

type Mutator

type Mutator interface {
	MutateWithRuntimeInfo(pvcName string, runtimeInfo base.RuntimeInfoInterface, nameSuffix string) error

	PostMutate() error

	GetMutatedPodSpecs() *MutatingPodSpecs
}

Mutator is the fuse sidecar mutator for platform-specific mutation logic.

func BuildMutator

func BuildMutator(args MutatorBuildArgs, platform string) (Mutator, error)

func NewDefaultMutator

func NewDefaultMutator(args MutatorBuildArgs) Mutator

func NewUnprivilegedMutator

func NewUnprivilegedMutator(opts MutatorBuildArgs) Mutator

type MutatorBuildArgs added in v1.0.2

type MutatorBuildArgs struct {
	Client    client.Client
	Log       logr.Logger
	Specs     *MutatingPodSpecs
	Options   common.FuseSidecarInjectOption
	ExtraArgs map[string]string
}

func (MutatorBuildArgs) String added in v1.0.2

func (args MutatorBuildArgs) String() string

type UnprivilegedMutator

type UnprivilegedMutator struct {
	// UnprivilegedMutator inherits from DefaultMutator
	DefaultMutator
}

func (*UnprivilegedMutator) GetMutatedPodSpecs

func (mutator *UnprivilegedMutator) GetMutatedPodSpecs() *MutatingPodSpecs

func (*UnprivilegedMutator) MutateWithRuntimeInfo

func (mutator *UnprivilegedMutator) MutateWithRuntimeInfo(pvcName string, runtimeInfo base.RuntimeInfoInterface, nameSuffix string) error

func (*UnprivilegedMutator) PostMutate

func (mutator *UnprivilegedMutator) PostMutate() error

Jump to

Keyboard shortcuts

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