noobaa

package
v0.0.0-...-d0642ff Latest Latest
Warning

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

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

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the noobaa v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=noobaa.io

Index

Constants

View Source
const (
	ConditionTypeKMSStatus conditionsv1.ConditionType = "KMS-Status"
	ConditionTypeKMSType   conditionsv1.ConditionType = "KMS-Type"
)

These are the valid conditions types and statuses:

View Source
const (
	// External KMS initialized
	ConditionKMSInit corev1.ConditionStatus = "Init"

	// The root key was synchronized from external KMS
	ConditionKMSSync corev1.ConditionStatus = "Sync"

	// The root key was rotated
	ConditionKMSKeyRotate corev1.ConditionStatus = "KeyRotate"

	// Invalid external KMS definition
	ConditionKMSInvalid corev1.ConditionStatus = "Invalid"

	// Error reading secret from external KMS
	ConditionKMSErrorRead corev1.ConditionStatus = "ErrorRead"

	// Error writing initial root key to external KMS
	ConditionKMSErrorWrite corev1.ConditionStatus = "ErrorWrite"

	// Error in data format, internal error
	ConditionKMSErrorData corev1.ConditionStatus = "ErrorData"

	// Error in data format, internal error
	ConditionKMSErrorSecretReconcile corev1.ConditionStatus = "ErrorSecretReconcile"
)

These are NooBaa condition statuses

View Source
const (
	// Finalizer is the name of the noobaa finalizer
	Finalizer = "noobaa.io/finalizer"

	// GracefulFinalizer is the name of the noobaa graceful finalizer
	GracefulFinalizer = "noobaa.io/graceful_finalizer"

	// DeleteOBCConfirmation represents the validation to destry obc
	DeleteOBCConfirmation CleanupConfirmationProperty = "yes-really-destroy-obc"

	// SkipTopologyConstraints is Annotation name for disabling default topology Constraints
	SkipTopologyConstraints = "noobaa.io/skip_topology_spread_constraints"
)
View Source
const COSIBucketFinalizer = cosiapi.GroupName + "/finalizer"

COSIBucketFinalizer is the name of the COSIBucket finalizer

View Source
const COSIDeletionPolicyDelete = cosiv1.DeletionPolicyDelete

COSIDeletionPolicyDelete is a constant represents a delete deletion policy

View Source
const COSIDeletionPolicyRetain = cosiv1.DeletionPolicyRetain

COSIDeletionPolicyRetain is a constant represents a retain deletion policy

View Source
const COSIKEYAuthenticationType = cosiv1.AuthenticationTypeKey

COSIKEYAuthenticationType is a constant represents a KEY authentication type (secret tokens based authentication)

View Source
const COSIS3Protocol = cosiv1.ProtocolS3

COSIS3Protocol is a constant represents the s3 protocol of buckets

View Source
const ObjectBucketFinalizer = api.Domain + "/finalizer"

ObjectBucketFinalizer is the name of the ObjectBucket finalizer

Variables

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

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

Functions

This section is empty.

Types

type AWSS3Spec

type AWSS3Spec struct {

	// TargetBucket is the name of the target S3 bucket
	TargetBucket string `json:"targetBucket"`

	// Secret refers to a secret that provides the credentials
	// The secret should define AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY
	// +optional
	Secret corev1.SecretReference `json:"secret"`

	// Region is the AWS region
	// +optional
	Region string `json:"region,omitempty"`

	// SSLDisabled allows to disable SSL and use plain http
	// +optional
	SSLDisabled bool `json:"sslDisabled,omitempty"`

	// AWSSTSRoleARN allows to Assume Role and use AssumeRoleWithWebIdentity
	// +optional
	AWSSTSRoleARN *string `json:"awsSTSRoleARN,omitempty"`
}

AWSS3Spec specifies a backing store of type aws-s3

func (*AWSS3Spec) DeepCopy

func (in *AWSS3Spec) DeepCopy() *AWSS3Spec

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

func (*AWSS3Spec) DeepCopyInto

func (in *AWSS3Spec) DeepCopyInto(out *AWSS3Spec)

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

type AccessModeType

type AccessModeType string

AccessModeType is the type of all the optional access modes

const (
	// AccessModeReadWrite is the default access mode
	AccessModeReadWrite AccessModeType = "ReadWrite"
	// AccessModeReadOnly is a read only access mode
	AccessModeReadOnly AccessModeType = "ReadOnly"
)

type AccountNsfsConfig

type AccountNsfsConfig struct {
	UID               *int   `json:"uid,omitempty"`
	GID               *int   `json:"gid,omitempty"`
	NewBucketsPath    string `json:"new_buckets_path"`
	NsfsOnly          bool   `json:"nsfs_only"`
	DistinguishedName string `json:"distinguished_name,omitempty"`
}

AccountNsfsConfig is the configuration of NSFS of CreateAccountParams

func (*AccountNsfsConfig) DeepCopy

func (in *AccountNsfsConfig) DeepCopy() *AccountNsfsConfig

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

func (*AccountNsfsConfig) DeepCopyInto

func (in *AccountNsfsConfig) DeepCopyInto(out *AccountNsfsConfig)

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

type AccountsStatus

type AccountsStatus struct {
	Admin UserStatus `json:"admin"`
}

AccountsStatus is the status info of admin account

func (*AccountsStatus) DeepCopy

func (in *AccountsStatus) DeepCopy() *AccountsStatus

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

func (*AccountsStatus) DeepCopyInto

func (in *AccountsStatus) DeepCopyInto(out *AccountsStatus)

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

type Annotations

type Annotations map[string]string

Annotations are annotation for a given daemon

func (Annotations) DeepCopy

func (in Annotations) DeepCopy() Annotations

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

func (Annotations) DeepCopyInto

func (in Annotations) DeepCopyInto(out *Annotations)

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

type AnnotationsSpec

type AnnotationsSpec map[string]Annotations

AnnotationsSpec is the main spec annotation for all daemons

func (AnnotationsSpec) DeepCopy

func (in AnnotationsSpec) DeepCopy() AnnotationsSpec

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

func (AnnotationsSpec) DeepCopyInto

func (in AnnotationsSpec) DeepCopyInto(out *AnnotationsSpec)

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

type AutoscalerSpec

type AutoscalerSpec struct {
	// Type of autoscaling (optional) for noobaa-endpoint, hpav2(default) and keda - Prometheus metrics based
	// +kubebuilder:validation:Enum=hpav2;keda
	// +optional
	AutoscalerType AutoscalerTypes `json:"autoscalerType,omitempty"`

	// Prometheus namespace that scrap metrics from noobaa
	// +optional
	PrometheusNamespace string `json:"prometheusNamespace,omitempty"`
}

AutoscalerSpec defines different actoscaling spec such as autoscaler type and prometheus namespace

func (*AutoscalerSpec) DeepCopy

func (in *AutoscalerSpec) DeepCopy() *AutoscalerSpec

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

func (*AutoscalerSpec) DeepCopyInto

func (in *AutoscalerSpec) DeepCopyInto(out *AutoscalerSpec)

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

type AutoscalerTypes

type AutoscalerTypes string

AutoscalerTypes is a string enum type for specifying the types of autoscaling supported.

const (
	// AutoscalerTypeKeda is keda
	AutoscalerTypeKeda AutoscalerTypes = "keda"
	// AutoscalerTypeHPAV2 is hpav2
	AutoscalerTypeHPAV2 AutoscalerTypes = "hpav2"
)

These are the valid AutoscalerTypes types:

type AzureBlobSpec

type AzureBlobSpec struct {

	// TargetBlobContainer is the name of the target Azure Blob container
	TargetBlobContainer string `json:"targetBlobContainer"`

	// Secret refers to a secret that provides the credentials
	// The secret should define AccountName and AccountKey as provided by Azure Blob.
	Secret corev1.SecretReference `json:"secret"`
}

AzureBlobSpec specifies a backing store of type azure-blob

func (*AzureBlobSpec) DeepCopy

func (in *AzureBlobSpec) DeepCopy() *AzureBlobSpec

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

func (*AzureBlobSpec) DeepCopyInto

func (in *AzureBlobSpec) DeepCopyInto(out *AzureBlobSpec)

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

type BackingStore

type BackingStore struct {

	// Standard type metadata.
	metav1.TypeMeta `json:",inline"`

	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty"`

	// Specification of the desired behavior of the noobaa BackingStore.
	// +optional
	Spec BackingStoreSpec `json:"spec,omitempty"`

	// Most recently observed status of the noobaa BackingStore.
	// +optional
	Status BackingStoreStatus `json:"status,omitempty"`
}

BackingStore is the Schema for the backingstores API +k8s:openapi-gen=true +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Type",type="string",JSONPath=".spec.type",description="Type" +kubebuilder:printcolumn:name="Phase",type="string",JSONPath=".status.phase",description="Phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (*BackingStore) DeepCopy

func (in *BackingStore) DeepCopy() *BackingStore

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

func (*BackingStore) DeepCopyInto

func (in *BackingStore) DeepCopyInto(out *BackingStore)

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

func (*BackingStore) DeepCopyObject

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

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

type BackingStoreList

type BackingStoreList struct {

	// Standard type metadata.
	metav1.TypeMeta `json:",inline"`

	// Standard list metadata.
	// +optional
	metav1.ListMeta `json:"metadata,omitempty"`

	// Items is the list of BackingStores.
	Items []BackingStore `json:"items"`
}

BackingStoreList contains a list of BackingStore +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*BackingStoreList) DeepCopy

func (in *BackingStoreList) DeepCopy() *BackingStoreList

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

func (*BackingStoreList) DeepCopyInto

func (in *BackingStoreList) DeepCopyInto(out *BackingStoreList)

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

func (*BackingStoreList) DeepCopyObject

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

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

type BackingStoreMode

type BackingStoreMode struct {
	// ModeCode specifies the updated mode of backingstore
	// +optional
	ModeCode string `json:"modeCode,omitempty"`
	// TimeStamp specifies the update time of backingstore new mode
	// +optional
	TimeStamp string `json:"timeStamp,omitempty"`
}

BackingStoreMode defines the updated Mode of BackingStore

func (*BackingStoreMode) DeepCopy

func (in *BackingStoreMode) DeepCopy() *BackingStoreMode

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

func (*BackingStoreMode) DeepCopyInto

func (in *BackingStoreMode) DeepCopyInto(out *BackingStoreMode)

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

type BackingStoreName

type BackingStoreName = string

BackingStoreName is just a name-reference to a BackingStore

type BackingStorePhase

type BackingStorePhase string

BackingStorePhase is a string enum type for backing store reconcile phases

const (

	// BackingStorePhaseRejected means the spec has been rejected by the operator,
	// this is most likely due to an incompatible configuration.
	// Use describe to see events.
	BackingStorePhaseRejected BackingStorePhase = "Rejected"

	// BackingStorePhaseVerifying means the operator is verifying the spec
	BackingStorePhaseVerifying BackingStorePhase = "Verifying"

	// BackingStorePhaseConnecting means the operator is trying to connect to the system
	BackingStorePhaseConnecting BackingStorePhase = "Connecting"

	// BackingStorePhaseCreating means the operator is creating the resources on the cluster
	BackingStorePhaseCreating BackingStorePhase = "Creating"

	// BackingStorePhaseReady means the noobaa system has been created and ready to serve.
	BackingStorePhaseReady BackingStorePhase = "Ready"

	// BackingStorePhaseDeleting means the operator is deleting the resources on the cluster
	BackingStorePhaseDeleting BackingStorePhase = "Deleting"
)

These are the valid phases:

type BackingStoreSpec

type BackingStoreSpec struct {

	// Type is an enum of supported types
	Type StoreType `json:"type"`

	// AWSS3Spec specifies a backing store of type aws-s3
	// +optional
	AWSS3 *AWSS3Spec `json:"awsS3,omitempty"`

	// S3Compatible specifies a backing store of type s3-compatible
	// +optional
	S3Compatible *S3CompatibleSpec `json:"s3Compatible,omitempty"`

	// IBMCos specifies a backing store of type ibm-cos
	// +optional
	IBMCos *IBMCosSpec `json:"ibmCos,omitempty"`

	// AzureBlob specifies a backing store of type azure-blob
	// +optional
	AzureBlob *AzureBlobSpec `json:"azureBlob,omitempty"`

	// GoogleCloudStorage specifies a backing store of type google-cloud-storage
	// +optional
	GoogleCloudStorage *GoogleCloudStorageSpec `json:"googleCloudStorage,omitempty"`

	// PVPool specifies a backing store of type pv-pool
	// +optional
	PVPool *PVPoolSpec `json:"pvPool,omitempty"`
}

BackingStoreSpec defines the desired state of BackingStore +k8s:openapi-gen=true

func (*BackingStoreSpec) DeepCopy

func (in *BackingStoreSpec) DeepCopy() *BackingStoreSpec

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

func (*BackingStoreSpec) DeepCopyInto

func (in *BackingStoreSpec) DeepCopyInto(out *BackingStoreSpec)

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

type BackingStoreStatus

type BackingStoreStatus struct {

	// Phase is a simple, high-level summary of where the backing store is in its lifecycle
	// +optional
	Phase BackingStorePhase `json:"phase,omitempty"`

	// Conditions is a list of conditions related to operator reconciliation
	// +patchMergeKey=type
	// +patchStrategy=merge
	// +optional
	Conditions []conditionsv1.Condition `json:"conditions,omitempty"  patchStrategy:"merge" patchMergeKey:"type"`

	// RelatedObjects is a list of objects related to this operator.
	// +optional
	RelatedObjects []corev1.ObjectReference `json:"relatedObjects,omitempty"`
	// Mode specifies the updating mode of a BackingStore
	// +optional
	Mode BackingStoreMode `json:"mode,omitempty"`
}

BackingStoreStatus defines the observed state of BackingStore +k8s:openapi-gen=true

func (*BackingStoreStatus) DeepCopy

func (in *BackingStoreStatus) DeepCopy() *BackingStoreStatus

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

func (*BackingStoreStatus) DeepCopyInto

func (in *BackingStoreStatus) DeepCopyInto(out *BackingStoreStatus)

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

type BucketClass

type BucketClass struct {

	// Standard type metadata.
	metav1.TypeMeta `json:",inline"`

	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty"`

	// Specification of the desired behavior of the noobaa BucketClass.
	// +optional
	Spec BucketClassSpec `json:"spec,omitempty"`

	// Most recently observed status of the noobaa BackingStore.
	// +optional
	Status BucketClassStatus `json:"status,omitempty"`
}

BucketClass is the Schema for the bucketclasses API +k8s:openapi-gen=true +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Placement",type="string",JSONPath=".spec.placementPolicy",description="Placement" +kubebuilder:printcolumn:name="NamespacePolicy",type="string",JSONPath=".spec.namespacePolicy",description="NamespacePolicy" +kubebuilder:printcolumn:name="Quota",type="string",JSONPath=".spec.quota",description="Quota" +kubebuilder:printcolumn:name="Phase",type="string",JSONPath=".status.phase",description="Phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (*BucketClass) DeepCopy

func (in *BucketClass) DeepCopy() *BucketClass

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

func (*BucketClass) DeepCopyInto

func (in *BucketClass) DeepCopyInto(out *BucketClass)

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

func (*BucketClass) DeepCopyObject

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

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

type BucketClassList

type BucketClassList struct {

	// Standard type metadata.
	metav1.TypeMeta `json:",inline"`

	// Standard list metadata.
	// +optional
	metav1.ListMeta `json:"metadata,omitempty"`

	// Items is the list of BucketClasses.
	Items []BucketClass `json:"items"`
}

BucketClassList contains a list of BucketClass +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*BucketClassList) DeepCopy

func (in *BucketClassList) DeepCopy() *BucketClassList

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

func (*BucketClassList) DeepCopyInto

func (in *BucketClassList) DeepCopyInto(out *BucketClassList)

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

func (*BucketClassList) DeepCopyObject

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

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

type BucketClassPhase

type BucketClassPhase string

BucketClassPhase is a string enum type for system phases

const (

	// BucketClassPhaseRejected means the spec has been rejected by the operator,
	// this is most likely due to an incompatible configuration.
	// Use describe to see events.
	BucketClassPhaseRejected BucketClassPhase = "Rejected"

	// BucketClassPhaseVerifying means the operator is verifying the spec
	BucketClassPhaseVerifying BucketClassPhase = "Verifying"

	// BucketClassPhaseConfiguring means the operator is configuring the buckets as requested
	BucketClassPhaseConfiguring BucketClassPhase = "Configuring"

	// BucketClassPhaseReady means the noobaa system has been created and ready to serve.
	BucketClassPhaseReady BucketClassPhase = "Ready"

	// BucketClassPhaseDeleting means the operator is deleting the resources on the cluster
	BucketClassPhaseDeleting BucketClassPhase = "Deleting"
)

These are the valid phases:

type BucketClassSpec

type BucketClassSpec struct {

	// PlacementPolicy specifies the placement policy for the bucket class
	// +optional
	PlacementPolicy *PlacementPolicy `json:"placementPolicy,omitempty"`

	// NamespacePolicy specifies the namespace policy for the bucket class
	// +optional
	NamespacePolicy *NamespacePolicy `json:"namespacePolicy,omitempty"`

	// Quota specifies the quota configuration for the bucket class
	// +optional
	Quota *Quota `json:"quota,omitempty"`

	// ReplicationPolicy specifies a json of replication rules for the bucketclass
	// +optional
	ReplicationPolicy string `json:"replicationPolicy,omitempty"`
}

BucketClassSpec defines the desired state of BucketClass +k8s:openapi-gen=true

func (*BucketClassSpec) DeepCopy

func (in *BucketClassSpec) DeepCopy() *BucketClassSpec

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

func (*BucketClassSpec) DeepCopyInto

func (in *BucketClassSpec) DeepCopyInto(out *BucketClassSpec)

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

type BucketClassStatus

type BucketClassStatus struct {
	// Phase is a simple, high-level summary of where the System is in its lifecycle
	// +optional
	Phase BucketClassPhase `json:"phase,omitempty"`

	// Conditions is a list of conditions related to operator reconciliation
	// +patchMergeKey=type
	// +patchStrategy=merge
	// +optional
	Conditions []conditionsv1.Condition `json:"conditions,omitempty"  patchStrategy:"merge" patchMergeKey:"type"`

	// RelatedObjects is a list of objects related to this operator.
	// +optional
	RelatedObjects []corev1.ObjectReference `json:"relatedObjects,omitempty"`
	// Mode is a simple, high-level summary of where the System is in its lifecycle
	// +optional
	Mode string `json:"mode,omitempty"`
}

BucketClassStatus defines the observed state of BucketClass +k8s:openapi-gen=true

func (*BucketClassStatus) DeepCopy

func (in *BucketClassStatus) DeepCopy() *BucketClassStatus

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

func (*BucketClassStatus) DeepCopyInto

func (in *BucketClassStatus) DeepCopyInto(out *BucketClassStatus)

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

type BucketLoggingSpec

type BucketLoggingSpec struct {
	// LoggingType specifies the type of logging for the bucket
	// There are two types available: best-effort and guaranteed logging
	// - best-effort(default) - less immune to failures but with better performance
	// - guaranteed - much more reliable but need to provide a storage class that supports RWX PVs
	// +optional
	LoggingType BucketLoggingTypes `json:"loggingType,omitempty"`

	// BucketLoggingPVC (optional) specifies the name of the Persistent Volume Claim (PVC) to be used
	// for guaranteed logging when the logging type is set to 'guaranteed'. The PVC must support
	// ReadWriteMany (RWX) access mode to ensure reliable logging.
	// For ODF: If not provided, the default CephFS storage class will be used to create the PVC.
	// +optional
	BucketLoggingPVC *string `json:"bucketLoggingPVC,omitempty"`
}

BucketLoggingSpec defines the bucket logging configuration

func (*BucketLoggingSpec) DeepCopy

func (in *BucketLoggingSpec) DeepCopy() *BucketLoggingSpec

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

func (*BucketLoggingSpec) DeepCopyInto

func (in *BucketLoggingSpec) DeepCopyInto(out *BucketLoggingSpec)

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

type BucketLoggingTypes

type BucketLoggingTypes string

BucketLoggingTypes is a string enum type for specifying the types of bucketlogging supported.

const (
	// BucketLoggingTypeBestEffort is best-effort
	BucketLoggingTypeBestEffort BucketLoggingTypes = "best-effort"

	// BucketLoggingTypeGuaranteed is guaranteed
	BucketLoggingTypeGuaranteed BucketLoggingTypes = "guaranteed"
)

These are the valid BucketLoggingTypes types:

type BucketNotificationsSpec

type BucketNotificationsSpec struct {
	// Enabled - whether bucket notifications is enabled
	Enabled bool `json:"enabled"`

	//PVC (optional) specifies the name of the Persistent Volume Claim (PVC) to be used
	//for holding pending notifications files.
	//For ODF - If not provided, the default CepthFS storage class will be used to create the PVC.
	// +optional
	PVC *string `json:"pvc,omitempty"`

	//Connections - A list of secrets' names that are used by the notifications configrations
	//(in the TopicArn field).
	Connections []corev1.SecretReference `json:"connections,omitempty"`
}

BucketNotificationsSpec controls bucket notification configuration

func (*BucketNotificationsSpec) DeepCopy

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

func (*BucketNotificationsSpec) DeepCopyInto

func (in *BucketNotificationsSpec) DeepCopyInto(out *BucketNotificationsSpec)

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

type COSIAuthenticationType

type COSIAuthenticationType = cosiv1.AuthenticationType

COSIAuthenticationType is the API type represents bucket access class authentication type

type COSIBucket

type COSIBucket = cosiv1.Bucket

COSIBucket is the API type for provisioners of buckets

type COSIBucketAccessClaim

type COSIBucketAccessClaim = cosiv1.BucketAccess

COSIBucketAccessClaim is the API type for submitting bucket access claims

type COSIBucketAccessClaimList

type COSIBucketAccessClaimList = cosiv1.BucketAccessList

COSIBucketAccessClaimList is a list of COSIBucketAccessClaim

type COSIBucketAccessClass

type COSIBucketAccessClass = cosiv1.BucketAccessClass

COSIBucketAccessClass is the API type for submitting access classes

type COSIBucketAccessClassList

type COSIBucketAccessClassList = cosiv1.BucketAccessClassList

COSIBucketAccessClassList is a list of COSIAccessClass

type COSIBucketClaim

type COSIBucketClaim = cosiv1.BucketClaim

COSIBucketClaim is the API type for submitting bucket claims

type COSIBucketClaimList

type COSIBucketClaimList = cosiv1.BucketClaimList

COSIBucketClaimList is a list of COSIBucketClaim

type COSIBucketClaimSpec

type COSIBucketClaimSpec = cosiv1.BucketClaimSpec

COSIBucketClaimSpec defines the desired state of COSIBucketClaim

type COSIBucketClass

type COSIBucketClass = cosiv1.BucketClass

COSIBucketClass is the API type for submitting bucket classes

type COSIBucketClassList

type COSIBucketClassList = cosiv1.BucketClassList

COSIBucketClassList is a list of COSIBucketClass

type COSIBucketInfo

type COSIBucketInfo = cosiapis.BucketInfo

COSIBucketInfo is the API type represents bucket info

type COSIBucketList

type COSIBucketList = cosiv1.BucketList

COSIBucketList is a list of COSIBucket

type COSIBucketSpec

type COSIBucketSpec = cosiv1.BucketSpec

COSIBucketSpec defines the desired state of COSIBucket

type COSIProtocol

type COSIProtocol = cosiv1.Protocol

COSIProtocol is the API type for protocols of buckets

type CacheNamespacePolicy

type CacheNamespacePolicy struct {

	// HubResource is the read and write resource name to use
	HubResource string `json:"hubResource,omitempty"`

	// Caching is the cache specification for the ns policy
	Caching *CacheSpec `json:"caching,omitempty"`
}

CacheNamespacePolicy specifies the configuration of namespace policy of type Cache

func (*CacheNamespacePolicy) DeepCopy

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

func (*CacheNamespacePolicy) DeepCopyInto

func (in *CacheNamespacePolicy) DeepCopyInto(out *CacheNamespacePolicy)

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

type CacheSpec

type CacheSpec struct {

	// TTL specifies the cache ttl
	TTL int `json:"ttl,omitempty"`

	// Prefix is prefix of the future cached data
	// +optional
	Prefix string `json:"prefix,omitempty"`
}

CacheSpec specifies the cache specifications for the bucket class

func (*CacheSpec) DeepCopy

func (in *CacheSpec) DeepCopy() *CacheSpec

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

func (*CacheSpec) DeepCopyInto

func (in *CacheSpec) DeepCopyInto(out *CacheSpec)

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

type CleanupConfirmationProperty

type CleanupConfirmationProperty string

CleanupConfirmationProperty is a string that specifies cleanup confirmation

type CleanupPolicySpec

type CleanupPolicySpec struct {
	Confirmation CleanupConfirmationProperty `json:"confirmation,omitempty"`

	// +optional
	AllowNoobaaDeletion bool `json:"allowNoobaaDeletion,omitempty"`
}

CleanupPolicySpec specifies the cleanup policy

func (*CleanupPolicySpec) DeepCopy

func (in *CleanupPolicySpec) DeepCopy() *CleanupPolicySpec

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

func (*CleanupPolicySpec) DeepCopyInto

func (in *CleanupPolicySpec) DeepCopyInto(out *CleanupPolicySpec)

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

type DBTypes

type DBTypes string

DBTypes is a string enum type for specify the types of DB that are supported.

const (
	// DBTypePostgres is postgres
	DBTypePostgres DBTypes = "postgres"
)

These are the valid DB types:

type EndpointsSpec

type EndpointsSpec struct {
	// MinCount, the number of endpoint instances (pods)
	// to be used as the lower bound when autoscaling
	MinCount int32 `json:"minCount,omitempty"`

	// MaxCount, the number of endpoint instances (pods)
	// to be used as the upper bound when autoscaling
	MaxCount int32 `json:"maxCount,omitempty"`

	// AdditionalVirtualHosts (optional) provide a list of additional hostnames
	// (on top of the builtin names defined by the cluster: service name, elb name, route name)
	// to be used as virtual hosts by the the endpoints in the endpoint deployment
	// +optional
	AdditionalVirtualHosts []string `json:"additionalVirtualHosts,omitempty"`

	// Resources (optional) overrides the default resource requirements for every endpoint pod
	// +optional
	Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
}

EndpointsSpec defines the desired state of noobaa endpoint deployment +k8s:openapi-gen=true

func (*EndpointsSpec) DeepCopy

func (in *EndpointsSpec) DeepCopy() *EndpointsSpec

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

func (*EndpointsSpec) DeepCopyInto

func (in *EndpointsSpec) DeepCopyInto(out *EndpointsSpec)

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

type EndpointsStatus

type EndpointsStatus struct {
	ReadyCount   int32    `json:"readyCount"`
	VirtualHosts []string `json:"virtualHosts"`
}

EndpointsStatus is the status info for the endpoints deployment

func (*EndpointsStatus) DeepCopy

func (in *EndpointsStatus) DeepCopy() *EndpointsStatus

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

func (*EndpointsStatus) DeepCopyInto

func (in *EndpointsStatus) DeepCopyInto(out *EndpointsStatus)

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

type GoogleCloudStorageSpec

type GoogleCloudStorageSpec struct {

	// TargetBucket is the name of the target S3 bucket
	TargetBucket string `json:"targetBucket"`

	// Secret refers to a secret that provides the credentials
	// The secret should define GoogleServiceAccountPrivateKeyJson containing the entire json string as provided by Google.
	Secret corev1.SecretReference `json:"secret"`
}

GoogleCloudStorageSpec specifies a backing store of type google-cloud-storage

func (*GoogleCloudStorageSpec) DeepCopy

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

func (*GoogleCloudStorageSpec) DeepCopyInto

func (in *GoogleCloudStorageSpec) DeepCopyInto(out *GoogleCloudStorageSpec)

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

type IBMCosSpec

type IBMCosSpec struct {

	// TargetBucket is the name of the target IBM COS bucket
	TargetBucket string `json:"targetBucket"`

	// Secret refers to a secret that provides the credentials
	// The secret should define IBM_COS_ACCESS_KEY_ID and IBM_COS_SECRET_ACCESS_KEY
	Secret corev1.SecretReference `json:"secret"`

	// Endpoint is the IBM COS compatible endpoint: http(s)://host:port
	Endpoint string `json:"endpoint"`

	// SignatureVersion specifies the client signature version to use when signing requests.
	// +optional
	SignatureVersion S3SignatureVersion `json:"signatureVersion,omitempty"`
}

IBMCosSpec specifies a backing store of type ibm-cos

func (*IBMCosSpec) DeepCopy

func (in *IBMCosSpec) DeepCopy() *IBMCosSpec

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

func (*IBMCosSpec) DeepCopyInto

func (in *IBMCosSpec) DeepCopyInto(out *IBMCosSpec)

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

type KeyManagementServiceSpec

type KeyManagementServiceSpec struct {
	// +optional
	EnableKeyRotation bool `json:"enableKeyRotation,omitempty"`
	// +optional
	Schedule          string            `json:"schedule,omitempty"`
	ConnectionDetails map[string]string `json:"connectionDetails,omitempty"`
	TokenSecretName   string            `json:"tokenSecretName,omitempty"`
}

KeyManagementServiceSpec represent various details of the KMS server

func (*KeyManagementServiceSpec) DeepCopy

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

func (*KeyManagementServiceSpec) DeepCopyInto

func (in *KeyManagementServiceSpec) DeepCopyInto(out *KeyManagementServiceSpec)

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

type Labels

type Labels map[string]string

Labels are label for a given daemon

func (Labels) DeepCopy

func (in Labels) DeepCopy() Labels

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

func (Labels) DeepCopyInto

func (in Labels) DeepCopyInto(out *Labels)

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

type LabelsSpec

type LabelsSpec map[string]Labels

LabelsSpec is the main spec label for all daemons

func (LabelsSpec) DeepCopy

func (in LabelsSpec) DeepCopy() LabelsSpec

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

func (LabelsSpec) DeepCopyInto

func (in LabelsSpec) DeepCopyInto(out *LabelsSpec)

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

type LoadBalancerSourceSubnetSpec

type LoadBalancerSourceSubnetSpec struct {
	// S3 is a list of subnets that will be allowed to access the Noobaa S3 service
	// +optional
	S3 []string `json:"s3,omitempty"`

	// STS is a list of subnets that will be allowed to access the Noobaa STS service
	// +optional
	STS []string `json:"sts,omitempty"`
}

LoadBalancerSourceSubnetSpec defines the subnets that will be allowed to access the NooBaa services

func (*LoadBalancerSourceSubnetSpec) DeepCopy

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

func (*LoadBalancerSourceSubnetSpec) DeepCopyInto

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

type MultiNamespacePolicy

type MultiNamespacePolicy struct {

	// ReadResources is an ordered list of read resources names to use
	ReadResources []string `json:"readResources,omitempty"`

	// WriteResource is the write resource name to use
	// +optional
	WriteResource string `json:"writeResource,omitempty"`
}

MultiNamespacePolicy specifies the configuration of namespace policy of type Multi

func (*MultiNamespacePolicy) DeepCopy

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

func (*MultiNamespacePolicy) DeepCopyInto

func (in *MultiNamespacePolicy) DeepCopyInto(out *MultiNamespacePolicy)

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

type NSBucketClassType

type NSBucketClassType string

NSBucketClassType is the namespace bucketclass type enum

const (
	// NSBucketClassTypeSingle is used to configure namespace bucket class of type Single
	NSBucketClassTypeSingle NSBucketClassType = "Single"

	// NSBucketClassTypeMulti is used to configure namespace bucket class of type Multi
	NSBucketClassTypeMulti NSBucketClassType = "Multi"

	// NSBucketClassTypeCache is used to configure namespace bucket class of type Cache
	NSBucketClassTypeCache NSBucketClassType = "Cache"
)

type NSFSSpec

type NSFSSpec struct {
	// PvcName is the name of the pvc in which the file system resides
	PvcName string `json:"pvcName"`

	// SubPath is a path to a sub directory in the pvc file system
	// +optional
	SubPath string `json:"subPath"`

	// FsBackend is the backend type of the file system
	// +optional
	// +kubebuilder:validation:Enum=CEPH_FS;GPFS;NFSv4
	FsBackend string `json:"fsBackend,omitempty"`
}

NSFSSpec specifies a namespace store of type nsfs

func (*NSFSSpec) DeepCopy

func (in *NSFSSpec) DeepCopy() *NSFSSpec

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

func (*NSFSSpec) DeepCopyInto

func (in *NSFSSpec) DeepCopyInto(out *NSFSSpec)

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

type NSType

type NSType string

NSType is the backing store type enum

const (
	// NSStoreTypeAWSS3 is used to connect to AWS S3
	NSStoreTypeAWSS3 NSType = "aws-s3"

	// NSStoreTypeS3Compatible is used to connect to S3 compatible storage
	NSStoreTypeS3Compatible NSType = "s3-compatible"

	// NSStoreTypeIBMCos is used to connect to IBM cos storage
	NSStoreTypeIBMCos NSType = "ibm-cos"

	// NSStoreTypeAzureBlob is used to connect to Azure Blob
	NSStoreTypeAzureBlob NSType = "azure-blob"

	// NSStoreTypeGoogleCloudStorage is used to connect to Google Cloud Storage
	NSStoreTypeGoogleCloudStorage NSType = "google-cloud-storage"

	// NSStoreTypeNSFS is used to connect to a file system
	NSStoreTypeNSFS NSType = "nsfs"
)

type NamespacePolicy

type NamespacePolicy struct {
	// Type is the namespace policy type
	Type NSBucketClassType `json:"type,omitempty"`

	// Single is a namespace policy configuration of type Single
	// +optional
	Single *SingleNamespacePolicy `json:"single,omitempty"`

	// Multi is a namespace policy configuration of type Multi
	// +optional
	Multi *MultiNamespacePolicy `json:"multi,omitempty"`

	// Cache is a namespace policy configuration of type Cache
	// +optional
	Cache *CacheNamespacePolicy `json:"cache,omitempty"`
}

NamespacePolicy specifies the namespace policy for the bucket class

func (*NamespacePolicy) DeepCopy

func (in *NamespacePolicy) DeepCopy() *NamespacePolicy

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

func (*NamespacePolicy) DeepCopyInto

func (in *NamespacePolicy) DeepCopyInto(out *NamespacePolicy)

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

type NamespaceStore

type NamespaceStore struct {

	// Standard type metadata.
	metav1.TypeMeta `json:",inline"`

	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty"`

	// Specification of the desired behavior of the noobaa NamespaceStore.
	// +optional
	Spec NamespaceStoreSpec `json:"spec,omitempty"`

	// Most recently observed status of the noobaa NamespaceStore.
	// +optional
	Status NamespaceStoreStatus `json:"status,omitempty"`
}

NamespaceStore is the Schema for the namespacestores API +k8s:openapi-gen=true +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Type",type="string",JSONPath=".spec.type",description="Type" +kubebuilder:printcolumn:name="Phase",type="string",JSONPath=".status.phase",description="Phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (*NamespaceStore) DeepCopy

func (in *NamespaceStore) DeepCopy() *NamespaceStore

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

func (*NamespaceStore) DeepCopyInto

func (in *NamespaceStore) DeepCopyInto(out *NamespaceStore)

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

func (*NamespaceStore) DeepCopyObject

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

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

type NamespaceStoreList

type NamespaceStoreList struct {

	// Standard type metadata.
	metav1.TypeMeta `json:",inline"`

	// Standard list metadata.
	// +optional
	metav1.ListMeta `json:"metadata,omitempty"`

	// Items is the list of NamespaceStores.
	Items []NamespaceStore `json:"items"`
}

NamespaceStoreList contains a list of NamespaceStore +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*NamespaceStoreList) DeepCopy

func (in *NamespaceStoreList) DeepCopy() *NamespaceStoreList

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

func (*NamespaceStoreList) DeepCopyInto

func (in *NamespaceStoreList) DeepCopyInto(out *NamespaceStoreList)

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

func (*NamespaceStoreList) DeepCopyObject

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

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

type NamespaceStoreMode

type NamespaceStoreMode struct {
	// ModeCode specifies the updated mode of namespacestore
	// +optional
	ModeCode string `json:"modeCode,omitempty"`
	// TimeStamp specifies the update time of namespacestore new mode
	// +optional
	TimeStamp string `json:"timeStamp,omitempty"`
}

NamespaceStoreMode defines the updated Mode of NamespaceStore

func (*NamespaceStoreMode) DeepCopy

func (in *NamespaceStoreMode) DeepCopy() *NamespaceStoreMode

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

func (*NamespaceStoreMode) DeepCopyInto

func (in *NamespaceStoreMode) DeepCopyInto(out *NamespaceStoreMode)

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

type NamespaceStorePhase

type NamespaceStorePhase string

NamespaceStorePhase is a string enum type for namespace store reconcile phases

const (

	// NamespaceStorePhasePhaseRejected means the spec has been rejected by the operator,
	// this is most likely due to an incompatible configuration.
	// Use describe to see events.
	NamespaceStorePhaseRejected NamespaceStorePhase = "Rejected"

	// NamespacetorePhaseVerifying means the operator is verifying the spec
	NamespaceStorePhaseVerifying NamespaceStorePhase = "Verifying"

	// NamespaceStorePhaseConnecting means the operator is trying to connect to the system
	NamespaceStorePhaseConnecting NamespaceStorePhase = "Connecting"

	// NamespaceStorePhaseCreating means the operator is creating the resources on the cluster
	NamespaceStorePhaseCreating NamespaceStorePhase = "Creating"

	// NamespaceStorePhaseReady means the noobaa system has been created and ready to serve.
	NamespaceStorePhaseReady NamespaceStorePhase = "Ready"

	// NamespaceStorePhaseDeleting means the operator is deleting the resources on the cluster
	NamespaceStorePhaseDeleting NamespaceStorePhase = "Deleting"
)

These are the valid phases:

type NamespaceStoreSpec

type NamespaceStoreSpec struct {

	// Type is an enum of supported types
	Type NSType `json:"type"`

	//AccessMode is an enum of supported access modes
	// +optional
	AccessMode AccessModeType `json:"accessMode,omitempty"`

	// AWSS3Spec specifies a namespace store of type aws-s3
	// +optional
	AWSS3 *AWSS3Spec `json:"awsS3,omitempty"`

	// S3Compatible specifies a namespace store of type s3-compatible
	// +optional
	S3Compatible *S3CompatibleSpec `json:"s3Compatible,omitempty"`

	// IBMCos specifies a namespace store of type ibm-cos
	// +optional
	IBMCos *IBMCosSpec `json:"ibmCos,omitempty"`

	// AzureBlob specifies a namespace store of type azure-blob
	// +optional
	AzureBlob *AzureBlobSpec `json:"azureBlob,omitempty"`

	// GoogleCloudStorage specifies a namespace store of type google-cloud-storage
	// +optional
	GoogleCloudStorage *GoogleCloudStorageSpec `json:"googleCloudStorage,omitempty"`

	// NSFS specifies a namespace store of type nsfs
	// +optional
	NSFS *NSFSSpec `json:"nsfs,omitempty"`
}

NamespaceStoreSpec defines the desired state of NamespaceStore +k8s:openapi-gen=true

func (*NamespaceStoreSpec) DeepCopy

func (in *NamespaceStoreSpec) DeepCopy() *NamespaceStoreSpec

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

func (*NamespaceStoreSpec) DeepCopyInto

func (in *NamespaceStoreSpec) DeepCopyInto(out *NamespaceStoreSpec)

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

type NamespaceStoreStatus

type NamespaceStoreStatus struct {

	// Phase is a simple, high-level summary of where the namespace store is in its lifecycle
	// +optional
	Phase NamespaceStorePhase `json:"phase,omitempty"`

	// Conditions is a list of conditions related to operator reconciliation
	// +patchMergeKey=type
	// +patchStrategy=merge
	// +optional
	Conditions []conditionsv1.Condition `json:"conditions,omitempty"  patchStrategy:"merge" patchMergeKey:"type"`

	// RelatedObjects is a list of objects related to this operator.
	// +optional
	RelatedObjects []corev1.ObjectReference `json:"relatedObjects,omitempty"`
	// Mode specifies the updating mode of a NamespaceStore
	// +optional
	Mode NamespaceStoreMode `json:"mode,omitempty"`
}

NamespaceStoreStatus defines the observed state of NamespaceStore +k8s:openapi-gen=true

func (*NamespaceStoreStatus) DeepCopy

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

func (*NamespaceStoreStatus) DeepCopyInto

func (in *NamespaceStoreStatus) DeepCopyInto(out *NamespaceStoreStatus)

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

type NooBaa

type NooBaa struct {

	// Standard type metadata.
	metav1.TypeMeta `json:",inline"`

	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty"`

	// Specification of the desired behavior of the noobaa system.
	// +optional
	Spec NooBaaSpec `json:"spec,omitempty"`

	// Most recently observed status of the noobaa system.
	// +optional
	Status NooBaaStatus `json:"status,omitempty"`
}

NooBaa is the Schema for the NooBaas API +k8s:openapi-gen=true +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:subresource:status +kubebuilder:resource:shortName=nb +kubebuilder:printcolumn:name="S3-Endpoints",type="string",JSONPath=".status.services.serviceS3.nodePorts",description="S3 Endpoints" +kubebuilder:printcolumn:name="Sts-Endpoints",type="string",JSONPath=".status.services.serviceSts.nodePorts",description="STS Endpoints" +kubebuilder:printcolumn:name="Syslog-Endpoints",type="string",JSONPath=".status.services.serviceSyslog.nodePorts",description="Syslog Endpoints" +kubebuilder:printcolumn:name="Image",type="string",JSONPath=".status.actualImage",description="Actual Image" +kubebuilder:printcolumn:name="Phase",type="string",JSONPath=".status.phase",description="Phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (*NooBaa) DeepCopy

func (in *NooBaa) DeepCopy() *NooBaa

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

func (*NooBaa) DeepCopyInto

func (in *NooBaa) DeepCopyInto(out *NooBaa)

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

func (*NooBaa) DeepCopyObject

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

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

type NooBaaAccount

type NooBaaAccount struct {

	// Standard type metadata.
	metav1.TypeMeta `json:",inline"`

	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty"`

	// Specification of the desired behavior of the NooBaaAccount.
	// +optional
	Spec NooBaaAccountSpec `json:"spec,omitempty"`

	// Most recently observed status of the NooBaaAccount.
	// +optional
	Status NooBaaAccountStatus `json:"status,omitempty"`
}

NooBaaAccount is the Schema for the NooBaaAccounts API +k8s:openapi-gen=true +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Phase",type="string",JSONPath=".status.phase",description="Phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (*NooBaaAccount) DeepCopy

func (in *NooBaaAccount) DeepCopy() *NooBaaAccount

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

func (*NooBaaAccount) DeepCopyInto

func (in *NooBaaAccount) DeepCopyInto(out *NooBaaAccount)

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

func (*NooBaaAccount) DeepCopyObject

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

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

type NooBaaAccountList

type NooBaaAccountList struct {

	// Standard type metadata.
	metav1.TypeMeta `json:",inline"`

	// Standard list metadata.
	// +optional
	metav1.ListMeta `json:"metadata,omitempty"`

	// Items is the list of NooBaaAccounts.
	Items []NooBaaAccount `json:"items"`
}

NooBaaAccountList contains a list of NooBaaAccount +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*NooBaaAccountList) DeepCopy

func (in *NooBaaAccountList) DeepCopy() *NooBaaAccountList

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

func (*NooBaaAccountList) DeepCopyInto

func (in *NooBaaAccountList) DeepCopyInto(out *NooBaaAccountList)

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

func (*NooBaaAccountList) DeepCopyObject

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

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

type NooBaaAccountPhase

type NooBaaAccountPhase string

NooBaaAccountPhase is a string enum type for backing store reconcile phases

const (

	// NooBaaAccountPhaseRejected means the spec has been rejected by the operator,
	// this is most likely due to an incompatible configuration.
	// Use describe to see events.
	NooBaaAccountPhaseRejected NooBaaAccountPhase = "Rejected"

	// NooBaaAccountPhaseVerifying means the operator is verifying the spec
	NooBaaAccountPhaseVerifying NooBaaAccountPhase = "Verifying"

	// NooBaaAccountPhaseConfiguring means the operator is trying to connect to the system
	NooBaaAccountPhaseConnecting NooBaaAccountPhase = "Connecting"

	// NooBaaAccountPhaseConfiguring means the operator is configuring the account as requested
	NooBaaAccountPhaseConfiguring NooBaaAccountPhase = "Configuring"

	// NooBaaAccountPhaseReady means the noobaa user has been created and ready to serve.
	NooBaaAccountPhaseReady NooBaaAccountPhase = "Ready"

	// NooBaaAccountPhaseDeleting means the operator is deleting the resources on the cluster
	NooBaaAccountPhaseDeleting NooBaaAccountPhase = "Deleting"
)

These are the valid phases:

type NooBaaAccountSpec

type NooBaaAccountSpec struct {
	// AllowBucketCreate specifies if new buckets can be created by this account
	AllowBucketCreate bool `json:"allow_bucket_creation"`

	// NsfsAccountConfig specifies the configurations on Namespace FS
	// +nullable
	// +optional
	NsfsAccountConfig *AccountNsfsConfig `json:"nsfs_account_config,omitempty"`

	// DefaultResource specifies which backingstore this account will use to create new buckets
	// +optional
	DefaultResource string `json:"default_resource,omitempty"`

	// ForceMd5Etag specifies whether MD5 Etags should be calculated for the account or not
	// +optional
	ForceMd5Etag *bool `json:"force_md5_etag,omitempty"`
}

NooBaaAccountSpec defines the desired state of NooBaaAccount +k8s:openapi-gen=true

func (*NooBaaAccountSpec) DeepCopy

func (in *NooBaaAccountSpec) DeepCopy() *NooBaaAccountSpec

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

func (*NooBaaAccountSpec) DeepCopyInto

func (in *NooBaaAccountSpec) DeepCopyInto(out *NooBaaAccountSpec)

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

type NooBaaAccountStatus

type NooBaaAccountStatus struct {

	// Phase is a simple, high-level summary of where the noobaa user is in its lifecycle
	// +optional
	Phase NooBaaAccountPhase `json:"phase,omitempty"`

	// Conditions is a list of conditions related to operator reconciliation
	// +patchMergeKey=type
	// +patchStrategy=merge
	// +optional
	Conditions []conditionsv1.Condition `json:"conditions,omitempty"  patchStrategy:"merge" patchMergeKey:"type"`

	// RelatedObjects is a list of objects related to this operator.
	// +optional
	RelatedObjects []corev1.ObjectReference `json:"relatedObjects,omitempty"`
}

NooBaaAccountStatus defines the observed state of NooBaaAccount +k8s:openapi-gen=true

func (*NooBaaAccountStatus) DeepCopy

func (in *NooBaaAccountStatus) DeepCopy() *NooBaaAccountStatus

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

func (*NooBaaAccountStatus) DeepCopyInto

func (in *NooBaaAccountStatus) DeepCopyInto(out *NooBaaAccountStatus)

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

type NooBaaList

type NooBaaList struct {

	// Standard type metadata.
	metav1.TypeMeta `json:",inline"`

	// Standard list metadata.
	// +optional
	metav1.ListMeta `json:"metadata,omitempty"`

	// Items is the list of Systems.
	Items []NooBaa `json:"items"`
}

NooBaaList contains a list of noobaa systems +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*NooBaaList) DeepCopy

func (in *NooBaaList) DeepCopy() *NooBaaList

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

func (*NooBaaList) DeepCopyInto

func (in *NooBaaList) DeepCopyInto(out *NooBaaList)

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

func (*NooBaaList) DeepCopyObject

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

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

type NooBaaSpec

type NooBaaSpec struct {

	// Image (optional) overrides the default image for the server container
	// +optional
	Image *string `json:"image,omitempty"`

	// DBImage (optional) overrides the default image for the db container
	// +optional
	DBImage *string `json:"dbImage,omitempty"`

	// DBConf (optional) overrides the default postgresql db config
	// +optional
	DBConf *string `json:"dbConf,omitempty"`

	// DBType (optional) overrides the default type image for the db container.
	// The only possible value is postgres
	// +optional
	// +kubebuilder:validation:Enum=postgres
	DBType DBTypes `json:"dbType,omitempty"`

	// CoreResources (optional) overrides the default resource requirements for the server container
	// +optional
	CoreResources *corev1.ResourceRequirements `json:"coreResources,omitempty"`

	// LogResources (optional) overrides the default resource requirements for the noobaa-log-processor container
	// +optional
	LogResources *corev1.ResourceRequirements `json:"logResources,omitempty"`

	// DBResources (optional) overrides the default resource requirements for the db container
	// +optional
	DBResources *corev1.ResourceRequirements `json:"dbResources,omitempty"`

	// DBVolumeResources (optional) overrides the default PVC resource requirements for the database volume.
	// For the time being this field is immutable and can only be set on system creation.
	// This is because volume size updates are only supported for increasing the size,
	// and only if the storage class specifies `allowVolumeExpansion: true`,
	// +immutable
	// +optional
	DBVolumeResources *corev1.VolumeResourceRequirements `json:"dbVolumeResources,omitempty"`

	// DBStorageClass (optional) overrides the default cluster StorageClass for the database volume.
	// For the time being this field is immutable and can only be set on system creation.
	// This affects where the system stores its database which contains system config,
	// buckets, objects meta-data and mapping file parts to storage locations.
	// +immutable
	// +optional
	DBStorageClass *string `json:"dbStorageClass,omitempty"`

	// ExternalPgSecret (optional) holds an optional secret with a url to an extrenal Postgres DB to be used
	// +optional
	ExternalPgSecret *corev1.SecretReference `json:"externalPgSecret,omitempty"`

	// ExternalPgSSLRequired (optional) holds an optional boolean to force ssl connections to the external Postgres DB
	// +optional
	ExternalPgSSLRequired bool `json:"externalPgSSLRequired,omitempty"`

	// ExternalPgSSLUnauthorized (optional) holds an optional boolean to allow unauthorized connections to external Postgres DB
	// +optional
	ExternalPgSSLUnauthorized bool `json:"externalPgSSLUnauthorized,omitempty"`

	// ExternalPgSSLSecret (optional) holds an optional secret with client key and cert used for connecting to external Postgres DB
	// +optional
	ExternalPgSSLSecret *corev1.SecretReference `json:"externalPgSSLSecret,omitempty"`

	// DebugLevel (optional) sets the debug level
	// +optional
	// +kubebuilder:validation:Enum=all;nsfs;warn;default_level
	DebugLevel int `json:"debugLevel,omitempty"`

	// PVPoolDefaultStorageClass (optional) overrides the default cluster StorageClass for the pv-pool volumes.
	// This affects where the system stores data chunks (encrypted).
	// Updates to this field will only affect new pv-pools,
	// but updates to existing pools are not supported by the operator.
	// +optional
	PVPoolDefaultStorageClass *string `json:"pvPoolDefaultStorageClass,omitempty"`

	// Tolerations (optional) passed through to noobaa's pods
	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty"`

	// Affinity (optional) passed through to noobaa's pods
	// +optional
	Affinity *corev1.Affinity `json:"affinity,omitempty"`

	// ImagePullSecret (optional) sets a pull secret for the system image
	// +optional
	ImagePullSecret *corev1.LocalObjectReference `json:"imagePullSecret,omitempty"`

	// Region (optional) provide a region for the location info
	// of the endpoints in the endpoint deployment
	// +optional
	Region *string `json:"region,omitempty"`

	// Endpoints (optional) sets configuration info for the noobaa endpoint
	// deployment.
	// +optional
	Endpoints *EndpointsSpec `json:"endpoints,omitempty"`

	// JoinSecret (optional) instructs the operator to join another cluster
	// and point to a secret that holds the join information
	// +optional
	JoinSecret *corev1.SecretReference `json:"joinSecret,omitempty"`

	// CleanupPolicy (optional) Indicates user's policy for deletion
	// +optional
	CleanupPolicy CleanupPolicySpec `json:"cleanupPolicy,omitempty"`

	// Security represents security settings
	Security SecuritySpec `json:"security,omitempty"`

	// The labels-related configuration to add/set on each Pod related object.
	// +kubebuilder:pruning:PreserveUnknownFields
	// +nullable
	// +optional
	Labels LabelsSpec `json:"labels,omitempty"`

	// The annotations-related configuration to add/set on each Pod related object.
	// +kubebuilder:pruning:PreserveUnknownFields
	// +nullable
	// +optional
	Annotations AnnotationsSpec `json:"annotations,omitempty"`

	// DisableLoadBalancerService (optional) sets the service type to ClusterIP instead of LoadBalancer
	// +nullable
	// +optional
	DisableLoadBalancerService bool `json:"disableLoadBalancerService,omitempty"`

	// Deprecated: DefaultBackingStoreSpec is not supported anymore, use ManualDefaultBackingStore instead.
	// +optional
	DefaultBackingStoreSpec *BackingStoreSpec `json:"defaultBackingStoreSpec,omitempty"`

	// ManualDefaultBackingStore (optional - default value is false) if true the default backingstore/namespacestore
	// will not be reconciled by the operator and it should be manually handled by the user. It will allow the
	// user to  delete DefaultBackingStore/DefaultNamespaceStore, user needs to delete associated buckets and
	// update the admin account with new BackingStore/NamespaceStore in order to delete the DefaultBackingStore/DefaultNamespaceStore
	// +nullable
	// +optional
	ManualDefaultBackingStore bool `json:"manualDefaultBackingStore,omitempty"`

	// LoadBalancerSourceSubnets (optional) if given will allow access to the NooBaa services
	// only from the listed subnets. This field will have no effect if DisableLoadBalancerService is set
	// to true
	// +optional
	LoadBalancerSourceSubnets LoadBalancerSourceSubnetSpec `json:"loadBalancerSourceSubnets,omitempty"`

	// Configuration related to autoscaling
	// +optional
	Autoscaler AutoscalerSpec `json:"autoscaler,omitempty"`

	// DenyHTTP (optional) if given will deny access to the NooBaa S3 service using HTTP (only HTTPS)
	// +optional
	DenyHTTP bool `json:"denyHTTP,omitempty"`

	// BucketLogging sets the configuration for bucket logging
	// +optional
	BucketLogging BucketLoggingSpec `json:"bucketLogging,omitempty"`

	// BucketNotifications (optional) controls bucket notification options
	// +optional
	BucketNotifications BucketNotificationsSpec `json:"bucketNotifications,omitempty"`
}

NooBaaSpec defines the desired state of System +k8s:openapi-gen=true

func (*NooBaaSpec) DeepCopy

func (in *NooBaaSpec) DeepCopy() *NooBaaSpec

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

func (*NooBaaSpec) DeepCopyInto

func (in *NooBaaSpec) DeepCopyInto(out *NooBaaSpec)

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

type NooBaaStatus

type NooBaaStatus struct {

	// ObservedGeneration is the most recent generation observed for this noobaa system.
	// It corresponds to the CR generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`

	// Phase is a simple, high-level summary of where the System is in its lifecycle
	// +optional
	Phase SystemPhase `json:"phase,omitempty"`

	// Conditions is a list of conditions related to operator reconciliation
	// +patchMergeKey=type
	// +patchStrategy=merge
	// +optional
	Conditions []conditionsv1.Condition `json:"conditions,omitempty"  patchStrategy:"merge" patchMergeKey:"type"`

	// RelatedObjects is a list of objects related to this operator.
	// +optional
	RelatedObjects []corev1.ObjectReference `json:"relatedObjects,omitempty"`

	// ActualImage is set to report which image the operator is using
	// +optional
	ActualImage string `json:"actualImage,omitempty"`

	// Accounts reports accounts info for the admin account
	// +optional
	Accounts *AccountsStatus `json:"accounts,omitempty"`

	// Services reports addresses for the services
	// +optional
	Services *ServicesStatus `json:"services,omitempty"`

	// Endpoints reports the actual number of endpoints in the endpoint deployment
	// and the virtual hosts list used recognized by the endpoints
	// +optional
	Endpoints *EndpointsStatus `json:"endpoints,omitempty"`

	// Upgrade reports the status of the ongoing upgrade process
	// +optional
	UpgradePhase UpgradePhase `json:"upgradePhase,omitempty"`

	// Upgrade reports the status of the ongoing postgres upgrade process
	// +optional
	PostgresUpdatePhase UpgradePhase `json:"postgresUpdatePhase,omitempty"`

	// Readme is a user readable string with explanations on the system
	// +optional
	Readme string `json:"readme,omitempty"`

	// LastKeyRotateTime is the time system ran an encryption key rotate
	// +optional
	LastKeyRotateTime metav1.Time `json:"lastKeyRotateTime,omitempty"`

	// BeforeUpgradeDbImage is the db image used before last db upgrade
	// +optional
	BeforeUpgradeDbImage *string `json:"beforeUpgradeDbImage,omitempty"`
}

NooBaaStatus defines the observed state of System +k8s:openapi-gen=true

func (*NooBaaStatus) DeepCopy

func (in *NooBaaStatus) DeepCopy() *NooBaaStatus

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

func (*NooBaaStatus) DeepCopyInto

func (in *NooBaaStatus) DeepCopyInto(out *NooBaaStatus)

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

type ObjectBucket

type ObjectBucket = obv1.ObjectBucket

ObjectBucket is the API type for provisioners of buckets

type ObjectBucketAccessKeys

type ObjectBucketAccessKeys = obv1.AccessKeys

ObjectBucketAccessKeys is the access keys inside ObjectBucketAuthentication

type ObjectBucketAuthentication

type ObjectBucketAuthentication = obv1.Authentication

ObjectBucketAuthentication is the auth credentials info needed for apps to access the bucket

type ObjectBucketClaim

type ObjectBucketClaim = obv1.ObjectBucketClaim

ObjectBucketClaim is the API type for submitting bucket claims

type ObjectBucketClaimList

type ObjectBucketClaimList = obv1.ObjectBucketClaimList

ObjectBucketClaimList is a list of ObjectBucketClaim

type ObjectBucketClaimSpec

type ObjectBucketClaimSpec = obv1.ObjectBucketClaimSpec

ObjectBucketClaimSpec defines the desired state of ObjectBucketClaim

type ObjectBucketConnection

type ObjectBucketConnection = obv1.Connection

ObjectBucketConnection is the internal API type that Provision() should populate

type ObjectBucketEndpoint

type ObjectBucketEndpoint = obv1.Endpoint

ObjectBucketEndpoint is the info needed for apps to access the bucket (besides auth credentials)

type ObjectBucketList

type ObjectBucketList = obv1.ObjectBucketList

ObjectBucketList is a list of ObjectBucket

type ObjectBucketSpec

type ObjectBucketSpec = obv1.ObjectBucketSpec

ObjectBucketSpec defines the desired state of ObjectBucket

type PVPoolSpec

type PVPoolSpec struct {

	// StorageClass is the name of the storage class to use for the PV's
	StorageClass string `json:"storageClass,omitempty"`

	// NumVolumes is the number of volumes to allocate
	NumVolumes int `json:"numVolumes"`

	// VolumeResources represents the minimum resources each volume should have.
	VolumeResources *corev1.VolumeResourceRequirements `json:"resources,omitempty"`

	// Secret refers to a secret that provides the agent configuration
	// The secret should define AGENT_CONFIG containing agent_configuration from noobaa-core.
	// +optional
	Secret corev1.SecretReference `json:"secret"`
}

PVPoolSpec specifies a backing store of type pv-pool

func (*PVPoolSpec) DeepCopy

func (in *PVPoolSpec) DeepCopy() *PVPoolSpec

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

func (*PVPoolSpec) DeepCopyInto

func (in *PVPoolSpec) DeepCopyInto(out *PVPoolSpec)

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

type PlacementPolicy

type PlacementPolicy struct {

	// Tiers is an ordered list of tiers to use.
	// The model is a waterfall - push to first tier by default,
	// and when no more space spill "cold" storage to next tier.
	Tiers []Tier `json:"tiers,omitempty"`
}

PlacementPolicy specifies the placement policy for the bucket class

func (*PlacementPolicy) DeepCopy

func (in *PlacementPolicy) DeepCopy() *PlacementPolicy

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

func (*PlacementPolicy) DeepCopyInto

func (in *PlacementPolicy) DeepCopyInto(out *PlacementPolicy)

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

type Quota

type Quota struct {

	//limits the max total size of objects per bucket
	MaxSize string `json:"maxSize,omitempty"`

	//limits the max total quantity of objects per bucket
	MaxObjects string `json:"maxObjects,omitempty"`
}

Quota bucket config

func (*Quota) DeepCopy

func (in *Quota) DeepCopy() *Quota

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

func (*Quota) DeepCopyInto

func (in *Quota) DeepCopyInto(out *Quota)

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

type S3CompatibleSpec

type S3CompatibleSpec struct {

	// TargetBucket is the name of the target S3 bucket
	TargetBucket string `json:"targetBucket"`

	// Secret refers to a secret that provides the credentials
	// The secret should define AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY
	Secret corev1.SecretReference `json:"secret"`

	// Endpoint is the S3 compatible endpoint: http(s)://host:port
	Endpoint string `json:"endpoint"`

	// SignatureVersion specifies the client signature version to use when signing requests.
	// +optional
	SignatureVersion S3SignatureVersion `json:"signatureVersion,omitempty"`
}

S3CompatibleSpec specifies a backing store of type s3-compatible

func (*S3CompatibleSpec) DeepCopy

func (in *S3CompatibleSpec) DeepCopy() *S3CompatibleSpec

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

func (*S3CompatibleSpec) DeepCopyInto

func (in *S3CompatibleSpec) DeepCopyInto(out *S3CompatibleSpec)

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

type S3SignatureVersion

type S3SignatureVersion string

S3SignatureVersion specifies the client signature version to use when signing requests.

const (
	// S3SignatureVersionV4 is aws v4
	S3SignatureVersionV4 S3SignatureVersion = "v4"
	// S3SignatureVersionV2 is aws v2
	S3SignatureVersionV2 S3SignatureVersion = "v2"
)

type SecuritySpec

type SecuritySpec struct {
	KeyManagementService KeyManagementServiceSpec `json:"kms,omitempty"`
}

SecuritySpec is security spec to include various security items such as kms

func (*SecuritySpec) DeepCopy

func (in *SecuritySpec) DeepCopy() *SecuritySpec

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

func (*SecuritySpec) DeepCopyInto

func (in *SecuritySpec) DeepCopyInto(out *SecuritySpec)

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

type ServiceStatus

type ServiceStatus struct {

	// NodePorts are the most basic network available.
	// NodePorts use the networks available on the hosts of kubernetes nodes.
	// This generally works from within a pod, and from the internal
	// network of the nodes, but may fail from public network.
	// https://kubernetes.io/docs/concepts/services-networking/service/#nodeport
	// +optional
	NodePorts []string `json:"nodePorts,omitempty"`

	// PodPorts are the second most basic network address.
	// Every pod has an IP in the cluster and the pods network is a mesh
	// so the operator running inside a pod in the cluster can use this address.
	// Note: pod IPs are not guaranteed to persist over restarts, so should be rediscovered.
	// Note2: when running the operator outside of the cluster, pod IP is not accessible.
	// +optional
	PodPorts []string `json:"podPorts,omitempty"`

	// InternalIP are internal addresses of the service inside the cluster
	// https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types
	// +optional
	InternalIP []string `json:"internalIP,omitempty"`

	// InternalDNS are internal addresses of the service inside the cluster
	// +optional
	InternalDNS []string `json:"internalDNS,omitempty"`

	// ExternalIP are external public addresses for the service
	// LoadBalancerPorts such as AWS ELB provide public address and load balancing for the service
	// IngressPorts are manually created public addresses for the service
	// https://kubernetes.io/docs/concepts/services-networking/service/#external-ips
	// https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer
	// https://kubernetes.io/docs/concepts/services-networking/ingress/
	// +optional
	ExternalIP []string `json:"externalIP,omitempty"`

	// ExternalDNS are external public addresses for the service
	// +optional
	ExternalDNS []string `json:"externalDNS,omitempty"`
}

ServiceStatus is the status info and network addresses of a service

func (*ServiceStatus) DeepCopy

func (in *ServiceStatus) DeepCopy() *ServiceStatus

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

func (*ServiceStatus) DeepCopyInto

func (in *ServiceStatus) DeepCopyInto(out *ServiceStatus)

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

type ServicesStatus

type ServicesStatus struct {
	ServiceMgmt ServiceStatus `json:"serviceMgmt"`
	ServiceS3   ServiceStatus `json:"serviceS3"`
	// +optional
	ServiceSts    ServiceStatus `json:"serviceSts,omitempty"`
	ServiceSyslog ServiceStatus `json:"serviceSyslog,omitempty"`
}

ServicesStatus is the status info of the system's services

func (*ServicesStatus) DeepCopy

func (in *ServicesStatus) DeepCopy() *ServicesStatus

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

func (*ServicesStatus) DeepCopyInto

func (in *ServicesStatus) DeepCopyInto(out *ServicesStatus)

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

type SingleNamespacePolicy

type SingleNamespacePolicy struct {

	// Resource is the read and write resource name to use
	Resource string `json:"resource,omitempty"`
}

SingleNamespacePolicy specifies the configuration of namespace policy of type Single

func (*SingleNamespacePolicy) DeepCopy

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

func (*SingleNamespacePolicy) DeepCopyInto

func (in *SingleNamespacePolicy) DeepCopyInto(out *SingleNamespacePolicy)

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

type StoreType

type StoreType string

StoreType is the backing store type enum

const (
	// StoreTypeAWSS3 is used to connect to AWS S3
	StoreTypeAWSS3 StoreType = "aws-s3"

	// StoreTypeS3Compatible is used to connect to S3 compatible storage
	StoreTypeS3Compatible StoreType = "s3-compatible"

	// StoreTypeIBMCos is used to connect to IBM cos storage
	StoreTypeIBMCos StoreType = "ibm-cos"

	// StoreTypeGoogleCloudStorage is used to connect to Google Cloud Storage
	StoreTypeGoogleCloudStorage StoreType = "google-cloud-storage"

	// StoreTypeAzureBlob is used to connect to Azure Blob
	StoreTypeAzureBlob StoreType = "azure-blob"

	// StoreTypePVPool is used to allocate storage by dynamically allocating PVs (using PVCs)
	StoreTypePVPool StoreType = "pv-pool"
)

type SystemPhase

type SystemPhase string

SystemPhase is a string enum type for system phases

const (

	// SystemPhaseRejected means the spec has been rejected by the operator,
	// this is most likely due to an incompatible configuration.
	// Describe the noobaa system to see events.
	SystemPhaseRejected SystemPhase = "Rejected"

	// SystemPhaseVerifying means the operator is verifying the spec
	SystemPhaseVerifying SystemPhase = "Verifying"

	// SystemPhaseCreating means the operator is creating the resources on the cluster
	SystemPhaseCreating SystemPhase = "Creating"

	// SystemPhaseConnecting means the operator is trying to connect to the pods and services it created
	SystemPhaseConnecting SystemPhase = "Connecting"

	// SystemPhaseConfiguring means the operator is configuring the as requested
	SystemPhaseConfiguring SystemPhase = "Configuring"

	// SystemPhaseReady means the noobaa system has been created and ready to serve.
	SystemPhaseReady SystemPhase = "Ready"
)

These are the valid phases:

type Tier

type Tier struct {

	// Placement specifies the type of placement for the tier
	// If empty it should have a single backing store.
	// +optional
	// +kubebuilder:validation:Enum=Spread;Mirror
	Placement TierPlacement `json:"placement,omitempty"`

	// BackingStores is an unordered list of backing store names.
	// The meaning of the list depends on the placement.
	// +optional
	BackingStores []BackingStoreName `json:"backingStores,omitempty"`
}

Tier specifies a storage tier

func (*Tier) DeepCopy

func (in *Tier) DeepCopy() *Tier

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

func (*Tier) DeepCopyInto

func (in *Tier) DeepCopyInto(out *Tier)

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

type TierPlacement

type TierPlacement string

TierPlacement is a string enum type for tier placement

const (

	// TierPlacementSingle stores the data on a single backing store.
	TierPlacementSingle TierPlacement = ""

	// TierPlacementMirror requires 2 or more backing store.
	// All mirrors should eventually store all the data of the tier.
	// The mirroring model is async so just a single mirror is required before the write can ack.
	// The first mirror is selected according to locality optimizations of the client endpoint.
	// The data is replicated to the rest of the mirrors in the background.
	TierPlacementMirror TierPlacement = "Mirror"

	// TierPlacementSpread requires 2 or more backing store.
	// The data is spread over the backing stores without any specific preference.
	// The spread is a simple aggregate of those backing stores capacity.
	TierPlacementSpread TierPlacement = "Spread"
)

These are the valid placement values:

type UpgradePhase

type UpgradePhase string

UpgradePhase is a string enum type for upgrade phases

const (
	UpgradePhaseNone UpgradePhase = "NoUpgrade"

	UpgradePhasePrepare UpgradePhase = "Preparing"

	UpgradePhaseMigrate UpgradePhase = "Migrating"

	UpgradePhaseClean UpgradePhase = "Cleanning"

	UpgradePhaseFinished UpgradePhase = "DoneUpgrade"

	UpgradePhaseReverting UpgradePhase = "Reverting"

	UpgradePhaseFailed UpgradePhase = "Failed"

	UpgradePhaseUpgrade UpgradePhase = "Upgrading"
)

These are the valid phases:

type UserStatus

type UserStatus struct {
	SecretRef corev1.SecretReference `json:"secretRef"`
}

UserStatus is the status info of a user secret

func (*UserStatus) DeepCopy

func (in *UserStatus) DeepCopy() *UserStatus

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

func (*UserStatus) DeepCopyInto

func (in *UserStatus) DeepCopyInto(out *UserStatus)

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