v1alpha1

package
v0.18.0 Latest Latest
Warning

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

Go to latest
Published: Jan 6, 2023 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the vault.finleap.cloud v1alpha1 API group +kubebuilder:object:generate=true +groupName=vault.finleap.cloud

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "vault.finleap.cloud", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type AnyVaultSecretData

type AnyVaultSecretData interface {
	GetName() string
	GetLocation() *VaultSecretLocation
	GetGenerator() *VaultSecretGenerator
	GetCollisionStrategy() FieldCollisionStrategy
}

+kubebuilder:object:generate=false

type FieldCollisionStrategy

type FieldCollisionStrategy string

+kubebuilder:validation:Enum=Ignore;Overwrite;Error

const (
	// Errors if a field on this vault secret already exists on the resulting K8s secret.
	ErrorOnCollision FieldCollisionStrategy = "Error"

	// Value from this vault secret will be ignored if the same field already exists on resulting K8s secret.
	IgnoreCollision FieldCollisionStrategy = "Ignore"

	// Value from this vault secret will override an already existing field on the resulting K8s secret.
	OverwriteCollision FieldCollisionStrategy = "Overwrite"
)

type VaultSecret

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

	Spec   VaultSecretSpec   `json:"spec,omitempty"`
	Status VaultSecretStatus `json:"status,omitempty"`
}

VaultSecret is the Schema for the vaultsecrets API

func (*VaultSecret) DeepCopy

func (in *VaultSecret) DeepCopy() *VaultSecret

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

func (*VaultSecret) DeepCopyInto

func (in *VaultSecret) DeepCopyInto(out *VaultSecret)

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

func (*VaultSecret) DeepCopyObject

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

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

func (*VaultSecret) SetupWebhookWithManager

func (r *VaultSecret) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*VaultSecret) ValidateCreate

func (r *VaultSecret) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*VaultSecret) ValidateDelete

func (r *VaultSecret) ValidateDelete() error

func (*VaultSecret) ValidateUpdate

func (r *VaultSecret) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type VaultSecretData

type VaultSecretData struct {
	// Associated key name for the created secret data.
	// +kubebuilder:validation:MinLength=1
	Name string `json:"name"`
	//
	// +optional
	Generator *VaultSecretGenerator `json:"generator,omitempty"`
	//
	// +optional
	Location *VaultSecretLocation `json:"location,omitempty"`
	//
	// +optional
	Variables []VaultSecretVariable `json:"variables,omitempty"`
	//
	// +optional
	Template string `json:"template,omitempty"`
}

Definition of a single data definition

func (*VaultSecretData) DeepCopy

func (in *VaultSecretData) DeepCopy() *VaultSecretData

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

func (*VaultSecretData) DeepCopyInto

func (in *VaultSecretData) DeepCopyInto(out *VaultSecretData)

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

func (*VaultSecretData) GetCollisionStrategy

func (d *VaultSecretData) GetCollisionStrategy() FieldCollisionStrategy

func (*VaultSecretData) GetGenerator

func (d *VaultSecretData) GetGenerator() *VaultSecretGenerator

func (*VaultSecretData) GetLocation

func (d *VaultSecretData) GetLocation() *VaultSecretLocation

func (*VaultSecretData) GetName

func (d *VaultSecretData) GetName() string

type VaultSecretDataRef

type VaultSecretDataRef struct {
	//
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:MinLength=1
	Path string `json:"path"`
	//
	// +optional
	Version int `json:"version"`
	// Define how collisions with secrets from other vault references should be handled.
	// Valid values are:
	// - "Error" (default): Errors if a field on this vault secret already exists on the resulting K8s secret;
	// - "Ignore": Value from this vault secret will be ignored if the same field already exists on resulting K8s secret;
	// - "Overwrite": Value from this vault secret will override an already existing field on the resulting K8s secret
	// +optional
	// +kubebuilder:validation:Enum=Error;Ignore;Overwrite
	CollisionStrategy FieldCollisionStrategy `json:"collisionStrategy,omitempty"`
}

Definition of a vault path reference to gather secrets from.

func (*VaultSecretDataRef) DeepCopy

func (in *VaultSecretDataRef) DeepCopy() *VaultSecretDataRef

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

func (*VaultSecretDataRef) DeepCopyInto

func (in *VaultSecretDataRef) DeepCopyInto(out *VaultSecretDataRef)

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

func (*VaultSecretDataRef) GetCollisionStrategy

func (d *VaultSecretDataRef) GetCollisionStrategy() FieldCollisionStrategy

func (*VaultSecretDataRef) GetGenerator

func (d *VaultSecretDataRef) GetGenerator() *VaultSecretGenerator

func (*VaultSecretDataRef) GetLocation

func (d *VaultSecretDataRef) GetLocation() *VaultSecretLocation

func (*VaultSecretDataRef) GetName

func (d *VaultSecretDataRef) GetName() string

type VaultSecretGenerator

type VaultSecretGenerator struct {
	//
	// +kubebuilder:validation:Required
	Name VaultSecretGeneratorName `json:"name"`
	//
	// +kubebuilder:validation:Required
	Args []int32 `json:"args"`
}

Configuration of secret generation

func (*VaultSecretGenerator) DeepCopy

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

func (*VaultSecretGenerator) DeepCopyInto

func (in *VaultSecretGenerator) DeepCopyInto(out *VaultSecretGenerator)

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

type VaultSecretGeneratorName

type VaultSecretGeneratorName string

+kubebuilder:validation:Enum=string;bytes;password;rsa;ecdsa;uuid

type VaultSecretList

type VaultSecretList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []VaultSecret `json:"items"`
}

VaultSecretList contains a list of VaultSecret

func (*VaultSecretList) DeepCopy

func (in *VaultSecretList) DeepCopy() *VaultSecretList

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

func (*VaultSecretList) DeepCopyInto

func (in *VaultSecretList) DeepCopyInto(out *VaultSecretList)

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

func (*VaultSecretList) DeepCopyObject

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

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

type VaultSecretLocation

type VaultSecretLocation struct {
	//
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:MinLength=1
	Path string `json:"path"`
	//
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:MinLength=1
	Field string `json:"field"`
	//
	// +optional
	Version int `json:"version"`
	//
	// +optional
	IsBinary bool `json:"isBinary"`
}

func (*VaultSecretLocation) DeepCopy

func (in *VaultSecretLocation) DeepCopy() *VaultSecretLocation

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

func (*VaultSecretLocation) DeepCopyInto

func (in *VaultSecretLocation) DeepCopyInto(out *VaultSecretLocation)

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

type VaultSecretSpec

type VaultSecretSpec struct {
	// Optional name of secret which is created by this object.
	// +optional
	SecretName string `json:"secretName,omitempty"`
	// Optional type of secret which is created by this object.
	// +optional
	SecretType corev1.SecretType `json:"secretType,omitempty"`
	// Array of data definitions for the secret.
	// +optional
	Data []VaultSecretData `json:"data,omitempty"`
	// Array of vault path references where to gather data from for the secret.
	// +optional
	DataFrom []VaultSecretDataRef `json:"dataFrom,omitempty"`
	// Array of labels for the created secret.
	// +optional
	SecretLabels map[string]string `json:"secretLabels,omitempty"`
}

VaultSecretSpec defines the desired state of VaultSecret

func (*VaultSecretSpec) DeepCopy

func (in *VaultSecretSpec) DeepCopy() *VaultSecretSpec

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

func (*VaultSecretSpec) DeepCopyInto

func (in *VaultSecretSpec) DeepCopyInto(out *VaultSecretSpec)

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

type VaultSecretStatus

type VaultSecretStatus struct {
	// Reference to the created secret object.
	// +optional
	SecretObject *corev1.ObjectReference `json:"active,omitempty"`
}

VaultSecretStatus defines the observed state of VaultSecret

func (*VaultSecretStatus) DeepCopy

func (in *VaultSecretStatus) DeepCopy() *VaultSecretStatus

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

func (*VaultSecretStatus) DeepCopyInto

func (in *VaultSecretStatus) DeepCopyInto(out *VaultSecretStatus)

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

type VaultSecretVariable

type VaultSecretVariable struct {
	//
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:MinLength=1
	Name string `json:"name"`
	//
	// +optional
	Generator *VaultSecretGenerator `json:"generator,omitempty"`
	//
	// +kubebuilder:validation:Required
	Location *VaultSecretLocation `json:"location,omitempty"`
}

func (*VaultSecretVariable) DeepCopy

func (in *VaultSecretVariable) DeepCopy() *VaultSecretVariable

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

func (*VaultSecretVariable) DeepCopyInto

func (in *VaultSecretVariable) DeepCopyInto(out *VaultSecretVariable)

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

func (*VaultSecretVariable) GetCollisionStrategy

func (d *VaultSecretVariable) GetCollisionStrategy() FieldCollisionStrategy

func (*VaultSecretVariable) GetGenerator

func (d *VaultSecretVariable) GetGenerator() *VaultSecretGenerator

func (*VaultSecretVariable) GetLocation

func (d *VaultSecretVariable) GetLocation() *VaultSecretLocation

func (*VaultSecretVariable) GetName

func (d *VaultSecretVariable) GetName() string

Jump to

Keyboard shortcuts

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