package v1

import "k8s.io/client-go/applyconfigurations/flowcontrol/v1"

Index

Types

type ExemptPriorityLevelConfigurationApplyConfiguration

type ExemptPriorityLevelConfigurationApplyConfiguration struct {
	// `nominalConcurrencyShares` (NCS) contributes to the computation of the
	// NominalConcurrencyLimit (NominalCL) of this level.
	// This is the number of execution seats nominally reserved for this priority level.
	// This DOES NOT limit the dispatching from this priority level
	// but affects the other priority levels through the borrowing mechanism.
	// The server's concurrency limit (ServerCL) is divided among all the
	// priority levels in proportion to their NCS values:
	//
	// NominalCL(i)  = ceil( ServerCL * NCS(i) / sum_ncs )
	// sum_ncs = sum[priority level k] NCS(k)
	//
	// Bigger numbers mean a larger nominal concurrency limit,
	// at the expense of every other priority level.
	// This field has a default value of zero.
	NominalConcurrencyShares *int32 `json:"nominalConcurrencyShares,omitempty"`
	// `lendablePercent` prescribes the fraction of the level's NominalCL that
	// can be borrowed by other priority levels.  This value of this
	// field must be between 0 and 100, inclusive, and it defaults to 0.
	// The number of seats that other levels can borrow from this level, known
	// as this level's LendableConcurrencyLimit (LendableCL), is defined as follows.
	//
	// LendableCL(i) = round( NominalCL(i) * lendablePercent(i)/100.0 )
	LendablePercent *int32 `json:"lendablePercent,omitempty"`
}

ExemptPriorityLevelConfigurationApplyConfiguration represents a declarative configuration of the ExemptPriorityLevelConfiguration type for use with apply.

ExemptPriorityLevelConfiguration describes the configurable aspects of the handling of exempt requests. In the mandatory exempt configuration object the values in the fields here can be modified by authorized users, unlike the rest of the `spec`.

func ExemptPriorityLevelConfiguration

func ExemptPriorityLevelConfiguration() *ExemptPriorityLevelConfigurationApplyConfiguration

ExemptPriorityLevelConfigurationApplyConfiguration constructs a declarative configuration of the ExemptPriorityLevelConfiguration type for use with apply.

func (*ExemptPriorityLevelConfigurationApplyConfiguration) WithLendablePercent

WithLendablePercent sets the LendablePercent field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the LendablePercent field is set to the value of the last call.

func (*ExemptPriorityLevelConfigurationApplyConfiguration) WithNominalConcurrencyShares

WithNominalConcurrencyShares sets the NominalConcurrencyShares field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the NominalConcurrencyShares field is set to the value of the last call.

type FlowDistinguisherMethodApplyConfiguration

type FlowDistinguisherMethodApplyConfiguration struct {
	// `type` is the type of flow distinguisher method
	// The supported types are "ByUser" and "ByNamespace".
	// Required.
	Type *flowcontrolv1.FlowDistinguisherMethodType `json:"type,omitempty"`
}

FlowDistinguisherMethodApplyConfiguration represents a declarative configuration of the FlowDistinguisherMethod type for use with apply.

FlowDistinguisherMethod specifies the method of a flow distinguisher.

func FlowDistinguisherMethod

func FlowDistinguisherMethod() *FlowDistinguisherMethodApplyConfiguration

FlowDistinguisherMethodApplyConfiguration constructs a declarative configuration of the FlowDistinguisherMethod type for use with apply.

func (*FlowDistinguisherMethodApplyConfiguration) WithType

WithType sets the Type field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Type field is set to the value of the last call.

type FlowSchemaApplyConfiguration

type FlowSchemaApplyConfiguration struct {
	metav1.TypeMetaApplyConfiguration `json:",inline"`
	// `metadata` is the standard object's metadata.
	// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
	*metav1.ObjectMetaApplyConfiguration `json:"metadata,omitempty"`
	// `spec` is the specification of the desired behavior of a FlowSchema.
	// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
	Spec *FlowSchemaSpecApplyConfiguration `json:"spec,omitempty"`
	// `status` is the current status of a FlowSchema.
	// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
	Status *FlowSchemaStatusApplyConfiguration `json:"status,omitempty"`
}

FlowSchemaApplyConfiguration represents a declarative configuration of the FlowSchema type for use with apply.

FlowSchema defines the schema of a group of flows. Note that a flow is made up of a set of inbound API requests with similar attributes and is identified by a pair of strings: the name of the FlowSchema and a "flow distinguisher".

func ExtractFlowSchema

func ExtractFlowSchema(flowSchema *flowcontrolv1.FlowSchema, fieldManager string) (*FlowSchemaApplyConfiguration, error)

ExtractFlowSchema extracts the applied configuration owned by fieldManager from flowSchema. If no managedFields are found in flowSchema for fieldManager, a FlowSchemaApplyConfiguration is returned with only the Name, Namespace (if applicable), APIVersion and Kind populated. It is possible that no managed fields were found for because other field managers have taken ownership of all the fields previously owned by fieldManager, or because the fieldManager never owned fields any fields. flowSchema must be a unmodified FlowSchema API object that was retrieved from the Kubernetes API. ExtractFlowSchema provides a way to perform a extract/modify-in-place/apply workflow. Note that an extracted apply configuration will contain fewer fields than what the fieldManager previously applied if another fieldManager has updated or force applied any of the previously applied fields.

func ExtractFlowSchemaFrom

func ExtractFlowSchemaFrom(flowSchema *flowcontrolv1.FlowSchema, fieldManager string, subresource string) (*FlowSchemaApplyConfiguration, error)

ExtractFlowSchemaFrom extracts the applied configuration owned by fieldManager from flowSchema for the specified subresource. Pass an empty string for subresource to extract the main resource. Common subresources include "status", "scale", etc. flowSchema must be a unmodified FlowSchema API object that was retrieved from the Kubernetes API. ExtractFlowSchemaFrom provides a way to perform a extract/modify-in-place/apply workflow. Note that an extracted apply configuration will contain fewer fields than what the fieldManager previously applied if another fieldManager has updated or force applied any of the previously applied fields.

func ExtractFlowSchemaStatus

func ExtractFlowSchemaStatus(flowSchema *flowcontrolv1.FlowSchema, fieldManager string) (*FlowSchemaApplyConfiguration, error)

ExtractFlowSchemaStatus extracts the applied configuration owned by fieldManager from flowSchema for the status subresource.

func FlowSchema

func FlowSchema(name string) *FlowSchemaApplyConfiguration

FlowSchema constructs a declarative configuration of the FlowSchema type for use with apply.

func (*FlowSchemaApplyConfiguration) GetAPIVersion

func (b *FlowSchemaApplyConfiguration) GetAPIVersion() *string

GetAPIVersion retrieves the value of the APIVersion field in the declarative configuration.

func (*FlowSchemaApplyConfiguration) GetKind

func (b *FlowSchemaApplyConfiguration) GetKind() *string

GetKind retrieves the value of the Kind field in the declarative configuration.

func (*FlowSchemaApplyConfiguration) GetName

func (b *FlowSchemaApplyConfiguration) GetName() *string

GetName retrieves the value of the Name field in the declarative configuration.

func (*FlowSchemaApplyConfiguration) GetNamespace

func (b *FlowSchemaApplyConfiguration) GetNamespace() *string

GetNamespace retrieves the value of the Namespace field in the declarative configuration.

func (FlowSchemaApplyConfiguration) IsApplyConfiguration

func (b FlowSchemaApplyConfiguration) IsApplyConfiguration()

func (*FlowSchemaApplyConfiguration) WithAPIVersion

WithAPIVersion sets the APIVersion field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the APIVersion field is set to the value of the last call.

func (*FlowSchemaApplyConfiguration) WithAnnotations

WithAnnotations puts the entries into the Annotations field in the declarative configuration and returns the receiver, so that objects can be build by chaining "With" function invocations. If called multiple times, the entries provided by each call will be put on the Annotations field, overwriting an existing map entries in Annotations field with the same key.

func (*FlowSchemaApplyConfiguration) WithCreationTimestamp

WithCreationTimestamp sets the CreationTimestamp field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the CreationTimestamp field is set to the value of the last call.

func (*FlowSchemaApplyConfiguration) WithDeletionGracePeriodSeconds

func (b *FlowSchemaApplyConfiguration) WithDeletionGracePeriodSeconds(value int64) *FlowSchemaApplyConfiguration

WithDeletionGracePeriodSeconds sets the DeletionGracePeriodSeconds field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the DeletionGracePeriodSeconds field is set to the value of the last call.

func (*FlowSchemaApplyConfiguration) WithDeletionTimestamp

WithDeletionTimestamp sets the DeletionTimestamp field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the DeletionTimestamp field is set to the value of the last call.

func (*FlowSchemaApplyConfiguration) WithFinalizers

WithFinalizers adds the given value to the Finalizers field in the declarative configuration and returns the receiver, so that objects can be build by chaining "With" function invocations. If called multiple times, values provided by each call will be appended to the Finalizers field.

func (*FlowSchemaApplyConfiguration) WithGenerateName

WithGenerateName sets the GenerateName field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the GenerateName field is set to the value of the last call.

func (*FlowSchemaApplyConfiguration) WithGeneration

WithGeneration sets the Generation field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Generation field is set to the value of the last call.

func (*FlowSchemaApplyConfiguration) WithKind

WithKind sets the Kind field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Kind field is set to the value of the last call.

func (*FlowSchemaApplyConfiguration) WithLabels

WithLabels puts the entries into the Labels field in the declarative configuration and returns the receiver, so that objects can be build by chaining "With" function invocations. If called multiple times, the entries provided by each call will be put on the Labels field, overwriting an existing map entries in Labels field with the same key.

func (*FlowSchemaApplyConfiguration) WithName

WithName sets the Name field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Name field is set to the value of the last call.

func (*FlowSchemaApplyConfiguration) WithNamespace

WithNamespace sets the Namespace field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Namespace field is set to the value of the last call.

func (*FlowSchemaApplyConfiguration) WithOwnerReferences

WithOwnerReferences adds the given value to the OwnerReferences field in the declarative configuration and returns the receiver, so that objects can be build by chaining "With" function invocations. If called multiple times, values provided by each call will be appended to the OwnerReferences field.

func (*FlowSchemaApplyConfiguration) WithResourceVersion

func (b *FlowSchemaApplyConfiguration) WithResourceVersion(value string) *FlowSchemaApplyConfiguration

WithResourceVersion sets the ResourceVersion field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the ResourceVersion field is set to the value of the last call.

func (*FlowSchemaApplyConfiguration) WithSpec

WithSpec sets the Spec field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Spec field is set to the value of the last call.

func (*FlowSchemaApplyConfiguration) WithStatus

WithStatus sets the Status field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Status field is set to the value of the last call.

func (*FlowSchemaApplyConfiguration) WithUID

WithUID sets the UID field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the UID field is set to the value of the last call.

type FlowSchemaConditionApplyConfiguration

type FlowSchemaConditionApplyConfiguration struct {
	// `type` is the type of the condition.
	// Required.
	Type *flowcontrolv1.FlowSchemaConditionType `json:"type,omitempty"`
	// `status` is the status of the condition.
	// Can be True, False, Unknown.
	// Required.
	Status *flowcontrolv1.ConditionStatus `json:"status,omitempty"`
	// `lastTransitionTime` is the last time the condition transitioned from one status to another.
	LastTransitionTime *metav1.Time `json:"lastTransitionTime,omitempty"`
	// `reason` is a unique, one-word, CamelCase reason for the condition's last transition.
	Reason *string `json:"reason,omitempty"`
	// `message` is a human-readable message indicating details about last transition.
	Message *string `json:"message,omitempty"`
}

FlowSchemaConditionApplyConfiguration represents a declarative configuration of the FlowSchemaCondition type for use with apply.

FlowSchemaCondition describes conditions for a FlowSchema.

func FlowSchemaCondition

func FlowSchemaCondition() *FlowSchemaConditionApplyConfiguration

FlowSchemaConditionApplyConfiguration constructs a declarative configuration of the FlowSchemaCondition type for use with apply.

func (*FlowSchemaConditionApplyConfiguration) WithLastTransitionTime

WithLastTransitionTime sets the LastTransitionTime field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the LastTransitionTime field is set to the value of the last call.

func (*FlowSchemaConditionApplyConfiguration) WithMessage

WithMessage sets the Message field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Message field is set to the value of the last call.

func (*FlowSchemaConditionApplyConfiguration) WithReason

WithReason sets the Reason field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Reason field is set to the value of the last call.

func (*FlowSchemaConditionApplyConfiguration) WithStatus

WithStatus sets the Status field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Status field is set to the value of the last call.

func (*FlowSchemaConditionApplyConfiguration) WithType

WithType sets the Type field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Type field is set to the value of the last call.

type FlowSchemaSpecApplyConfiguration

type FlowSchemaSpecApplyConfiguration struct {
	// `priorityLevelConfiguration` should reference a PriorityLevelConfiguration in the cluster. If the reference cannot
	// be resolved, the FlowSchema will be ignored and marked as invalid in its status.
	// Required.
	PriorityLevelConfiguration *PriorityLevelConfigurationReferenceApplyConfiguration `json:"priorityLevelConfiguration,omitempty"`
	// `matchingPrecedence` is used to choose among the FlowSchemas that match a given request. The chosen
	// FlowSchema is among those with the numerically lowest (which we take to be logically highest)
	// MatchingPrecedence.  Each MatchingPrecedence value must be ranged in [1,10000].
	// Note that if the precedence is not specified, it will be set to 1000 as default.
	MatchingPrecedence *int32 `json:"matchingPrecedence,omitempty"`
	// `distinguisherMethod` defines how to compute the flow distinguisher for requests that match this schema.
	// `nil` specifies that the distinguisher is disabled and thus will always be the empty string.
	DistinguisherMethod *FlowDistinguisherMethodApplyConfiguration `json:"distinguisherMethod,omitempty"`
	// `rules` describes which requests will match this flow schema. This FlowSchema matches a request if and only if
	// at least one member of rules matches the request.
	// if it is an empty slice, there will be no requests matching the FlowSchema.
	Rules []PolicyRulesWithSubjectsApplyConfiguration `json:"rules,omitempty"`
}

FlowSchemaSpecApplyConfiguration represents a declarative configuration of the FlowSchemaSpec type for use with apply.

FlowSchemaSpec describes how the FlowSchema's specification looks like.

func FlowSchemaSpec

func FlowSchemaSpec() *FlowSchemaSpecApplyConfiguration

FlowSchemaSpecApplyConfiguration constructs a declarative configuration of the FlowSchemaSpec type for use with apply.

func (*FlowSchemaSpecApplyConfiguration) WithDistinguisherMethod

WithDistinguisherMethod sets the DistinguisherMethod field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the DistinguisherMethod field is set to the value of the last call.

func (*FlowSchemaSpecApplyConfiguration) WithMatchingPrecedence

WithMatchingPrecedence sets the MatchingPrecedence field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the MatchingPrecedence field is set to the value of the last call.

func (*FlowSchemaSpecApplyConfiguration) WithPriorityLevelConfiguration

WithPriorityLevelConfiguration sets the PriorityLevelConfiguration field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the PriorityLevelConfiguration field is set to the value of the last call.

func (*FlowSchemaSpecApplyConfiguration) WithRules

WithRules adds the given value to the Rules field in the declarative configuration and returns the receiver, so that objects can be build by chaining "With" function invocations. If called multiple times, values provided by each call will be appended to the Rules field.

type FlowSchemaStatusApplyConfiguration

type FlowSchemaStatusApplyConfiguration struct {
	// `conditions` is a list of the current states of FlowSchema.
	Conditions []FlowSchemaConditionApplyConfiguration `json:"conditions,omitempty"`
}

FlowSchemaStatusApplyConfiguration represents a declarative configuration of the FlowSchemaStatus type for use with apply.

FlowSchemaStatus represents the current state of a FlowSchema.

func FlowSchemaStatus

func FlowSchemaStatus() *FlowSchemaStatusApplyConfiguration

FlowSchemaStatusApplyConfiguration constructs a declarative configuration of the FlowSchemaStatus type for use with apply.

func (*FlowSchemaStatusApplyConfiguration) WithConditions

WithConditions adds the given value to the Conditions field in the declarative configuration and returns the receiver, so that objects can be build by chaining "With" function invocations. If called multiple times, values provided by each call will be appended to the Conditions field.

type GroupSubjectApplyConfiguration

type GroupSubjectApplyConfiguration struct {
	// name is the user group that matches, or "*" to match all user groups.
	// See https://github.com/kubernetes/apiserver/blob/master/pkg/authentication/user/user.go for some
	// well-known group names.
	// Required.
	Name *string `json:"name,omitempty"`
}

GroupSubjectApplyConfiguration represents a declarative configuration of the GroupSubject type for use with apply.

GroupSubject holds detailed information for group-kind subject.

func GroupSubject

func GroupSubject() *GroupSubjectApplyConfiguration

GroupSubjectApplyConfiguration constructs a declarative configuration of the GroupSubject type for use with apply.

func (*GroupSubjectApplyConfiguration) WithName

WithName sets the Name field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Name field is set to the value of the last call.

type LimitResponseApplyConfiguration

type LimitResponseApplyConfiguration struct {
	// `type` is "Queue" or "Reject".
	// "Queue" means that requests that can not be executed upon arrival
	// are held in a queue until they can be executed or a queuing limit
	// is reached.
	// "Reject" means that requests that can not be executed upon arrival
	// are rejected.
	// Required.
	Type *flowcontrolv1.LimitResponseType `json:"type,omitempty"`
	// `queuing` holds the configuration parameters for queuing.
	// This field may be non-empty only if `type` is `"Queue"`.
	Queuing *QueuingConfigurationApplyConfiguration `json:"queuing,omitempty"`
}

LimitResponseApplyConfiguration represents a declarative configuration of the LimitResponse type for use with apply.

LimitResponse defines how to handle requests that can not be executed right now.

func LimitResponse

func LimitResponse() *LimitResponseApplyConfiguration

LimitResponseApplyConfiguration constructs a declarative configuration of the LimitResponse type for use with apply.

func (*LimitResponseApplyConfiguration) WithQueuing

WithQueuing sets the Queuing field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Queuing field is set to the value of the last call.

func (*LimitResponseApplyConfiguration) WithType

WithType sets the Type field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Type field is set to the value of the last call.

type LimitedPriorityLevelConfigurationApplyConfiguration

type LimitedPriorityLevelConfigurationApplyConfiguration struct {
	// `nominalConcurrencyShares` (NCS) contributes to the computation of the
	// NominalConcurrencyLimit (NominalCL) of this level.
	// This is the number of execution seats available at this priority level.
	// This is used both for requests dispatched from this priority level
	// as well as requests dispatched from other priority levels
	// borrowing seats from this level.
	// The server's concurrency limit (ServerCL) is divided among the
	// Limited priority levels in proportion to their NCS values:
	//
	// NominalCL(i)  = ceil( ServerCL * NCS(i) / sum_ncs )
	// sum_ncs = sum[priority level k] NCS(k)
	//
	// Bigger numbers mean a larger nominal concurrency limit,
	// at the expense of every other priority level.
	//
	// If not specified, this field defaults to a value of 30.
	//
	// Setting this field to zero supports the construction of a
	// "jail" for this priority level that is used to hold some request(s)
	NominalConcurrencyShares *int32 `json:"nominalConcurrencyShares,omitempty"`
	// `limitResponse` indicates what to do with requests that can not be executed right now
	LimitResponse *LimitResponseApplyConfiguration `json:"limitResponse,omitempty"`
	// `lendablePercent` prescribes the fraction of the level's NominalCL that
	// can be borrowed by other priority levels. The value of this
	// field must be between 0 and 100, inclusive, and it defaults to 0.
	// The number of seats that other levels can borrow from this level, known
	// as this level's LendableConcurrencyLimit (LendableCL), is defined as follows.
	//
	// LendableCL(i) = round( NominalCL(i) * lendablePercent(i)/100.0 )
	LendablePercent *int32 `json:"lendablePercent,omitempty"`
	// `borrowingLimitPercent`, if present, configures a limit on how many
	// seats this priority level can borrow from other priority levels.
	// The limit is known as this level's BorrowingConcurrencyLimit
	// (BorrowingCL) and is a limit on the total number of seats that this
	// level may borrow at any one time.
	// This field holds the ratio of that limit to the level's nominal
	// concurrency limit. When this field is non-nil, it must hold a
	// non-negative integer and the limit is calculated as follows.
	//
	// BorrowingCL(i) = round( NominalCL(i) * borrowingLimitPercent(i)/100.0 )
	//
	// The value of this field can be more than 100, implying that this
	// priority level can borrow a number of seats that is greater than
	// its own nominal concurrency limit (NominalCL).
	// When this field is left `nil`, the limit is effectively infinite.
	BorrowingLimitPercent *int32 `json:"borrowingLimitPercent,omitempty"`
}

LimitedPriorityLevelConfigurationApplyConfiguration represents a declarative configuration of the LimitedPriorityLevelConfiguration type for use with apply.

LimitedPriorityLevelConfiguration specifies how to handle requests that are subject to limits. It addresses two issues: - How are requests for this priority level limited? - What should be done with requests that exceed the limit?

func LimitedPriorityLevelConfiguration

func LimitedPriorityLevelConfiguration() *LimitedPriorityLevelConfigurationApplyConfiguration

LimitedPriorityLevelConfigurationApplyConfiguration constructs a declarative configuration of the LimitedPriorityLevelConfiguration type for use with apply.

func (*LimitedPriorityLevelConfigurationApplyConfiguration) WithBorrowingLimitPercent

WithBorrowingLimitPercent sets the BorrowingLimitPercent field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the BorrowingLimitPercent field is set to the value of the last call.

func (*LimitedPriorityLevelConfigurationApplyConfiguration) WithLendablePercent

WithLendablePercent sets the LendablePercent field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the LendablePercent field is set to the value of the last call.

func (*LimitedPriorityLevelConfigurationApplyConfiguration) WithLimitResponse

WithLimitResponse sets the LimitResponse field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the LimitResponse field is set to the value of the last call.

func (*LimitedPriorityLevelConfigurationApplyConfiguration) WithNominalConcurrencyShares

WithNominalConcurrencyShares sets the NominalConcurrencyShares field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the NominalConcurrencyShares field is set to the value of the last call.

type NonResourcePolicyRuleApplyConfiguration

type NonResourcePolicyRuleApplyConfiguration struct {
	// `verbs` is a list of matching verbs and may not be empty.
	// "*" matches all verbs. If it is present, it must be the only entry.
	// Required.
	Verbs []string `json:"verbs,omitempty"`
	// `nonResourceURLs` is a set of url prefixes that a user should have access to and may not be empty.
	// For example:
	// - "/healthz" is legal
	// - "/hea*" is illegal
	// - "/hea" is legal but matches nothing
	// - "/hea/*" also matches nothing
	// - "/healthz/*" matches all per-component health checks.
	// "*" matches all non-resource urls. if it is present, it must be the only entry.
	// Required.
	NonResourceURLs []string `json:"nonResourceURLs,omitempty"`
}

NonResourcePolicyRuleApplyConfiguration represents a declarative configuration of the NonResourcePolicyRule type for use with apply.

NonResourcePolicyRule is a predicate that matches non-resource requests according to their verb and the target non-resource URL. A NonResourcePolicyRule matches a request if and only if both (a) at least one member of verbs matches the request and (b) at least one member of nonResourceURLs matches the request.

func NonResourcePolicyRule

func NonResourcePolicyRule() *NonResourcePolicyRuleApplyConfiguration

NonResourcePolicyRuleApplyConfiguration constructs a declarative configuration of the NonResourcePolicyRule type for use with apply.

func (*NonResourcePolicyRuleApplyConfiguration) WithNonResourceURLs

WithNonResourceURLs adds the given value to the NonResourceURLs field in the declarative configuration and returns the receiver, so that objects can be build by chaining "With" function invocations. If called multiple times, values provided by each call will be appended to the NonResourceURLs field.

func (*NonResourcePolicyRuleApplyConfiguration) WithVerbs

WithVerbs adds the given value to the Verbs field in the declarative configuration and returns the receiver, so that objects can be build by chaining "With" function invocations. If called multiple times, values provided by each call will be appended to the Verbs field.

type PolicyRulesWithSubjectsApplyConfiguration

type PolicyRulesWithSubjectsApplyConfiguration struct {
	// subjects is the list of normal user, serviceaccount, or group that this rule cares about.
	// There must be at least one member in this slice.
	// A slice that includes both the system:authenticated and system:unauthenticated user groups matches every request.
	// Required.
	Subjects []SubjectApplyConfiguration `json:"subjects,omitempty"`
	// `resourceRules` is a slice of ResourcePolicyRules that identify matching requests according to their verb and the
	// target resource.
	// At least one of `resourceRules` and `nonResourceRules` has to be non-empty.
	ResourceRules []ResourcePolicyRuleApplyConfiguration `json:"resourceRules,omitempty"`
	// `nonResourceRules` is a list of NonResourcePolicyRules that identify matching requests according to their verb
	// and the target non-resource URL.
	NonResourceRules []NonResourcePolicyRuleApplyConfiguration `json:"nonResourceRules,omitempty"`
}

PolicyRulesWithSubjectsApplyConfiguration represents a declarative configuration of the PolicyRulesWithSubjects type for use with apply.

PolicyRulesWithSubjects prescribes a test that applies to a request to an apiserver. The test considers the subject making the request, the verb being requested, and the resource to be acted upon. This PolicyRulesWithSubjects matches a request if and only if both (a) at least one member of subjects matches the request and (b) at least one member of resourceRules or nonResourceRules matches the request.

func PolicyRulesWithSubjects

func PolicyRulesWithSubjects() *PolicyRulesWithSubjectsApplyConfiguration

PolicyRulesWithSubjectsApplyConfiguration constructs a declarative configuration of the PolicyRulesWithSubjects type for use with apply.

func (*PolicyRulesWithSubjectsApplyConfiguration) WithNonResourceRules

WithNonResourceRules adds the given value to the NonResourceRules field in the declarative configuration and returns the receiver, so that objects can be build by chaining "With" function invocations. If called multiple times, values provided by each call will be appended to the NonResourceRules field.

func (*PolicyRulesWithSubjectsApplyConfiguration) WithResourceRules

WithResourceRules adds the given value to the ResourceRules field in the declarative configuration and returns the receiver, so that objects can be build by chaining "With" function invocations. If called multiple times, values provided by each call will be appended to the ResourceRules field.

func (*PolicyRulesWithSubjectsApplyConfiguration) WithSubjects

WithSubjects adds the given value to the Subjects field in the declarative configuration and returns the receiver, so that objects can be build by chaining "With" function invocations. If called multiple times, values provided by each call will be appended to the Subjects field.

type PriorityLevelConfigurationApplyConfiguration

type PriorityLevelConfigurationApplyConfiguration struct {
	metav1.TypeMetaApplyConfiguration `json:",inline"`
	// `metadata` is the standard object's metadata.
	// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
	*metav1.ObjectMetaApplyConfiguration `json:"metadata,omitempty"`
	// `spec` is the specification of the desired behavior of a "request-priority".
	// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
	Spec *PriorityLevelConfigurationSpecApplyConfiguration `json:"spec,omitempty"`
	// `status` is the current status of a "request-priority".
	// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
	Status *PriorityLevelConfigurationStatusApplyConfiguration `json:"status,omitempty"`
}

PriorityLevelConfigurationApplyConfiguration represents a declarative configuration of the PriorityLevelConfiguration type for use with apply.

PriorityLevelConfiguration represents the configuration of a priority level.

func ExtractPriorityLevelConfiguration

func ExtractPriorityLevelConfiguration(priorityLevelConfiguration *flowcontrolv1.PriorityLevelConfiguration, fieldManager string) (*PriorityLevelConfigurationApplyConfiguration, error)

ExtractPriorityLevelConfiguration extracts the applied configuration owned by fieldManager from priorityLevelConfiguration. If no managedFields are found in priorityLevelConfiguration for fieldManager, a PriorityLevelConfigurationApplyConfiguration is returned with only the Name, Namespace (if applicable), APIVersion and Kind populated. It is possible that no managed fields were found for because other field managers have taken ownership of all the fields previously owned by fieldManager, or because the fieldManager never owned fields any fields. priorityLevelConfiguration must be a unmodified PriorityLevelConfiguration API object that was retrieved from the Kubernetes API. ExtractPriorityLevelConfiguration provides a way to perform a extract/modify-in-place/apply workflow. Note that an extracted apply configuration will contain fewer fields than what the fieldManager previously applied if another fieldManager has updated or force applied any of the previously applied fields.

func ExtractPriorityLevelConfigurationFrom

func ExtractPriorityLevelConfigurationFrom(priorityLevelConfiguration *flowcontrolv1.PriorityLevelConfiguration, fieldManager string, subresource string) (*PriorityLevelConfigurationApplyConfiguration, error)

ExtractPriorityLevelConfigurationFrom extracts the applied configuration owned by fieldManager from priorityLevelConfiguration for the specified subresource. Pass an empty string for subresource to extract the main resource. Common subresources include "status", "scale", etc. priorityLevelConfiguration must be a unmodified PriorityLevelConfiguration API object that was retrieved from the Kubernetes API. ExtractPriorityLevelConfigurationFrom provides a way to perform a extract/modify-in-place/apply workflow. Note that an extracted apply configuration will contain fewer fields than what the fieldManager previously applied if another fieldManager has updated or force applied any of the previously applied fields.

func ExtractPriorityLevelConfigurationStatus

func ExtractPriorityLevelConfigurationStatus(priorityLevelConfiguration *flowcontrolv1.PriorityLevelConfiguration, fieldManager string) (*PriorityLevelConfigurationApplyConfiguration, error)

ExtractPriorityLevelConfigurationStatus extracts the applied configuration owned by fieldManager from priorityLevelConfiguration for the status subresource.

func PriorityLevelConfiguration

func PriorityLevelConfiguration(name string) *PriorityLevelConfigurationApplyConfiguration

PriorityLevelConfiguration constructs a declarative configuration of the PriorityLevelConfiguration type for use with apply.

func (*PriorityLevelConfigurationApplyConfiguration) GetAPIVersion

GetAPIVersion retrieves the value of the APIVersion field in the declarative configuration.

func (*PriorityLevelConfigurationApplyConfiguration) GetKind

GetKind retrieves the value of the Kind field in the declarative configuration.

func (*PriorityLevelConfigurationApplyConfiguration) GetName

GetName retrieves the value of the Name field in the declarative configuration.

func (*PriorityLevelConfigurationApplyConfiguration) GetNamespace

GetNamespace retrieves the value of the Namespace field in the declarative configuration.

func (PriorityLevelConfigurationApplyConfiguration) IsApplyConfiguration

func (b PriorityLevelConfigurationApplyConfiguration) IsApplyConfiguration()

func (*PriorityLevelConfigurationApplyConfiguration) WithAPIVersion

WithAPIVersion sets the APIVersion field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the APIVersion field is set to the value of the last call.

func (*PriorityLevelConfigurationApplyConfiguration) WithAnnotations

WithAnnotations puts the entries into the Annotations field in the declarative configuration and returns the receiver, so that objects can be build by chaining "With" function invocations. If called multiple times, the entries provided by each call will be put on the Annotations field, overwriting an existing map entries in Annotations field with the same key.

func (*PriorityLevelConfigurationApplyConfiguration) WithCreationTimestamp

WithCreationTimestamp sets the CreationTimestamp field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the CreationTimestamp field is set to the value of the last call.

func (*PriorityLevelConfigurationApplyConfiguration) WithDeletionGracePeriodSeconds

WithDeletionGracePeriodSeconds sets the DeletionGracePeriodSeconds field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the DeletionGracePeriodSeconds field is set to the value of the last call.

func (*PriorityLevelConfigurationApplyConfiguration) WithDeletionTimestamp

WithDeletionTimestamp sets the DeletionTimestamp field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the DeletionTimestamp field is set to the value of the last call.

func (*PriorityLevelConfigurationApplyConfiguration) WithFinalizers

WithFinalizers adds the given value to the Finalizers field in the declarative configuration and returns the receiver, so that objects can be build by chaining "With" function invocations. If called multiple times, values provided by each call will be appended to the Finalizers field.

func (*PriorityLevelConfigurationApplyConfiguration) WithGenerateName

WithGenerateName sets the GenerateName field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the GenerateName field is set to the value of the last call.

func (*PriorityLevelConfigurationApplyConfiguration) WithGeneration

WithGeneration sets the Generation field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Generation field is set to the value of the last call.

func (*PriorityLevelConfigurationApplyConfiguration) WithKind

WithKind sets the Kind field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Kind field is set to the value of the last call.

func (*PriorityLevelConfigurationApplyConfiguration) WithLabels

WithLabels puts the entries into the Labels field in the declarative configuration and returns the receiver, so that objects can be build by chaining "With" function invocations. If called multiple times, the entries provided by each call will be put on the Labels field, overwriting an existing map entries in Labels field with the same key.

func (*PriorityLevelConfigurationApplyConfiguration) WithName

WithName sets the Name field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Name field is set to the value of the last call.

func (*PriorityLevelConfigurationApplyConfiguration) WithNamespace

WithNamespace sets the Namespace field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Namespace field is set to the value of the last call.

func (*PriorityLevelConfigurationApplyConfiguration) WithOwnerReferences

WithOwnerReferences adds the given value to the OwnerReferences field in the declarative configuration and returns the receiver, so that objects can be build by chaining "With" function invocations. If called multiple times, values provided by each call will be appended to the OwnerReferences field.

func (*PriorityLevelConfigurationApplyConfiguration) WithResourceVersion

WithResourceVersion sets the ResourceVersion field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the ResourceVersion field is set to the value of the last call.

func (*PriorityLevelConfigurationApplyConfiguration) WithSpec

WithSpec sets the Spec field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Spec field is set to the value of the last call.

func (*PriorityLevelConfigurationApplyConfiguration) WithStatus

WithStatus sets the Status field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Status field is set to the value of the last call.

func (*PriorityLevelConfigurationApplyConfiguration) WithUID

WithUID sets the UID field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the UID field is set to the value of the last call.

type PriorityLevelConfigurationConditionApplyConfiguration

type PriorityLevelConfigurationConditionApplyConfiguration struct {
	// `type` is the type of the condition.
	// Required.
	Type *flowcontrolv1.PriorityLevelConfigurationConditionType `json:"type,omitempty"`
	// `status` is the status of the condition.
	// Can be True, False, Unknown.
	// Required.
	Status *flowcontrolv1.ConditionStatus `json:"status,omitempty"`
	// `lastTransitionTime` is the last time the condition transitioned from one status to another.
	LastTransitionTime *metav1.Time `json:"lastTransitionTime,omitempty"`
	// `reason` is a unique, one-word, CamelCase reason for the condition's last transition.
	Reason *string `json:"reason,omitempty"`
	// `message` is a human-readable message indicating details about last transition.
	Message *string `json:"message,omitempty"`
}

PriorityLevelConfigurationConditionApplyConfiguration represents a declarative configuration of the PriorityLevelConfigurationCondition type for use with apply.

PriorityLevelConfigurationCondition defines the condition of priority level.

func PriorityLevelConfigurationCondition

func PriorityLevelConfigurationCondition() *PriorityLevelConfigurationConditionApplyConfiguration

PriorityLevelConfigurationConditionApplyConfiguration constructs a declarative configuration of the PriorityLevelConfigurationCondition type for use with apply.

func (*PriorityLevelConfigurationConditionApplyConfiguration) WithLastTransitionTime

WithLastTransitionTime sets the LastTransitionTime field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the LastTransitionTime field is set to the value of the last call.

func (*PriorityLevelConfigurationConditionApplyConfiguration) WithMessage

WithMessage sets the Message field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Message field is set to the value of the last call.

func (*PriorityLevelConfigurationConditionApplyConfiguration) WithReason

WithReason sets the Reason field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Reason field is set to the value of the last call.

func (*PriorityLevelConfigurationConditionApplyConfiguration) WithStatus

WithStatus sets the Status field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Status field is set to the value of the last call.

func (*PriorityLevelConfigurationConditionApplyConfiguration) WithType

WithType sets the Type field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Type field is set to the value of the last call.

type PriorityLevelConfigurationReferenceApplyConfiguration

type PriorityLevelConfigurationReferenceApplyConfiguration struct {
	// `name` is the name of the priority level configuration being referenced
	// Required.
	Name *string `json:"name,omitempty"`
}

PriorityLevelConfigurationReferenceApplyConfiguration represents a declarative configuration of the PriorityLevelConfigurationReference type for use with apply.

PriorityLevelConfigurationReference contains information that points to the "request-priority" being used.

func PriorityLevelConfigurationReference

func PriorityLevelConfigurationReference() *PriorityLevelConfigurationReferenceApplyConfiguration

PriorityLevelConfigurationReferenceApplyConfiguration constructs a declarative configuration of the PriorityLevelConfigurationReference type for use with apply.

func (*PriorityLevelConfigurationReferenceApplyConfiguration) WithName

WithName sets the Name field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Name field is set to the value of the last call.

type PriorityLevelConfigurationSpecApplyConfiguration

type PriorityLevelConfigurationSpecApplyConfiguration struct {
	// `type` indicates whether this priority level is subject to
	// limitation on request execution.  A value of `"Exempt"` means
	// that requests of this priority level are not subject to a limit
	// (and thus are never queued) and do not detract from the
	// capacity made available to other priority levels.  A value of
	// `"Limited"` means that (a) requests of this priority level
	// _are_ subject to limits and (b) some of the server's limited
	// capacity is made available exclusively to this priority level.
	// Required.
	Type *flowcontrolv1.PriorityLevelEnablement `json:"type,omitempty"`
	// `limited` specifies how requests are handled for a Limited priority level.
	// This field must be non-empty if and only if `type` is `"Limited"`.
	Limited *LimitedPriorityLevelConfigurationApplyConfiguration `json:"limited,omitempty"`
	// `exempt` specifies how requests are handled for an exempt priority level.
	// This field MUST be empty if `type` is `"Limited"`.
	// This field MAY be non-empty if `type` is `"Exempt"`.
	// If empty and `type` is `"Exempt"` then the default values
	// for `ExemptPriorityLevelConfiguration` apply.
	Exempt *ExemptPriorityLevelConfigurationApplyConfiguration `json:"exempt,omitempty"`
}

PriorityLevelConfigurationSpecApplyConfiguration represents a declarative configuration of the PriorityLevelConfigurationSpec type for use with apply.

PriorityLevelConfigurationSpec specifies the configuration of a priority level.

func PriorityLevelConfigurationSpec

func PriorityLevelConfigurationSpec() *PriorityLevelConfigurationSpecApplyConfiguration

PriorityLevelConfigurationSpecApplyConfiguration constructs a declarative configuration of the PriorityLevelConfigurationSpec type for use with apply.

func (*PriorityLevelConfigurationSpecApplyConfiguration) WithExempt

WithExempt sets the Exempt field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Exempt field is set to the value of the last call.

func (*PriorityLevelConfigurationSpecApplyConfiguration) WithLimited

WithLimited sets the Limited field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Limited field is set to the value of the last call.

func (*PriorityLevelConfigurationSpecApplyConfiguration) WithType

WithType sets the Type field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Type field is set to the value of the last call.

type PriorityLevelConfigurationStatusApplyConfiguration

type PriorityLevelConfigurationStatusApplyConfiguration struct {
	// `conditions` is the current state of "request-priority".
	Conditions []PriorityLevelConfigurationConditionApplyConfiguration `json:"conditions,omitempty"`
}

PriorityLevelConfigurationStatusApplyConfiguration represents a declarative configuration of the PriorityLevelConfigurationStatus type for use with apply.

PriorityLevelConfigurationStatus represents the current state of a "request-priority".

func PriorityLevelConfigurationStatus

func PriorityLevelConfigurationStatus() *PriorityLevelConfigurationStatusApplyConfiguration

PriorityLevelConfigurationStatusApplyConfiguration constructs a declarative configuration of the PriorityLevelConfigurationStatus type for use with apply.

func (*PriorityLevelConfigurationStatusApplyConfiguration) WithConditions

WithConditions adds the given value to the Conditions field in the declarative configuration and returns the receiver, so that objects can be build by chaining "With" function invocations. If called multiple times, values provided by each call will be appended to the Conditions field.

type QueuingConfigurationApplyConfiguration

type QueuingConfigurationApplyConfiguration struct {
	// `queues` is the number of queues for this priority level. The
	// queues exist independently at each apiserver. The value must be
	// positive.  Setting it to 1 effectively precludes
	// shufflesharding and thus makes the distinguisher method of
	// associated flow schemas irrelevant.  This field has a default
	// value of 64.
	Queues *int32 `json:"queues,omitempty"`
	// `handSize` is a small positive number that configures the
	// shuffle sharding of requests into queues.  When enqueuing a request
	// at this priority level the request's flow identifier (a string
	// pair) is hashed and the hash value is used to shuffle the list
	// of queues and deal a hand of the size specified here.  The
	// request is put into one of the shortest queues in that hand.
	// `handSize` must be no larger than `queues`, and should be
	// significantly smaller (so that a few heavy flows do not
	// saturate most of the queues).  See the user-facing
	// documentation for more extensive guidance on setting this
	// field.  This field has a default value of 8.
	HandSize *int32 `json:"handSize,omitempty"`
	// `queueLengthLimit` is the maximum number of requests allowed to
	// be waiting in a given queue of this priority level at a time;
	// excess requests are rejected.  This value must be positive.  If
	// not specified, it will be defaulted to 50.
	QueueLengthLimit *int32 `json:"queueLengthLimit,omitempty"`
}

QueuingConfigurationApplyConfiguration represents a declarative configuration of the QueuingConfiguration type for use with apply.

QueuingConfiguration holds the configuration parameters for queuing

func QueuingConfiguration

func QueuingConfiguration() *QueuingConfigurationApplyConfiguration

QueuingConfigurationApplyConfiguration constructs a declarative configuration of the QueuingConfiguration type for use with apply.

func (*QueuingConfigurationApplyConfiguration) WithHandSize

WithHandSize sets the HandSize field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the HandSize field is set to the value of the last call.

func (*QueuingConfigurationApplyConfiguration) WithQueueLengthLimit

WithQueueLengthLimit sets the QueueLengthLimit field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the QueueLengthLimit field is set to the value of the last call.

func (*QueuingConfigurationApplyConfiguration) WithQueues

WithQueues sets the Queues field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Queues field is set to the value of the last call.

type ResourcePolicyRuleApplyConfiguration

type ResourcePolicyRuleApplyConfiguration struct {
	// `verbs` is a list of matching verbs and may not be empty.
	// "*" matches all verbs and, if present, must be the only entry.
	// Required.
	Verbs []string `json:"verbs,omitempty"`
	// `apiGroups` is a list of matching API groups and may not be empty.
	// "*" matches all API groups and, if present, must be the only entry.
	// Required.
	APIGroups []string `json:"apiGroups,omitempty"`
	// `resources` is a list of matching resources (i.e., lowercase
	// and plural) with, if desired, subresource.  For example, [
	// "services", "nodes/status" ].  This list may not be empty.
	// "*" matches all resources and, if present, must be the only entry.
	// Required.
	Resources []string `json:"resources,omitempty"`
	// `clusterScope` indicates whether to match requests that do not
	// specify a namespace (which happens either because the resource
	// is not namespaced or the request targets all namespaces).
	// If this field is omitted or false then the `namespaces` field
	// must contain a non-empty list.
	ClusterScope *bool `json:"clusterScope,omitempty"`
	// `namespaces` is a list of target namespaces that restricts
	// matches.  A request that specifies a target namespace matches
	// only if either (a) this list contains that target namespace or
	// (b) this list contains "*".  Note that "*" matches any
	// specified namespace but does not match a request that _does
	// not specify_ a namespace (see the `clusterScope` field for
	// that).
	// This list may be empty, but only if `clusterScope` is true.
	Namespaces []string `json:"namespaces,omitempty"`
}

ResourcePolicyRuleApplyConfiguration represents a declarative configuration of the ResourcePolicyRule type for use with apply.

ResourcePolicyRule is a predicate that matches some resource requests, testing the request's verb and the target resource. A ResourcePolicyRule matches a resource request if and only if: (a) at least one member of verbs matches the request, (b) at least one member of apiGroups matches the request, (c) at least one member of resources matches the request, and (d) either (d1) the request does not specify a namespace (i.e., `Namespace==""`) and clusterScope is true or (d2) the request specifies a namespace and least one member of namespaces matches the request's namespace.

func ResourcePolicyRule

func ResourcePolicyRule() *ResourcePolicyRuleApplyConfiguration

ResourcePolicyRuleApplyConfiguration constructs a declarative configuration of the ResourcePolicyRule type for use with apply.

func (*ResourcePolicyRuleApplyConfiguration) WithAPIGroups

WithAPIGroups adds the given value to the APIGroups field in the declarative configuration and returns the receiver, so that objects can be build by chaining "With" function invocations. If called multiple times, values provided by each call will be appended to the APIGroups field.

func (*ResourcePolicyRuleApplyConfiguration) WithClusterScope

WithClusterScope sets the ClusterScope field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the ClusterScope field is set to the value of the last call.

func (*ResourcePolicyRuleApplyConfiguration) WithNamespaces

WithNamespaces adds the given value to the Namespaces field in the declarative configuration and returns the receiver, so that objects can be build by chaining "With" function invocations. If called multiple times, values provided by each call will be appended to the Namespaces field.

func (*ResourcePolicyRuleApplyConfiguration) WithResources

WithResources adds the given value to the Resources field in the declarative configuration and returns the receiver, so that objects can be build by chaining "With" function invocations. If called multiple times, values provided by each call will be appended to the Resources field.

func (*ResourcePolicyRuleApplyConfiguration) WithVerbs

WithVerbs adds the given value to the Verbs field in the declarative configuration and returns the receiver, so that objects can be build by chaining "With" function invocations. If called multiple times, values provided by each call will be appended to the Verbs field.

type ServiceAccountSubjectApplyConfiguration

type ServiceAccountSubjectApplyConfiguration struct {
	// `namespace` is the namespace of matching ServiceAccount objects.
	// Required.
	Namespace *string `json:"namespace,omitempty"`
	// `name` is the name of matching ServiceAccount objects, or "*" to match regardless of name.
	// Required.
	Name *string `json:"name,omitempty"`
}

ServiceAccountSubjectApplyConfiguration represents a declarative configuration of the ServiceAccountSubject type for use with apply.

ServiceAccountSubject holds detailed information for service-account-kind subject.

func ServiceAccountSubject

func ServiceAccountSubject() *ServiceAccountSubjectApplyConfiguration

ServiceAccountSubjectApplyConfiguration constructs a declarative configuration of the ServiceAccountSubject type for use with apply.

func (*ServiceAccountSubjectApplyConfiguration) WithName

WithName sets the Name field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Name field is set to the value of the last call.

func (*ServiceAccountSubjectApplyConfiguration) WithNamespace

WithNamespace sets the Namespace field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Namespace field is set to the value of the last call.

type SubjectApplyConfiguration

type SubjectApplyConfiguration struct {
	// `kind` indicates which one of the other fields is non-empty.
	// Required
	Kind *flowcontrolv1.SubjectKind `json:"kind,omitempty"`
	// `user` matches based on username.
	User *UserSubjectApplyConfiguration `json:"user,omitempty"`
	// `group` matches based on user group name.
	Group *GroupSubjectApplyConfiguration `json:"group,omitempty"`
	// `serviceAccount` matches ServiceAccounts.
	ServiceAccount *ServiceAccountSubjectApplyConfiguration `json:"serviceAccount,omitempty"`
}

SubjectApplyConfiguration represents a declarative configuration of the Subject type for use with apply.

Subject matches the originator of a request, as identified by the request authentication system. There are three ways of matching an originator; by user, group, or service account.

func Subject

func Subject() *SubjectApplyConfiguration

SubjectApplyConfiguration constructs a declarative configuration of the Subject type for use with apply.

func (*SubjectApplyConfiguration) WithGroup

WithGroup sets the Group field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Group field is set to the value of the last call.

func (*SubjectApplyConfiguration) WithKind

WithKind sets the Kind field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Kind field is set to the value of the last call.

func (*SubjectApplyConfiguration) WithServiceAccount

WithServiceAccount sets the ServiceAccount field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the ServiceAccount field is set to the value of the last call.

func (*SubjectApplyConfiguration) WithUser

WithUser sets the User field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the User field is set to the value of the last call.

type UserSubjectApplyConfiguration

type UserSubjectApplyConfiguration struct {
	// `name` is the username that matches, or "*" to match all usernames.
	// Required.
	Name *string `json:"name,omitempty"`
}

UserSubjectApplyConfiguration represents a declarative configuration of the UserSubject type for use with apply.

UserSubject holds detailed information for user-kind subject.

func UserSubject

func UserSubject() *UserSubjectApplyConfiguration

UserSubjectApplyConfiguration constructs a declarative configuration of the UserSubject type for use with apply.

func (*UserSubjectApplyConfiguration) WithName

WithName sets the Name field in the declarative configuration to the given value and returns the receiver, so that objects can be built by chaining "With" function invocations. If called multiple times, the Name field is set to the value of the last call.

Source Files

exemptprioritylevelconfiguration.go flowdistinguishermethod.go flowschema.go flowschemacondition.go flowschemaspec.go flowschemastatus.go groupsubject.go limitedprioritylevelconfiguration.go limitresponse.go nonresourcepolicyrule.go policyruleswithsubjects.go prioritylevelconfiguration.go prioritylevelconfigurationcondition.go prioritylevelconfigurationreference.go prioritylevelconfigurationspec.go prioritylevelconfigurationstatus.go queuingconfiguration.go resourcepolicyrule.go serviceaccountsubject.go subject.go usersubject.go

Version
v0.35.4
Published
Apr 15, 2026
Platform
linux/amd64
Imports
6 packages
Last checked
1 hour ago

Tools for package owners.