Documentation ¶
Overview ¶
Package v1alpha1 contains v1alpha1 admin resources.
+kubebuilder:object:generate=true +groupName=admin.spaces.upbound.io +versionName=v1alpha1
Index ¶
- Constants
- Variables
- type GenericSpaceBackupResourceSelector
- type SpaceBackup
- type SpaceBackupConfig
- type SpaceBackupConfigList
- type SpaceBackupConfigSpec
- type SpaceBackupCredentials
- type SpaceBackupDefinition
- type SpaceBackupList
- type SpaceBackupObjectStorage
- type SpaceBackupResourceSelector
- type SpaceBackupSchedule
- type SpaceBackupScheduleDefinition
- type SpaceBackupScheduleList
- type SpaceBackupScheduleSpec
- type SpaceBackupScheduleStatus
- type SpaceBackupSpec
- type SpaceBackupStatus
Constants ¶
const ( Group = "admin.spaces.upbound.io" Version = "v1alpha1" )
Package type metadata.
const SpaceBackupScheduleLabelKey = "admin.spaces.upbound.io/spacebackupschedule"
SpaceBackupScheduleLabelKey is the label key used to identify SpaceBackups created by a SpaceBackupSchedule.
Variables ¶
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 )
var ( // SpaceBackupKind is the kind of a SpaceBackup. SpaceBackupKind = reflect.TypeOf(SpaceBackup{}).Name() // SpaceBackupListKind is the kind of a SpaceBackupList. SpaceBackupListKind = reflect.TypeOf(SpaceBackupList{}).Name() )
var ( // SpaceBackupConfigKind is the kind of a SpaceBackupConfig. SpaceBackupConfigKind = reflect.TypeOf(SpaceBackupConfig{}).Name() )
var ( // SpaceBackupScheduleKind is the kind of SpaceBackupSchedule. SpaceBackupScheduleKind = reflect.TypeOf(SpaceBackupSchedule{}).Name() )
Functions ¶
This section is empty.
Types ¶
type GenericSpaceBackupResourceSelector ¶
type GenericSpaceBackupResourceSelector struct { // APIGroup is the group of the resource. // +kubebuilder:validation:Required APIGroup string `json:"apiGroup,omitempty"` // Kind is the kind of the resource. // +kubebuilder:validation:Required Kind string `json:"kind,omitempty"` spacesv1alpha1.ResourceSelector `json:",inline"` }
GenericSpaceBackupResourceSelector represents a generic resource selector.
func (*GenericSpaceBackupResourceSelector) DeepCopy ¶
func (in *GenericSpaceBackupResourceSelector) DeepCopy() *GenericSpaceBackupResourceSelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GenericSpaceBackupResourceSelector.
func (*GenericSpaceBackupResourceSelector) DeepCopyInto ¶
func (in *GenericSpaceBackupResourceSelector) DeepCopyInto(out *GenericSpaceBackupResourceSelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SpaceBackup ¶
type SpaceBackup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec SpaceBackupSpec `json:"spec"` Status SpaceBackupStatus `json:"status,omitempty"` }
SpaceBackup represents a backup of a Space.
func (*SpaceBackup) DeepCopy ¶
func (in *SpaceBackup) DeepCopy() *SpaceBackup
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceBackup.
func (*SpaceBackup) DeepCopyInto ¶
func (in *SpaceBackup) DeepCopyInto(out *SpaceBackup)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SpaceBackup) DeepCopyObject ¶
func (in *SpaceBackup) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SpaceBackupConfig ¶
type SpaceBackupConfig struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec SpaceBackupConfigSpec `json:"spec"` }
SpaceBackupConfig defines the configuration to backup a Space.
func (*SpaceBackupConfig) DeepCopy ¶
func (in *SpaceBackupConfig) DeepCopy() *SpaceBackupConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceBackupConfig.
func (*SpaceBackupConfig) DeepCopyInto ¶
func (in *SpaceBackupConfig) DeepCopyInto(out *SpaceBackupConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SpaceBackupConfig) DeepCopyObject ¶
func (in *SpaceBackupConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SpaceBackupConfigList ¶
type SpaceBackupConfigList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []SpaceBackupConfig `json:"items"` }
SpaceBackupConfigList contains a list of SpaceBackupConfig.
func (*SpaceBackupConfigList) DeepCopy ¶
func (in *SpaceBackupConfigList) DeepCopy() *SpaceBackupConfigList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceBackupConfigList.
func (*SpaceBackupConfigList) DeepCopyInto ¶
func (in *SpaceBackupConfigList) DeepCopyInto(out *SpaceBackupConfigList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SpaceBackupConfigList) DeepCopyObject ¶
func (in *SpaceBackupConfigList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SpaceBackupConfigSpec ¶
type SpaceBackupConfigSpec struct { // ObjectStorage specifies the object storage configuration for the given provider. // +kubebuilder:validation:Required ObjectStorage SpaceBackupObjectStorage `json:"objectStorage"` }
A SpaceBackupConfigSpec represents the configuration to backup or restore a Space.
func (*SpaceBackupConfigSpec) DeepCopy ¶
func (in *SpaceBackupConfigSpec) DeepCopy() *SpaceBackupConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceBackupConfigSpec.
func (*SpaceBackupConfigSpec) DeepCopyInto ¶
func (in *SpaceBackupConfigSpec) DeepCopyInto(out *SpaceBackupConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SpaceBackupCredentials ¶
type SpaceBackupCredentials struct { // Source of the credentials. // Source "Secret" requires "get" permissions on the referenced Secret. // +kubebuilder:validation:Enum=Secret;InjectedIdentity // +kubebuilder:validation:Required Source xpv1.CredentialsSource `json:"source"` // CommonCredentialSelectors provides common selectors for extracting // credentials. xpv1.CommonCredentialSelectors `json:",inline"` }
SpaceBackupCredentials specifies the credentials to access the object storage.
func (*SpaceBackupCredentials) DeepCopy ¶
func (in *SpaceBackupCredentials) DeepCopy() *SpaceBackupCredentials
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceBackupCredentials.
func (*SpaceBackupCredentials) DeepCopyInto ¶
func (in *SpaceBackupCredentials) DeepCopyInto(out *SpaceBackupCredentials)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SpaceBackupDefinition ¶
type SpaceBackupDefinition struct { // ConfigRef is a reference to the space backup configuration. // ApiGroup is optional and defaults to "spaces.upbound.io". // Kind is required, and the only supported value is "SpaceBackupConfig" at // the moment. // Name is required. // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="(!has(self.apiGroup) || self.apiGroup == 'admin.spaces.upbound.io') && self.kind == 'SpaceBackupConfig'",message="backup config ref must be a reference to a SpaceBackupConfig" // +kubebuilder:validation:XValidation:rule="size(self.name) > 0",message="backup config ref must have a name" ConfigRef common.TypedLocalObjectReference `json:"configRef"` // 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"` // Match is the selector for resources that should be included in the backup. // By default, we'll back up all Groups and for each Group: // - All ControlPlanes. // - All Secrets. // - All other Space API resources, e.g. SharedBackupConfigs, SharedUpboundPolicies, Backups, etc... // +optional Match *SpaceBackupResourceSelector `json:"match,omitempty"` // Exclude is the selector for resources that should be excluded from the backup. // If both Match and Exclude are specified, the Exclude selector will be applied // after the Match selector. // By default, only SpaceBackups are excluded. // +optional Exclude *SpaceBackupResourceSelector `json:"exclude,omitempty"` // ControlPlaneBackups is the definition of the control plane backups, // +optional ControlPlaneBackups *spacesv1alpha1.ControlPlaneBackupConfig `json:"controlPlaneBackups,omitempty"` }
SpaceBackupDefinition defines all the parameters for a space backup.
func (*SpaceBackupDefinition) DeepCopy ¶
func (in *SpaceBackupDefinition) DeepCopy() *SpaceBackupDefinition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceBackupDefinition.
func (*SpaceBackupDefinition) DeepCopyInto ¶
func (in *SpaceBackupDefinition) DeepCopyInto(out *SpaceBackupDefinition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SpaceBackupList ¶
type SpaceBackupList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []SpaceBackup `json:"items"` }
SpaceBackupList contains a list of SpaceBackups.
func (*SpaceBackupList) DeepCopy ¶
func (in *SpaceBackupList) DeepCopy() *SpaceBackupList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceBackupList.
func (*SpaceBackupList) DeepCopyInto ¶
func (in *SpaceBackupList) DeepCopyInto(out *SpaceBackupList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SpaceBackupList) DeepCopyObject ¶
func (in *SpaceBackupList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SpaceBackupObjectStorage ¶
type SpaceBackupObjectStorage struct { spacesv1alpha1.BackupObjectStorage `json:",inline"` // Credentials specifies the credentials to access the object storage. // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self.source != 'Secret' || (has(self.secretRef) && has(self.secretRef.name) && has(self.secretRef.__namespace__))",message="secretRef.name and namespace must be set when source is Secret" Credentials SpaceBackupCredentials `json:"credentials"` }
SpaceBackupObjectStorage specifies the object storage configuration for the given provider.
func (*SpaceBackupObjectStorage) DeepCopy ¶
func (in *SpaceBackupObjectStorage) DeepCopy() *SpaceBackupObjectStorage
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceBackupObjectStorage.
func (*SpaceBackupObjectStorage) DeepCopyInto ¶
func (in *SpaceBackupObjectStorage) DeepCopyInto(out *SpaceBackupObjectStorage)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SpaceBackupResourceSelector ¶
type SpaceBackupResourceSelector struct { // Groups specifies the groups selected. // A group is matched if any of the group selectors matches, if not specified // any group is matched. Group selector is ANDed with all other selectors, so no resource in // a group not matching the group selector will be included in the backup. // +optional Groups *spacesv1alpha1.ResourceSelector `json:"groups,omitempty"` // ControlPlanes specifies the control planes selected. // A control plane is matched if any of the control plane selectors matches, if not specified // any control plane in the selected groups is matched. // +optional ControlPlanes *spacesv1alpha1.ResourceSelector `json:"controlPlanes,omitempty"` // Spaces specifies the spaces selected. // +optional Secrets *spacesv1alpha1.ResourceSelector `json:"secrets,omitempty"` // Extras specifies the extra resources selected. // +optional Extras []GenericSpaceBackupResourceSelector `json:"extras,omitempty"` }
SpaceBackupResourceSelector represents a selector for Groups and ControlPlanes. An object is going to be matched if any of the provided group selectors matches object's group AND any of provided control plane selectors matches.
func (*SpaceBackupResourceSelector) DeepCopy ¶
func (in *SpaceBackupResourceSelector) DeepCopy() *SpaceBackupResourceSelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceBackupResourceSelector.
func (*SpaceBackupResourceSelector) DeepCopyInto ¶
func (in *SpaceBackupResourceSelector) DeepCopyInto(out *SpaceBackupResourceSelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SpaceBackupSchedule ¶
type SpaceBackupSchedule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec SpaceBackupScheduleSpec `json:"spec"` Status SpaceBackupScheduleStatus `json:"status,omitempty"` }
SpaceBackupSchedule represents a schedule to backup a Space.
func (*SpaceBackupSchedule) DeepCopy ¶
func (in *SpaceBackupSchedule) DeepCopy() *SpaceBackupSchedule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceBackupSchedule.
func (*SpaceBackupSchedule) DeepCopyInto ¶
func (in *SpaceBackupSchedule) DeepCopyInto(out *SpaceBackupSchedule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SpaceBackupSchedule) DeepCopyObject ¶
func (in *SpaceBackupSchedule) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SpaceBackupScheduleDefinition ¶
type SpaceBackupScheduleDefinition struct { // Suspend specifies whether the schedule is suspended. If true, no // SpaceBackups 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"` SpaceBackupDefinition `json:",inline"` }
SpaceBackupScheduleDefinition defines the schedule for a SpaceBackup.
func (*SpaceBackupScheduleDefinition) DeepCopy ¶
func (in *SpaceBackupScheduleDefinition) DeepCopy() *SpaceBackupScheduleDefinition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceBackupScheduleDefinition.
func (*SpaceBackupScheduleDefinition) DeepCopyInto ¶
func (in *SpaceBackupScheduleDefinition) DeepCopyInto(out *SpaceBackupScheduleDefinition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SpaceBackupScheduleList ¶
type SpaceBackupScheduleList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []SpaceBackupSchedule `json:"items"` }
SpaceBackupScheduleList contains a list of SpaceBackupSchedules.
func (*SpaceBackupScheduleList) DeepCopy ¶
func (in *SpaceBackupScheduleList) DeepCopy() *SpaceBackupScheduleList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceBackupScheduleList.
func (*SpaceBackupScheduleList) DeepCopyInto ¶
func (in *SpaceBackupScheduleList) DeepCopyInto(out *SpaceBackupScheduleList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SpaceBackupScheduleList) DeepCopyObject ¶
func (in *SpaceBackupScheduleList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SpaceBackupScheduleSpec ¶
type SpaceBackupScheduleSpec struct { // 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"` SpaceBackupScheduleDefinition `json:",inline"` }
SpaceBackupScheduleSpec defines a space backup schedule.
func (*SpaceBackupScheduleSpec) DeepCopy ¶
func (in *SpaceBackupScheduleSpec) DeepCopy() *SpaceBackupScheduleSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceBackupScheduleSpec.
func (*SpaceBackupScheduleSpec) DeepCopyInto ¶
func (in *SpaceBackupScheduleSpec) DeepCopyInto(out *SpaceBackupScheduleSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SpaceBackupScheduleStatus ¶
type SpaceBackupScheduleStatus 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"` }
SpaceBackupScheduleStatus represents the observed state of a SpaceBackupSchedule.
func (*SpaceBackupScheduleStatus) DeepCopy ¶
func (in *SpaceBackupScheduleStatus) DeepCopy() *SpaceBackupScheduleStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceBackupScheduleStatus.
func (*SpaceBackupScheduleStatus) DeepCopyInto ¶
func (in *SpaceBackupScheduleStatus) DeepCopyInto(out *SpaceBackupScheduleStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SpaceBackupSpec ¶
type SpaceBackupSpec struct {
SpaceBackupDefinition `json:",inline"`
}
SpaceBackupSpec defines a backup over a set of Match +kubebuilder:validation:XValidation:rule="!has(self.configRef) && !has(oldSelf.configRef) || (self.configRef == oldSelf.configRef) ",message="spec.configRef can't be changed or set after creation" +kubebuilder:validation:XValidation:rule="!has(self.match) && !has(oldSelf.match) || (self.match == oldSelf.match) ",message="spec.match can't be changed or set after creation" +kubebuilder:validation:XValidation:rule="!has(self.exclude) && !has(oldSelf.exclude) || (self.exclude == oldSelf.exclude) ",message="spec.exclude can't be changed or set after creation" +kubebuilder:validation:XValidation:rule="!has(self.controlPlaneBackups) && !has(oldSelf.controlPlaneBackups) || (self.controlPlaneBackups == oldSelf.controlPlaneBackups) ",message="spec.controlPlaneBackups can't be changed or set after creation"
func (*SpaceBackupSpec) DeepCopy ¶
func (in *SpaceBackupSpec) DeepCopy() *SpaceBackupSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceBackupSpec.
func (*SpaceBackupSpec) DeepCopyInto ¶
func (in *SpaceBackupSpec) DeepCopyInto(out *SpaceBackupSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SpaceBackupStatus ¶
type SpaceBackupStatus 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 spacesv1alpha1.BackupPhase `json:"phase,omitempty"` // Retries is the number of times the backup has been retried. // +optional Retries int32 `json:"retries,omitempty"` }
SpaceBackupStatus represents the observed state of a SpaceBackup.
func (*SpaceBackupStatus) DeepCopy ¶
func (in *SpaceBackupStatus) DeepCopy() *SpaceBackupStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceBackupStatus.
func (*SpaceBackupStatus) DeepCopyInto ¶
func (in *SpaceBackupStatus) DeepCopyInto(out *SpaceBackupStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.