v1alpha1

package
v0.3.0 Latest Latest
Warning

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

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

Documentation

Overview

Package v1alpha1 contains ControlPlane resources. +kubebuilder:object:generate=true +groupName=spaces.upbound.io +versionName=v1alpha1

Index

Constants

View Source
const (
	// BackupCompleted indicates that the backup has completed successfully.
	ConditionTypeCompleted xpv1.ConditionType = "Completed"
	// BackupFailed indicates that the backup has failed.
	ConditionTypeFailed xpv1.ConditionType = "Failed"
)

Condition types for backups

View Source
const (
	// AllBackupsCompleted indicates that all backups have completed successfully.
	AllBackupsCompleted xpv1.ConditionReason = "AllBackupsCompleted"
	// AtLeastOneFailed indicates that at least one backup has failed.
	AtLeastOneFailed xpv1.ConditionReason = "AtLeastOneFailed"
)
View Source
const (
	// BackupFailedReason is the reason for a failed backup.
	BackupFailedReason xpv1.ConditionReason = "BackupFailed"
	// BackupRetryReason is the reason for a backup being retried.
	BackupRetryReason xpv1.ConditionReason = "BackupRetry"
	// BackupSuccessReason is the reason for a successful backup.
	BackupSuccessReason xpv1.ConditionReason = "BackupSuccess"
)
View Source
const (
	Group   = "spaces.upbound.io"
	Version = "v1alpha1"
)

Package type metadata.

View Source
const BackupScheduleLabelKey = "spaces.upbound.io/backupschedule"

BackupScheduleLabelKey is the label key used to identify Backups created by a BackupSchedule.

View Source
const SharedBackupLabelKey = "spaces.upbound.io/sharedbackup"

SharedBackupLabelKey is the label key used to identify Backups that are managed by a SharedBackup.

View Source
const SharedBackupScheduleLabelKey = "spaces.upbound.io/sharedbackupschedule"

SharedBackupScheduleLabelKey is the label key used to identify BackupSchedules that are managed by a SharedBackupSchedule.

Variables

View Source
var (
	// SchemeGroupVersion is group version used to register these objects
	SchemeGroupVersion = schema.GroupVersion{Group: Group, Version: Version}

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

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var (
	// BackupKind is the kind of a Backup.
	BackupKind = reflect.TypeOf(Backup{}).Name()
)
View Source
var (
	// BackupScheduleKind is the kind of BackupSchedule.
	BackupScheduleKind = reflect.TypeOf(BackupSchedule{}).Name()
)
View Source
var (
	// SharedBackupConfigKind is the kind of a SharedBackupConfig.
	SharedBackupConfigKind = reflect.TypeOf(SharedBackupConfig{}).Name()
)
View Source
var (
	// SharedBackupKind is the kind of a SharedBackup.
	SharedBackupKind = reflect.TypeOf(SharedBackup{}).Name()
)
View Source
var (
	// SharedBackupScheduleKind is the kind of SharedBackupSchedule.
	SharedBackupScheduleKind = reflect.TypeOf(SharedBackupSchedule{}).Name()
)
View Source
var (
	// SharedExternalSecretKind is the kind of the SharedExternalSecret.
	SharedExternalSecretKind = reflect.TypeOf(SharedExternalSecret{}).Name()
)
View Source
var (
	// SharedSecretStoreKind is the kind of the SharedSecretStore.
	SharedSecretStoreKind = reflect.TypeOf(SharedSecretStore{}).Name()
)

Functions

func BackupCompleted added in v0.3.0

func BackupCompleted() xpv1.Condition

BackupCompleted returns a condition indicating that the backup has completed successfully.

func BackupFailed added in v0.3.0

func BackupFailed(err error) xpv1.Condition

BackupFailed returns a condition indicating that the backup has failed.

func BackupRetry added in v0.3.0

func BackupRetry(msg string) xpv1.Condition

BackupRetry returns a condition indicating that the backup is being retried.

func SharedBackupCompleted added in v0.3.0

func SharedBackupCompleted() xpv1.Condition

SharedBackupCompleted returns a condition indicating that all backups have completed successfully.

func SharedBackupFailed added in v0.3.0

func SharedBackupFailed(err error) xpv1.Condition

SharedBackupFailed returns a condition indicating that at least one backup has failed.

Types

type Backup added in v0.3.0

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

	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="backup spec can not be changed after creation"
	Spec   BackupSpec   `json:"spec"`
	Status BackupStatus `json:"status,omitempty"`
}

Backup represents a single backup of a ControlPlane.

func (*Backup) DeepCopy added in v0.3.0

func (in *Backup) DeepCopy() *Backup

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

func (*Backup) DeepCopyInto added in v0.3.0

func (in *Backup) DeepCopyInto(out *Backup)

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

func (*Backup) DeepCopyObject added in v0.3.0

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

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

type BackupCredentials added in v0.3.0

type BackupCredentials struct {
	// Source of the credentials.
	// Source "Secret" requires "get" permissions on the referenced Secret.
	// +kubebuilder:validation:Enum=Secret;InjectedIdentity
	Source xpv1.CredentialsSource `json:"source"`

	// CommonCredentialSelectors provides common selectors for extracting
	// credentials.
	LocalCommonCredentialSelectors `json:",inline"`
}

BackupCredentials specifies the credentials to access the object storage.

func (*BackupCredentials) DeepCopy added in v0.3.0

func (in *BackupCredentials) DeepCopy() *BackupCredentials

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

func (*BackupCredentials) DeepCopyInto added in v0.3.0

func (in *BackupCredentials) DeepCopyInto(out *BackupCredentials)

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

type BackupDefinition added in v0.3.0

type BackupDefinition struct {
	// TTL is the time to live for the backup. After this time, the backup
	// will be eligible for garbage collection. If not set, the backup will
	// not be garbage collected.
	// +optional
	TTL *metav1.Duration `json:"ttl,omitempty"`

	// DeletionPolicy is the policy for the backup.
	// +kube:validation:Enum=Orphan;Delete
	// +kubebuilder:default=Orphan
	DeletionPolicy xpv1.DeletionPolicy `json:"deletionPolicy,omitempty"`

	// ExcludedResources is a slice of resource names that are not
	// included in the backup. Used to filter the included extra resources.
	// +optional
	ExcludedResources []string `json:"excludedResources,omitempty"`
}

BackupDefinition defines all the parameters for a backup.

func (*BackupDefinition) DeepCopy added in v0.3.0

func (in *BackupDefinition) DeepCopy() *BackupDefinition

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

func (*BackupDefinition) DeepCopyInto added in v0.3.0

func (in *BackupDefinition) DeepCopyInto(out *BackupDefinition)

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

type BackupList added in v0.3.0

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

BackupList contains a list of Backups.

func (*BackupList) DeepCopy added in v0.3.0

func (in *BackupList) DeepCopy() *BackupList

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

func (*BackupList) DeepCopyInto added in v0.3.0

func (in *BackupList) DeepCopyInto(out *BackupList)

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

func (*BackupList) DeepCopyObject added in v0.3.0

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

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

type BackupObjectStorage added in v0.3.0

type BackupObjectStorage struct {
	// Provider is the name of the object storage provider.
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:Enum=AWS;Azure;GCP
	Provider BackupObjectStorageProvider `json:"provider"`

	// Bucket is the name of the bucket to store backups in.
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:MinLength=1
	Bucket string `json:"bucket"`

	// Config is a free-form map of configuration options for the object storage provider.
	// See https://github.com/thanos-io/objstore?tab=readme-ov-file for more
	// information on the formats for each supported cloud provider. Bucket and
	// Provider will override the required values in the config.
	Config map[string]string `json:"config,omitempty"`

	// Credentials specifies the credentials to access the object storage.
	// +kubebuilder:validation:Required
	Credentials BackupCredentials `json:"credentials"`
}

BackupObjectStorage specifies the object storage configuration for the given provider.

func (*BackupObjectStorage) DeepCopy added in v0.3.0

func (in *BackupObjectStorage) DeepCopy() *BackupObjectStorage

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

func (*BackupObjectStorage) DeepCopyInto added in v0.3.0

func (in *BackupObjectStorage) DeepCopyInto(out *BackupObjectStorage)

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

type BackupObjectStorageProvider added in v0.3.0

type BackupObjectStorageProvider string

BackupObjectStorageProvider define the name of an object storage provider.

const (
	// BackupObjectStorageProviderAWS is the AWS object storage provider.
	BackupObjectStorageProviderAWS BackupObjectStorageProvider = "AWS"

	// BackupObjectStorageProviderAzure is the Azure object storage provider.
	BackupObjectStorageProviderAzure BackupObjectStorageProvider = "Azure"

	// BackupObjectStorageProviderGCP is the GCP object storage provider.
	BackupObjectStorageProviderGCP BackupObjectStorageProvider = "GCP"
)

type BackupPhase added in v0.3.0

type BackupPhase string

BackupPhase is a string representation of the phase of a backup.

const (
	// BackupPhasePending means the backup has been accepted by the system, but
	// is not yet being processed.
	BackupPhasePending BackupPhase = "Pending"
	// BackupPhaseInProgress means the backup is currently being processed.
	BackupPhaseInProgress BackupPhase = "InProgress"
	// BackupPhaseCompleted means the backup has been completed.
	BackupPhaseCompleted BackupPhase = "Completed"
	// BackupPhaseFailed means the backup has failed.
	BackupPhaseFailed BackupPhase = "Failed"
	// BackupPhaseDeleted means the backup has been deleted from the bucket, at
	// the best of our knowledge.
	BackupPhaseDeleted BackupPhase = "Deleted"
)

type BackupSchedule added in v0.3.0

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

	Spec   BackupScheduleSpec   `json:"spec"`
	Status BackupScheduleStatus `json:"status,omitempty"`
}

BackupSchedule represents a single ControlPlane schedule for Backups.

func (*BackupSchedule) DeepCopy added in v0.3.0

func (in *BackupSchedule) DeepCopy() *BackupSchedule

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

func (*BackupSchedule) DeepCopyInto added in v0.3.0

func (in *BackupSchedule) DeepCopyInto(out *BackupSchedule)

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

func (*BackupSchedule) DeepCopyObject added in v0.3.0

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

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

type BackupScheduleDefinition added in v0.3.0

type BackupScheduleDefinition struct {
	// Suspend specifies whether the schedule is suspended. If true, no
	// Backups will be created, but running backups will be allowed to
	// complete.
	// +optional
	Suspend bool `json:"suspend,omitempty"`

	// Schedule in Cron format, see https://en.wikipedia.org/wiki/Cron.
	// +kubebuilder:validation:MinLength=1
	Schedule string `json:"schedule"`

	BackupDefinition `json:",inline"`
}

BackupScheduleDefinition defines the schedule for a Backup.

func (*BackupScheduleDefinition) DeepCopy added in v0.3.0

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

func (*BackupScheduleDefinition) DeepCopyInto added in v0.3.0

func (in *BackupScheduleDefinition) DeepCopyInto(out *BackupScheduleDefinition)

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

type BackupScheduleList added in v0.3.0

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

BackupScheduleList contains a list of BackupSchedules.

func (*BackupScheduleList) DeepCopy added in v0.3.0

func (in *BackupScheduleList) DeepCopy() *BackupScheduleList

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

func (*BackupScheduleList) DeepCopyInto added in v0.3.0

func (in *BackupScheduleList) DeepCopyInto(out *BackupScheduleList)

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

func (*BackupScheduleList) DeepCopyObject added in v0.3.0

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

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

type BackupScheduleSpec added in v0.3.0

type BackupScheduleSpec struct {
	// ControlPlane is the name of the ControlPlane to which the schedule
	// applies.
	// Requires "get" permission on the referenced ControlPlane.
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="target can not be changed after creation"
	ControlPlane string `json:"controlPlane"`

	// UseOwnerReferencesBackup specifies whether an ownership chain should be
	// established between this resource and the Backup it creates.
	// If set to true, the Backup will be garbage collected when this resource
	// is deleted.
	// +optional
	UseOwnerReferencesInBackup bool `json:"useOwnerReferencesInBackup,omitempty"`

	BackupScheduleDefinition `json:",inline"`
}

BackupScheduleSpec defines a backup schedule over a set of ControlPlanes.

func (*BackupScheduleSpec) DeepCopy added in v0.3.0

func (in *BackupScheduleSpec) DeepCopy() *BackupScheduleSpec

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

func (*BackupScheduleSpec) DeepCopyInto added in v0.3.0

func (in *BackupScheduleSpec) DeepCopyInto(out *BackupScheduleSpec)

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

type BackupScheduleStatus added in v0.3.0

type BackupScheduleStatus struct {
	xpv1.ResourceStatus `json:",inline"`

	// LastBackup is the last time a Backup was run for this
	// Schedule schedule
	// +optional
	LastBackup *metav1.Time `json:"lastBackup,omitempty"`
}

BackupScheduleStatus represents the observed state of a BackupSchedule.

func (*BackupScheduleStatus) DeepCopy added in v0.3.0

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

func (*BackupScheduleStatus) DeepCopyInto added in v0.3.0

func (in *BackupScheduleStatus) DeepCopyInto(out *BackupScheduleStatus)

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

type BackupSpec added in v0.3.0

type BackupSpec struct {
	// ControlPlane is the name of the ControlPlane to backup.
	// Requires "backup" permission on the referenced ControlPlane.
	// +kubebuilder:validation:MinLength=1
	ControlPlane string `json:"controlPlane"`

	BackupDefinition `json:",inline"`
}

BackupSpec defines a backup over a set of ControlPlanes.

func (*BackupSpec) DeepCopy added in v0.3.0

func (in *BackupSpec) DeepCopy() *BackupSpec

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

func (*BackupSpec) DeepCopyInto added in v0.3.0

func (in *BackupSpec) DeepCopyInto(out *BackupSpec)

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

type BackupStatus added in v0.3.0

type BackupStatus struct {
	xpv1.ResourceStatus `json:",inline"`

	// Phase is the current phase of the backup.
	// +kubebuilder:validation:Enum=Pending;InProgress;Failed;Completed;Deleted
	// +kubebuilder:default=Pending
	Phase BackupPhase `json:"phase,omitempty"`

	// Retries is the number of times the backup has been retried.
	Retries int32 `json:"retries,omitempty"`

	// Details contains any additional information about the backup.
	// +optional
	Details BackupStatusDetails `json:"details,omitempty"`
}

BackupStatus represents the observed state of a Backup.

func (*BackupStatus) DeepCopy added in v0.3.0

func (in *BackupStatus) DeepCopy() *BackupStatus

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

func (*BackupStatus) DeepCopyInto added in v0.3.0

func (in *BackupStatus) DeepCopyInto(out *BackupStatus)

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

type BackupStatusDetails added in v0.3.0

type BackupStatusDetails struct {
	// UploadedFileName is the name of the uploaded file.
	UploadedFileName string `json:"uploadedFileName,omitempty"`

	// SharedBackupConfig is the SharedBackupConfig that the backup run against.
	// +optional
	SharedBackupConfig *PreciseLocalObjectReference `json:"sharedBackupConfig,omitempty"`

	// ControlPlane is the control plane that the backup run against.
	// +optional
	ControlPlane *PreciseLocalObjectReference `json:"controlPlane,omitempty"`
}

BackupStatusDetails contains additional information about a backup.

func (*BackupStatusDetails) DeepCopy added in v0.3.0

func (in *BackupStatusDetails) DeepCopy() *BackupStatusDetails

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

func (*BackupStatusDetails) DeepCopyInto added in v0.3.0

func (in *BackupStatusDetails) DeepCopyInto(out *BackupStatusDetails)

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

type LocalCommonCredentialSelectors added in v0.3.0

type LocalCommonCredentialSelectors struct {
	// A SecretRef is a reference to a secret key that contains the credentials
	// that must be used to connect to the provider.
	// +optional
	SecretRef *LocalSecretKeySelector `json:"secretRef,omitempty"`
}

LocalCommonCredentialSelectors provides common selectors for extracting credentials.

func (*LocalCommonCredentialSelectors) DeepCopy added in v0.3.0

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

func (*LocalCommonCredentialSelectors) DeepCopyInto added in v0.3.0

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

type LocalSecretKeySelector added in v0.3.0

type LocalSecretKeySelector struct {
	xpv1.LocalSecretReference `json:",inline"`

	// The key to select.
	// +kubebuilder:default=credentials
	Key string `json:"key"`
}

A LocalSecretKeySelector is a reference to a secret key in a predefined namespace.

func (*LocalSecretKeySelector) DeepCopy added in v0.3.0

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

func (*LocalSecretKeySelector) DeepCopyInto added in v0.3.0

func (in *LocalSecretKeySelector) DeepCopyInto(out *LocalSecretKeySelector)

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

type Matchable

type Matchable interface {
	labels.Labels
	// GetName return the resource name
	GetName() string
}

Matchable is a resource that is potentially matchable by a resource selector +kubebuilder:object:generate=false

type PreciseLocalObjectReference added in v0.3.0

type PreciseLocalObjectReference struct {
	// Name is the name of the referenced object.
	// +optional
	Name string `json:"name,omitempty"`

	// UID is the UID of the referenced object.
	UID types.UID `json:"uid,omitempty"`
}

PreciseLocalObjectReference references by name and uid.

func (*PreciseLocalObjectReference) DeepCopy added in v0.3.0

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

func (*PreciseLocalObjectReference) DeepCopyInto added in v0.3.0

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

type ResourceMetadata

type ResourceMetadata struct {

	// Annotations that are set on projected resource.
	// +optional
	Annotations map[string]string `json:"annotations,omitempty"`

	// Labels that are set on projected resource.
	// +optional
	Labels map[string]string `json:"labels,omitempty"`
}

ResourceMetadata defines metadata fields for created resource.

func (*ResourceMetadata) DeepCopy

func (in *ResourceMetadata) DeepCopy() *ResourceMetadata

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

func (*ResourceMetadata) DeepCopyInto

func (in *ResourceMetadata) DeepCopyInto(out *ResourceMetadata)

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

type ResourceSelector

type ResourceSelector struct {

	// A resource is matched if any of the label selector matches.
	// In case when the list is empty, resource is matched too.
	// +optional
	LabelSelectors []metav1.LabelSelector `json:"labelSelectors,omitempty"`

	// A resource is selected if its metadata.name matches any of the provided names.
	// In case when the list is empty, resource is matched too.
	// +optional
	Names []string `json:"names,omitempty"`
}

ResourceSelector defines the selector for resource matching. An object is going to be matched if any of the provided label selectors matches object's labels AND any of provided names are equal to the object name.

func (*ResourceSelector) DeepCopy

func (in *ResourceSelector) DeepCopy() *ResourceSelector

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

func (*ResourceSelector) DeepCopyInto

func (in *ResourceSelector) DeepCopyInto(out *ResourceSelector)

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

func (*ResourceSelector) Matches

func (r *ResourceSelector) Matches(obj client.Object) (bool, error)

Matches returns true if the provided object is matched by the selector

type SecretStoreProvisioningFailure

type SecretStoreProvisioningFailure struct {
	// ControlPlane name where the failure occurred.
	ControlPlane string `json:"controlPlane"`

	// List of occurred conditions.
	// +optional
	Conditions []esv1beta1.SecretStoreStatusCondition `json:"conditions,omitempty"`
}

SecretStoreProvisioningFailure defines secret store provisioning failure.

func (*SecretStoreProvisioningFailure) DeepCopy

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

func (*SecretStoreProvisioningFailure) DeepCopyInto

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

type SecretStoreProvisioningSuccess

type SecretStoreProvisioningSuccess struct {
	// ControlPlane name where the secret store got projected
	ControlPlane string `json:"controlPlane"`
}

SecretStoreProvisioningSuccess defines secret store provision success.

func (*SecretStoreProvisioningSuccess) DeepCopy

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

func (*SecretStoreProvisioningSuccess) DeepCopyInto

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

type SharedBackup added in v0.3.0

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

	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="shared backup spec can not be changed after creation"
	Spec   SharedBackupSpec   `json:"spec"`
	Status SharedBackupStatus `json:"status,omitempty"`
}

SharedBackup defines a backup over a set of ControlPlanes.

func (*SharedBackup) DeepCopy added in v0.3.0

func (in *SharedBackup) DeepCopy() *SharedBackup

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

func (*SharedBackup) DeepCopyInto added in v0.3.0

func (in *SharedBackup) DeepCopyInto(out *SharedBackup)

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

func (*SharedBackup) DeepCopyObject added in v0.3.0

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

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

type SharedBackupConfig added in v0.3.0

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

	Spec SharedBackupConfigSpec `json:"spec"`
}

SharedBackupConfig defines the configuration to backup and restore ControlPlanes.

func (*SharedBackupConfig) DeepCopy added in v0.3.0

func (in *SharedBackupConfig) DeepCopy() *SharedBackupConfig

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

func (*SharedBackupConfig) DeepCopyInto added in v0.3.0

func (in *SharedBackupConfig) DeepCopyInto(out *SharedBackupConfig)

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

func (*SharedBackupConfig) DeepCopyObject added in v0.3.0

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

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

type SharedBackupConfigList added in v0.3.0

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

SharedBackupConfigList contains a list of SharedBackupConfig.

func (*SharedBackupConfigList) DeepCopy added in v0.3.0

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

func (*SharedBackupConfigList) DeepCopyInto added in v0.3.0

func (in *SharedBackupConfigList) DeepCopyInto(out *SharedBackupConfigList)

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

func (*SharedBackupConfigList) DeepCopyObject added in v0.3.0

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

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

type SharedBackupConfigSpec added in v0.3.0

type SharedBackupConfigSpec struct {
	// ObjectStorage specifies the object storage configuration for the given provider.
	// +kubebuilder:validation:Required
	ObjectStorage BackupObjectStorage `json:"objectStorage"`
}

A SharedBackupConfigSpec represents the configuration to backup or restore ControlPlanes using Velero.

func (*SharedBackupConfigSpec) DeepCopy added in v0.3.0

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

func (*SharedBackupConfigSpec) DeepCopyInto added in v0.3.0

func (in *SharedBackupConfigSpec) DeepCopyInto(out *SharedBackupConfigSpec)

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

type SharedBackupList added in v0.3.0

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

SharedBackupList contains a list of SharedBackups.

func (*SharedBackupList) DeepCopy added in v0.3.0

func (in *SharedBackupList) DeepCopy() *SharedBackupList

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

func (*SharedBackupList) DeepCopyInto added in v0.3.0

func (in *SharedBackupList) DeepCopyInto(out *SharedBackupList)

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

func (*SharedBackupList) DeepCopyObject added in v0.3.0

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

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

type SharedBackupSchedule added in v0.3.0

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

	Spec   SharedBackupScheduleSpec   `json:"spec"`
	Status SharedBackupScheduleStatus `json:"status,omitempty"`
}

SharedBackupSchedule defines a schedule for SharedBackup on a set of ControlPlanes.

func (*SharedBackupSchedule) DeepCopy added in v0.3.0

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

func (*SharedBackupSchedule) DeepCopyInto added in v0.3.0

func (in *SharedBackupSchedule) DeepCopyInto(out *SharedBackupSchedule)

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

func (*SharedBackupSchedule) DeepCopyObject added in v0.3.0

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

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

type SharedBackupScheduleList added in v0.3.0

type SharedBackupScheduleList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is the list of SharedBackupSchedules.
	Items []SharedBackupSchedule `json:"items"`
}

SharedBackupScheduleList contains a list of SharedBackupSchedules.

func (*SharedBackupScheduleList) DeepCopy added in v0.3.0

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

func (*SharedBackupScheduleList) DeepCopyInto added in v0.3.0

func (in *SharedBackupScheduleList) DeepCopyInto(out *SharedBackupScheduleList)

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

func (*SharedBackupScheduleList) DeepCopyObject added in v0.3.0

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

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

type SharedBackupScheduleSpec added in v0.3.0

type SharedBackupScheduleSpec struct {
	// ControlPlaneSelector defines the selector for ControlPlanes to backup.
	// Requires "backup" permission on all ControlPlanes in the same namespace.
	// +kubebuilder:validation:XValidation:rule="(has(self.labelSelectors) || has(self.names)) && (size(self.labelSelectors) > 0 || size(self.names) > 0)",message="either names or a labelSelector must be specified"
	ControlPlaneSelector ResourceSelector `json:"controlPlaneSelector"`

	// UseOwnerReferencesBackup specifies whether an ownership chain should be
	// established between this resource and the Backup it creates.
	// If set to true, the Backup will be garbage collected when this resource
	// is deleted.
	// +optional
	UseOwnerReferencesInBackup bool `json:"useOwnerReferencesInBackup,omitempty"`

	BackupScheduleDefinition `json:",inline"`
}

SharedBackupScheduleSpec defines the desired state of a SharedBackupSchedule.

func (*SharedBackupScheduleSpec) DeepCopy added in v0.3.0

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

func (*SharedBackupScheduleSpec) DeepCopyInto added in v0.3.0

func (in *SharedBackupScheduleSpec) DeepCopyInto(out *SharedBackupScheduleSpec)

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

type SharedBackupScheduleStatus added in v0.3.0

type SharedBackupScheduleStatus struct {
	xpv1.ResourceStatus `json:",inline"`

	SelectedControlPlanes []string `json:"selectedControlPlanes,omitempty"`
}

SharedBackupScheduleStatus represents the observed state of a SharedBackupSchedule.

func (*SharedBackupScheduleStatus) DeepCopy added in v0.3.0

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

func (*SharedBackupScheduleStatus) DeepCopyInto added in v0.3.0

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

type SharedBackupSpec added in v0.3.0

type SharedBackupSpec struct {
	// ControlPlaneSelector defines the selector for ControlPlanes to backup.
	// Requires "backup" permission on all ControlPlanes in the same namespace.
	// +kubebuilder:validation:XValidation:rule="(has(self.labelSelectors) || has(self.names)) && (size(self.labelSelectors) > 0 || size(self.names) > 0)",message="either names or a labelSelector must be specified"
	ControlPlaneSelector ResourceSelector `json:"controlPlaneSelector"`

	// UseOwnerReferencesBackup specifies whether an ownership chain should be
	// established between this resource and the Backup it creates.
	// If set to true, the Backup will be garbage collected when this resource
	// is deleted.
	// +optional
	UseOwnerReferencesInBackup bool `json:"useOwnerReferencesInBackup,omitempty"`

	BackupDefinition `json:",inline"`
}

SharedBackupSpec defines a backup over a set of ControlPlanes.

func (*SharedBackupSpec) DeepCopy added in v0.3.0

func (in *SharedBackupSpec) DeepCopy() *SharedBackupSpec

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

func (*SharedBackupSpec) DeepCopyInto added in v0.3.0

func (in *SharedBackupSpec) DeepCopyInto(out *SharedBackupSpec)

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

type SharedBackupStatus added in v0.3.0

type SharedBackupStatus struct {
	xpv1.ResourceStatus `json:",inline"`

	// Phase represents the current phase of the SharedBackup.
	// +kubebuilder:validation:Enum=Pending;InProgress;Failed;Completed
	// +kubebuilder:default=Pending
	Phase BackupPhase `json:"phase,omitempty"`

	// SelectedControlPlanes represents the names of the selected ControlPlanes.
	SelectedControlPlanes []string `json:"selectedControlPlanes,omitempty"`

	// Failed is the list of ControlPlanes for which the backup failed.
	Failed []string `json:"failed,omitempty"`

	// Completed is the list of ControlPlanes for which the backup completed successfully.
	Completed []string `json:"completed,omitempty"`
}

SharedBackupStatus represents the observed state of a SharedBackup.

func (*SharedBackupStatus) DeepCopy added in v0.3.0

func (in *SharedBackupStatus) DeepCopy() *SharedBackupStatus

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

func (*SharedBackupStatus) DeepCopyInto added in v0.3.0

func (in *SharedBackupStatus) DeepCopyInto(out *SharedBackupStatus)

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

type SharedExternalSecret

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

	Spec   SharedExternalSecretSpec   `json:"spec,omitempty"`
	Status SharedExternalSecretStatus `json:"status,omitempty"`
}

SharedExternalSecret specifies a shared ExternalSecret projected into the specified ControlPlanes of the same namespace as ClusterExternalSecret and with that propagated into the specified namespaces. +kubebuilder:object:root=true +kubebuilder:storageversion +kubebuilder:printcolumn:name="Provisioned",type=string,JSONPath=`.metadata.annotations.sharedexternalsecrets\.internal\.spaces\.upbound\.io/provisioned-total` +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Namespaced,categories={externalsecrets},shortName=ses

func (*SharedExternalSecret) ControlPlaneSelector

func (c *SharedExternalSecret) ControlPlaneSelector() func(obj client.Object) (bool, error)

ControlPlaneSelector returns a function that can be used for checking if a given object matches the selector.

func (*SharedExternalSecret) DeepCopy

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

func (*SharedExternalSecret) DeepCopyInto

func (in *SharedExternalSecret) DeepCopyInto(out *SharedExternalSecret)

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

func (*SharedExternalSecret) DeepCopyObject

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

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

type SharedExternalSecretList

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

SharedExternalSecretList contains a list of SharedExternalSecret.

+kubebuilder:object:root=true

func (*SharedExternalSecretList) DeepCopy

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

func (*SharedExternalSecretList) DeepCopyInto

func (in *SharedExternalSecretList) DeepCopyInto(out *SharedExternalSecretList)

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

func (*SharedExternalSecretList) DeepCopyObject

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

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

func (*SharedExternalSecretList) Objects

func (s *SharedExternalSecretList) Objects() []client.Object

Objects return the list of items.

type SharedExternalSecretProvisioningFailure

type SharedExternalSecretProvisioningFailure struct {
	// ControlPlane name where the failure occurred.
	ControlPlane string `json:"controlPlane"`

	// List of conditions.
	// +optional
	Conditions []esv1beta1.ClusterExternalSecretStatusCondition `json:"conditions,omitempty"`
}

SharedExternalSecretProvisioningFailure describes a external secret provisioning failure in a specific control plane.

func (*SharedExternalSecretProvisioningFailure) DeepCopy

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

func (*SharedExternalSecretProvisioningFailure) DeepCopyInto

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

type SharedExternalSecretProvisioningSuccess

type SharedExternalSecretProvisioningSuccess struct {
	// ControlPlane name where the external secret got successfully projected.
	ControlPlane string `json:"controlPlane"`
}

SharedExternalSecretProvisioningSuccess defines external secret provisioning success.

func (*SharedExternalSecretProvisioningSuccess) DeepCopy

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

func (*SharedExternalSecretProvisioningSuccess) DeepCopyInto

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

type SharedExternalSecretSpec

type SharedExternalSecretSpec struct {
	// ExternalSecretName is the name to use when creating external secret within a control plane.
	// optional, if not set, SharedExternalSecret name will be used.
	// When set, it is immutable.
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="externalSecretName is immutable"
	// +kubebuilder:validation:MaxLength=253
	// +kubebuilder:validation:MinLength=1
	// +optional
	ExternalSecretName string `json:"externalSecretName,omitempty"`

	// The metadata of the secret store to be created.
	// +optional
	ExternalSecretMetadata *ResourceMetadata `json:"externalSecretMetadata,omitempty"`

	// The secret is projected only to control planes
	// matching the provided selector. Either names or a labelSelector must be specified.
	// +kubebuilder:validation:XValidation:rule="(has(self.labelSelectors) || has(self.names)) && (size(self.labelSelectors) > 0 || size(self.names) > 0)",message="either names or a labelSelector must be specified"
	ControlPlaneSelector ResourceSelector `json:"controlPlaneSelector"`

	// The projected secret can be consumed
	// only within namespaces matching the provided selector.
	// Either names or a labelSelector must be specified.
	// +kubebuilder:validation:XValidation:rule="(has(self.labelSelectors) || has(self.names)) && (size(self.labelSelectors) > 0 || size(self.names) > 0)",message="either names or a labelSelector must be specified"
	NamespaceSelector ResourceSelector `json:"namespaceSelector"`

	// The spec for the ExternalSecrets to be created.
	ExternalSecretSpec esv1beta1.ExternalSecretSpec `json:"externalSecretSpec"`

	// Used to configure secret refresh interval in seconds.
	// +optional
	RefreshInterval *metav1.Duration `json:"refreshTime,omitempty"`
}

SharedExternalSecretSpec defines the desired state of SharedExternalSecret.

+kubebuilder:validation:XValidation:rule="has(self.externalSecretName) == has(oldSelf.externalSecretName)",message="externalSecretName is immutable"

func (*SharedExternalSecretSpec) DeepCopy

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

func (*SharedExternalSecretSpec) DeepCopyInto

func (in *SharedExternalSecretSpec) DeepCopyInto(out *SharedExternalSecretSpec)

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

type SharedExternalSecretStatus

type SharedExternalSecretStatus struct {

	// observed resource generation.
	// +optional
	ObservedGeneration *int64 `json:"observedGeneration,omitempty"`

	// list of provisioning failures.
	// +optional
	// +listType=map
	// +listMapKey=controlPlane
	Failed []SharedExternalSecretProvisioningFailure `json:"failed,omitempty"`

	// List of successfully provisioned targets.
	// +optional
	// +listType=map
	// +listMapKey=controlPlane
	Provisioned []SharedExternalSecretProvisioningSuccess `json:"provisioned,omitempty"`
}

SharedExternalSecretStatus defines the observed state of the ExternalSecret.

func (*SharedExternalSecretStatus) DeepCopy

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

func (*SharedExternalSecretStatus) DeepCopyInto

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

type SharedSecretStore

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

	Spec   SharedSecretStoreSpec   `json:"spec,omitempty"`
	Status SharedSecretStoreStatus `json:"status,omitempty"`
}

SharedSecretStore represents a shared SecretStore projected as ClusterSecretStore into matching ControlPlanes in the same namespace. Once projected into a ControlPlane, it can be referenced from ExternalSecret instances, as part of `storeRef` fields. The secret store configuration including referenced credential are not leaked into the ControlPlanes and in that sense can be called secure as they are invisible to the ControlPlane workloads. +kubebuilder:object:root=true +kubebuilder:storageversion +kubebuilder:printcolumn:name="Provisioned",type=string,JSONPath=`.metadata.annotations.sharedsecretstores\.internal\.spaces\.upbound\.io/provisioned-total` +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Namespaced,categories={externalsecrets},shortName=sss

func (*SharedSecretStore) ControlPlaneSelector

func (c *SharedSecretStore) ControlPlaneSelector() func(obj client.Object) (bool, error)

ControlPlaneSelector returns a function that can be used for checking if a given object matches the selector.

func (*SharedSecretStore) DeepCopy

func (in *SharedSecretStore) DeepCopy() *SharedSecretStore

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

func (*SharedSecretStore) DeepCopyInto

func (in *SharedSecretStore) DeepCopyInto(out *SharedSecretStore)

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

func (*SharedSecretStore) DeepCopyObject

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

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

type SharedSecretStoreList

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

SharedSecretStoreList contains a list of SharedSecretStore.

+kubebuilder:object:root=true

func (*SharedSecretStoreList) DeepCopy

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

func (*SharedSecretStoreList) DeepCopyInto

func (in *SharedSecretStoreList) DeepCopyInto(out *SharedSecretStoreList)

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

func (*SharedSecretStoreList) DeepCopyObject

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

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

func (*SharedSecretStoreList) Objects

func (s *SharedSecretStoreList) Objects() []client.Object

Objects return the list of items.

type SharedSecretStoreSpec

type SharedSecretStoreSpec struct {
	// SecretStoreName is the name to use when creating secret stores within a control plane.
	// optional, if not set, SharedSecretStore name will be used.
	// When set, it is immutable.
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="value is immutable"
	// +kubebuilder:validation:MaxLength=253
	// +kubebuilder:validation:MinLength=1
	// +optional
	SecretStoreName string `json:"secretStoreName,omitempty"`

	// The metadata of the secret store to be created.
	// +optional
	SecretStoreMetadata *ResourceMetadata `json:"secretStoreMetadata,omitempty"`

	// The store is projected only to control planes
	// matching the provided selector. Either names or a labelSelector must be specified.
	// +kubebuilder:validation:XValidation:rule="(has(self.labelSelectors) || has(self.names)) && (size(self.labelSelectors) > 0 || size(self.names) > 0)",message="either names or a labelSelector must be specified"
	ControlPlaneSelector ResourceSelector `json:"controlPlaneSelector"`

	// The projected secret store can be consumed
	// only within namespaces matching the provided selector.
	// Either names or a labelSelector must be specified.
	// +kubebuilder:validation:XValidation:rule="(has(self.labelSelectors) || has(self.names)) && (size(self.labelSelectors) > 0 || size(self.names) > 0)",message="either names or a labelSelector must be specified"
	NamespaceSelector ResourceSelector `json:"namespaceSelector"`

	// Used to configure the provider. Only one provider may be set.
	Provider esv1beta1.SecretStoreProvider `json:"provider"`

	// Used to configure http retries if failed.
	// +optional
	RetrySettings *esv1beta1.SecretStoreRetrySettings `json:"retrySettings,omitempty"`

	// Used to configure store refresh interval in seconds.
	// +optional
	RefreshInterval int `json:"refreshInterval,omitempty"`
}

SharedSecretStoreSpec defines the desired state of SecretStore.

+kubebuilder:validation:XValidation:rule="has(self.secretStoreName) == has(oldSelf.secretStoreName)",message="secretStoreName is immutable"

func (*SharedSecretStoreSpec) DeepCopy

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

func (*SharedSecretStoreSpec) DeepCopyInto

func (in *SharedSecretStoreSpec) DeepCopyInto(out *SharedSecretStoreSpec)

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

type SharedSecretStoreStatus

type SharedSecretStoreStatus struct {

	// observed resource generation.
	// +optional
	ObservedGeneration *int64 `json:"observedGeneration,omitempty"`

	// List of provisioning failures.
	// +optional
	// +listType=map
	// +listMapKey=controlPlane
	Failed []SecretStoreProvisioningFailure `json:"failed,omitempty"`

	// List of successfully provisioned targets.
	// +optional
	// +listType=map
	// +listMapKey=controlPlane
	Provisioned []SecretStoreProvisioningSuccess `json:"provisioned,omitempty"`
}

SharedSecretStoreStatus defines the observed state of the SecretStore.

func (*SharedSecretStoreStatus) DeepCopy

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

func (*SharedSecretStoreStatus) DeepCopyInto

func (in *SharedSecretStoreStatus) DeepCopyInto(out *SharedSecretStoreStatus)

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