v1alpha1

package
v0.4.0 Latest Latest
Warning

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

Go to latest
Published: Feb 22, 2024 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Overview

+kubebuilder:object:generate=true +groupName=quota.vault.upbound.io +versionName=v1alpha1

Index

Constants

View Source
const (
	CRDGroup   = "quota.vault.upbound.io"
	CRDVersion = "v1alpha1"
)

Package type metadata.

Variables

View Source
var (
	// CRDGroupVersion is the API Group Version used to register the objects
	CRDGroupVersion = schema.GroupVersion{Group: CRDGroup, Version: CRDVersion}

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

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var (
	LeaseCount_Kind             = "LeaseCount"
	LeaseCount_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: LeaseCount_Kind}.String()
	LeaseCount_KindAPIVersion   = LeaseCount_Kind + "." + CRDGroupVersion.String()
	LeaseCount_GroupVersionKind = CRDGroupVersion.WithKind(LeaseCount_Kind)
)

Repository type metadata.

View Source
var (
	RateLimit_Kind             = "RateLimit"
	RateLimit_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: RateLimit_Kind}.String()
	RateLimit_KindAPIVersion   = RateLimit_Kind + "." + CRDGroupVersion.String()
	RateLimit_GroupVersionKind = CRDGroupVersion.WithKind(RateLimit_Kind)
)

Repository type metadata.

Functions

This section is empty.

Types

type LeaseCount

type LeaseCount struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.maxLeases) || has(self.initProvider.maxLeases)",message="maxLeases is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter"
	Spec   LeaseCountSpec   `json:"spec"`
	Status LeaseCountStatus `json:"status,omitempty"`
}

LeaseCount is the Schema for the LeaseCounts API. Manage Lease Count Quota +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,vault}

func (*LeaseCount) DeepCopy

func (in *LeaseCount) DeepCopy() *LeaseCount

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

func (*LeaseCount) DeepCopyInto

func (in *LeaseCount) DeepCopyInto(out *LeaseCount)

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

func (*LeaseCount) DeepCopyObject

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

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

func (*LeaseCount) GetCondition

func (mg *LeaseCount) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this LeaseCount.

func (*LeaseCount) GetConnectionDetailsMapping

func (tr *LeaseCount) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this LeaseCount

func (*LeaseCount) GetDeletionPolicy

func (mg *LeaseCount) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this LeaseCount.

func (*LeaseCount) GetID

func (tr *LeaseCount) GetID() string

GetID returns ID of underlying Terraform resource of this LeaseCount

func (*LeaseCount) GetInitParameters added in v0.2.0

func (tr *LeaseCount) GetInitParameters() (map[string]any, error)

GetInitParameters of this LeaseCount

func (*LeaseCount) GetManagementPolicies added in v0.2.0

func (mg *LeaseCount) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this LeaseCount.

func (*LeaseCount) GetObservation

func (tr *LeaseCount) GetObservation() (map[string]any, error)

GetObservation of this LeaseCount

func (*LeaseCount) GetParameters

func (tr *LeaseCount) GetParameters() (map[string]any, error)

GetParameters of this LeaseCount

func (*LeaseCount) GetProviderConfigReference

func (mg *LeaseCount) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this LeaseCount.

func (*LeaseCount) GetProviderReference

func (mg *LeaseCount) GetProviderReference() *xpv1.Reference

GetProviderReference of this LeaseCount. Deprecated: Use GetProviderConfigReference.

func (*LeaseCount) GetPublishConnectionDetailsTo

func (mg *LeaseCount) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this LeaseCount.

func (*LeaseCount) GetTerraformResourceType

func (mg *LeaseCount) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this LeaseCount

func (*LeaseCount) GetTerraformSchemaVersion

func (tr *LeaseCount) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*LeaseCount) GetWriteConnectionSecretToReference

func (mg *LeaseCount) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this LeaseCount.

func (*LeaseCount) LateInitialize

func (tr *LeaseCount) LateInitialize(attrs []byte) (bool, error)

LateInitialize this LeaseCount using its observed tfState. returns True if there are any spec changes for the resource.

func (*LeaseCount) SetConditions

func (mg *LeaseCount) SetConditions(c ...xpv1.Condition)

SetConditions of this LeaseCount.

func (*LeaseCount) SetDeletionPolicy

func (mg *LeaseCount) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this LeaseCount.

func (*LeaseCount) SetManagementPolicies added in v0.2.0

func (mg *LeaseCount) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this LeaseCount.

func (*LeaseCount) SetObservation

func (tr *LeaseCount) SetObservation(obs map[string]any) error

SetObservation for this LeaseCount

func (*LeaseCount) SetParameters

func (tr *LeaseCount) SetParameters(params map[string]any) error

SetParameters for this LeaseCount

func (*LeaseCount) SetProviderConfigReference

func (mg *LeaseCount) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this LeaseCount.

func (*LeaseCount) SetProviderReference

func (mg *LeaseCount) SetProviderReference(r *xpv1.Reference)

SetProviderReference of this LeaseCount. Deprecated: Use SetProviderConfigReference.

func (*LeaseCount) SetPublishConnectionDetailsTo

func (mg *LeaseCount) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this LeaseCount.

func (*LeaseCount) SetWriteConnectionSecretToReference

func (mg *LeaseCount) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this LeaseCount.

type LeaseCountInitParameters added in v0.2.0

type LeaseCountInitParameters struct {

	// The maximum number of leases to be allowed by the quota
	// rule. The max_leases must be positive.
	// The maximum number of leases to be allowed by the quota rule. The max_leases must be positive.
	MaxLeases *float64 `json:"maxLeases,omitempty" tf:"max_leases,omitempty"`

	// Name of the rate limit quota
	// The name of the quota.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The namespace to provision the resource in.
	// The value should not contain leading or trailing forward slashes.
	// The namespace is always relative to the provider's configured namespace.
	// Available only for Vault Enterprise.
	// Target namespace. (requires Enterprise)
	Namespace *string `json:"namespace,omitempty" tf:"namespace,omitempty"`

	// Path of the mount or namespace to apply the quota. A blank path configures a
	// global rate limit quota. For example namespace1/ adds a quota to a full namespace,
	// namespace1/auth/userpass adds a quota to userpass in namespace1.
	// Updating this field on an existing quota can have "moving" effects. For example, updating
	// auth/userpass to namespace1/auth/userpass moves this quota from being a global mount quota to
	// a namespace specific mount quota. Note, namespaces are supported in Enterprise only.
	// Path of the mount or namespace to apply the quota. A blank path configures a global lease count quota.
	Path *string `json:"path,omitempty" tf:"path,omitempty"`

	// If set on a quota where path is set to an auth mount with a concept of roles (such as /auth/approle/), this will make the quota restrict login requests to that mount that are made with the specified role.
	// If set on a quota where path is set to an auth mount with a concept of roles (such as /auth/approle/), this will make the quota restrict login requests to that mount that are made with the specified role.
	Role *string `json:"role,omitempty" tf:"role,omitempty"`
}

func (*LeaseCountInitParameters) DeepCopy added in v0.2.0

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

func (*LeaseCountInitParameters) DeepCopyInto added in v0.2.0

func (in *LeaseCountInitParameters) DeepCopyInto(out *LeaseCountInitParameters)

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

type LeaseCountList

type LeaseCountList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []LeaseCount `json:"items"`
}

LeaseCountList contains a list of LeaseCounts

func (*LeaseCountList) DeepCopy

func (in *LeaseCountList) DeepCopy() *LeaseCountList

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

func (*LeaseCountList) DeepCopyInto

func (in *LeaseCountList) DeepCopyInto(out *LeaseCountList)

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

func (*LeaseCountList) DeepCopyObject

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

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

func (*LeaseCountList) GetItems

func (l *LeaseCountList) GetItems() []resource.Managed

GetItems of this LeaseCountList.

type LeaseCountObservation

type LeaseCountObservation struct {
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The maximum number of leases to be allowed by the quota
	// rule. The max_leases must be positive.
	// The maximum number of leases to be allowed by the quota rule. The max_leases must be positive.
	MaxLeases *float64 `json:"maxLeases,omitempty" tf:"max_leases,omitempty"`

	// Name of the rate limit quota
	// The name of the quota.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The namespace to provision the resource in.
	// The value should not contain leading or trailing forward slashes.
	// The namespace is always relative to the provider's configured namespace.
	// Available only for Vault Enterprise.
	// Target namespace. (requires Enterprise)
	Namespace *string `json:"namespace,omitempty" tf:"namespace,omitempty"`

	// Path of the mount or namespace to apply the quota. A blank path configures a
	// global rate limit quota. For example namespace1/ adds a quota to a full namespace,
	// namespace1/auth/userpass adds a quota to userpass in namespace1.
	// Updating this field on an existing quota can have "moving" effects. For example, updating
	// auth/userpass to namespace1/auth/userpass moves this quota from being a global mount quota to
	// a namespace specific mount quota. Note, namespaces are supported in Enterprise only.
	// Path of the mount or namespace to apply the quota. A blank path configures a global lease count quota.
	Path *string `json:"path,omitempty" tf:"path,omitempty"`

	// If set on a quota where path is set to an auth mount with a concept of roles (such as /auth/approle/), this will make the quota restrict login requests to that mount that are made with the specified role.
	// If set on a quota where path is set to an auth mount with a concept of roles (such as /auth/approle/), this will make the quota restrict login requests to that mount that are made with the specified role.
	Role *string `json:"role,omitempty" tf:"role,omitempty"`
}

func (*LeaseCountObservation) DeepCopy

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

func (*LeaseCountObservation) DeepCopyInto

func (in *LeaseCountObservation) DeepCopyInto(out *LeaseCountObservation)

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

type LeaseCountParameters

type LeaseCountParameters struct {

	// The maximum number of leases to be allowed by the quota
	// rule. The max_leases must be positive.
	// The maximum number of leases to be allowed by the quota rule. The max_leases must be positive.
	// +kubebuilder:validation:Optional
	MaxLeases *float64 `json:"maxLeases,omitempty" tf:"max_leases,omitempty"`

	// Name of the rate limit quota
	// The name of the quota.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The namespace to provision the resource in.
	// The value should not contain leading or trailing forward slashes.
	// The namespace is always relative to the provider's configured namespace.
	// Available only for Vault Enterprise.
	// Target namespace. (requires Enterprise)
	// +kubebuilder:validation:Optional
	Namespace *string `json:"namespace,omitempty" tf:"namespace,omitempty"`

	// Path of the mount or namespace to apply the quota. A blank path configures a
	// global rate limit quota. For example namespace1/ adds a quota to a full namespace,
	// namespace1/auth/userpass adds a quota to userpass in namespace1.
	// Updating this field on an existing quota can have "moving" effects. For example, updating
	// auth/userpass to namespace1/auth/userpass moves this quota from being a global mount quota to
	// a namespace specific mount quota. Note, namespaces are supported in Enterprise only.
	// Path of the mount or namespace to apply the quota. A blank path configures a global lease count quota.
	// +kubebuilder:validation:Optional
	Path *string `json:"path,omitempty" tf:"path,omitempty"`

	// If set on a quota where path is set to an auth mount with a concept of roles (such as /auth/approle/), this will make the quota restrict login requests to that mount that are made with the specified role.
	// If set on a quota where path is set to an auth mount with a concept of roles (such as /auth/approle/), this will make the quota restrict login requests to that mount that are made with the specified role.
	// +kubebuilder:validation:Optional
	Role *string `json:"role,omitempty" tf:"role,omitempty"`
}

func (*LeaseCountParameters) DeepCopy

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

func (*LeaseCountParameters) DeepCopyInto

func (in *LeaseCountParameters) DeepCopyInto(out *LeaseCountParameters)

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

type LeaseCountSpec

type LeaseCountSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     LeaseCountParameters `json:"forProvider"`
	// THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored
	// unless the relevant Crossplane feature flag is enabled, and may be
	// changed or removed without notice.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider LeaseCountInitParameters `json:"initProvider,omitempty"`
}

LeaseCountSpec defines the desired state of LeaseCount

func (*LeaseCountSpec) DeepCopy

func (in *LeaseCountSpec) DeepCopy() *LeaseCountSpec

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

func (*LeaseCountSpec) DeepCopyInto

func (in *LeaseCountSpec) DeepCopyInto(out *LeaseCountSpec)

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

type LeaseCountStatus

type LeaseCountStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        LeaseCountObservation `json:"atProvider,omitempty"`
}

LeaseCountStatus defines the observed state of LeaseCount.

func (*LeaseCountStatus) DeepCopy

func (in *LeaseCountStatus) DeepCopy() *LeaseCountStatus

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

func (*LeaseCountStatus) DeepCopyInto

func (in *LeaseCountStatus) DeepCopyInto(out *LeaseCountStatus)

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

type RateLimit

type RateLimit struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.rate) || has(self.initProvider.rate)",message="rate is a required parameter"
	Spec   RateLimitSpec   `json:"spec"`
	Status RateLimitStatus `json:"status,omitempty"`
}

RateLimit is the Schema for the RateLimits API. Manage Rate Limit Quota +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,vault}

func (*RateLimit) DeepCopy

func (in *RateLimit) DeepCopy() *RateLimit

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

func (*RateLimit) DeepCopyInto

func (in *RateLimit) DeepCopyInto(out *RateLimit)

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

func (*RateLimit) DeepCopyObject

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

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

func (*RateLimit) GetCondition

func (mg *RateLimit) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this RateLimit.

func (*RateLimit) GetConnectionDetailsMapping

func (tr *RateLimit) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this RateLimit

func (*RateLimit) GetDeletionPolicy

func (mg *RateLimit) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this RateLimit.

func (*RateLimit) GetID

func (tr *RateLimit) GetID() string

GetID returns ID of underlying Terraform resource of this RateLimit

func (*RateLimit) GetInitParameters added in v0.2.0

func (tr *RateLimit) GetInitParameters() (map[string]any, error)

GetInitParameters of this RateLimit

func (*RateLimit) GetManagementPolicies added in v0.2.0

func (mg *RateLimit) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this RateLimit.

func (*RateLimit) GetObservation

func (tr *RateLimit) GetObservation() (map[string]any, error)

GetObservation of this RateLimit

func (*RateLimit) GetParameters

func (tr *RateLimit) GetParameters() (map[string]any, error)

GetParameters of this RateLimit

func (*RateLimit) GetProviderConfigReference

func (mg *RateLimit) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this RateLimit.

func (*RateLimit) GetProviderReference

func (mg *RateLimit) GetProviderReference() *xpv1.Reference

GetProviderReference of this RateLimit. Deprecated: Use GetProviderConfigReference.

func (*RateLimit) GetPublishConnectionDetailsTo

func (mg *RateLimit) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this RateLimit.

func (*RateLimit) GetTerraformResourceType

func (mg *RateLimit) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this RateLimit

func (*RateLimit) GetTerraformSchemaVersion

func (tr *RateLimit) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*RateLimit) GetWriteConnectionSecretToReference

func (mg *RateLimit) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this RateLimit.

func (*RateLimit) LateInitialize

func (tr *RateLimit) LateInitialize(attrs []byte) (bool, error)

LateInitialize this RateLimit using its observed tfState. returns True if there are any spec changes for the resource.

func (*RateLimit) SetConditions

func (mg *RateLimit) SetConditions(c ...xpv1.Condition)

SetConditions of this RateLimit.

func (*RateLimit) SetDeletionPolicy

func (mg *RateLimit) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this RateLimit.

func (*RateLimit) SetManagementPolicies added in v0.2.0

func (mg *RateLimit) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this RateLimit.

func (*RateLimit) SetObservation

func (tr *RateLimit) SetObservation(obs map[string]any) error

SetObservation for this RateLimit

func (*RateLimit) SetParameters

func (tr *RateLimit) SetParameters(params map[string]any) error

SetParameters for this RateLimit

func (*RateLimit) SetProviderConfigReference

func (mg *RateLimit) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this RateLimit.

func (*RateLimit) SetProviderReference

func (mg *RateLimit) SetProviderReference(r *xpv1.Reference)

SetProviderReference of this RateLimit. Deprecated: Use SetProviderConfigReference.

func (*RateLimit) SetPublishConnectionDetailsTo

func (mg *RateLimit) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this RateLimit.

func (*RateLimit) SetWriteConnectionSecretToReference

func (mg *RateLimit) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this RateLimit.

type RateLimitInitParameters added in v0.2.0

type RateLimitInitParameters struct {

	// If set, when a client reaches a rate limit threshold, the client will
	// be prohibited from any further requests until after the 'block_interval' in seconds has elapsed.
	// If set, when a client reaches a rate limit threshold, the client will be prohibited from any further requests until after the 'block_interval' in seconds has elapsed.
	BlockInterval *float64 `json:"blockInterval,omitempty" tf:"block_interval,omitempty"`

	// The duration in seconds to enforce rate limiting for.
	// The duration in seconds to enforce rate limiting for.
	Interval *float64 `json:"interval,omitempty" tf:"interval,omitempty"`

	// Name of the rate limit quota
	// The name of the quota.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The namespace to provision the resource in.
	// The value should not contain leading or trailing forward slashes.
	// The namespace is always relative to the provider's configured namespace.
	// Available only for Vault Enterprise.
	// Target namespace. (requires Enterprise)
	Namespace *string `json:"namespace,omitempty" tf:"namespace,omitempty"`

	// Path of the mount or namespace to apply the quota. A blank path configures a
	// global rate limit quota. For example namespace1/ adds a quota to a full namespace,
	// namespace1/auth/userpass adds a quota to userpass in namespace1.
	// Updating this field on an existing quota can have "moving" effects. For example, updating
	// auth/userpass to namespace1/auth/userpass moves this quota from being a global mount quota to
	// a namespace specific mount quota. Note, namespaces are supported in Enterprise only.
	// Path of the mount or namespace to apply the quota. A blank path configures a global rate limit quota.
	Path *string `json:"path,omitempty" tf:"path,omitempty"`

	// The maximum number of requests at any given second to be allowed by the quota
	// rule. The rate must be positive.
	// The maximum number of requests at any given second to be allowed by the quota rule. The rate must be positive.
	Rate *float64 `json:"rate,omitempty" tf:"rate,omitempty"`

	// If set on a quota where path is set to an auth mount with a concept of roles (such as /auth/approle/), this will make the quota restrict login requests to that mount that are made with the specified role.
	// If set on a quota where path is set to an auth mount with a concept of roles (such as /auth/approle/), this will make the quota restrict login requests to that mount that are made with the specified role.
	Role *string `json:"role,omitempty" tf:"role,omitempty"`
}

func (*RateLimitInitParameters) DeepCopy added in v0.2.0

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

func (*RateLimitInitParameters) DeepCopyInto added in v0.2.0

func (in *RateLimitInitParameters) DeepCopyInto(out *RateLimitInitParameters)

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

type RateLimitList

type RateLimitList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []RateLimit `json:"items"`
}

RateLimitList contains a list of RateLimits

func (*RateLimitList) DeepCopy

func (in *RateLimitList) DeepCopy() *RateLimitList

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

func (*RateLimitList) DeepCopyInto

func (in *RateLimitList) DeepCopyInto(out *RateLimitList)

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

func (*RateLimitList) DeepCopyObject

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

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

func (*RateLimitList) GetItems

func (l *RateLimitList) GetItems() []resource.Managed

GetItems of this RateLimitList.

type RateLimitObservation

type RateLimitObservation struct {

	// If set, when a client reaches a rate limit threshold, the client will
	// be prohibited from any further requests until after the 'block_interval' in seconds has elapsed.
	// If set, when a client reaches a rate limit threshold, the client will be prohibited from any further requests until after the 'block_interval' in seconds has elapsed.
	BlockInterval *float64 `json:"blockInterval,omitempty" tf:"block_interval,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The duration in seconds to enforce rate limiting for.
	// The duration in seconds to enforce rate limiting for.
	Interval *float64 `json:"interval,omitempty" tf:"interval,omitempty"`

	// Name of the rate limit quota
	// The name of the quota.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The namespace to provision the resource in.
	// The value should not contain leading or trailing forward slashes.
	// The namespace is always relative to the provider's configured namespace.
	// Available only for Vault Enterprise.
	// Target namespace. (requires Enterprise)
	Namespace *string `json:"namespace,omitempty" tf:"namespace,omitempty"`

	// Path of the mount or namespace to apply the quota. A blank path configures a
	// global rate limit quota. For example namespace1/ adds a quota to a full namespace,
	// namespace1/auth/userpass adds a quota to userpass in namespace1.
	// Updating this field on an existing quota can have "moving" effects. For example, updating
	// auth/userpass to namespace1/auth/userpass moves this quota from being a global mount quota to
	// a namespace specific mount quota. Note, namespaces are supported in Enterprise only.
	// Path of the mount or namespace to apply the quota. A blank path configures a global rate limit quota.
	Path *string `json:"path,omitempty" tf:"path,omitempty"`

	// The maximum number of requests at any given second to be allowed by the quota
	// rule. The rate must be positive.
	// The maximum number of requests at any given second to be allowed by the quota rule. The rate must be positive.
	Rate *float64 `json:"rate,omitempty" tf:"rate,omitempty"`

	// If set on a quota where path is set to an auth mount with a concept of roles (such as /auth/approle/), this will make the quota restrict login requests to that mount that are made with the specified role.
	// If set on a quota where path is set to an auth mount with a concept of roles (such as /auth/approle/), this will make the quota restrict login requests to that mount that are made with the specified role.
	Role *string `json:"role,omitempty" tf:"role,omitempty"`
}

func (*RateLimitObservation) DeepCopy

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

func (*RateLimitObservation) DeepCopyInto

func (in *RateLimitObservation) DeepCopyInto(out *RateLimitObservation)

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

type RateLimitParameters

type RateLimitParameters struct {

	// If set, when a client reaches a rate limit threshold, the client will
	// be prohibited from any further requests until after the 'block_interval' in seconds has elapsed.
	// If set, when a client reaches a rate limit threshold, the client will be prohibited from any further requests until after the 'block_interval' in seconds has elapsed.
	// +kubebuilder:validation:Optional
	BlockInterval *float64 `json:"blockInterval,omitempty" tf:"block_interval,omitempty"`

	// The duration in seconds to enforce rate limiting for.
	// The duration in seconds to enforce rate limiting for.
	// +kubebuilder:validation:Optional
	Interval *float64 `json:"interval,omitempty" tf:"interval,omitempty"`

	// Name of the rate limit quota
	// The name of the quota.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The namespace to provision the resource in.
	// The value should not contain leading or trailing forward slashes.
	// The namespace is always relative to the provider's configured namespace.
	// Available only for Vault Enterprise.
	// Target namespace. (requires Enterprise)
	// +kubebuilder:validation:Optional
	Namespace *string `json:"namespace,omitempty" tf:"namespace,omitempty"`

	// Path of the mount or namespace to apply the quota. A blank path configures a
	// global rate limit quota. For example namespace1/ adds a quota to a full namespace,
	// namespace1/auth/userpass adds a quota to userpass in namespace1.
	// Updating this field on an existing quota can have "moving" effects. For example, updating
	// auth/userpass to namespace1/auth/userpass moves this quota from being a global mount quota to
	// a namespace specific mount quota. Note, namespaces are supported in Enterprise only.
	// Path of the mount or namespace to apply the quota. A blank path configures a global rate limit quota.
	// +kubebuilder:validation:Optional
	Path *string `json:"path,omitempty" tf:"path,omitempty"`

	// The maximum number of requests at any given second to be allowed by the quota
	// rule. The rate must be positive.
	// The maximum number of requests at any given second to be allowed by the quota rule. The rate must be positive.
	// +kubebuilder:validation:Optional
	Rate *float64 `json:"rate,omitempty" tf:"rate,omitempty"`

	// If set on a quota where path is set to an auth mount with a concept of roles (such as /auth/approle/), this will make the quota restrict login requests to that mount that are made with the specified role.
	// If set on a quota where path is set to an auth mount with a concept of roles (such as /auth/approle/), this will make the quota restrict login requests to that mount that are made with the specified role.
	// +kubebuilder:validation:Optional
	Role *string `json:"role,omitempty" tf:"role,omitempty"`
}

func (*RateLimitParameters) DeepCopy

func (in *RateLimitParameters) DeepCopy() *RateLimitParameters

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

func (*RateLimitParameters) DeepCopyInto

func (in *RateLimitParameters) DeepCopyInto(out *RateLimitParameters)

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

type RateLimitSpec

type RateLimitSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     RateLimitParameters `json:"forProvider"`
	// THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored
	// unless the relevant Crossplane feature flag is enabled, and may be
	// changed or removed without notice.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider RateLimitInitParameters `json:"initProvider,omitempty"`
}

RateLimitSpec defines the desired state of RateLimit

func (*RateLimitSpec) DeepCopy

func (in *RateLimitSpec) DeepCopy() *RateLimitSpec

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

func (*RateLimitSpec) DeepCopyInto

func (in *RateLimitSpec) DeepCopyInto(out *RateLimitSpec)

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

type RateLimitStatus

type RateLimitStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        RateLimitObservation `json:"atProvider,omitempty"`
}

RateLimitStatus defines the observed state of RateLimit.

func (*RateLimitStatus) DeepCopy

func (in *RateLimitStatus) DeepCopy() *RateLimitStatus

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

func (*RateLimitStatus) DeepCopyInto

func (in *RateLimitStatus) DeepCopyInto(out *RateLimitStatus)

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

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL