Documentation ¶
Overview ¶
Package v1alpha2 contains managed resources for GCP storage services such as GCS buckets. +kubebuilder:object:generate=true +groupName=storage.gcp.crossplane.io +versionName=v1alpha2
Index ¶
- Constants
- Variables
- func CopyBucketSpecAttrs(ba *BucketSpecAttrs) *storage.BucketAttrs
- func CopyToACLRule(ar ACLRule) storage.ACLRule
- func CopyToACLRules(r []ACLRule) []storage.ACLRule
- func CopyToBucketAttrs(ba *BucketUpdatableAttrs) *storage.BucketAttrs
- func CopyToBucketEncryption(e *BucketEncryption) *storage.BucketEncryption
- func CopyToBucketLogging(l *BucketLogging) *storage.BucketLogging
- func CopyToBucketPolicyOnly(bp *BucketPolicyOnly) storage.BucketPolicyOnly
- func CopyToBucketUpdateAttrs(ba BucketUpdatableAttrs, labels map[string]string) storage.BucketAttrsToUpdate
- func CopyToBucketWebsite(w *BucketWebsite) *storage.BucketWebsite
- func CopyToCORS(c CORS) storage.CORS
- func CopyToCORSList(c []CORS) []storage.CORS
- func CopyToLifecycle(lf Lifecycle) storage.Lifecycle
- func CopyToLifecycleCondition(lc LifecycleCondition) storage.LifecycleCondition
- func CopyToLifecyleAction(la LifecycleAction) storage.LifecycleAction
- func CopyToLifecyleRule(lr LifecycleRule) storage.LifecycleRule
- func CopyToProjectTeam(pt *ProjectTeam) *storage.ProjectTeam
- func CopyToRetentionPolicy(rp *RetentionPolicy) *storage.RetentionPolicy
- type ACLRule
- type Bucket
- func (in *Bucket) DeepCopy() *Bucket
- func (in *Bucket) DeepCopyInto(out *Bucket)
- func (in *Bucket) DeepCopyObject() runtime.Object
- func (b *Bucket) GetBindingPhase() runtimev1alpha1.BindingPhase
- func (b *Bucket) GetBucketName() string
- func (b *Bucket) GetClaimReference() *corev1.ObjectReference
- func (b *Bucket) GetNonPortableClassReference() *corev1.ObjectReference
- func (b *Bucket) GetReclaimPolicy() runtimev1alpha1.ReclaimPolicy
- func (b *Bucket) GetWriteConnectionSecretToReference() corev1.LocalObjectReference
- func (b *Bucket) SetBindingPhase(p runtimev1alpha1.BindingPhase)
- func (b *Bucket) SetClaimReference(r *corev1.ObjectReference)
- func (b *Bucket) SetConditions(c ...runtimev1alpha1.Condition)
- func (b *Bucket) SetNonPortableClassReference(r *corev1.ObjectReference)
- func (b *Bucket) SetReclaimPolicy(p runtimev1alpha1.ReclaimPolicy)
- func (b *Bucket) SetWriteConnectionSecretToReference(r corev1.LocalObjectReference)
- type BucketClass
- type BucketClassList
- type BucketClassSpecTemplate
- type BucketEncryption
- type BucketList
- type BucketLogging
- type BucketOutputAttrs
- type BucketParameters
- type BucketPolicyOnly
- type BucketSpec
- type BucketSpecAttrs
- type BucketStatus
- type BucketUpdatableAttrs
- type BucketWebsite
- type CORS
- type Lifecycle
- type LifecycleAction
- type LifecycleCondition
- type LifecycleRule
- type ProjectTeam
- type RetentionPolicy
- type RetentionPolicyStatus
Constants ¶
const ( Group = "storage.gcp.crossplane.io" Version = "v1alpha2" )
Package type metadata.
Variables ¶
var ( // SchemeGroupVersion is group version used to register these objects SchemeGroupVersion = schema.GroupVersion{Group: Group, Version: Version} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} )
var ( BucketKind = reflect.TypeOf(Bucket{}).Name() BucketKindAPIVersion = BucketKind + "." + SchemeGroupVersion.String() BucketGroupVersionKind = SchemeGroupVersion.WithKind(BucketKind) )
Bucket type metadata.
var ( BucketClassKind = reflect.TypeOf(BucketClass{}).Name() BucketClassKindAPIVersion = BucketClassKind + "." + SchemeGroupVersion.String() BucketClassGroupVersionKind = SchemeGroupVersion.WithKind(BucketClassKind) )
BucketClass type metadata.
Functions ¶
func CopyBucketSpecAttrs ¶
func CopyBucketSpecAttrs(ba *BucketSpecAttrs) *storage.BucketAttrs
CopyBucketSpecAttrs create a copy in storage format
func CopyToACLRule ¶
CopyToACLRule create a copy in storage format
func CopyToACLRules ¶
CopyToACLRules create a copy in storage format
func CopyToBucketAttrs ¶
func CopyToBucketAttrs(ba *BucketUpdatableAttrs) *storage.BucketAttrs
CopyToBucketAttrs create a copy in storage format
func CopyToBucketEncryption ¶
func CopyToBucketEncryption(e *BucketEncryption) *storage.BucketEncryption
CopyToBucketEncryption create a copy in storage format
func CopyToBucketLogging ¶
func CopyToBucketLogging(l *BucketLogging) *storage.BucketLogging
CopyToBucketLogging create a copy in storage format
func CopyToBucketPolicyOnly ¶
func CopyToBucketPolicyOnly(bp *BucketPolicyOnly) storage.BucketPolicyOnly
CopyToBucketPolicyOnly creates storage equivalent
func CopyToBucketUpdateAttrs ¶
func CopyToBucketUpdateAttrs(ba BucketUpdatableAttrs, labels map[string]string) storage.BucketAttrsToUpdate
CopyToBucketUpdateAttrs create a copy in storage format
func CopyToBucketWebsite ¶
func CopyToBucketWebsite(w *BucketWebsite) *storage.BucketWebsite
CopyToBucketWebsite create a copy in storage format
func CopyToCORSList ¶
CopyToCORSList create a copy in storage format
func CopyToLifecycle ¶
CopyToLifecycle create a copy in storage format
func CopyToLifecycleCondition ¶
func CopyToLifecycleCondition(lc LifecycleCondition) storage.LifecycleCondition
CopyToLifecycleCondition create a copy in storage format
func CopyToLifecyleAction ¶
func CopyToLifecyleAction(la LifecycleAction) storage.LifecycleAction
CopyToLifecyleAction create a copy in storage format
func CopyToLifecyleRule ¶
func CopyToLifecyleRule(lr LifecycleRule) storage.LifecycleRule
CopyToLifecyleRule create a copy in storage format
func CopyToProjectTeam ¶
func CopyToProjectTeam(pt *ProjectTeam) *storage.ProjectTeam
CopyToProjectTeam create a copy in storage format
func CopyToRetentionPolicy ¶
func CopyToRetentionPolicy(rp *RetentionPolicy) *storage.RetentionPolicy
CopyToRetentionPolicy create a copy in storage format
Types ¶
type ACLRule ¶
type ACLRule struct { Entity string `json:"entity,omitempty"` EntityID string `json:"entityId,omitempty"` Role string `json:"role,omitempty"` Domain string `json:"domain,omitempty"` Email string `json:"email,omitempty"` ProjectTeam *ProjectTeam `json:"projectTeam,omitempty"` }
ACLRule represents a grant for a role to an entity (user, group or team) for a Google Cloud Storage object or bucket.
func NewACLRule ¶
NewACLRule creates new instance of ACLRule from the storage counterpart
func NewACLRules ¶
NewACLRules creates a new instance of ACLRule list from the storage counterpart
func (*ACLRule) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ACLRule.
func (*ACLRule) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Bucket ¶
type Bucket struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec BucketSpec `json:"spec,omitempty"` Status BucketStatus `json:"status,omitempty"` }
A Bucket is a managed resource that represents a Google Cloud Storage bucket. +kubebuilder:subresource:status +kubebuilder:printcolumn:name="STORAGE_CLASS",type="string",JSONPath=".spec.storageClass" +kubebuilder:printcolumn:name="LOCATION",type="string",JSONPath=".spec.location" +kubebuilder:printcolumn:name="CLASS",type="string",JSONPath=".spec.classRef.name" +kubebuilder:printcolumn:name="RECLAIM_POLICY",type="string",JSONPath=".spec.reclaimPolicy" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp"
func (*Bucket) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Bucket.
func (*Bucket) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Bucket) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Bucket) GetBindingPhase ¶
func (b *Bucket) GetBindingPhase() runtimev1alpha1.BindingPhase
GetBindingPhase of this Bucket.
func (*Bucket) GetBucketName ¶
GetBucketName based on the NameFormat spec value, If name format is not provided, bucket name defaults to UID If name format provided with '%s' value, bucket name will result in formatted string + UID,
NOTE: only single %s substitution is supported
If name format does not contain '%s' substitution, i.e. a constant string, the constant string value is returned back
Examples:
For all examples assume "UID" = "test-uid" 1. NameFormat = "", BucketName = "test-uid" 2. NameFormat = "%s", BucketName = "test-uid" 3. NameFormat = "foo", BucketName = "foo" 4. NameFormat = "foo-%s", BucketName = "foo-test-uid" 5. NameFormat = "foo-%s-bar-%s", BucketName = "foo-test-uid-bar-%!s(MISSING)"
func (*Bucket) GetClaimReference ¶
func (b *Bucket) GetClaimReference() *corev1.ObjectReference
GetClaimReference of this Bucket.
func (*Bucket) GetNonPortableClassReference ¶
func (b *Bucket) GetNonPortableClassReference() *corev1.ObjectReference
GetNonPortableClassReference of this Bucket.
func (*Bucket) GetReclaimPolicy ¶
func (b *Bucket) GetReclaimPolicy() runtimev1alpha1.ReclaimPolicy
GetReclaimPolicy of this Bucket.
func (*Bucket) GetWriteConnectionSecretToReference ¶
func (b *Bucket) GetWriteConnectionSecretToReference() corev1.LocalObjectReference
GetWriteConnectionSecretToReference of this Bucket.
func (*Bucket) SetBindingPhase ¶
func (b *Bucket) SetBindingPhase(p runtimev1alpha1.BindingPhase)
SetBindingPhase of this Bucket.
func (*Bucket) SetClaimReference ¶
func (b *Bucket) SetClaimReference(r *corev1.ObjectReference)
SetClaimReference of this Bucket.
func (*Bucket) SetConditions ¶
func (b *Bucket) SetConditions(c ...runtimev1alpha1.Condition)
SetConditions of this Bucket.
func (*Bucket) SetNonPortableClassReference ¶
func (b *Bucket) SetNonPortableClassReference(r *corev1.ObjectReference)
SetNonPortableClassReference of this Bucket.
func (*Bucket) SetReclaimPolicy ¶
func (b *Bucket) SetReclaimPolicy(p runtimev1alpha1.ReclaimPolicy)
SetReclaimPolicy of this Bucket.
func (*Bucket) SetWriteConnectionSecretToReference ¶
func (b *Bucket) SetWriteConnectionSecretToReference(r corev1.LocalObjectReference)
SetWriteConnectionSecretToReference of this Bucket.
type BucketClass ¶
type BucketClass struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` // SpecTemplate is a template for the spec of a dynamically provisioned // Bucket. SpecTemplate BucketClassSpecTemplate `json:"specTemplate"` }
A BucketClass is a non-portable resource class. It defines the desired spec of resource claims that use it to dynamically provision a managed resource. +kubebuilder:printcolumn:name="PROVIDER-REF",type="string",JSONPath=".specTemplate.providerRef.name" +kubebuilder:printcolumn:name="RECLAIM-POLICY",type="string",JSONPath=".specTemplate.reclaimPolicy" +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.
func (*BucketClass) GetReclaimPolicy ¶
func (i *BucketClass) GetReclaimPolicy() runtimev1alpha1.ReclaimPolicy
GetReclaimPolicy of this BucketClass.
func (*BucketClass) SetReclaimPolicy ¶
func (i *BucketClass) SetReclaimPolicy(p runtimev1alpha1.ReclaimPolicy)
SetReclaimPolicy of this BucketClass.
type BucketClassList ¶
type BucketClassList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []BucketClass `json:"items"` }
BucketClassList contains a list of cloud memorystore resource classes.
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 BucketClassSpecTemplate ¶
type BucketClassSpecTemplate struct { runtimev1alpha1.NonPortableClassSpecTemplate `json:",inline"` BucketParameters `json:",inline"` }
A BucketClassSpecTemplate is a template for the spec of a dynamically provisioned Bucket.
func (*BucketClassSpecTemplate) DeepCopy ¶
func (in *BucketClassSpecTemplate) DeepCopy() *BucketClassSpecTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BucketClassSpecTemplate.
func (*BucketClassSpecTemplate) DeepCopyInto ¶
func (in *BucketClassSpecTemplate) DeepCopyInto(out *BucketClassSpecTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BucketEncryption ¶
type BucketEncryption struct { // A Cloud KMS key name, in the form // projects/P/locations/L/keyRings/R/cryptoKeys/K, that will be used to encrypt // objects inserted into this bucket, if no encryption method is specified. // The key's location must be the same as the bucket's. DefaultKMSKeyName string `json:"defaultKmsKeyName,omitempty"` }
BucketEncryption is a bucket's encryption configuration.
func NewBucketEncryption ¶
func NewBucketEncryption(e *storage.BucketEncryption) *BucketEncryption
NewBucketEncryption creates a new instance of BucketEncryption from the storage counterpart
func (*BucketEncryption) DeepCopy ¶
func (in *BucketEncryption) DeepCopy() *BucketEncryption
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BucketEncryption.
func (*BucketEncryption) DeepCopyInto ¶
func (in *BucketEncryption) DeepCopyInto(out *BucketEncryption)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BucketList ¶
type BucketList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Bucket `json:"items"` }
BucketList contains a list of GCPBuckets
func (*BucketList) DeepCopy ¶
func (in *BucketList) DeepCopy() *BucketList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BucketList.
func (*BucketList) DeepCopyInto ¶
func (in *BucketList) DeepCopyInto(out *BucketList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BucketList) DeepCopyObject ¶
func (in *BucketList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BucketLogging ¶
type BucketLogging struct { // The destination bucket where the current bucket's logs // should be placed. LogBucket string `json:"logBucket,omitempty"` // A prefix for log object names. LogObjectPrefix string `json:"logObjectPrefix,omitempty"` }
BucketLogging holds the bucket's logging configuration, which defines the destination bucket and optional name prefix for the current bucket's logs.
func NewBucketLogging ¶
func NewBucketLogging(l *storage.BucketLogging) *BucketLogging
NewBucketLogging creates a new instance of BucketLogging from the storage counterpart
func (*BucketLogging) DeepCopy ¶
func (in *BucketLogging) DeepCopy() *BucketLogging
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BucketLogging.
func (*BucketLogging) DeepCopyInto ¶
func (in *BucketLogging) DeepCopyInto(out *BucketLogging)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BucketOutputAttrs ¶
type BucketOutputAttrs struct { // BucketPolicyOnly configures access checks to use only bucket-level IAM // policies. BucketPolicyOnly *BucketPolicyOnly `json:"bucketPolicyOnly,omitempty"` // Created is the creation time of the bucket. Created metav1.Time `json:"created,omitempty"` // Name is the name of the bucket. Name string `json:"name,omitempty"` // Retention policy enforces a minimum retention time for all objects // contained in the bucket. A RetentionPolicy of nil implies the bucket // has no minimum data retention. // // This feature is in private alpha release. It is not currently available to // most customers. It might be changed in backwards-incompatible ways and is not // subject to any SLA or deprecation policy. RetentionPolicy *RetentionPolicyStatus `json:"retentionPolicy,omitempty"` }
BucketOutputAttrs represent the subset of metadata for a Google Cloud Storage bucket limited to output (read-only) fields.
func NewBucketOutputAttrs ¶
func NewBucketOutputAttrs(attrs *storage.BucketAttrs) BucketOutputAttrs
NewBucketOutputAttrs creates new instance of BucketOutputAttrs from storage.BucketAttrs
func (*BucketOutputAttrs) DeepCopy ¶
func (in *BucketOutputAttrs) DeepCopy() *BucketOutputAttrs
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BucketOutputAttrs.
func (*BucketOutputAttrs) DeepCopyInto ¶
func (in *BucketOutputAttrs) DeepCopyInto(out *BucketOutputAttrs)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BucketParameters ¶
type BucketParameters struct { BucketSpecAttrs `json:",inline"` // NameFormat specifies the name of the external Bucket. The first instance // of the string '%s' will be replaced with the Kubernetes UID of this // Bucket. NameFormat string `json:"nameFormat,omitempty"` // ServiceAccountSecretRef contains GCP ServiceAccount secret that will be used // for bucket connection secret credentials ServiceAccountSecretRef *corev1.LocalObjectReference `json:"serviceAccountSecretRef,omitempty"` }
BucketParameters define the desired state of a Google Cloud Storage Bucket. Most fields map directly to a bucket resource: https://cloud.google.com/storage/docs/json_api/v1/buckets#resource
func (*BucketParameters) DeepCopy ¶
func (in *BucketParameters) DeepCopy() *BucketParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BucketParameters.
func (*BucketParameters) DeepCopyInto ¶
func (in *BucketParameters) DeepCopyInto(out *BucketParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BucketPolicyOnly ¶
type BucketPolicyOnly struct { // Enabled specifies whether access checks use only bucket-level IAM // policies. Enabled may be disabled until the locked time. Enabled bool `json:"enabled,omitempty"` // LockedTime specifies the deadline for changing Enabled from true to // false. LockedTime metav1.Time `json:"lockedTime,omitempty"` }
BucketPolicyOnly configures access checks to use only bucket-level IAM policies.
func NewBucketPolicyOnly ¶
func NewBucketPolicyOnly(bp storage.BucketPolicyOnly) *BucketPolicyOnly
NewBucketPolicyOnly creates new instance based on the storage object
func (*BucketPolicyOnly) DeepCopy ¶
func (in *BucketPolicyOnly) DeepCopy() *BucketPolicyOnly
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BucketPolicyOnly.
func (*BucketPolicyOnly) DeepCopyInto ¶
func (in *BucketPolicyOnly) DeepCopyInto(out *BucketPolicyOnly)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BucketSpec ¶
type BucketSpec struct { runtimev1alpha1.ResourceSpec `json:",inline"` BucketParameters `json:",inline"` }
A BucketSpec defines the desired state of a Bucket.
func (*BucketSpec) DeepCopy ¶
func (in *BucketSpec) DeepCopy() *BucketSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BucketSpec.
func (*BucketSpec) DeepCopyInto ¶
func (in *BucketSpec) DeepCopyInto(out *BucketSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BucketSpecAttrs ¶
type BucketSpecAttrs struct { BucketUpdatableAttrs `json:",inline"` // ACL is the list of access control rules on the bucket. ACL []ACLRule `json:"acl,omitempty"` // DefaultObjectACL is the list of access controls to // apply to new objects when no object ACL is provided. DefaultObjectACL []ACLRule `json:"defaultObjectAcl,omitempty"` // Location is the location of the bucket. It defaults to "US". Location string `json:"location,omitempty"` // StorageClass is the default storage class of the bucket. This defines // how objects in the bucket are stored and determines the SLA // and the cost of storage. Typical values are "MULTI_REGIONAL", // "REGIONAL", "NEARLINE", "COLDLINE", "STANDARD" and // "DURABLE_REDUCED_AVAILABILITY". Defaults to "STANDARD", which // is equivalent to "MULTI_REGIONAL" or "REGIONAL" depending on // the bucket's location settings. // +kubebuilder:validation:Enum=MULTI_REGIONAL;REGIONAL;NEARLINE;COLDLINE;STANDARD;DURABLE_REDUCED_AVAILABILITY StorageClass string `json:"storageClass,omitempty"` }
BucketSpecAttrs represents the full set of metadata for a Google Cloud Storage bucket limited to all input attributes
func NewBucketSpecAttrs ¶
func NewBucketSpecAttrs(ba *storage.BucketAttrs) BucketSpecAttrs
NewBucketSpecAttrs create new instance from storage BuckateAttrs
func (*BucketSpecAttrs) DeepCopy ¶
func (in *BucketSpecAttrs) DeepCopy() *BucketSpecAttrs
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BucketSpecAttrs.
func (*BucketSpecAttrs) DeepCopyInto ¶
func (in *BucketSpecAttrs) DeepCopyInto(out *BucketSpecAttrs)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BucketStatus ¶
type BucketStatus struct { runtimev1alpha1.ResourceStatus `json:",inline"` BucketOutputAttrs `json:"attributes"` }
A BucketStatus represents the observed state of a Bucket.
func (*BucketStatus) DeepCopy ¶
func (in *BucketStatus) DeepCopy() *BucketStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BucketStatus.
func (*BucketStatus) DeepCopyInto ¶
func (in *BucketStatus) DeepCopyInto(out *BucketStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BucketUpdatableAttrs ¶
type BucketUpdatableAttrs struct { // BucketPolicyOnly configures access checks to use only bucket-level IAM // policies. BucketPolicyOnly *BucketPolicyOnly `json:"bucketPolicyOnly,omitempty"` // The bucket's Cross-Origin Resource Sharing (CORS) configuration. CORS []CORS `json:"cors,omitempty"` // DefaultEventBasedHold is the default value for event-based hold on // newly created objects in this bucket. It defaults to false. DefaultEventBasedHold bool `json:"defaultEventBasedHold,omitempty"` // The encryption configuration used by default for newly inserted objects. Encryption *BucketEncryption `json:"encryption,omitempty"` // Labels are the bucket's labels. Labels map[string]string `json:"labels,omitempty"` // Lifecycle is the lifecycle configuration for objects in the bucket. Lifecycle Lifecycle `json:"lifecycle,omitempty"` // The logging configuration. Logging *BucketLogging `json:"logging,omitempty"` // If not empty, applies a predefined set of access controls. It should be set // only when creating a bucket. // It is always empty for BucketAttrs returned from the service. // See https://cloud.google.com/storage/docs/json_api/v1/buckets/insert // for valid values. PredefinedACL string `json:"predefinedAcl,omitempty"` // If not empty, applies a predefined set of default object access controls. // It should be set only when creating a bucket. // It is always empty for BucketAttrs returned from the service. // See https://cloud.google.com/storage/docs/json_api/v1/buckets/insert // for valid values. PredefinedDefaultObjectACL string `json:"predefinedCefaultObjectAcl,omitempty"` // RequesterPays reports whether the bucket is a Requester Pays bucket. // Clients performing operations on Requester Pays buckets must provide // a user project (see BucketHandle.UserProject), which will be billed // for the operations. RequesterPays bool `json:"requesterPays,omitempty"` // Retention policy enforces a minimum retention time for all objects // contained in the bucket. A RetentionPolicy of nil implies the bucket // has no minimum data retention. // // This feature is in private alpha release. It is not currently available to // most customers. It might be changed in backwards-incompatible ways and is not // subject to any SLA or deprecation policy. RetentionPolicy *RetentionPolicy `json:"retentionPolicy,omitempty"` // VersioningEnabled reports whether this bucket has versioning enabled. VersioningEnabled bool `json:"versioningEnabled,omitempty"` // The website configuration. Website *BucketWebsite `json:"website,omitempty"` }
BucketUpdatableAttrs represents the subset of parameters of a Google Cloud Storage bucket that may be updated.
func NewBucketUpdatableAttrs ¶
func NewBucketUpdatableAttrs(ba *storage.BucketAttrs) *BucketUpdatableAttrs
NewBucketUpdatableAttrs creates a new instance of BucketUpdatableAttrs from the storage BucketAttrs
func (*BucketUpdatableAttrs) DeepCopy ¶
func (in *BucketUpdatableAttrs) DeepCopy() *BucketUpdatableAttrs
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BucketUpdatableAttrs.
func (*BucketUpdatableAttrs) DeepCopyInto ¶
func (in *BucketUpdatableAttrs) DeepCopyInto(out *BucketUpdatableAttrs)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BucketWebsite ¶
type BucketWebsite struct { // If the requested object path is missing, the service will ensure the path has // a trailing '/', append this suffix, and attempt to retrieve the resulting // object. This allows the creation of index.html objects to represent directory // pages. MainPageSuffix string `json:"mainPageSuffix,omitempty"` // If the requested object path is missing, and any mainPageSuffix object is // missing, if applicable, the service will return the named object from this // bucket as the content for a 404 Not Found result. NotFoundPage string `json:"notFundPage,omitempty"` }
BucketWebsite holds the bucket's website configuration, controlling how the service behaves when accessing bucket contents as a web site. See https://cloud.google.com/storage/docs/static-website for more information.
func NewBucketWebsite ¶
func NewBucketWebsite(w *storage.BucketWebsite) *BucketWebsite
NewBucketWebsite creates a new instance of BucketWebsite from the storage counterpart
func (*BucketWebsite) DeepCopy ¶
func (in *BucketWebsite) DeepCopy() *BucketWebsite
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BucketWebsite.
func (*BucketWebsite) DeepCopyInto ¶
func (in *BucketWebsite) DeepCopyInto(out *BucketWebsite)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CORS ¶
type CORS struct { // MaxAge is the value to return in the Access-Control-Max-Age // header used in preflight responses. MaxAge metav1.Duration `json:"maxAge,omitempty"` // Methods is the list of HTTP methods on which to include CORS response // headers, (GET, OPTIONS, POST, etc) Note: "*" is permitted in the list // of methods, and means "any method". Methods []string `json:"methods,omitempty"` // Origins is the list of Origins eligible to receive CORS response // headers. Note: "*" is permitted in the list of origins, and means // "any Origin". Origins []string `json:"origins,omitempty"` // ResponseHeaders is the list of HTTP headers other than the simple // response headers to give permission for the user-agent to share // across domains. ResponseHeaders []string `json:"responseHeaders,omitempty"` }
CORS is the bucket's Cross-Origin Resource Sharing (CORS) configuration.
func NewCORSList ¶
NewCORSList creates a new instance of CORS list from the storage counterpart
func (*CORS) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CORS.
func (*CORS) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Lifecycle ¶
type Lifecycle struct {
Rules []LifecycleRule `json:"rules,omitempty"`
}
Lifecycle is the lifecycle configuration for objects in the bucket.
func NewLifecycle ¶
NewLifecycle creates a new instance of Lifecycle from the storage counterpart
func (*Lifecycle) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Lifecycle.
func (*Lifecycle) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LifecycleAction ¶
type LifecycleAction struct { // StorageClass is the storage class to set on matching objects if the Action // is "SetStorageClass". StorageClass string `json:"storageClass,omitempty"` // Type is the type of action to take on matching objects. // // Acceptable values are "Delete" to delete matching objects and // "SetStorageClass" to set the storage class defined in StorageClass on // matching objects. Type string `json:"type,omitempty"` }
LifecycleAction is a lifecycle configuration action.
func NewLifecyleAction ¶
func NewLifecyleAction(la storage.LifecycleAction) LifecycleAction
NewLifecyleAction creates a new instance of LifecycleAction from the storage counterpart
func (*LifecycleAction) DeepCopy ¶
func (in *LifecycleAction) DeepCopy() *LifecycleAction
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LifecycleAction.
func (*LifecycleAction) DeepCopyInto ¶
func (in *LifecycleAction) DeepCopyInto(out *LifecycleAction)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LifecycleCondition ¶
type LifecycleCondition struct { // AgeInDays is the age of the object in days. AgeInDays int64 `json:"ageInDays,omitempty"` // CreatedBefore is the time the object was created. // // This condition is satisfied when an object is created before midnight of // the specified date in UTC. CreatedBefore metav1.Time `json:"createdBefore,omitempty"` // Liveness specifies the object's liveness. Relevant only for versioned objects Liveness storage.Liveness `json:"liveness,omitempty"` // MatchesStorageClasses is the condition matching the object's storage // class. // // Values include "MULTI_REGIONAL", "REGIONAL", "NEARLINE", "COLDLINE", // "STANDARD", and "DURABLE_REDUCED_AVAILABILITY". MatchesStorageClasses []string `json:"matchesStorageClasses,omitempty"` // NumNewerVersions is the condition matching objects with a number of newer versions. // // If the value is N, this condition is satisfied when there are at least N // versions (including the live version) newer than this version of the // object. NumNewerVersions int64 `json:"numNewerVersions,omitempty"` }
LifecycleCondition is a set of conditions used to match objects and take an action automatically. All configured conditions must be met for the associated action to be taken.
func NewLifecycleCondition ¶
func NewLifecycleCondition(lc storage.LifecycleCondition) LifecycleCondition
NewLifecycleCondition creates a new instance of LifecycleCondition from the storage counterpart
func (*LifecycleCondition) DeepCopy ¶
func (in *LifecycleCondition) DeepCopy() *LifecycleCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LifecycleCondition.
func (*LifecycleCondition) DeepCopyInto ¶
func (in *LifecycleCondition) DeepCopyInto(out *LifecycleCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LifecycleRule ¶
type LifecycleRule struct { // Action is the action to take when all of the associated conditions are // met. Action LifecycleAction `json:"action,omitempty"` // Condition is the set of conditions that must be met for the associated // action to be taken. Condition LifecycleCondition `json:"condition,omitempty"` }
LifecycleRule is a lifecycle configuration rule.
When all the configured conditions are met by an object in the bucket, the configured action will automatically be taken on that object.
func NewLifecycleRule ¶
func NewLifecycleRule(lr storage.LifecycleRule) LifecycleRule
NewLifecycleRule creates a new instance of LifecycleRule from the storage counterpart
func (*LifecycleRule) DeepCopy ¶
func (in *LifecycleRule) DeepCopy() *LifecycleRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LifecycleRule.
func (*LifecycleRule) DeepCopyInto ¶
func (in *LifecycleRule) DeepCopyInto(out *LifecycleRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProjectTeam ¶
type ProjectTeam struct { ProjectNumber string `json:"projectNumber,omitempty"` Team string `json:"team,omitempty"` }
ProjectTeam is the project team associated with the entity, if any.
func NewProjectTeam ¶
func NewProjectTeam(pt *storage.ProjectTeam) *ProjectTeam
NewProjectTeam creates new instance of ProjectTeam from the storage counterpart
func (*ProjectTeam) DeepCopy ¶
func (in *ProjectTeam) DeepCopy() *ProjectTeam
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectTeam.
func (*ProjectTeam) DeepCopyInto ¶
func (in *ProjectTeam) DeepCopyInto(out *ProjectTeam)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RetentionPolicy ¶
type RetentionPolicy struct { // RetentionPeriod specifies the duration value in seconds that objects // need to be retained. Retention duration must be greater than zero and // less than 100 years. Note that enforcement of retention periods less // than a day is not guaranteed. Such periods should only be used for // testing purposes. // +kubebuilder:validation:Minimum=0 // +kubebuilder:validation:Maximum=3155673600 RetentionPeriodSeconds int `json:"retentionPeriodSeconds,omitempty"` }
RetentionPolicy enforces a minimum retention time for all objects contained in the bucket.
Any attempt to overwrite or delete objects younger than the retention period will result in an error. An unlocked retention policy can be modified or removed from the bucket via the Update method. A locked retention policy cannot be removed or shortened in duration for the lifetime of the bucket.
This feature is in private alpha release. It is not currently available to most customers. It might be changed in backwards-incompatible ways and is not subject to any SLA or deprecation policy.
func NewRetentionPolicy ¶
func NewRetentionPolicy(rp *storage.RetentionPolicy) *RetentionPolicy
NewRetentionPolicy creates a new instance of RetentionPolicy from the storage counterpart
func (*RetentionPolicy) DeepCopy ¶
func (in *RetentionPolicy) DeepCopy() *RetentionPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RetentionPolicy.
func (*RetentionPolicy) DeepCopyInto ¶
func (in *RetentionPolicy) DeepCopyInto(out *RetentionPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RetentionPolicyStatus ¶
type RetentionPolicyStatus struct { // EffectiveTime is the time from which the policy was enforced and // effective. EffectiveTime metav1.Time `json:"effectiveTime,omitempty"` // IsLocked describes whether the bucket is locked. Once locked, an object // retention policy cannot be modified. IsLocked bool `json:"isLocked,omitempty"` }
RetentionPolicyStatus output component of storage.RetentionPolicy
func NewRetentionPolicyStatus ¶
func NewRetentionPolicyStatus(r *storage.RetentionPolicy) *RetentionPolicyStatus
NewRetentionPolicyStatus creates a new instance of RetentionPolicy from the storage counterpart
func (*RetentionPolicyStatus) DeepCopy ¶
func (in *RetentionPolicyStatus) DeepCopy() *RetentionPolicyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RetentionPolicyStatus.
func (*RetentionPolicyStatus) DeepCopyInto ¶
func (in *RetentionPolicyStatus) DeepCopyInto(out *RetentionPolicyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.