Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the noobaa v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=noobaa.io
Package v1alpha1 contains API Schema definitions for the noobaa v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=noobaa.io
Index ¶
- Constants
- Variables
- func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition
- type AWSS3Spec
- type AccountsStatus
- type AzureBlobSpec
- type BackingStore
- type BackingStoreList
- type BackingStoreMode
- type BackingStoreName
- type BackingStorePhase
- type BackingStoreSpec
- type BackingStoreStatus
- type BucketClass
- type BucketClassList
- type BucketClassPhase
- type BucketClassSpec
- type BucketClassStatus
- type CacheNamespacePolicy
- type CacheSpec
- type CleanupConfirmationProperty
- type CleanupPolicySpec
- type ConditionStatus
- type ConditionType
- type DBTypes
- type EndpointsSpec
- type EndpointsStatus
- type GoogleCloudStorageSpec
- type IBMCosSpec
- type KeyManagementServiceSpec
- type MultiNamespacePolicy
- type NSBucketClassType
- type NSFSSpec
- type NSType
- type NamespacePolicy
- type NamespaceStore
- type NamespaceStoreList
- type NamespaceStoreMode
- type NamespaceStorePhase
- type NamespaceStoreSpec
- type NamespaceStoreStatus
- type NooBaa
- type NooBaaList
- type NooBaaSpec
- type NooBaaStatus
- type ObjectBucket
- type ObjectBucketAccessKeys
- type ObjectBucketAuthentication
- type ObjectBucketClaim
- type ObjectBucketClaimList
- type ObjectBucketClaimSpec
- type ObjectBucketConnection
- type ObjectBucketEndpoint
- type ObjectBucketList
- type ObjectBucketSpec
- type PVPoolSpec
- type PlacementPolicy
- type S3CompatibleSpec
- type S3SignatureVersion
- type SecuritySpec
- type ServiceStatus
- type ServicesStatus
- type SingleNamespacePolicy
- type StoreType
- type SystemPhase
- type Tier
- type TierPlacement
- type UpgradePhase
- type UserStatus
Constants ¶
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" )
const ObjectBucketFinalizer = api.Domain + "/finalizer"
ObjectBucketFinalizer is the name of the ObjectBucket finalizer
Variables ¶
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 ¶
func GetOpenAPIDefinitions ¶
func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition
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
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"`
}
AWSS3Spec specifies a backing store of type aws-s3
func (*AWSS3Spec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSS3Spec.
func (*AWSS3Spec) DeepCopyInto ¶
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 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="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"`
// 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 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 ¶
func (in *CacheNamespacePolicy) DeepCopy() *CacheNamespacePolicy
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CacheSpec.
func (*CacheSpec) DeepCopyInto ¶
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"`
}
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 ConditionStatus ¶
type ConditionStatus string
ConditionStatus is a simple string type. In addition to the generic True/False/Unknown it also can accept SystemPhase enums
const ( ConditionTrue ConditionStatus = "True" ConditionFalse ConditionStatus = "False" ConditionUnknown ConditionStatus = "Unknown" )
These are general valid condition statuses. "ConditionTrue" means a resource is in the condition. "ConditionFalse" means a resource is not in the condition. "ConditionUnknown" means kubernetes can't decide if a resource is in the condition or not. In the future, we could add other intermediate conditions, e.g. ConditionDegraded.
type ConditionType ¶
type ConditionType string
ConditionType is a simple string type. Types should be used from the enum below.
const (
ConditionTypePhase ConditionType = "Phase"
)
These are the valid conditions types and statuses:
type DBTypes ¶
type DBTypes string
DBTypes is a string enum type for specify the types of DB that are supported.
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 ¶
func (in *GoogleCloudStorageSpec) DeepCopy() *GoogleCloudStorageSpec
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 {
ConnectionDetails map[string]string `json:"connectionDetails,omitempty"`
TokenSecretName string `json:"tokenSecretName,omitempty"`
}
KeyManagementServiceSpec represent various details of the KMS server
func (*KeyManagementServiceSpec) DeepCopy ¶
func (in *KeyManagementServiceSpec) DeepCopy() *KeyManagementServiceSpec
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 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
WriteResource string `json:"writeResource,omitempty"`
}
MultiNamespacePolicy specifies the configuration of namespace policy of type Multi
func (*MultiNamespacePolicy) DeepCopy ¶
func (in *MultiNamespacePolicy) DeepCopy() *MultiNamespacePolicy
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NSFSSpec.
func (*NSFSSpec) DeepCopyInto ¶
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" // 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"`
// 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"`
// 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 ¶
func (in *NamespaceStoreStatus) DeepCopy() *NamespaceStoreStatus
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="Mgmt-Endpoints",type="string",JSONPath=".status.services.serviceMgmt.nodePorts",description="Management Endpoints" +kubebuilder:printcolumn:name="S3-Endpoints",type="string",JSONPath=".status.services.serviceS3.nodePorts",description="S3 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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NooBaa.
func (*NooBaa) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NooBaa) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
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"`
// DBType (optional) overrides the default type image for the db container
// +optional
// +kubebuilder:validation:Enum=mongodb;postgres
DBType DBTypes `json:"dbType,omitempty"`
// CoreResources (optional) overrides the default resource requirements for the server container
// +optional
CoreResources *corev1.ResourceRequirements `json:"coreResources,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.ResourceRequirements `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"`
// MongoDbURL (optional) overrides the default mongo db remote url
// +optional
MongoDbURL string `json:"mongoDbURL,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"`
}
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"`
// Readme is a user readable string with explanations on the system
// +optional
Readme string `json:"readme,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 ¶
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.ResourceRequirements `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 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"`
}
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 ¶
func (in *SingleNamespacePolicy) DeepCopy() *SingleNamespacePolicy
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Tier.
func (*Tier) DeepCopyInto ¶
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" )
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.