override

package
v0.0.0-...-5ee5d88 Latest Latest
Warning

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

Go to latest
Published: Apr 18, 2024 License: Apache-2.0 Imports: 42 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Registry   = "Registry"
	Repository = "Repository"
	Tag        = "Tag"
	Digest     = "Digest"
)
View Source
const (
	ControllerName                       = "overridepolicy-controller"
	EventReasonMatchOverridePolicyFailed = "MatchOverridePolicyFailed"
	EventReasonParseOverridePolicyFailed = "ParseOverridePolicyFailed"
	EventReasonOverridePolicyApplied     = "OverridePolicyApplied"
)
View Source
const (
	OperatorAdd     = "add"
	OperatorRemove  = "remove"
	OperatorReplace = "replace"

	OperatorAddIfAbsent = "addIfAbsent"
	OperatorAppend      = "append"
	OperatorOverwrite   = "overwrite"
	OperatorDelete      = "delete"

	ImageTarget       = "image"
	CommandTarget     = "command"
	ArgsTarget        = "args"
	AnnotationsTarget = "annotations"
	LabelsTarget      = "labels"

	InitContainers = "initContainers"
	Containers     = "containers"
)

Variables

View Source
var (
	OverridePolicyNameLabel        = common.DefaultPrefix + "override-policy-name"
	ClusterOverridePolicyNameLabel = common.DefaultPrefix + "cluster-override-policy-name"
)
View Source
var PrefixedControllerName = common.DefaultPrefix + ControllerName

Functions

func GetStringFromUnstructuredObj

func GetStringFromUnstructuredObj(input *unstructured.Unstructured, path string) (string, error)

func SplitRegistryAndRepository

func SplitRegistryAndRepository(name string) (registry, repository string)

SplitRegistryAndRepository refers to https://github.com/distribution/distribution/blob/v2.7.1/reference/normalize.go#L62 The reason for using this function here is due to this discussion: https://stackoverflow.com/a/37867949 If we use reference.Domain() and reference.Path() for parsing, the following problems will occur:

  • "ealen/echo-server" is resolved to <registry: "ealen", repository : "echo-server">

Using the follow function ensures that the above image is parsed into the following content:

  • "ealen/echo-server" is resolved to <registry: "", repository : "ealen/echo-server">

Types

type Controller

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

Controller adds override rules specified in OverridePolicies to federated objects.

func NewOverridePolicyController

func NewOverridePolicyController(
	kubeClient kubernetes.Interface,
	fedClient fedclient.Interface,
	fedInformerFactory fedinformers.SharedInformerFactory,
	informerManager informermanager.InformerManager,
	metrics stats.Metrics,
	logger klog.Logger,
	workerCount int,
) (*Controller, error)

func (*Controller) HasSynced

func (c *Controller) HasSynced() bool

func (*Controller) IsControllerReady

func (c *Controller) IsControllerReady() bool

func (*Controller) Run

func (c *Controller) Run(ctx context.Context)

type Image

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

func ParseImage

func ParseImage(fullName string) (*Image, error)

ParseImage returns an Image from the given string.

func (*Image) OperateDigest

func (i *Image) OperateDigest(operator, value string) error

func (*Image) OperateRegistry

func (i *Image) OperateRegistry(operator, value string) error

func (*Image) OperateRepository

func (i *Image) OperateRepository(operator, value string) error

func (*Image) OperateTag

func (i *Image) OperateTag(operator, value string) error

func (*Image) String

func (i *Image) String() string

Jump to

Keyboard shortcuts

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