config

package
v0.0.1 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AuthScheme

type AuthScheme string
const (
	// The secret referenced needs to have the following key/value defined:
	// 	- privateKey
	SingleToken AuthScheme = "token"

	// The secret referenced needs to have two pair of key/values defined:
	//	- accessKey
	//	- secretToken
	KeyPair AuthScheme = "keyPair"
)

+kubebuilder:object:generate=true

type Credentials

type Credentials struct {
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:Enum=token;keyPair
	AuthScheme AuthScheme           `json:"authScheme"`
	SecretRef  LocalObjectReference `json:"secretRef"`

	// +optional
	Name *string `json:"path,omitempty"`
}

+kubebuilder:object:generate=true

func (*Credentials) DeepCopy

func (in *Credentials) DeepCopy() *Credentials

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

func (*Credentials) DeepCopyInto

func (in *Credentials) DeepCopyInto(out *Credentials)

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

func (*Credentials) Default

func (c *Credentials) Default()

func (*Credentials) IsValidForSecret

func (c *Credentials) IsValidForSecret(secret *core.Secret) bool

type DynamicValues

type DynamicValues struct {
	ValuesFrom SourceRef   `json:"valuesFrom"`
	Items      []KeyToPath `json:"items,omitempty"`
}

DynamicValues are values provided by the user and that will be passed down to the builder. These can range from simple key/value attributes to more secretive values like credentials. It's important for the user to recognize the threat level of the information it passes to the builder and need to use `SourceRef` accordingly. For example, if the information is secretive (like credentials), `SecretRef` should be used.

Most of those DynamicValues are provided by the user but it's not the only scenario. ImportDirectories includes DynamicValues as an example where those values are short-lived credentials populated by the operator itself. You can read more about those short-lived credentials by looking up `ImportContent`.

Those values will be mounted to the builder's container as volumes and each of the `Items` will be stored as readonly files in the container.

+kubebuilder:object:generate=true

func (*DynamicValues) DeepCopy

func (in *DynamicValues) DeepCopy() *DynamicValues

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

func (*DynamicValues) DeepCopyInto

func (in *DynamicValues) DeepCopyInto(out *DynamicValues)

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

func (*DynamicValues) SourceRefIsValid

func (upv *DynamicValues) SourceRefIsValid() bool

type KeyToPath

type KeyToPath struct {
	Key string `json:"key"`

	//+optional
	Path *string `json:"path,omitempty"`
}

+kubebuilder:object:generate=true

func (*KeyToPath) DeepCopy

func (in *KeyToPath) DeepCopy() *KeyToPath

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

func (*KeyToPath) DeepCopyInto

func (in *KeyToPath) DeepCopyInto(out *KeyToPath)

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

func (*KeyToPath) Default

func (kp *KeyToPath) Default()

type LocalObjectReference

type LocalObjectReference struct {
	Name string `json:"name"`
}

This is a copy of the core Kubernetes `LocalObjectReference` to make sure the Name is required for this structure to exists.

type SourceRef

type SourceRef struct {
	ConfigMapRef *LocalObjectReference `json:"configMapRef,omitempty"`
	SecretRef    *LocalObjectReference `json:"secretRef,omitempty"`
}

+kubebuilder:object:generate=true

func (*SourceRef) DeepCopy

func (in *SourceRef) DeepCopy() *SourceRef

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

func (*SourceRef) DeepCopyInto

func (in *SourceRef) DeepCopyInto(out *SourceRef)

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