Documentation
¶
Overview ¶
Package v1 contains API Schema definitions for the barmancloud v1 API group +kubebuilder:object:generate=true +groupName=barmancloud.cnpg.io
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects. GroupVersion = schema.GroupVersion{Group: "barmancloud.cnpg.io", Version: "v1"} // 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 InstanceSidecarConfiguration ¶
type InstanceSidecarConfiguration struct {
// The environment to be explicitly passed to the sidecar
// +optional
Env []corev1.EnvVar `json:"env,omitempty"`
// The retentionCheckInterval defines the frequency at which the
// system checks and enforces retention policies.
// +kubebuilder:default:=1800
// +optional
RetentionPolicyIntervalSeconds int `json:"retentionPolicyIntervalSeconds,omitempty"`
// Resources define cpu/memory requests and limits for the sidecar that runs in the instance pods.
// +optional
Resources corev1.ResourceRequirements `json:"resources,omitempty"`
// AdditionalContainerArgs is an optional list of command-line arguments
// to be passed to the sidecar container when it starts.
// The provided arguments are appended to the container’s default arguments.
// +kubebuilder:validation:XValidation:rule="!self.exists(a, a.startsWith('--log-level'))",reason="FieldValueForbidden",message="do not set --log-level in additionalContainerArgs; use spec.instanceSidecarConfiguration.logLevel"
// +optional
AdditionalContainerArgs []string `json:"additionalContainerArgs,omitempty"`
// The log level for PostgreSQL instances. Valid values are: `error`, `warning`, `info` (default), `debug`, `trace`
// +kubebuilder:default:=info
// +kubebuilder:validation:Enum:=error;warning;info;debug;trace
// +optional
LogLevel string `json:"logLevel,omitempty"`
}
InstanceSidecarConfiguration defines the configuration for the sidecar that runs in the instance pods.
func (*InstanceSidecarConfiguration) DeepCopy ¶
func (in *InstanceSidecarConfiguration) DeepCopy() *InstanceSidecarConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceSidecarConfiguration.
func (*InstanceSidecarConfiguration) DeepCopyInto ¶
func (in *InstanceSidecarConfiguration) DeepCopyInto(out *InstanceSidecarConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ObjectStore ¶
type ObjectStore struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata"`
// Specification of the desired behavior of the ObjectStore.
// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
Spec ObjectStoreSpec `json:"spec"`
// Most recently observed status of the ObjectStore. This data may not be up to
// date. Populated by the system. Read-only.
// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
// +optional
Status ObjectStoreStatus `json:"status,omitempty"`
}
ObjectStore is the Schema for the objectstores API.
func (*ObjectStore) DeepCopy ¶
func (in *ObjectStore) DeepCopy() *ObjectStore
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectStore.
func (*ObjectStore) DeepCopyInto ¶
func (in *ObjectStore) DeepCopyInto(out *ObjectStore)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ObjectStore) DeepCopyObject ¶
func (in *ObjectStore) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ObjectStoreList ¶
type ObjectStoreList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ObjectStore `json:"items"`
}
ObjectStoreList contains a list of ObjectStore.
func (*ObjectStoreList) DeepCopy ¶
func (in *ObjectStoreList) DeepCopy() *ObjectStoreList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectStoreList.
func (*ObjectStoreList) DeepCopyInto ¶
func (in *ObjectStoreList) DeepCopyInto(out *ObjectStoreList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ObjectStoreList) DeepCopyObject ¶
func (in *ObjectStoreList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ObjectStoreSpec ¶
type ObjectStoreSpec struct {
// The configuration for the barman-cloud tool suite
// +kubebuilder:validation:XValidation:rule="!has(self.serverName)",fieldPath=".serverName",reason="FieldValueForbidden",message="use the 'serverName' plugin parameter in the Cluster resource"
Configuration barmanapi.BarmanObjectStoreConfiguration `json:"configuration"`
// RetentionPolicy is the retention policy to be used for backups
// and WALs (i.e. '60d'). The retention policy is expressed in the form
// of `XXu` where `XX` is a positive integer and `u` is in `[dwm]` -
// days, weeks, months.
// +kubebuilder:validation:Pattern=^[1-9][0-9]*[dwm]$
// +optional
RetentionPolicy string `json:"retentionPolicy,omitempty"`
// The configuration for the sidecar that runs in the instance pods
// +optional
InstanceSidecarConfiguration InstanceSidecarConfiguration `json:"instanceSidecarConfiguration,omitempty"`
}
ObjectStoreSpec defines the desired state of ObjectStore.
func (*ObjectStoreSpec) DeepCopy ¶
func (in *ObjectStoreSpec) DeepCopy() *ObjectStoreSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectStoreSpec.
func (*ObjectStoreSpec) DeepCopyInto ¶
func (in *ObjectStoreSpec) DeepCopyInto(out *ObjectStoreSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ObjectStoreStatus ¶
type ObjectStoreStatus struct {
// ServerRecoveryWindow maps each server to its recovery window
ServerRecoveryWindow map[string]RecoveryWindow `json:"serverRecoveryWindow,omitempty"`
}
ObjectStoreStatus defines the observed state of ObjectStore.
func (*ObjectStoreStatus) DeepCopy ¶
func (in *ObjectStoreStatus) DeepCopy() *ObjectStoreStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectStoreStatus.
func (*ObjectStoreStatus) DeepCopyInto ¶
func (in *ObjectStoreStatus) DeepCopyInto(out *ObjectStoreStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RecoveryWindow ¶ added in v0.3.0
type RecoveryWindow struct {
// The first recoverability point in a PostgreSQL server refers to
// the earliest point in time to which the database can be
// restored.
FirstRecoverabilityPoint *metav1.Time `json:"firstRecoverabilityPoint,omitempty"`
// The last successful backup time
LastSuccessfulBackupTime *metav1.Time `json:"lastSuccessfulBackupTime,omitempty"`
// The last failed backup time
LastFailedBackupTime *metav1.Time `json:"lastFailedBackupTime,omitempty"`
}
RecoveryWindow represents the time span between the first recoverability point and the last successful backup of a PostgreSQL server, defining the period during which data can be restored.
func (*RecoveryWindow) DeepCopy ¶ added in v0.3.0
func (in *RecoveryWindow) DeepCopy() *RecoveryWindow
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RecoveryWindow.
func (*RecoveryWindow) DeepCopyInto ¶ added in v0.3.0
func (in *RecoveryWindow) DeepCopyInto(out *RecoveryWindow)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.