v1beta1

package
v0.6.0 Latest Latest
Warning

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

Go to latest
Published: Nov 18, 2025 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Overview

Package v1beta1 contains the input type for this Function +kubebuilder:object:generate=true +groupName=tag-manager.fn.crossplane.io +versionName=v1beta1

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AddTag

type AddTag struct {
	// Type determines where tags are sourced from. FromValue are inline
	// to the composition. FromCompositeFieldPath fetches tags from a field in
	// the composite resource
	// +kubebuilder:validation:Enum=FromCompositeFieldPath;FromValue
	// +optional
	Type TagManagerType `json:"type,omitempty"`

	// FromFieldPath if type is FromCompositeFieldPath, get additional tags
	// from the field in the Composite (like spec.parameters.tags)
	// +optional
	FromFieldPath *string `json:"fromFieldPath,omitempty"`

	// Tags are tags to add to the resource in the form of a map
	// + optional
	Tags Tags `json:"tags,omitempty"`

	// Policy determines what tag value to use in case there already is a matching tag key
	// in the desired resource. Replace will overwrite the value, while Retain will keep
	// the existing value in the desired resource.
	// +kubebuilder:validation:Enum=Replace;Retain
	// +optional
	Policy TagManagerPolicy `json:"policy,omitempty"`
}

AddTag defines tags that should be added to every resource.

func (*AddTag) DeepCopy

func (in *AddTag) DeepCopy() *AddTag

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddTag.

func (*AddTag) DeepCopyInto

func (in *AddTag) DeepCopyInto(out *AddTag)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*AddTag) GetPolicy

func (a *AddTag) GetPolicy() TagManagerPolicy

GetPolicy returns the add tag policy.

func (*AddTag) GetType

func (a *AddTag) GetType() TagManagerType

GetType returns the type of the managed tag.

type IgnoreTag

type IgnoreTag struct {
	// Type determines where tag keys are sourced from. FromValue are inline
	// to the composition. FromCompositeFieldPath fetches keys from a field in
	// the composite resource
	// +kubebuilder:validation:Enum=FromCompositeFieldPath;FromValue
	Type TagManagerType `json:"type"`

	// FromFieldPath if type is FromCompositeFieldPath, get keys to ignore
	// from the field in the Composite (like spec.parameters.ignoreTags)
	// +optional
	FromFieldPath *string `json:"fromFieldPath,omitempty"`

	// Keys are tag keys to ignore for the FromValue type
	// +optional
	Keys []string `json:"keys,omitempty"`

	// +kubebuilder:validation:Enum=Replace;Retain
	// +optional
	Policy TagManagerPolicy `json:"policy,omitempty"`
}

IgnoreTag is a tag that is "ignored" by setting the desired value to the observed value.

func (*IgnoreTag) DeepCopy

func (in *IgnoreTag) DeepCopy() *IgnoreTag

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IgnoreTag.

func (*IgnoreTag) DeepCopyInto

func (in *IgnoreTag) DeepCopyInto(out *IgnoreTag)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*IgnoreTag) GetPolicy

func (i *IgnoreTag) GetPolicy() TagManagerPolicy

GetPolicy returns the tag policy.

func (*IgnoreTag) GetType

func (i *IgnoreTag) GetType() TagManagerType

GetType returns the type of the managed tag.

type IgnoreTags

type IgnoreTags []IgnoreTag

IgnoreTags is a list of IgnoreTag settings.

func (IgnoreTags) DeepCopy

func (in IgnoreTags) DeepCopy() IgnoreTags

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IgnoreTags.

func (IgnoreTags) DeepCopyInto

func (in IgnoreTags) DeepCopyInto(out *IgnoreTags)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ManagedTags

type ManagedTags struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata"`

	// AddTags are fields that will be added to every composed resource.
	// +optional
	AddTags []AddTag `json:"addTags,omitempty"`

	// IgnoreTags is a list of tag keys to ignore if set on the
	// resource outside of Crossplane
	// +optional
	IgnoreTags IgnoreTags `json:"ignoreTags,omitempty"`

	// IgnoreTags is a list of tag keys to remove from the resource.
	// +optional
	RemoveTags RemoveTags `json:"removeTags,omitempty"`
}

ManagedTags can be used to provide input to this Function. +kubebuilder:object:root=true +kubebuilder:storageversion +kubebuilder:resource:categories=crossplane

func (*ManagedTags) DeepCopy

func (in *ManagedTags) DeepCopy() *ManagedTags

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedTags.

func (*ManagedTags) DeepCopyInto

func (in *ManagedTags) DeepCopyInto(out *ManagedTags)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ManagedTags) DeepCopyObject

func (in *ManagedTags) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RemoveTag

type RemoveTag struct {
	// Type determines where tag keys are sourced from. FromValue are inline
	// to the composition. FromCompositeFieldPath fetches keys from a field in
	// the composite resource
	// +kubebuilder:validation:Enum=FromCompositeFieldPath;FromValue
	Type TagManagerType `json:"type"`

	// FromFieldPath if type is FromCompositeFieldPath, get keys to remove
	// from the field in the Composite (like spec.parameters.removeTags)
	// +optional
	FromFieldPath *string `json:"fromFieldPath,omitempty"`

	// Keys are tag keys to ignore for the FromValue type
	// +optional
	Keys []string `json:"keys,omitempty"`
}

RemoveTag is a tag that removed from the desired state.

func (*RemoveTag) DeepCopy

func (in *RemoveTag) DeepCopy() *RemoveTag

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemoveTag.

func (*RemoveTag) DeepCopyInto

func (in *RemoveTag) DeepCopyInto(out *RemoveTag)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RemoveTag) GetType

func (a *RemoveTag) GetType() TagManagerType

GetType returns the type of the managed tag.

type RemoveTags

type RemoveTags []RemoveTag

RemoveTags is an array of RemoveTag settings.

func (RemoveTags) DeepCopy

func (in RemoveTags) DeepCopy() RemoveTags

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemoveTags.

func (RemoveTags) DeepCopyInto

func (in RemoveTags) DeepCopyInto(out *RemoveTags)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TagManagerPolicy

type TagManagerPolicy string

TagManagerPolicy sets what happens when the tag exists in the resource.

const (
	// ExistingTagPolicyReplace replaces the desired value of a tag if the observed tag differs.
	ExistingTagPolicyReplace TagManagerPolicy = "Replace"
	// ExistingTagPolicyRetain retains the desired value of a tag if the observed tag differs.
	ExistingTagPolicyRetain TagManagerPolicy = "Retain"
)

type TagManagerType

type TagManagerType string

TagManagerType configures the source of the input tags.

const (
	// FromCompositeFieldPath instructs the function to get tag settings from the Composite fieldpath.
	FromCompositeFieldPath TagManagerType = "FromCompositeFieldPath"
	// FromValue are static values set in the function's input.
	FromValue TagManagerType = "FromValue"
)

type Tags

type Tags map[string]string

Tags contains a map tags.

func (Tags) DeepCopy

func (in Tags) DeepCopy() Tags

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Tags.

func (Tags) DeepCopyInto

func (in Tags) DeepCopyInto(out *Tags)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

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