API Reference multi-pages for v1.26

pull/38364/head
Philippe Martin 2022-12-09 09:15:21 +01:00 committed by Frederico Muñoz
parent 28dc4ae806
commit 366ba7f62c
36 changed files with 14301 additions and 6077 deletions

File diff suppressed because it is too large Load Diff

View File

@ -54,6 +54,8 @@
- name: Alpha level
fields:
- hostUsers
- resourceClaims
- schedulingGates
- name: Deprecated
fields:
- serviceAccount
@ -317,6 +319,7 @@
- volumeClaimTemplates
- minReadySeconds
- persistentVolumeClaimRetentionPolicy
- ordinals
- definition: io.k8s.api.apps.v1.StatefulSetUpdateStrategy
field_categories:
@ -593,7 +596,7 @@
- volumeName
- storageClassName
- volumeMode
- name: Beta level
- name: Alpha level
fields:
- dataSource
- dataSourceRef

View File

@ -63,12 +63,21 @@ parts:
- name: HorizontalPodAutoscaler
group: autoscaling
version: v2
- name: HorizontalPodAutoscaler
group: autoscaling
version: v2beta2
- name: PriorityClass
group: scheduling.k8s.io
version: v1
- name: PodScheduling
group: resource.k8s.io
version: v1alpha1
- name: ResourceClaim
group: resource.k8s.io
version: v1alpha1
- name: ResourceClaimTemplate
group: resource.k8s.io
version: v1alpha1
- name: ResourceClass
group: resource.k8s.io
version: v1alpha1
- name: Service Resources
chapters:
- name: Service
@ -153,6 +162,9 @@ parts:
- name: SubjectAccessReview
group: authorization.k8s.io
version: v1
- name: SelfSubjectReview
group: authentication.k8s.io
version: v1alpha1
- name: ClusterRole
group: rbac.authorization.k8s.io
version: v1
@ -195,6 +207,12 @@ parts:
- name: ValidatingWebhookConfiguration
group: admissionregistration.k8s.io
version: v1
- name: ValidatingAdmissionPolicy
group: admissionregistration.k8s.io
version: v1alpha1
otherDefinitions:
- ValidatingAdmissionPolicyList
- ValidatingAdmissionPolicyBinding
- name: Cluster Resources
chapters:
- name: Node
@ -217,10 +235,10 @@ parts:
version: v1
- name: FlowSchema
group: flowcontrol.apiserver.k8s.io
version: v1beta2
version: v1beta3
- name: PriorityLevelConfiguration
group: flowcontrol.apiserver.k8s.io
version: v1beta2
version: v1beta3
- name: Binding
group: ""
version: v1

View File

@ -6,7 +6,7 @@ api_metadata:
content_type: "api_reference"
description: "ClusterRoleBinding references a ClusterRole, but not contain it."
title: "ClusterRoleBinding"
weight: 6
weight: 7
auto_generated: true
---

View File

@ -6,7 +6,7 @@ api_metadata:
content_type: "api_reference"
description: "ClusterRole is a cluster level, logical grouping of PolicyRules that can be referenced as a unit by a RoleBinding or ClusterRoleBinding."
title: "ClusterRole"
weight: 5
weight: 6
auto_generated: true
---

View File

@ -6,7 +6,7 @@ api_metadata:
content_type: "api_reference"
description: "RoleBinding references a role, but does not contain it."
title: "RoleBinding"
weight: 8
weight: 9
auto_generated: true
---

View File

@ -6,7 +6,7 @@ api_metadata:
content_type: "api_reference"
description: "Role is a namespaced, logical grouping of PolicyRules that can be referenced as a unit by a RoleBinding."
title: "Role"
weight: 7
weight: 8
auto_generated: true
---

View File

@ -0,0 +1,142 @@
---
api_metadata:
apiVersion: "authentication.k8s.io/v1alpha1"
import: "k8s.io/api/authentication/v1alpha1"
kind: "SelfSubjectReview"
content_type: "api_reference"
description: "SelfSubjectReview contains the user information that the kube-apiserver has about the user making this request."
title: "SelfSubjectReview v1alpha1"
weight: 5
auto_generated: true
---
<!--
The file is auto-generated from the Go source code of the component using a generic
[generator](https://github.com/kubernetes-sigs/reference-docs/). To learn how
to generate the reference documentation, please read
[Contributing to the reference documentation](/docs/contribute/generate-ref-docs/).
To update the reference content, please follow the
[Contributing upstream](/docs/contribute/generate-ref-docs/contribute-upstream/)
guide. You can file document formatting bugs against the
[reference-docs](https://github.com/kubernetes-sigs/reference-docs/) project.
-->
`apiVersion: authentication.k8s.io/v1alpha1`
`import "k8s.io/api/authentication/v1alpha1"`
## SelfSubjectReview {#SelfSubjectReview}
SelfSubjectReview contains the user information that the kube-apiserver has about the user making this request. When using impersonation, users will receive the user info of the user being impersonated.
<hr>
- **apiVersion**: authentication.k8s.io/v1alpha1
- **kind**: SelfSubjectReview
- **metadata** (<a href="{{< ref "../common-definitions/object-meta#ObjectMeta" >}}">ObjectMeta</a>)
Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
- **status** (<a href="{{< ref "../authorization-resources/self-subject-review-v1alpha1#SelfSubjectReviewStatus" >}}">SelfSubjectReviewStatus</a>)
Status is filled in by the server with the user attributes.
## SelfSubjectReviewStatus {#SelfSubjectReviewStatus}
SelfSubjectReviewStatus is filled by the kube-apiserver and sent back to a user.
<hr>
- **userInfo** (UserInfo)
User attributes of the user making this request.
<a name="UserInfo"></a>
*UserInfo holds the information about the user needed to implement the user.Info interface.*
- **userInfo.extra** (map[string][]string)
Any additional information provided by the authenticator.
- **userInfo.groups** ([]string)
The names of groups this user is a part of.
- **userInfo.uid** (string)
A unique value that identifies this user across time. If this user is deleted and another user by the same name is added, they will have different UIDs.
- **userInfo.username** (string)
The name that uniquely identifies this user among all active users.
## Operations {#Operations}
<hr>
### `create` create a SelfSubjectReview
#### HTTP Request
POST /apis/authentication.k8s.io/v1alpha1/selfsubjectreviews
#### Parameters
- **body**: <a href="{{< ref "../authorization-resources/self-subject-review-v1alpha1#SelfSubjectReview" >}}">SelfSubjectReview</a>, required
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldManager** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldManager" >}}">fieldManager</a>
- **fieldValidation** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldValidation" >}}">fieldValidation</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../authorization-resources/self-subject-review-v1alpha1#SelfSubjectReview" >}}">SelfSubjectReview</a>): OK
201 (<a href="{{< ref "../authorization-resources/self-subject-review-v1alpha1#SelfSubjectReview" >}}">SelfSubjectReview</a>): Created
202 (<a href="{{< ref "../authorization-resources/self-subject-review-v1alpha1#SelfSubjectReview" >}}">SelfSubjectReview</a>): Accepted
401: Unauthorized

View File

@ -66,7 +66,7 @@ ClusterCIDRSpec defines the desired state of ClusterCIDR.
- **ipv6** (string)
IPv6 defines an IPv6 IP block in CIDR notation(e.g. "fd12:3456:789a:1::/64"). At least one of IPv4 and IPv6 must be specified. This field is immutable.
IPv6 defines an IPv6 IP block in CIDR notation(e.g. "2001:db8::/64"). At least one of IPv4 and IPv6 must be specified. This field is immutable.
- **nodeSelector** (NodeSelector)

View File

@ -1,11 +1,11 @@
---
api_metadata:
apiVersion: "flowcontrol.apiserver.k8s.io/v1beta2"
import: "k8s.io/api/flowcontrol/v1beta2"
apiVersion: "flowcontrol.apiserver.k8s.io/v1beta3"
import: "k8s.io/api/flowcontrol/v1beta3"
kind: "FlowSchema"
content_type: "api_reference"
description: "FlowSchema defines the schema of a group of flows."
title: "FlowSchema v1beta2"
title: "FlowSchema v1beta3"
weight: 7
auto_generated: true
---
@ -21,9 +21,9 @@ guide. You can file document formatting bugs against the
[reference-docs](https://github.com/kubernetes-sigs/reference-docs/) project.
-->
`apiVersion: flowcontrol.apiserver.k8s.io/v1beta2`
`apiVersion: flowcontrol.apiserver.k8s.io/v1beta3`
`import "k8s.io/api/flowcontrol/v1beta2"`
`import "k8s.io/api/flowcontrol/v1beta3"`
## FlowSchema {#FlowSchema}
@ -32,7 +32,7 @@ FlowSchema defines the schema of a group of flows. Note that a flow is made up o
<hr>
- **apiVersion**: flowcontrol.apiserver.k8s.io/v1beta2
- **apiVersion**: flowcontrol.apiserver.k8s.io/v1beta3
- **kind**: FlowSchema
@ -42,11 +42,11 @@ FlowSchema defines the schema of a group of flows. Note that a flow is made up o
`metadata` is the standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
- **spec** (<a href="{{< ref "../cluster-resources/flow-schema-v1beta2#FlowSchemaSpec" >}}">FlowSchemaSpec</a>)
- **spec** (<a href="{{< ref "../cluster-resources/flow-schema-v1beta3#FlowSchemaSpec" >}}">FlowSchemaSpec</a>)
`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
- **status** (<a href="{{< ref "../cluster-resources/flow-schema-v1beta2#FlowSchemaStatus" >}}">FlowSchemaStatus</a>)
- **status** (<a href="{{< ref "../cluster-resources/flow-schema-v1beta3#FlowSchemaStatus" >}}">FlowSchemaStatus</a>)
`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
@ -221,6 +221,8 @@ FlowSchemaStatus represents the current state of a FlowSchema.
- **conditions** ([]FlowSchemaCondition)
*Patch strategy: merge on key `type`*
*Map: unique values on key type will be kept during a merge*
`conditions` is a list of the current states of FlowSchema.
@ -261,7 +263,7 @@ FlowSchemaList is a list of FlowSchema objects.
<hr>
- **apiVersion**: flowcontrol.apiserver.k8s.io/v1beta2
- **apiVersion**: flowcontrol.apiserver.k8s.io/v1beta3
- **kind**: FlowSchemaList
@ -271,7 +273,7 @@ FlowSchemaList is a list of FlowSchema objects.
`metadata` is the standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
- **items** ([]<a href="{{< ref "../cluster-resources/flow-schema-v1beta2#FlowSchema" >}}">FlowSchema</a>), required
- **items** ([]<a href="{{< ref "../cluster-resources/flow-schema-v1beta3#FlowSchema" >}}">FlowSchema</a>), required
`items` is a list of FlowSchemas.
@ -294,7 +296,7 @@ FlowSchemaList is a list of FlowSchema objects.
#### HTTP Request
GET /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas/{name}
GET /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name}
#### Parameters
@ -313,7 +315,7 @@ GET /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas/{name}
#### Response
200 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta2#FlowSchema" >}}">FlowSchema</a>): OK
200 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta3#FlowSchema" >}}">FlowSchema</a>): OK
401: Unauthorized
@ -322,7 +324,7 @@ GET /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas/{name}
#### HTTP Request
GET /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas/{name}/status
GET /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name}/status
#### Parameters
@ -341,7 +343,7 @@ GET /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas/{name}/status
#### Response
200 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta2#FlowSchema" >}}">FlowSchema</a>): OK
200 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta3#FlowSchema" >}}">FlowSchema</a>): OK
401: Unauthorized
@ -350,7 +352,7 @@ GET /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas/{name}/status
#### HTTP Request
GET /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas
GET /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas
#### Parameters
@ -409,7 +411,7 @@ GET /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas
#### Response
200 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta2#FlowSchemaList" >}}">FlowSchemaList</a>): OK
200 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta3#FlowSchemaList" >}}">FlowSchemaList</a>): OK
401: Unauthorized
@ -418,12 +420,12 @@ GET /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas
#### HTTP Request
POST /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas
POST /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas
#### Parameters
- **body**: <a href="{{< ref "../cluster-resources/flow-schema-v1beta2#FlowSchema" >}}">FlowSchema</a>, required
- **body**: <a href="{{< ref "../cluster-resources/flow-schema-v1beta3#FlowSchema" >}}">FlowSchema</a>, required
@ -452,11 +454,11 @@ POST /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas
#### Response
200 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta2#FlowSchema" >}}">FlowSchema</a>): OK
200 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta3#FlowSchema" >}}">FlowSchema</a>): OK
201 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta2#FlowSchema" >}}">FlowSchema</a>): Created
201 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta3#FlowSchema" >}}">FlowSchema</a>): Created
202 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta2#FlowSchema" >}}">FlowSchema</a>): Accepted
202 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta3#FlowSchema" >}}">FlowSchema</a>): Accepted
401: Unauthorized
@ -465,7 +467,7 @@ POST /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas
#### HTTP Request
PUT /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas/{name}
PUT /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name}
#### Parameters
@ -475,7 +477,7 @@ PUT /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas/{name}
name of the FlowSchema
- **body**: <a href="{{< ref "../cluster-resources/flow-schema-v1beta2#FlowSchema" >}}">FlowSchema</a>, required
- **body**: <a href="{{< ref "../cluster-resources/flow-schema-v1beta3#FlowSchema" >}}">FlowSchema</a>, required
@ -504,9 +506,9 @@ PUT /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas/{name}
#### Response
200 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta2#FlowSchema" >}}">FlowSchema</a>): OK
200 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta3#FlowSchema" >}}">FlowSchema</a>): OK
201 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta2#FlowSchema" >}}">FlowSchema</a>): Created
201 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta3#FlowSchema" >}}">FlowSchema</a>): Created
401: Unauthorized
@ -515,7 +517,7 @@ PUT /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas/{name}
#### HTTP Request
PUT /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas/{name}/status
PUT /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name}/status
#### Parameters
@ -525,7 +527,7 @@ PUT /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas/{name}/status
name of the FlowSchema
- **body**: <a href="{{< ref "../cluster-resources/flow-schema-v1beta2#FlowSchema" >}}">FlowSchema</a>, required
- **body**: <a href="{{< ref "../cluster-resources/flow-schema-v1beta3#FlowSchema" >}}">FlowSchema</a>, required
@ -554,9 +556,9 @@ PUT /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas/{name}/status
#### Response
200 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta2#FlowSchema" >}}">FlowSchema</a>): OK
200 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta3#FlowSchema" >}}">FlowSchema</a>): OK
201 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta2#FlowSchema" >}}">FlowSchema</a>): Created
201 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta3#FlowSchema" >}}">FlowSchema</a>): Created
401: Unauthorized
@ -565,7 +567,7 @@ PUT /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas/{name}/status
#### HTTP Request
PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas/{name}
PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name}
#### Parameters
@ -609,9 +611,9 @@ PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas/{name}
#### Response
200 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta2#FlowSchema" >}}">FlowSchema</a>): OK
200 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta3#FlowSchema" >}}">FlowSchema</a>): OK
201 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta2#FlowSchema" >}}">FlowSchema</a>): Created
201 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta3#FlowSchema" >}}">FlowSchema</a>): Created
401: Unauthorized
@ -620,7 +622,7 @@ PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas/{name}
#### HTTP Request
PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas/{name}/status
PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name}/status
#### Parameters
@ -664,9 +666,9 @@ PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas/{name}/status
#### Response
200 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta2#FlowSchema" >}}">FlowSchema</a>): OK
200 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta3#FlowSchema" >}}">FlowSchema</a>): OK
201 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta2#FlowSchema" >}}">FlowSchema</a>): Created
201 (<a href="{{< ref "../cluster-resources/flow-schema-v1beta3#FlowSchema" >}}">FlowSchema</a>): Created
401: Unauthorized
@ -675,7 +677,7 @@ PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas/{name}/status
#### HTTP Request
DELETE /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas/{name}
DELETE /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name}
#### Parameters
@ -725,7 +727,7 @@ DELETE /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas/{name}
#### HTTP Request
DELETE /apis/flowcontrol.apiserver.k8s.io/v1beta2/flowschemas
DELETE /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas
#### Parameters

View File

@ -62,7 +62,7 @@ NodeSpec describes the attributes that a node is created with.
- **configSource** (NodeConfigSource)
Deprecated: Previously used to specify the source of the node's configuration for the DynamicKubeletConfig feature. This feature is removed from Kubelets as of 1.24 and will be fully removed in 1.26.
Deprecated: Previously used to specify the source of the node's configuration for the DynamicKubeletConfig feature. This feature is removed.
<a name="NodeConfigSource"></a>
*NodeConfigSource specifies a source of node configuration. Exactly one subfield (excluding metadata) must be non-nil. This API is deprecated since 1.22*
@ -156,7 +156,7 @@ NodeStatus is information about the current status of a node.
*Patch strategy: merge on key `type`*
List of addresses reachable to the node. Queried from cloud provider, if available. More info: https://kubernetes.io/docs/concepts/nodes/node/#addresses Note: This field is declared as mergeable, but the merge key is not sufficiently unique, which can cause data corruption when it is merged. Callers should instead use a full-replacement patch. See http://pr.k8s.io/79391 for an example.
List of addresses reachable to the node. Queried from cloud provider, if available. More info: https://kubernetes.io/docs/concepts/nodes/node/#addresses Note: This field is declared as mergeable, but the merge key is not sufficiently unique, which can cause data corruption when it is merged. Callers should instead use a full-replacement patch. See https://pr.k8s.io/79391 for an example.
<a name="NodeAddress"></a>
*NodeAddress contains information for the node's address.*

View File

@ -1,11 +1,11 @@
---
api_metadata:
apiVersion: "flowcontrol.apiserver.k8s.io/v1beta2"
import: "k8s.io/api/flowcontrol/v1beta2"
apiVersion: "flowcontrol.apiserver.k8s.io/v1beta3"
import: "k8s.io/api/flowcontrol/v1beta3"
kind: "PriorityLevelConfiguration"
content_type: "api_reference"
description: "PriorityLevelConfiguration represents the configuration of a priority level."
title: "PriorityLevelConfiguration v1beta2"
title: "PriorityLevelConfiguration v1beta3"
weight: 8
auto_generated: true
---
@ -21,9 +21,9 @@ guide. You can file document formatting bugs against the
[reference-docs](https://github.com/kubernetes-sigs/reference-docs/) project.
-->
`apiVersion: flowcontrol.apiserver.k8s.io/v1beta2`
`apiVersion: flowcontrol.apiserver.k8s.io/v1beta3`
`import "k8s.io/api/flowcontrol/v1beta2"`
`import "k8s.io/api/flowcontrol/v1beta3"`
## PriorityLevelConfiguration {#PriorityLevelConfiguration}
@ -32,7 +32,7 @@ PriorityLevelConfiguration represents the configuration of a priority level.
<hr>
- **apiVersion**: flowcontrol.apiserver.k8s.io/v1beta2
- **apiVersion**: flowcontrol.apiserver.k8s.io/v1beta3
- **kind**: PriorityLevelConfiguration
@ -42,11 +42,11 @@ PriorityLevelConfiguration represents the configuration of a priority level.
`metadata` is the standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
- **spec** (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta2#PriorityLevelConfigurationSpec" >}}">PriorityLevelConfigurationSpec</a>)
- **spec** (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta3#PriorityLevelConfigurationSpec" >}}">PriorityLevelConfigurationSpec</a>)
`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
- **status** (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta2#PriorityLevelConfigurationStatus" >}}">PriorityLevelConfigurationStatus</a>)
- **status** (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta3#PriorityLevelConfigurationStatus" >}}">PriorityLevelConfigurationStatus</a>)
`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
@ -73,13 +73,19 @@ PriorityLevelConfigurationSpec specifies the configuration of a priority level.
- How are requests for this priority level limited?
- What should be done with requests that exceed the limit?*
- **limited.assuredConcurrencyShares** (int32)
- **limited.borrowingLimitPercent** (int32)
`assuredConcurrencyShares` (ACS) configures the execution limit, which is a limit on the number of requests of this priority level that may be exeucting at a given time. ACS must be a positive number. The server's concurrency limit (SCL) is divided among the concurrency-controlled priority levels in proportion to their assured concurrency shares. This produces the assured concurrency value (ACV) --- the number of requests that may be executing at a time --- for each such priority level:
`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.
ACV(l) = ceil( SCL * ACS(l) / ( sum[priority levels k] ACS(k) ) )
BorrowingCL(i) = round( NominalCL(i) * borrowingLimitPercent(i)/100.0 )
bigger numbers of ACS mean more reserved concurrent requests (at the expense of every other PL). This field has a default value of 30.
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.
- **limited.lendablePercent** (int32)
`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 )
- **limited.limitResponse** (LimitResponse)
@ -111,6 +117,14 @@ PriorityLevelConfigurationSpec specifies the configuration of a priority level.
`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.
- **limited.nominalConcurrencyShares** (int32)
`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[limited priority level k] NCS(k)
Bigger numbers mean a larger nominal concurrency limit, at the expense of every other Limited priority level. This field has a default value of 30.
@ -123,6 +137,8 @@ PriorityLevelConfigurationStatus represents the current state of a "request-prio
- **conditions** ([]PriorityLevelConfigurationCondition)
*Patch strategy: merge on key `type`*
*Map: unique values on key type will be kept during a merge*
`conditions` is the current state of "request-priority".
@ -163,7 +179,7 @@ PriorityLevelConfigurationList is a list of PriorityLevelConfiguration objects.
<hr>
- **apiVersion**: flowcontrol.apiserver.k8s.io/v1beta2
- **apiVersion**: flowcontrol.apiserver.k8s.io/v1beta3
- **kind**: PriorityLevelConfigurationList
@ -173,7 +189,7 @@ PriorityLevelConfigurationList is a list of PriorityLevelConfiguration objects.
`metadata` is the standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
- **items** ([]<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta2#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>), required
- **items** ([]<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta3#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>), required
`items` is a list of request-priorities.
@ -196,7 +212,7 @@ PriorityLevelConfigurationList is a list of PriorityLevelConfiguration objects.
#### HTTP Request
GET /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{name}
GET /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{name}
#### Parameters
@ -215,7 +231,7 @@ GET /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{name
#### Response
200 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta2#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): OK
200 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta3#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): OK
401: Unauthorized
@ -224,7 +240,7 @@ GET /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{name
#### HTTP Request
GET /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{name}/status
GET /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{name}/status
#### Parameters
@ -243,7 +259,7 @@ GET /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{name
#### Response
200 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta2#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): OK
200 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta3#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): OK
401: Unauthorized
@ -252,7 +268,7 @@ GET /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{name
#### HTTP Request
GET /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations
GET /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations
#### Parameters
@ -311,7 +327,7 @@ GET /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations
#### Response
200 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta2#PriorityLevelConfigurationList" >}}">PriorityLevelConfigurationList</a>): OK
200 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta3#PriorityLevelConfigurationList" >}}">PriorityLevelConfigurationList</a>): OK
401: Unauthorized
@ -320,12 +336,12 @@ GET /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations
#### HTTP Request
POST /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations
POST /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations
#### Parameters
- **body**: <a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta2#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>, required
- **body**: <a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta3#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>, required
@ -354,11 +370,11 @@ POST /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations
#### Response
200 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta2#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): OK
200 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta3#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): OK
201 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta2#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): Created
201 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta3#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): Created
202 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta2#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): Accepted
202 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta3#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): Accepted
401: Unauthorized
@ -367,7 +383,7 @@ POST /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations
#### HTTP Request
PUT /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{name}
PUT /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{name}
#### Parameters
@ -377,7 +393,7 @@ PUT /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{name
name of the PriorityLevelConfiguration
- **body**: <a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta2#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>, required
- **body**: <a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta3#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>, required
@ -406,9 +422,9 @@ PUT /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{name
#### Response
200 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta2#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): OK
200 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta3#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): OK
201 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta2#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): Created
201 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta3#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): Created
401: Unauthorized
@ -417,7 +433,7 @@ PUT /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{name
#### HTTP Request
PUT /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{name}/status
PUT /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{name}/status
#### Parameters
@ -427,7 +443,7 @@ PUT /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{name
name of the PriorityLevelConfiguration
- **body**: <a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta2#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>, required
- **body**: <a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta3#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>, required
@ -456,9 +472,9 @@ PUT /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{name
#### Response
200 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta2#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): OK
200 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta3#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): OK
201 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta2#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): Created
201 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta3#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): Created
401: Unauthorized
@ -467,7 +483,7 @@ PUT /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{name
#### HTTP Request
PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{name}
PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{name}
#### Parameters
@ -511,9 +527,9 @@ PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{na
#### Response
200 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta2#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): OK
200 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta3#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): OK
201 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta2#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): Created
201 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta3#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): Created
401: Unauthorized
@ -522,7 +538,7 @@ PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{na
#### HTTP Request
PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{name}/status
PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{name}/status
#### Parameters
@ -566,9 +582,9 @@ PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{na
#### Response
200 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta2#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): OK
200 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta3#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): OK
201 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta2#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): Created
201 (<a href="{{< ref "../cluster-resources/priority-level-configuration-v1beta3#PriorityLevelConfiguration" >}}">PriorityLevelConfiguration</a>): Created
401: Unauthorized
@ -577,7 +593,7 @@ PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{na
#### HTTP Request
DELETE /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{name}
DELETE /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{name}
#### Parameters
@ -627,7 +643,7 @@ DELETE /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations/{n
#### HTTP Request
DELETE /apis/flowcontrol.apiserver.k8s.io/v1beta2/prioritylevelconfigurations
DELETE /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations
#### Parameters

View File

@ -6,7 +6,7 @@ api_metadata:
content_type: "api_reference"
description: ""
title: "Common Parameters"
weight: 10
weight: 11
auto_generated: true
---

View File

@ -75,6 +75,23 @@ PersistentVolumeClaimSpec describes the common attributes of storage devices and
<a name="ResourceRequirements"></a>
*ResourceRequirements describes the compute resource requirements.*
- **resources.claims** ([]ResourceClaim)
*Set: unique values will be kept during a merge*
Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container.
This is an alpha field and requires enabling the DynamicResourceAllocation feature gate.
This field is immutable.
<a name="ResourceClaim"></a>
*ResourceClaim references one entry in PodSpec.ResourceClaims.*
- **resources.claims.name** (string), required
Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container.
- **resources.limits** (map[string]<a href="{{< ref "../common-definitions/quantity#Quantity" >}}">Quantity</a>)
Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
@ -102,16 +119,37 @@ PersistentVolumeClaimSpec describes the common attributes of storage devices and
- **dataSource** (<a href="{{< ref "../common-definitions/typed-local-object-reference#TypedLocalObjectReference" >}}">TypedLocalObjectReference</a>)
dataSource field can be used to specify either: * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot) * An existing PVC (PersistentVolumeClaim) If the provisioner or an external controller can support the specified data source, it will create a new volume based on the contents of the specified data source. If the AnyVolumeDataSource feature gate is enabled, this field will always have the same contents as the DataSourceRef field.
dataSource field can be used to specify either: * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot) * An existing PVC (PersistentVolumeClaim) If the provisioner or an external controller can support the specified data source, it will create a new volume based on the contents of the specified data source. When the AnyVolumeDataSource feature gate is enabled, dataSource contents will be copied to dataSourceRef, and dataSourceRef contents will be copied to dataSource when dataSourceRef.namespace is not specified. If the namespace is specified, then dataSourceRef will not be copied to dataSource.
- **dataSourceRef** (<a href="{{< ref "../common-definitions/typed-local-object-reference#TypedLocalObjectReference" >}}">TypedLocalObjectReference</a>)
- **dataSourceRef** (TypedObjectReference)
dataSourceRef specifies the object from which to populate the volume with data, if a non-empty volume is desired. This may be any local object from a non-empty API group (non core object) or a PersistentVolumeClaim object. When this field is specified, volume binding will only succeed if the type of the specified object matches some installed volume populator or dynamic provisioner. This field will replace the functionality of the DataSource field and as such if both fields are non-empty, they must have the same value. For backwards compatibility, both fields (DataSource and DataSourceRef) will be set to the same value automatically if one of them is empty and the other is non-empty. There are two important differences between DataSource and DataSourceRef: * While DataSource only allows two specific types of objects, DataSourceRef
dataSourceRef specifies the object from which to populate the volume with data, if a non-empty volume is desired. This may be any object from a non-empty API group (non core object) or a PersistentVolumeClaim object. When this field is specified, volume binding will only succeed if the type of the specified object matches some installed volume populator or dynamic provisioner. This field will replace the functionality of the dataSource field and as such if both fields are non-empty, they must have the same value. For backwards compatibility, when namespace isn't specified in dataSourceRef, both fields (dataSource and dataSourceRef) will be set to the same value automatically if one of them is empty and the other is non-empty. When namespace is specified in dataSourceRef, dataSource isn't set to the same value and must be empty. There are three important differences between dataSource and dataSourceRef: * While dataSource only allows two specific types of objects, dataSourceRef
allows any non-core object, as well as PersistentVolumeClaim objects.
* While DataSource ignores disallowed values (dropping them), DataSourceRef
* While dataSource ignores disallowed values (dropping them), dataSourceRef
preserves all values, and generates an error if a disallowed value is
specified.
(Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled.
* While dataSource only allows local objects, dataSourceRef allows objects
in any namespaces.
(Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled. (Alpha) Using the namespace field of dataSourceRef requires the CrossNamespaceVolumeDataSource feature gate to be enabled.
<a name="TypedObjectReference"></a>
**
- **dataSourceRef.kind** (string), required
Kind is the type of resource being referenced
- **dataSourceRef.name** (string), required
Name is the name of resource being referenced
- **dataSourceRef.apiGroup** (string)
APIGroup is the group for the resource being referenced. If APIGroup is not specified, the specified Kind must be in the core API group. For any other third-party types, APIGroup is required.
- **dataSourceRef.namespace** (string)
Namespace is the namespace of resource being referenced Note that when a namespace is specified, a gateway.networking.k8s.io/ReferenceGrant object is required in the referent namespace to allow that namespace's owner to accept the reference. See the ReferenceGrant documentation for details. (Alpha) This field requires the CrossNamespaceVolumeDataSource feature gate to be enabled.

View File

@ -184,18 +184,26 @@ MutatingWebhookConfiguration describes the configuration of and admission webhoo
- **webhooks.rules.apiGroups** ([]string)
*Atomic: will be replaced during a merge*
APIGroups is the API groups the resources belong to. '*' is all groups. If '*' is present, the length of the slice must be one. Required.
- **webhooks.rules.apiVersions** ([]string)
*Atomic: will be replaced during a merge*
APIVersions is the API versions the resources belong to. '*' is all versions. If '*' is present, the length of the slice must be one. Required.
- **webhooks.rules.operations** ([]string)
*Atomic: will be replaced during a merge*
Operations is the operations the admission hook cares about - CREATE, UPDATE, DELETE, CONNECT or * for all of those operations and any future admission operations that are added. If '*' is present, the length of the slice must be one. Required.
- **webhooks.rules.resources** ([]string)
*Atomic: will be replaced during a merge*
Resources is a list of resources this rule applies to.
For example: 'pods' means pods. 'pods/log' means the log subresource of pods. '*' means all resources, but not subresources. 'pods/*' means all subresources of pods. '*/scale' means all scale subresources. '*/*' means all resources and their subresources.

View File

@ -0,0 +1,881 @@
---
api_metadata:
apiVersion: "admissionregistration.k8s.io/v1alpha1"
import: "k8s.io/api/admissionregistration/v1alpha1"
kind: "ValidatingAdmissionPolicy"
content_type: "api_reference"
description: "ValidatingAdmissionPolicy describes the definition of an admission validation policy that accepts or rejects an object without changing it."
title: "ValidatingAdmissionPolicy v1alpha1"
weight: 4
auto_generated: true
---
<!--
The file is auto-generated from the Go source code of the component using a generic
[generator](https://github.com/kubernetes-sigs/reference-docs/). To learn how
to generate the reference documentation, please read
[Contributing to the reference documentation](/docs/contribute/generate-ref-docs/).
To update the reference content, please follow the
[Contributing upstream](/docs/contribute/generate-ref-docs/contribute-upstream/)
guide. You can file document formatting bugs against the
[reference-docs](https://github.com/kubernetes-sigs/reference-docs/) project.
-->
`apiVersion: admissionregistration.k8s.io/v1alpha1`
`import "k8s.io/api/admissionregistration/v1alpha1"`
## ValidatingAdmissionPolicy {#ValidatingAdmissionPolicy}
ValidatingAdmissionPolicy describes the definition of an admission validation policy that accepts or rejects an object without changing it.
<hr>
- **apiVersion**: admissionregistration.k8s.io/v1alpha1
- **kind**: ValidatingAdmissionPolicy
- **metadata** (<a href="{{< ref "../common-definitions/object-meta#ObjectMeta" >}}">ObjectMeta</a>)
Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata.
- **spec** (ValidatingAdmissionPolicySpec)
Specification of the desired behavior of the ValidatingAdmissionPolicy.
<a name="ValidatingAdmissionPolicySpec"></a>
*ValidatingAdmissionPolicySpec is the specification of the desired behavior of the AdmissionPolicy.*
- **spec.validations** ([]Validation), required
*Atomic: will be replaced during a merge*
Validations contain CEL expressions which is used to apply the validation. A minimum of one validation is required for a policy definition. Required.
<a name="Validation"></a>
*Validation specifies the CEL expression which is used to apply the validation.*
- **spec.validations.expression** (string), required
Expression represents the expression which will be evaluated by CEL. ref: https://github.com/google/cel-spec CEL expressions have access to the contents of the Admission request/response, organized into CEL variables as well as some other useful variables:
'object' - The object from the incoming request. The value is null for DELETE requests. 'oldObject' - The existing object. The value is null for CREATE requests. 'request' - Attributes of the admission request([ref](/pkg/apis/admission/types.go#AdmissionRequest)). 'params' - Parameter resource referred to by the policy binding being evaluated. Only populated if the policy has a ParamKind.
The `apiVersion`, `kind`, `metadata.name` and `metadata.generateName` are always accessible from the root of the object. No other metadata properties are accessible.
Only property names of the form `[a-zA-Z_.-/][a-zA-Z0-9_.-/]*` are accessible. Accessible property names are escaped according to the following rules when accessed in the expression: - '__' escapes to '__underscores__' - '.' escapes to '__dot__' - '-' escapes to '__dash__' - '/' escapes to '__slash__' - Property names that exactly match a CEL RESERVED keyword escape to '__{keyword}__'. The keywords are:
"true", "false", "null", "in", "as", "break", "const", "continue", "else", "for", "function", "if",
"import", "let", "loop", "package", "namespace", "return".
Examples:
- Expression accessing a property named "namespace": {"Expression": "object.__namespace__ > 0"}
- Expression accessing a property named "x-prop": {"Expression": "object.x__dash__prop > 0"}
- Expression accessing a property named "redact__d": {"Expression": "object.redact__underscores__d > 0"}
Equality on arrays with list type of 'set' or 'map' ignores element order, i.e. [1, 2] == [2, 1]. Concatenation on arrays with x-kubernetes-list-type use the semantics of the list type:
- 'set': `X + Y` performs a union where the array positions of all elements in `X` are preserved and
non-intersecting elements in `Y` are appended, retaining their partial order.
- 'map': `X + Y` performs a merge where the array positions of all keys in `X` are preserved but the values
are overwritten by values in `Y` when the key sets of `X` and `Y` intersect. Elements in `Y` with
non-intersecting keys are appended, retaining their partial order.
Required.
- **spec.validations.message** (string)
Message represents the message displayed when validation fails. The message is required if the Expression contains line breaks. The message must not contain line breaks. If unset, the message is "failed rule: {Rule}". e.g. "must be a URL with the host matching spec.host" If the Expression contains line breaks. Message is required. The message must not contain line breaks. If unset, the message is "failed Expression: {Expression}".
- **spec.validations.reason** (string)
Reason represents a machine-readable description of why this validation failed. If this is the first validation in the list to fail, this reason, as well as the corresponding HTTP response code, are used in the HTTP response to the client. The currently supported reasons are: "Unauthorized", "Forbidden", "Invalid", "RequestEntityTooLarge". If not set, StatusReasonInvalid is used in the response to the client.
- **spec.failurePolicy** (string)
FailurePolicy defines how to handle failures for the admission policy. Failures can occur from invalid or mis-configured policy definitions or bindings. A policy is invalid if spec.paramKind refers to a non-existent Kind. A binding is invalid if spec.paramRef.name refers to a non-existent resource. Allowed values are Ignore or Fail. Defaults to Fail.
- **spec.matchConstraints** (MatchResources)
MatchConstraints specifies what resources this policy is designed to validate. The AdmissionPolicy cares about a request if it matches _all_ Constraints. However, in order to prevent clusters from being put into an unstable state that cannot be recovered from via the API ValidatingAdmissionPolicy cannot match ValidatingAdmissionPolicy and ValidatingAdmissionPolicyBinding. Required.
<a name="MatchResources"></a>
*MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)*
- **spec.matchConstraints.excludeResourceRules** ([]NamedRuleWithOperations)
*Atomic: will be replaced during a merge*
ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)
<a name="NamedRuleWithOperations"></a>
*NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.*
- **spec.matchConstraints.excludeResourceRules.apiGroups** ([]string)
*Atomic: will be replaced during a merge*
APIGroups is the API groups the resources belong to. '*' is all groups. If '*' is present, the length of the slice must be one. Required.
- **spec.matchConstraints.excludeResourceRules.apiVersions** ([]string)
*Atomic: will be replaced during a merge*
APIVersions is the API versions the resources belong to. '*' is all versions. If '*' is present, the length of the slice must be one. Required.
- **spec.matchConstraints.excludeResourceRules.operations** ([]string)
*Atomic: will be replaced during a merge*
Operations is the operations the admission hook cares about - CREATE, UPDATE, DELETE, CONNECT or * for all of those operations and any future admission operations that are added. If '*' is present, the length of the slice must be one. Required.
- **spec.matchConstraints.excludeResourceRules.resourceNames** ([]string)
*Atomic: will be replaced during a merge*
ResourceNames is an optional white list of names that the rule applies to. An empty set means that everything is allowed.
- **spec.matchConstraints.excludeResourceRules.resources** ([]string)
*Atomic: will be replaced during a merge*
Resources is a list of resources this rule applies to.
For example: 'pods' means pods. 'pods/log' means the log subresource of pods. '*' means all resources, but not subresources. 'pods/*' means all subresources of pods. '*/scale' means all scale subresources. '*/*' means all resources and their subresources.
If wildcard is present, the validation rule will ensure resources do not overlap with each other.
Depending on the enclosing object, subresources might not be allowed. Required.
- **spec.matchConstraints.excludeResourceRules.scope** (string)
scope specifies the scope of this rule. Valid values are "Cluster", "Namespaced", and "*" "Cluster" means that only cluster-scoped resources will match this rule. Namespace API objects are cluster-scoped. "Namespaced" means that only namespaced resources will match this rule. "*" means that there are no scope restrictions. Subresources match the scope of their parent resource. Default is "*".
- **spec.matchConstraints.matchPolicy** (string)
matchPolicy defines how the "MatchResources" list is used to match incoming requests. Allowed values are "Exact" or "Equivalent".
- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but "rules" only included `apiGroups:["apps"], apiVersions:["v1"], resources: ["deployments"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.
- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and "rules" only included `apiGroups:["apps"], apiVersions:["v1"], resources: ["deployments"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.
Defaults to "Equivalent"
- **spec.matchConstraints.namespaceSelector** (<a href="{{< ref "../common-definitions/label-selector#LabelSelector" >}}">LabelSelector</a>)
NamespaceSelector decides whether to run the admission control policy on an object based on whether the namespace for that object matches the selector. If the object itself is a namespace, the matching is performed on object.metadata.labels. If the object is another cluster scoped resource, it never skips the policy.
For example, to run the webhook on any objects whose namespace is not associated with "runlevel" of "0" or "1"; you will set the selector as follows: "namespaceSelector": {
"matchExpressions": [
{
"key": "runlevel",
"operator": "NotIn",
"values": [
"0",
"1"
]
}
]
}
If instead you want to only run the policy on any objects whose namespace is associated with the "environment" of "prod" or "staging"; you will set the selector as follows: "namespaceSelector": {
"matchExpressions": [
{
"key": "environment",
"operator": "In",
"values": [
"prod",
"staging"
]
}
]
}
See https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ for more examples of label selectors.
Default to the empty LabelSelector, which matches everything.
- **spec.matchConstraints.objectSelector** (<a href="{{< ref "../common-definitions/label-selector#LabelSelector" >}}">LabelSelector</a>)
ObjectSelector decides whether to run the validation based on if the object has matching labels. objectSelector is evaluated against both the oldObject and newObject that would be sent to the cel validation, and is considered to match if either object matches the selector. A null object (oldObject in the case of create, or newObject in the case of delete) or an object that cannot have labels (like a DeploymentRollback or a PodProxyOptions object) is not considered to match. Use the object selector only if the webhook is opt-in, because end users may skip the admission webhook by setting the labels. Default to the empty LabelSelector, which matches everything.
- **spec.matchConstraints.resourceRules** ([]NamedRuleWithOperations)
*Atomic: will be replaced during a merge*
ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.
<a name="NamedRuleWithOperations"></a>
*NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.*
- **spec.matchConstraints.resourceRules.apiGroups** ([]string)
*Atomic: will be replaced during a merge*
APIGroups is the API groups the resources belong to. '*' is all groups. If '*' is present, the length of the slice must be one. Required.
- **spec.matchConstraints.resourceRules.apiVersions** ([]string)
*Atomic: will be replaced during a merge*
APIVersions is the API versions the resources belong to. '*' is all versions. If '*' is present, the length of the slice must be one. Required.
- **spec.matchConstraints.resourceRules.operations** ([]string)
*Atomic: will be replaced during a merge*
Operations is the operations the admission hook cares about - CREATE, UPDATE, DELETE, CONNECT or * for all of those operations and any future admission operations that are added. If '*' is present, the length of the slice must be one. Required.
- **spec.matchConstraints.resourceRules.resourceNames** ([]string)
*Atomic: will be replaced during a merge*
ResourceNames is an optional white list of names that the rule applies to. An empty set means that everything is allowed.
- **spec.matchConstraints.resourceRules.resources** ([]string)
*Atomic: will be replaced during a merge*
Resources is a list of resources this rule applies to.
For example: 'pods' means pods. 'pods/log' means the log subresource of pods. '*' means all resources, but not subresources. 'pods/*' means all subresources of pods. '*/scale' means all scale subresources. '*/*' means all resources and their subresources.
If wildcard is present, the validation rule will ensure resources do not overlap with each other.
Depending on the enclosing object, subresources might not be allowed. Required.
- **spec.matchConstraints.resourceRules.scope** (string)
scope specifies the scope of this rule. Valid values are "Cluster", "Namespaced", and "*" "Cluster" means that only cluster-scoped resources will match this rule. Namespace API objects are cluster-scoped. "Namespaced" means that only namespaced resources will match this rule. "*" means that there are no scope restrictions. Subresources match the scope of their parent resource. Default is "*".
- **spec.paramKind** (ParamKind)
ParamKind specifies the kind of resources used to parameterize this policy. If absent, there are no parameters for this policy and the param CEL variable will not be provided to validation expressions. If ParamKind refers to a non-existent kind, this policy definition is mis-configured and the FailurePolicy is applied. If paramKind is specified but paramRef is unset in ValidatingAdmissionPolicyBinding, the params variable will be null.
<a name="ParamKind"></a>
*ParamKind is a tuple of Group Kind and Version.*
- **spec.paramKind.apiVersion** (string)
APIVersion is the API group version the resources belong to. In format of "group/version". Required.
- **spec.paramKind.kind** (string)
Kind is the API kind the resources belong to. Required.
## ValidatingAdmissionPolicyList {#ValidatingAdmissionPolicyList}
ValidatingAdmissionPolicyList is a list of ValidatingAdmissionPolicy.
<hr>
- **apiVersion** (string)
APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
- **items** ([]<a href="{{< ref "../extend-resources/validating-admission-policy-v1alpha1#ValidatingAdmissionPolicy" >}}">ValidatingAdmissionPolicy</a>)
List of ValidatingAdmissionPolicy.
- **kind** (string)
Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
- **metadata** (<a href="{{< ref "../common-definitions/list-meta#ListMeta" >}}">ListMeta</a>)
Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
## ValidatingAdmissionPolicyBinding {#ValidatingAdmissionPolicyBinding}
ValidatingAdmissionPolicyBinding binds the ValidatingAdmissionPolicy with paramerized resources. ValidatingAdmissionPolicyBinding and parameter CRDs together define how cluster administrators configure policies for clusters.
<hr>
- **apiVersion** (string)
APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
- **kind** (string)
Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
- **metadata** (<a href="{{< ref "../common-definitions/object-meta#ObjectMeta" >}}">ObjectMeta</a>)
Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata.
- **spec** (ValidatingAdmissionPolicyBindingSpec)
Specification of the desired behavior of the ValidatingAdmissionPolicyBinding.
<a name="ValidatingAdmissionPolicyBindingSpec"></a>
*ValidatingAdmissionPolicyBindingSpec is the specification of the ValidatingAdmissionPolicyBinding.*
- **spec.matchResources** (MatchResources)
MatchResources declares what resources match this binding and will be validated by it. Note that this is intersected with the policy's matchConstraints, so only requests that are matched by the policy can be selected by this. If this is unset, all resources matched by the policy are validated by this binding When resourceRules is unset, it does not constrain resource matching. If a resource is matched by the other fields of this object, it will be validated. Note that this is differs from ValidatingAdmissionPolicy matchConstraints, where resourceRules are required.
<a name="MatchResources"></a>
*MatchResources decides whether to run the admission control policy on an object based on whether it meets the match criteria. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)*
- **spec.matchResources.excludeResourceRules** ([]NamedRuleWithOperations)
*Atomic: will be replaced during a merge*
ExcludeResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy should not care about. The exclude rules take precedence over include rules (if a resource matches both, it is excluded)
<a name="NamedRuleWithOperations"></a>
*NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.*
- **spec.matchResources.excludeResourceRules.apiGroups** ([]string)
*Atomic: will be replaced during a merge*
APIGroups is the API groups the resources belong to. '*' is all groups. If '*' is present, the length of the slice must be one. Required.
- **spec.matchResources.excludeResourceRules.apiVersions** ([]string)
*Atomic: will be replaced during a merge*
APIVersions is the API versions the resources belong to. '*' is all versions. If '*' is present, the length of the slice must be one. Required.
- **spec.matchResources.excludeResourceRules.operations** ([]string)
*Atomic: will be replaced during a merge*
Operations is the operations the admission hook cares about - CREATE, UPDATE, DELETE, CONNECT or * for all of those operations and any future admission operations that are added. If '*' is present, the length of the slice must be one. Required.
- **spec.matchResources.excludeResourceRules.resourceNames** ([]string)
*Atomic: will be replaced during a merge*
ResourceNames is an optional white list of names that the rule applies to. An empty set means that everything is allowed.
- **spec.matchResources.excludeResourceRules.resources** ([]string)
*Atomic: will be replaced during a merge*
Resources is a list of resources this rule applies to.
For example: 'pods' means pods. 'pods/log' means the log subresource of pods. '*' means all resources, but not subresources. 'pods/*' means all subresources of pods. '*/scale' means all scale subresources. '*/*' means all resources and their subresources.
If wildcard is present, the validation rule will ensure resources do not overlap with each other.
Depending on the enclosing object, subresources might not be allowed. Required.
- **spec.matchResources.excludeResourceRules.scope** (string)
scope specifies the scope of this rule. Valid values are "Cluster", "Namespaced", and "*" "Cluster" means that only cluster-scoped resources will match this rule. Namespace API objects are cluster-scoped. "Namespaced" means that only namespaced resources will match this rule. "*" means that there are no scope restrictions. Subresources match the scope of their parent resource. Default is "*".
- **spec.matchResources.matchPolicy** (string)
matchPolicy defines how the "MatchResources" list is used to match incoming requests. Allowed values are "Exact" or "Equivalent".
- Exact: match a request only if it exactly matches a specified rule. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, but "rules" only included `apiGroups:["apps"], apiVersions:["v1"], resources: ["deployments"]`, a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the ValidatingAdmissionPolicy.
- Equivalent: match a request if modifies a resource listed in rules, even via another API group or version. For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1, and "rules" only included `apiGroups:["apps"], apiVersions:["v1"], resources: ["deployments"]`, a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the ValidatingAdmissionPolicy.
Defaults to "Equivalent"
- **spec.matchResources.namespaceSelector** (<a href="{{< ref "../common-definitions/label-selector#LabelSelector" >}}">LabelSelector</a>)
NamespaceSelector decides whether to run the admission control policy on an object based on whether the namespace for that object matches the selector. If the object itself is a namespace, the matching is performed on object.metadata.labels. If the object is another cluster scoped resource, it never skips the policy.
For example, to run the webhook on any objects whose namespace is not associated with "runlevel" of "0" or "1"; you will set the selector as follows: "namespaceSelector": {
"matchExpressions": [
{
"key": "runlevel",
"operator": "NotIn",
"values": [
"0",
"1"
]
}
]
}
If instead you want to only run the policy on any objects whose namespace is associated with the "environment" of "prod" or "staging"; you will set the selector as follows: "namespaceSelector": {
"matchExpressions": [
{
"key": "environment",
"operator": "In",
"values": [
"prod",
"staging"
]
}
]
}
See https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ for more examples of label selectors.
Default to the empty LabelSelector, which matches everything.
- **spec.matchResources.objectSelector** (<a href="{{< ref "../common-definitions/label-selector#LabelSelector" >}}">LabelSelector</a>)
ObjectSelector decides whether to run the validation based on if the object has matching labels. objectSelector is evaluated against both the oldObject and newObject that would be sent to the cel validation, and is considered to match if either object matches the selector. A null object (oldObject in the case of create, or newObject in the case of delete) or an object that cannot have labels (like a DeploymentRollback or a PodProxyOptions object) is not considered to match. Use the object selector only if the webhook is opt-in, because end users may skip the admission webhook by setting the labels. Default to the empty LabelSelector, which matches everything.
- **spec.matchResources.resourceRules** ([]NamedRuleWithOperations)
*Atomic: will be replaced during a merge*
ResourceRules describes what operations on what resources/subresources the ValidatingAdmissionPolicy matches. The policy cares about an operation if it matches _any_ Rule.
<a name="NamedRuleWithOperations"></a>
*NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.*
- **spec.matchResources.resourceRules.apiGroups** ([]string)
*Atomic: will be replaced during a merge*
APIGroups is the API groups the resources belong to. '*' is all groups. If '*' is present, the length of the slice must be one. Required.
- **spec.matchResources.resourceRules.apiVersions** ([]string)
*Atomic: will be replaced during a merge*
APIVersions is the API versions the resources belong to. '*' is all versions. If '*' is present, the length of the slice must be one. Required.
- **spec.matchResources.resourceRules.operations** ([]string)
*Atomic: will be replaced during a merge*
Operations is the operations the admission hook cares about - CREATE, UPDATE, DELETE, CONNECT or * for all of those operations and any future admission operations that are added. If '*' is present, the length of the slice must be one. Required.
- **spec.matchResources.resourceRules.resourceNames** ([]string)
*Atomic: will be replaced during a merge*
ResourceNames is an optional white list of names that the rule applies to. An empty set means that everything is allowed.
- **spec.matchResources.resourceRules.resources** ([]string)
*Atomic: will be replaced during a merge*
Resources is a list of resources this rule applies to.
For example: 'pods' means pods. 'pods/log' means the log subresource of pods. '*' means all resources, but not subresources. 'pods/*' means all subresources of pods. '*/scale' means all scale subresources. '*/*' means all resources and their subresources.
If wildcard is present, the validation rule will ensure resources do not overlap with each other.
Depending on the enclosing object, subresources might not be allowed. Required.
- **spec.matchResources.resourceRules.scope** (string)
scope specifies the scope of this rule. Valid values are "Cluster", "Namespaced", and "*" "Cluster" means that only cluster-scoped resources will match this rule. Namespace API objects are cluster-scoped. "Namespaced" means that only namespaced resources will match this rule. "*" means that there are no scope restrictions. Subresources match the scope of their parent resource. Default is "*".
- **spec.paramRef** (ParamRef)
ParamRef specifies the parameter resource used to configure the admission control policy. It should point to a resource of the type specified in ParamKind of the bound ValidatingAdmissionPolicy. If the policy specifies a ParamKind and the resource referred to by ParamRef does not exist, this binding is considered mis-configured and the FailurePolicy of the ValidatingAdmissionPolicy applied.
<a name="ParamRef"></a>
*ParamRef references a parameter resource*
- **spec.paramRef.name** (string)
Name of the resource being referenced.
- **spec.paramRef.namespace** (string)
Namespace of the referenced resource. Should be empty for the cluster-scoped resources
- **spec.policyName** (string)
PolicyName references a ValidatingAdmissionPolicy name which the ValidatingAdmissionPolicyBinding binds to. If the referenced resource does not exist, this binding is considered invalid and will be ignored Required.
## Operations {#Operations}
<hr>
### `get` read the specified ValidatingAdmissionPolicy
#### HTTP Request
GET /apis/admissionregistration.k8s.io/v1alpha1/validatingadmissionpolicies/{name}
#### Parameters
- **name** (*in path*): string, required
name of the ValidatingAdmissionPolicy
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../extend-resources/validating-admission-policy-v1alpha1#ValidatingAdmissionPolicy" >}}">ValidatingAdmissionPolicy</a>): OK
401: Unauthorized
### `list` list or watch objects of kind ValidatingAdmissionPolicy
#### HTTP Request
GET /apis/admissionregistration.k8s.io/v1alpha1/validatingadmissionpolicies
#### Parameters
- **allowWatchBookmarks** (*in query*): boolean
<a href="{{< ref "../common-parameters/common-parameters#allowWatchBookmarks" >}}">allowWatchBookmarks</a>
- **continue** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#continue" >}}">continue</a>
- **fieldSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldSelector" >}}">fieldSelector</a>
- **labelSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#labelSelector" >}}">labelSelector</a>
- **limit** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#limit" >}}">limit</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
- **resourceVersion** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersion" >}}">resourceVersion</a>
- **resourceVersionMatch** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersionMatch" >}}">resourceVersionMatch</a>
- **timeoutSeconds** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#timeoutSeconds" >}}">timeoutSeconds</a>
- **watch** (*in query*): boolean
<a href="{{< ref "../common-parameters/common-parameters#watch" >}}">watch</a>
#### Response
200 (<a href="{{< ref "../extend-resources/validating-admission-policy-v1alpha1#ValidatingAdmissionPolicyList" >}}">ValidatingAdmissionPolicyList</a>): OK
401: Unauthorized
### `create` create a ValidatingAdmissionPolicy
#### HTTP Request
POST /apis/admissionregistration.k8s.io/v1alpha1/validatingadmissionpolicies
#### Parameters
- **body**: <a href="{{< ref "../extend-resources/validating-admission-policy-v1alpha1#ValidatingAdmissionPolicy" >}}">ValidatingAdmissionPolicy</a>, required
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldManager** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldManager" >}}">fieldManager</a>
- **fieldValidation** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldValidation" >}}">fieldValidation</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../extend-resources/validating-admission-policy-v1alpha1#ValidatingAdmissionPolicy" >}}">ValidatingAdmissionPolicy</a>): OK
201 (<a href="{{< ref "../extend-resources/validating-admission-policy-v1alpha1#ValidatingAdmissionPolicy" >}}">ValidatingAdmissionPolicy</a>): Created
202 (<a href="{{< ref "../extend-resources/validating-admission-policy-v1alpha1#ValidatingAdmissionPolicy" >}}">ValidatingAdmissionPolicy</a>): Accepted
401: Unauthorized
### `update` replace the specified ValidatingAdmissionPolicy
#### HTTP Request
PUT /apis/admissionregistration.k8s.io/v1alpha1/validatingadmissionpolicies/{name}
#### Parameters
- **name** (*in path*): string, required
name of the ValidatingAdmissionPolicy
- **body**: <a href="{{< ref "../extend-resources/validating-admission-policy-v1alpha1#ValidatingAdmissionPolicy" >}}">ValidatingAdmissionPolicy</a>, required
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldManager** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldManager" >}}">fieldManager</a>
- **fieldValidation** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldValidation" >}}">fieldValidation</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../extend-resources/validating-admission-policy-v1alpha1#ValidatingAdmissionPolicy" >}}">ValidatingAdmissionPolicy</a>): OK
201 (<a href="{{< ref "../extend-resources/validating-admission-policy-v1alpha1#ValidatingAdmissionPolicy" >}}">ValidatingAdmissionPolicy</a>): Created
401: Unauthorized
### `patch` partially update the specified ValidatingAdmissionPolicy
#### HTTP Request
PATCH /apis/admissionregistration.k8s.io/v1alpha1/validatingadmissionpolicies/{name}
#### Parameters
- **name** (*in path*): string, required
name of the ValidatingAdmissionPolicy
- **body**: <a href="{{< ref "../common-definitions/patch#Patch" >}}">Patch</a>, required
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldManager** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldManager" >}}">fieldManager</a>
- **fieldValidation** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldValidation" >}}">fieldValidation</a>
- **force** (*in query*): boolean
<a href="{{< ref "../common-parameters/common-parameters#force" >}}">force</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../extend-resources/validating-admission-policy-v1alpha1#ValidatingAdmissionPolicy" >}}">ValidatingAdmissionPolicy</a>): OK
201 (<a href="{{< ref "../extend-resources/validating-admission-policy-v1alpha1#ValidatingAdmissionPolicy" >}}">ValidatingAdmissionPolicy</a>): Created
401: Unauthorized
### `delete` delete a ValidatingAdmissionPolicy
#### HTTP Request
DELETE /apis/admissionregistration.k8s.io/v1alpha1/validatingadmissionpolicies/{name}
#### Parameters
- **name** (*in path*): string, required
name of the ValidatingAdmissionPolicy
- **body**: <a href="{{< ref "../common-definitions/delete-options#DeleteOptions" >}}">DeleteOptions</a>
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **gracePeriodSeconds** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#gracePeriodSeconds" >}}">gracePeriodSeconds</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
- **propagationPolicy** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#propagationPolicy" >}}">propagationPolicy</a>
#### Response
200 (<a href="{{< ref "../common-definitions/status#Status" >}}">Status</a>): OK
202 (<a href="{{< ref "../common-definitions/status#Status" >}}">Status</a>): Accepted
401: Unauthorized
### `deletecollection` delete collection of ValidatingAdmissionPolicy
#### HTTP Request
DELETE /apis/admissionregistration.k8s.io/v1alpha1/validatingadmissionpolicies
#### Parameters
- **body**: <a href="{{< ref "../common-definitions/delete-options#DeleteOptions" >}}">DeleteOptions</a>
- **continue** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#continue" >}}">continue</a>
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldSelector" >}}">fieldSelector</a>
- **gracePeriodSeconds** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#gracePeriodSeconds" >}}">gracePeriodSeconds</a>
- **labelSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#labelSelector" >}}">labelSelector</a>
- **limit** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#limit" >}}">limit</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
- **propagationPolicy** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#propagationPolicy" >}}">propagationPolicy</a>
- **resourceVersion** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersion" >}}">resourceVersion</a>
- **resourceVersionMatch** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersionMatch" >}}">resourceVersionMatch</a>
- **timeoutSeconds** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#timeoutSeconds" >}}">timeoutSeconds</a>
#### Response
200 (<a href="{{< ref "../common-definitions/status#Status" >}}">Status</a>): OK
401: Unauthorized

View File

@ -174,18 +174,26 @@ ValidatingWebhookConfiguration describes the configuration of and admission webh
- **webhooks.rules.apiGroups** ([]string)
*Atomic: will be replaced during a merge*
APIGroups is the API groups the resources belong to. '*' is all groups. If '*' is present, the length of the slice must be one. Required.
- **webhooks.rules.apiVersions** ([]string)
*Atomic: will be replaced during a merge*
APIVersions is the API versions the resources belong to. '*' is all versions. If '*' is present, the length of the slice must be one. Required.
- **webhooks.rules.operations** ([]string)
*Atomic: will be replaced during a merge*
Operations is the operations the admission hook cares about - CREATE, UPDATE, DELETE, CONNECT or * for all of those operations and any future admission operations that are added. If '*' is present, the length of the slice must be one. Required.
- **webhooks.rules.resources** ([]string)
*Atomic: will be replaced during a merge*
Resources is a list of resources this rule applies to.
For example: 'pods' means pods. 'pods/log' means the log subresource of pods. '*' means all resources, but not subresources. 'pods/*' means all subresources of pods. '*/scale' means all scale subresources. '*/*' means all resources and their subresources.

View File

@ -0,0 +1,17 @@
---
title: "Other Resources"
weight: 10
auto_generated: true
---
<!--
The file is auto-generated from the Go source code of the component using a generic
[generator](https://github.com/kubernetes-sigs/reference-docs/). To learn how
to generate the reference documentation, please read
[Contributing to the reference documentation](/docs/contribute/generate-ref-docs/).
To update the reference content, please follow the
[Contributing upstream](/docs/contribute/generate-ref-docs/contribute-upstream/)
guide. You can file document formatting bugs against the
[reference-docs](https://github.com/kubernetes-sigs/reference-docs/) project.
-->

View File

@ -0,0 +1,28 @@
---
api_metadata:
apiVersion: "admissionregistration.k8s.io/v1alpha1"
import: "k8s.io/api/admissionregistration/v1alpha1"
kind: "ValidatingAdmissionPolicyBindingList"
content_type: "api_reference"
description: ""
title: "ValidatingAdmissionPolicyBindingList v1alpha1"
weight: 1
auto_generated: true
---
<!--
The file is auto-generated from the Go source code of the component using a generic
[generator](https://github.com/kubernetes-sigs/reference-docs/). To learn how
to generate the reference documentation, please read
[Contributing to the reference documentation](/docs/contribute/generate-ref-docs/).
To update the reference content, please follow the
[Contributing upstream](/docs/contribute/generate-ref-docs/contribute-upstream/)
guide. You can file document formatting bugs against the
[reference-docs](https://github.com/kubernetes-sigs/reference-docs/) project.
-->
`apiVersion: admissionregistration.k8s.io/v1alpha1`
`import "k8s.io/api/admissionregistration/v1alpha1"`

View File

@ -87,15 +87,15 @@ NetworkPolicySpec provides the specification of a NetworkPolicy
IPBlock defines policy on a particular IPBlock. If this field is set then neither of the other fields can be.
<a name="IPBlock"></a>
*IPBlock describes a particular CIDR (Ex. "192.168.1.1/24","2001:db9::/64") that is allowed to the pods matched by a NetworkPolicySpec's podSelector. The except entry describes CIDRs that should not be included within this rule.*
*IPBlock describes a particular CIDR (Ex. "192.168.1.0/24","2001:db8::/64") that is allowed to the pods matched by a NetworkPolicySpec's podSelector. The except entry describes CIDRs that should not be included within this rule.*
- **ingress.from.ipBlock.cidr** (string), required
CIDR is a string representing the IP Block Valid examples are "192.168.1.1/24" or "2001:db9::/64"
CIDR is a string representing the IP Block Valid examples are "192.168.1.0/24" or "2001:db8::/64"
- **ingress.from.ipBlock.except** ([]string)
Except is a slice of CIDRs that should not be included within an IP Block Valid examples are "192.168.1.1/24" or "2001:db9::/64" Except values will be rejected if they are outside the CIDR range
Except is a slice of CIDRs that should not be included within an IP Block Valid examples are "192.168.1.0/24" or "2001:db8::/64" Except values will be rejected if they are outside the CIDR range
- **ingress.from.namespaceSelector** (<a href="{{< ref "../common-definitions/label-selector#LabelSelector" >}}">LabelSelector</a>)
@ -150,15 +150,15 @@ NetworkPolicySpec provides the specification of a NetworkPolicy
IPBlock defines policy on a particular IPBlock. If this field is set then neither of the other fields can be.
<a name="IPBlock"></a>
*IPBlock describes a particular CIDR (Ex. "192.168.1.1/24","2001:db9::/64") that is allowed to the pods matched by a NetworkPolicySpec's podSelector. The except entry describes CIDRs that should not be included within this rule.*
*IPBlock describes a particular CIDR (Ex. "192.168.1.0/24","2001:db8::/64") that is allowed to the pods matched by a NetworkPolicySpec's podSelector. The except entry describes CIDRs that should not be included within this rule.*
- **egress.to.ipBlock.cidr** (string), required
CIDR is a string representing the IP Block Valid examples are "192.168.1.1/24" or "2001:db9::/64"
CIDR is a string representing the IP Block Valid examples are "192.168.1.0/24" or "2001:db8::/64"
- **egress.to.ipBlock.except** ([]string)
Except is a slice of CIDRs that should not be included within an IP Block Valid examples are "192.168.1.1/24" or "2001:db9::/64" Except values will be rejected if they are outside the CIDR range
Except is a slice of CIDRs that should not be included within an IP Block Valid examples are "192.168.1.0/24" or "2001:db8::/64" Except values will be rejected if they are outside the CIDR range
- **egress.to.namespaceSelector** (<a href="{{< ref "../common-definitions/label-selector#LabelSelector" >}}">LabelSelector</a>)

View File

@ -78,6 +78,20 @@ PodDisruptionBudgetSpec is a description of a PodDisruptionBudget.
Label query over pods whose evictions are managed by the disruption budget. A null selector will match no pods, while an empty ({}) selector will select all pods within the namespace.
- **unhealthyPodEvictionPolicy** (string)
UnhealthyPodEvictionPolicy defines the criteria for when unhealthy pods should be considered for eviction. Current implementation considers healthy pods, as pods that have status.conditions item with type="Ready",status="True".
Valid policies are IfHealthyBudget and AlwaysAllow. If no policy is specified, the default behavior will be used, which corresponds to the IfHealthyBudget policy.
IfHealthyBudget policy means that running pods (status.phase="Running"), but not yet healthy can be evicted only if the guarded application is not disrupted (status.currentHealthy is at least equal to status.desiredHealthy). Healthy pods will be subject to the PDB for eviction.
AlwaysAllow policy means that all running pods (status.phase="Running"), but not yet healthy are considered disrupted and can be evicted regardless of whether the criteria in a PDB is met. This means perspective running pods of a disrupted application might not get a chance to become healthy. Healthy pods will be subject to the PDB for eviction.
Additional policies may be added in the future. Clients making eviction decisions should disallow eviction of unhealthy pods if they encounter an unrecognized policy in this field.
This field is alpha-level. The eviction API uses this field when the feature gate PDBUnhealthyPodEvictionPolicy is enabled (disabled by default).

View File

@ -76,11 +76,11 @@ EndpointSlice represents a subset of the endpoints that implement a service. For
- **endpoints.conditions.serving** (boolean)
serving is identical to ready except that it is set regardless of the terminating state of endpoints. This condition should be set to true for a ready endpoint that is terminating. If nil, consumers should defer to the ready condition. This field can be enabled with the EndpointSliceTerminatingCondition feature gate.
serving is identical to ready except that it is set regardless of the terminating state of endpoints. This condition should be set to true for a ready endpoint that is terminating. If nil, consumers should defer to the ready condition.
- **endpoints.conditions.terminating** (boolean)
terminating indicates that this endpoint is terminating. A nil value indicates an unknown state. Consumers should interpret this unknown state to mean that the endpoint is not terminating. This field can be enabled with the EndpointSliceTerminatingCondition feature gate.
terminating indicates that this endpoint is terminating. A nil value indicates an unknown state. Consumers should interpret this unknown state to mean that the endpoint is not terminating.
- **endpoints.deprecatedTopology** (map[string]string)

View File

@ -109,18 +109,13 @@ IngressSpec describes the Ingress the user wishes to exist.
- **rules.http.paths.pathType** (string), required
PathType determines the interpretation of the Path matching. PathType can be one of the following values:
* Exact: Matches the URL path exactly.
* Prefix: Matches based on a URL path prefix split by '/'. Matching is
PathType determines the interpretation of the Path matching. PathType can be one of the following values: * Exact: Matches the URL path exactly. * Prefix: Matches based on a URL path prefix split by '/'. Matching is
done on a path element by element basis. A path element refers is the
list of labels in the path split by the '/' separator. A request is a
match for path p if every p is an element-wise prefix of p of the
request path. Note that if the last element of the path is a substring
of the last element in request path, it is not a match (e.g. /foo/bar
matches /foo/bar/baz, but does not match /foo/barbaz).
* ImplementationSpecific: Interpretation of the Path matching is up to
the IngressClass. Implementations can treat this as a separate PathType
or treat it identically to Prefix or Exact path types.
@ -199,44 +194,44 @@ IngressStatus describe the current state of the Ingress.
<hr>
- **loadBalancer** (LoadBalancerStatus)
- **loadBalancer** (IngressLoadBalancerStatus)
LoadBalancer contains the current status of the load-balancer.
<a name="LoadBalancerStatus"></a>
*LoadBalancerStatus represents the status of a load-balancer.*
<a name="IngressLoadBalancerStatus"></a>
*IngressLoadBalancerStatus represents the status of a load-balancer.*
- **loadBalancer.ingress** ([]LoadBalancerIngress)
- **loadBalancer.ingress** ([]IngressLoadBalancerIngress)
Ingress is a list containing ingress points for the load-balancer. Traffic intended for the service should be sent to these ingress points.
Ingress is a list containing ingress points for the load-balancer.
<a name="LoadBalancerIngress"></a>
*LoadBalancerIngress represents the status of a load-balancer ingress point: traffic intended for the service should be sent to an ingress point.*
<a name="IngressLoadBalancerIngress"></a>
*IngressLoadBalancerIngress represents the status of a load-balancer ingress point.*
- **loadBalancer.ingress.hostname** (string)
Hostname is set for load-balancer ingress points that are DNS based (typically AWS load-balancers)
Hostname is set for load-balancer ingress points that are DNS based.
- **loadBalancer.ingress.ip** (string)
IP is set for load-balancer ingress points that are IP based (typically GCE or OpenStack load-balancers)
IP is set for load-balancer ingress points that are IP based.
- **loadBalancer.ingress.ports** ([]PortStatus)
- **loadBalancer.ingress.ports** ([]IngressPortStatus)
*Atomic: will be replaced during a merge*
Ports is a list of records of service ports If used, every port defined in the service should have an entry in it
Ports provides information about the ports exposed by this LoadBalancer.
<a name="PortStatus"></a>
**
<a name="IngressPortStatus"></a>
*IngressPortStatus represents the error condition of a service port*
- **loadBalancer.ingress.ports.port** (int32), required
Port is the port number of the service port of which status is recorded here
Port is the port number of the ingress port.
- **loadBalancer.ingress.ports.protocol** (string), required
Protocol is the protocol of the service port of which status is recorded here The supported values are: "TCP", "UDP", "SCTP"
Protocol is the protocol of the ingress port. The supported values are: "TCP", "UDP", "SCTP"

View File

@ -73,7 +73,7 @@ specification of a horizontal pod autoscaler.
- **scaleTargetRef.kind** (string), required
Kind of the referent; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"
Kind of the referent; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
- **scaleTargetRef.name** (string), required

View File

@ -73,7 +73,7 @@ HorizontalPodAutoscalerSpec describes the desired functionality of the Horizonta
- **scaleTargetRef.kind** (string), required
Kind of the referent; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"
Kind of the referent; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
- **scaleTargetRef.name** (string), required
@ -281,7 +281,7 @@ HorizontalPodAutoscalerSpec describes the desired functionality of the Horizonta
- **metrics.object.describedObject.kind** (string), required
Kind of the referent; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"
Kind of the referent; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
- **metrics.object.describedObject.name** (string), required
@ -579,7 +579,7 @@ HorizontalPodAutoscalerStatus describes the current status of a horizontal pod a
- **currentMetrics.object.describedObject.kind** (string), required
Kind of the referent; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"
Kind of the referent; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
- **currentMetrics.object.describedObject.name** (string), required

View File

@ -282,7 +282,7 @@ JobStatus represents the current state of a Job.
The job controller creates pods with a finalizer. When a pod terminates (succeeded or failed), the controller does three steps to account for it in the job status: (1) Add the pod UID to the arrays in this field. (2) Remove the pod finalizer. (3) Remove the pod UID from the arrays while increasing the corresponding
counter.
This field is beta-level. The job controller only makes use of this field when the feature gate JobTrackingWithFinalizers is enabled (enabled by default). Old jobs might not be tracked using this field, in which case the field remains null.
Old jobs might not be tracked using this field, in which case the field remains null.
<a name="UncountedTerminatedPods"></a>
*UncountedTerminatedPods holds UIDs of Pods that have terminated but haven't been accounted in Job status counters.*

View File

@ -0,0 +1,772 @@
---
api_metadata:
apiVersion: "resource.k8s.io/v1alpha1"
import: "k8s.io/api/resource/v1alpha1"
kind: "PodScheduling"
content_type: "api_reference"
description: "PodScheduling objects hold information that is needed to schedule a Pod with ResourceClaims that use \"WaitForFirstConsumer\" allocation mode."
title: "PodScheduling v1alpha1"
weight: 14
auto_generated: true
---
<!--
The file is auto-generated from the Go source code of the component using a generic
[generator](https://github.com/kubernetes-sigs/reference-docs/). To learn how
to generate the reference documentation, please read
[Contributing to the reference documentation](/docs/contribute/generate-ref-docs/).
To update the reference content, please follow the
[Contributing upstream](/docs/contribute/generate-ref-docs/contribute-upstream/)
guide. You can file document formatting bugs against the
[reference-docs](https://github.com/kubernetes-sigs/reference-docs/) project.
-->
`apiVersion: resource.k8s.io/v1alpha1`
`import "k8s.io/api/resource/v1alpha1"`
## PodScheduling {#PodScheduling}
PodScheduling objects hold information that is needed to schedule a Pod with ResourceClaims that use "WaitForFirstConsumer" allocation mode.
This is an alpha type and requires enabling the DynamicResourceAllocation feature gate.
<hr>
- **apiVersion**: resource.k8s.io/v1alpha1
- **kind**: PodScheduling
- **metadata** (<a href="{{< ref "../common-definitions/object-meta#ObjectMeta" >}}">ObjectMeta</a>)
Standard object metadata
- **spec** (<a href="{{< ref "../workload-resources/pod-scheduling-v1alpha1#PodSchedulingSpec" >}}">PodSchedulingSpec</a>), required
Spec describes where resources for the Pod are needed.
- **status** (<a href="{{< ref "../workload-resources/pod-scheduling-v1alpha1#PodSchedulingStatus" >}}">PodSchedulingStatus</a>)
Status describes where resources for the Pod can be allocated.
## PodSchedulingSpec {#PodSchedulingSpec}
PodSchedulingSpec describes where resources for the Pod are needed.
<hr>
- **potentialNodes** ([]string)
*Set: unique values will be kept during a merge*
PotentialNodes lists nodes where the Pod might be able to run.
The size of this field is limited to 128. This is large enough for many clusters. Larger clusters may need more attempts to find a node that suits all pending resources. This may get increased in the future, but not reduced.
- **selectedNode** (string)
SelectedNode is the node for which allocation of ResourceClaims that are referenced by the Pod and that use "WaitForFirstConsumer" allocation is to be attempted.
## PodSchedulingStatus {#PodSchedulingStatus}
PodSchedulingStatus describes where resources for the Pod can be allocated.
<hr>
- **resourceClaims** ([]ResourceClaimSchedulingStatus)
*Map: unique values on key name will be kept during a merge*
ResourceClaims describes resource availability for each pod.spec.resourceClaim entry where the corresponding ResourceClaim uses "WaitForFirstConsumer" allocation mode.
<a name="ResourceClaimSchedulingStatus"></a>
*ResourceClaimSchedulingStatus contains information about one particular ResourceClaim with "WaitForFirstConsumer" allocation mode.*
- **resourceClaims.name** (string)
Name matches the pod.spec.resourceClaims[*].Name field.
- **resourceClaims.unsuitableNodes** ([]string)
*Set: unique values will be kept during a merge*
UnsuitableNodes lists nodes that the ResourceClaim cannot be allocated for.
The size of this field is limited to 128, the same as for PodSchedulingSpec.PotentialNodes. This may get increased in the future, but not reduced.
## PodSchedulingList {#PodSchedulingList}
PodSchedulingList is a collection of Pod scheduling objects.
<hr>
- **apiVersion**: resource.k8s.io/v1alpha1
- **kind**: PodSchedulingList
- **metadata** (<a href="{{< ref "../common-definitions/list-meta#ListMeta" >}}">ListMeta</a>)
Standard list metadata
- **items** ([]<a href="{{< ref "../workload-resources/pod-scheduling-v1alpha1#PodScheduling" >}}">PodScheduling</a>), required
Items is the list of PodScheduling objects.
## Operations {#Operations}
<hr>
### `get` read the specified PodScheduling
#### HTTP Request
GET /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/podschedulings/{name}
#### Parameters
- **name** (*in path*): string, required
name of the PodScheduling
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../workload-resources/pod-scheduling-v1alpha1#PodScheduling" >}}">PodScheduling</a>): OK
401: Unauthorized
### `get` read status of the specified PodScheduling
#### HTTP Request
GET /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/podschedulings/{name}/status
#### Parameters
- **name** (*in path*): string, required
name of the PodScheduling
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../workload-resources/pod-scheduling-v1alpha1#PodScheduling" >}}">PodScheduling</a>): OK
401: Unauthorized
### `list` list or watch objects of kind PodScheduling
#### HTTP Request
GET /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/podschedulings
#### Parameters
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **allowWatchBookmarks** (*in query*): boolean
<a href="{{< ref "../common-parameters/common-parameters#allowWatchBookmarks" >}}">allowWatchBookmarks</a>
- **continue** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#continue" >}}">continue</a>
- **fieldSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldSelector" >}}">fieldSelector</a>
- **labelSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#labelSelector" >}}">labelSelector</a>
- **limit** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#limit" >}}">limit</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
- **resourceVersion** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersion" >}}">resourceVersion</a>
- **resourceVersionMatch** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersionMatch" >}}">resourceVersionMatch</a>
- **timeoutSeconds** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#timeoutSeconds" >}}">timeoutSeconds</a>
- **watch** (*in query*): boolean
<a href="{{< ref "../common-parameters/common-parameters#watch" >}}">watch</a>
#### Response
200 (<a href="{{< ref "../workload-resources/pod-scheduling-v1alpha1#PodSchedulingList" >}}">PodSchedulingList</a>): OK
401: Unauthorized
### `list` list or watch objects of kind PodScheduling
#### HTTP Request
GET /apis/resource.k8s.io/v1alpha1/podschedulings
#### Parameters
- **allowWatchBookmarks** (*in query*): boolean
<a href="{{< ref "../common-parameters/common-parameters#allowWatchBookmarks" >}}">allowWatchBookmarks</a>
- **continue** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#continue" >}}">continue</a>
- **fieldSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldSelector" >}}">fieldSelector</a>
- **labelSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#labelSelector" >}}">labelSelector</a>
- **limit** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#limit" >}}">limit</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
- **resourceVersion** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersion" >}}">resourceVersion</a>
- **resourceVersionMatch** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersionMatch" >}}">resourceVersionMatch</a>
- **timeoutSeconds** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#timeoutSeconds" >}}">timeoutSeconds</a>
- **watch** (*in query*): boolean
<a href="{{< ref "../common-parameters/common-parameters#watch" >}}">watch</a>
#### Response
200 (<a href="{{< ref "../workload-resources/pod-scheduling-v1alpha1#PodSchedulingList" >}}">PodSchedulingList</a>): OK
401: Unauthorized
### `create` create a PodScheduling
#### HTTP Request
POST /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/podschedulings
#### Parameters
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **body**: <a href="{{< ref "../workload-resources/pod-scheduling-v1alpha1#PodScheduling" >}}">PodScheduling</a>, required
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldManager** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldManager" >}}">fieldManager</a>
- **fieldValidation** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldValidation" >}}">fieldValidation</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../workload-resources/pod-scheduling-v1alpha1#PodScheduling" >}}">PodScheduling</a>): OK
201 (<a href="{{< ref "../workload-resources/pod-scheduling-v1alpha1#PodScheduling" >}}">PodScheduling</a>): Created
202 (<a href="{{< ref "../workload-resources/pod-scheduling-v1alpha1#PodScheduling" >}}">PodScheduling</a>): Accepted
401: Unauthorized
### `update` replace the specified PodScheduling
#### HTTP Request
PUT /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/podschedulings/{name}
#### Parameters
- **name** (*in path*): string, required
name of the PodScheduling
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **body**: <a href="{{< ref "../workload-resources/pod-scheduling-v1alpha1#PodScheduling" >}}">PodScheduling</a>, required
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldManager** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldManager" >}}">fieldManager</a>
- **fieldValidation** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldValidation" >}}">fieldValidation</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../workload-resources/pod-scheduling-v1alpha1#PodScheduling" >}}">PodScheduling</a>): OK
201 (<a href="{{< ref "../workload-resources/pod-scheduling-v1alpha1#PodScheduling" >}}">PodScheduling</a>): Created
401: Unauthorized
### `update` replace status of the specified PodScheduling
#### HTTP Request
PUT /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/podschedulings/{name}/status
#### Parameters
- **name** (*in path*): string, required
name of the PodScheduling
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **body**: <a href="{{< ref "../workload-resources/pod-scheduling-v1alpha1#PodScheduling" >}}">PodScheduling</a>, required
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldManager** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldManager" >}}">fieldManager</a>
- **fieldValidation** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldValidation" >}}">fieldValidation</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../workload-resources/pod-scheduling-v1alpha1#PodScheduling" >}}">PodScheduling</a>): OK
201 (<a href="{{< ref "../workload-resources/pod-scheduling-v1alpha1#PodScheduling" >}}">PodScheduling</a>): Created
401: Unauthorized
### `patch` partially update the specified PodScheduling
#### HTTP Request
PATCH /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/podschedulings/{name}
#### Parameters
- **name** (*in path*): string, required
name of the PodScheduling
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **body**: <a href="{{< ref "../common-definitions/patch#Patch" >}}">Patch</a>, required
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldManager** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldManager" >}}">fieldManager</a>
- **fieldValidation** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldValidation" >}}">fieldValidation</a>
- **force** (*in query*): boolean
<a href="{{< ref "../common-parameters/common-parameters#force" >}}">force</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../workload-resources/pod-scheduling-v1alpha1#PodScheduling" >}}">PodScheduling</a>): OK
201 (<a href="{{< ref "../workload-resources/pod-scheduling-v1alpha1#PodScheduling" >}}">PodScheduling</a>): Created
401: Unauthorized
### `patch` partially update status of the specified PodScheduling
#### HTTP Request
PATCH /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/podschedulings/{name}/status
#### Parameters
- **name** (*in path*): string, required
name of the PodScheduling
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **body**: <a href="{{< ref "../common-definitions/patch#Patch" >}}">Patch</a>, required
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldManager** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldManager" >}}">fieldManager</a>
- **fieldValidation** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldValidation" >}}">fieldValidation</a>
- **force** (*in query*): boolean
<a href="{{< ref "../common-parameters/common-parameters#force" >}}">force</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../workload-resources/pod-scheduling-v1alpha1#PodScheduling" >}}">PodScheduling</a>): OK
201 (<a href="{{< ref "../workload-resources/pod-scheduling-v1alpha1#PodScheduling" >}}">PodScheduling</a>): Created
401: Unauthorized
### `delete` delete a PodScheduling
#### HTTP Request
DELETE /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/podschedulings/{name}
#### Parameters
- **name** (*in path*): string, required
name of the PodScheduling
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **body**: <a href="{{< ref "../common-definitions/delete-options#DeleteOptions" >}}">DeleteOptions</a>
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **gracePeriodSeconds** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#gracePeriodSeconds" >}}">gracePeriodSeconds</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
- **propagationPolicy** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#propagationPolicy" >}}">propagationPolicy</a>
#### Response
200 (<a href="{{< ref "../workload-resources/pod-scheduling-v1alpha1#PodScheduling" >}}">PodScheduling</a>): OK
202 (<a href="{{< ref "../workload-resources/pod-scheduling-v1alpha1#PodScheduling" >}}">PodScheduling</a>): Accepted
401: Unauthorized
### `deletecollection` delete collection of PodScheduling
#### HTTP Request
DELETE /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/podschedulings
#### Parameters
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **body**: <a href="{{< ref "../common-definitions/delete-options#DeleteOptions" >}}">DeleteOptions</a>
- **continue** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#continue" >}}">continue</a>
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldSelector" >}}">fieldSelector</a>
- **gracePeriodSeconds** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#gracePeriodSeconds" >}}">gracePeriodSeconds</a>
- **labelSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#labelSelector" >}}">labelSelector</a>
- **limit** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#limit" >}}">limit</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
- **propagationPolicy** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#propagationPolicy" >}}">propagationPolicy</a>
- **resourceVersion** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersion" >}}">resourceVersion</a>
- **resourceVersionMatch** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersionMatch" >}}">resourceVersionMatch</a>
- **timeoutSeconds** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#timeoutSeconds" >}}">timeoutSeconds</a>
#### Response
200 (<a href="{{< ref "../common-definitions/status#Status" >}}">Status</a>): OK
401: Unauthorized

View File

@ -248,13 +248,13 @@ PodSpec is a description of a pod.
NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector when calculating pod topology spread skew. Options are: - Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations. - Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations.
If this value is nil, the behavior is equivalent to the Honor policy. This is a alpha-level feature enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.
If this value is nil, the behavior is equivalent to the Honor policy. This is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.
- **topologySpreadConstraints.nodeTaintsPolicy** (string)
NodeTaintsPolicy indicates how we will treat node taints when calculating pod topology spread skew. Options are: - Honor: nodes without taints, along with tainted nodes for which the incoming pod has a toleration, are included. - Ignore: node taints are ignored. All nodes are included.
If this value is nil, the behavior is equivalent to the Ignore policy. This is a alpha-level feature enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.
If this value is nil, the behavior is equivalent to the Ignore policy. This is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.
- **overhead** (map[string]<a href="{{< ref "../common-definitions/quantity#Quantity" >}}">Quantity</a>)
@ -409,7 +409,7 @@ PodSpec is a description of a pod.
- **securityContext.supplementalGroups** ([]int64)
A list of groups applied to the first process run in each container, in addition to the container's primary GID. If unspecified, no groups will be added to any container. Note that this field cannot be set when spec.os.name is windows.
A list of groups applied to the first process run in each container, in addition to the container's primary GID, the fsGroup (if specified), and group memberships defined in the container image for the uid of the container process. If unspecified, no additional groups are added to any container. Note that group memberships defined in the container image for the uid of the container process are still effective, even if they are not included in this list. Note that this field cannot be set when spec.os.name is windows.
- **securityContext.fsGroup** (int64)
@ -510,6 +510,65 @@ PodSpec is a description of a pod.
Use the host's user namespace. Optional: Default to true. If set to true or not present, the pod will be run in the host user namespace, useful for when the pod needs a feature only available to the host user namespace, such as loading a kernel module with CAP_SYS_MODULE. When set to false, a new userns is created for the pod. Setting false is useful for mitigating container breakout vulnerabilities even allowing users to run their containers as root without actually having root privileges on the host. This field is alpha-level and is only honored by servers that enable the UserNamespacesSupport feature.
- **resourceClaims** ([]PodResourceClaim)
*Patch strategies: retainKeys, merge on key `name`*
*Map: unique values on key name will be kept during a merge*
ResourceClaims defines which ResourceClaims must be allocated and reserved before the Pod is allowed to start. The resources will be made available to those containers which consume them by name.
This is an alpha field and requires enabling the DynamicResourceAllocation feature gate.
This field is immutable.
<a name="PodResourceClaim"></a>
*PodResourceClaim references exactly one ResourceClaim through a ClaimSource. It adds a name to it that uniquely identifies the ResourceClaim inside the Pod. Containers that need access to the ResourceClaim reference it with this name.*
- **resourceClaims.name** (string), required
Name uniquely identifies this resource claim inside the pod. This must be a DNS_LABEL.
- **resourceClaims.source** (ClaimSource)
Source describes where to find the ResourceClaim.
<a name="ClaimSource"></a>
*ClaimSource describes a reference to a ResourceClaim.
Exactly one of these fields should be set. Consumers of this type must treat an empty object as if it has an unknown value.*
- **resourceClaims.source.resourceClaimName** (string)
ResourceClaimName is the name of a ResourceClaim object in the same namespace as this pod.
- **resourceClaims.source.resourceClaimTemplateName** (string)
ResourceClaimTemplateName is the name of a ResourceClaimTemplate object in the same namespace as this pod.
The template will be used to create a new ResourceClaim, which will be bound to this pod. When this pod is deleted, the ResourceClaim will also be deleted. The name of the ResourceClaim will be \<pod name>-\<resource name>, where \<resource name> is the PodResourceClaim.Name. Pod validation will reject the pod if the concatenated name is not valid for a ResourceClaim (e.g. too long).
An existing ResourceClaim with that name that is not owned by the pod will not be used for the pod to avoid using an unrelated resource by mistake. Scheduling and pod startup are then blocked until the unrelated ResourceClaim is removed.
This field is immutable and no changes will be made to the corresponding ResourceClaim by the control plane after creating the ResourceClaim.
- **schedulingGates** ([]PodSchedulingGate)
*Patch strategy: merge on key `name`*
*Map: unique values on key name will be kept during a merge*
SchedulingGates is an opaque list of values that if specified will block scheduling the pod. More info: https://git.k8s.io/enhancements/keps/sig-scheduling/3521-pod-scheduling-readiness.
This is an alpha-level feature enabled by PodSchedulingReadiness feature gate.
<a name="PodSchedulingGate"></a>
*PodSchedulingGate is associated to a Pod to guard its scheduling.*
- **schedulingGates.name** (string), required
Name of the scheduling gate. Each scheduling gate must have a unique name field.
### Deprecated
@ -776,6 +835,23 @@ A single application container that you want to run within a pod.
<a name="ResourceRequirements"></a>
*ResourceRequirements describes the compute resource requirements.*
- **resources.claims** ([]ResourceClaim)
*Set: unique values will be kept during a merge*
Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container.
This is an alpha field and requires enabling the DynamicResourceAllocation feature gate.
This field is immutable.
<a name="ResourceClaim"></a>
*ResourceClaim references one entry in PodSpec.ResourceClaims.*
- **resources.claims.name** (string), required
Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container.
- **resources.limits** (map[string]<a href="{{< ref "../common-definitions/quantity#Quantity" >}}">Quantity</a>)
Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
@ -1367,6 +1443,23 @@ To add an ephemeral container, use the ephemeralcontainers subresource of an exi
<a name="ResourceRequirements"></a>
*ResourceRequirements describes the compute resource requirements.*
- **resources.claims** ([]ResourceClaim)
*Set: unique values will be kept during a merge*
Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container.
This is an alpha field and requires enabling the DynamicResourceAllocation feature gate.
This field is immutable.
<a name="ResourceClaim"></a>
*ResourceClaim references one entry in PodSpec.ResourceClaims.*
- **resources.claims.name** (string), required
Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container.
- **resources.limits** (map[string]<a href="{{< ref "../common-definitions/quantity#Quantity" >}}">Quantity</a>)
Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

View File

@ -6,7 +6,7 @@ api_metadata:
content_type: "api_reference"
description: "PriorityClass defines mapping from a priority class name to the priority integer value."
title: "PriorityClass"
weight: 14
weight: 13
auto_generated: true
---

View File

@ -88,7 +88,7 @@ ReplicaSetStatus represents the current status of a ReplicaSet.
- **replicas** (int32), required
Replicas is the most recently oberved number of replicas. More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/#what-is-a-replicationcontroller
Replicas is the most recently observed number of replicas. More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/#what-is-a-replicationcontroller
- **availableReplicas** (int32)

View File

@ -88,7 +88,7 @@ ReplicationControllerStatus represents the current status of a replication contr
- **replicas** (int32), required
Replicas is the most recently oberved number of replicas. More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller#what-is-a-replicationcontroller
Replicas is the most recently observed number of replicas. More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller#what-is-a-replicationcontroller
- **availableReplicas** (int32)

View File

@ -0,0 +1,585 @@
---
api_metadata:
apiVersion: "resource.k8s.io/v1alpha1"
import: "k8s.io/api/resource/v1alpha1"
kind: "ResourceClaimTemplate"
content_type: "api_reference"
description: "ResourceClaimTemplate is used to produce ResourceClaim objects."
title: "ResourceClaimTemplate v1alpha1"
weight: 16
auto_generated: true
---
<!--
The file is auto-generated from the Go source code of the component using a generic
[generator](https://github.com/kubernetes-sigs/reference-docs/). To learn how
to generate the reference documentation, please read
[Contributing to the reference documentation](/docs/contribute/generate-ref-docs/).
To update the reference content, please follow the
[Contributing upstream](/docs/contribute/generate-ref-docs/contribute-upstream/)
guide. You can file document formatting bugs against the
[reference-docs](https://github.com/kubernetes-sigs/reference-docs/) project.
-->
`apiVersion: resource.k8s.io/v1alpha1`
`import "k8s.io/api/resource/v1alpha1"`
## ResourceClaimTemplate {#ResourceClaimTemplate}
ResourceClaimTemplate is used to produce ResourceClaim objects.
<hr>
- **apiVersion**: resource.k8s.io/v1alpha1
- **kind**: ResourceClaimTemplate
- **metadata** (<a href="{{< ref "../common-definitions/object-meta#ObjectMeta" >}}">ObjectMeta</a>)
Standard object metadata
- **spec** (<a href="{{< ref "../workload-resources/resource-claim-template-v1alpha1#ResourceClaimTemplateSpec" >}}">ResourceClaimTemplateSpec</a>), required
Describes the ResourceClaim that is to be generated.
This field is immutable. A ResourceClaim will get created by the control plane for a Pod when needed and then not get updated anymore.
## ResourceClaimTemplateSpec {#ResourceClaimTemplateSpec}
ResourceClaimTemplateSpec contains the metadata and fields for a ResourceClaim.
<hr>
- **spec** (<a href="{{< ref "../workload-resources/resource-claim-v1alpha1#ResourceClaimSpec" >}}">ResourceClaimSpec</a>), required
Spec for the ResourceClaim. The entire content is copied unchanged into the ResourceClaim that gets created from this template. The same fields as in a ResourceClaim are also valid here.
- **metadata** (<a href="{{< ref "../common-definitions/object-meta#ObjectMeta" >}}">ObjectMeta</a>)
ObjectMeta may contain labels and annotations that will be copied into the PVC when creating it. No other fields are allowed and will be rejected during validation.
## ResourceClaimTemplateList {#ResourceClaimTemplateList}
ResourceClaimTemplateList is a collection of claim templates.
<hr>
- **apiVersion**: resource.k8s.io/v1alpha1
- **kind**: ResourceClaimTemplateList
- **metadata** (<a href="{{< ref "../common-definitions/list-meta#ListMeta" >}}">ListMeta</a>)
Standard list metadata
- **items** ([]<a href="{{< ref "../workload-resources/resource-claim-template-v1alpha1#ResourceClaimTemplate" >}}">ResourceClaimTemplate</a>), required
Items is the list of resource claim templates.
## Operations {#Operations}
<hr>
### `get` read the specified ResourceClaimTemplate
#### HTTP Request
GET /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/resourceclaimtemplates/{name}
#### Parameters
- **name** (*in path*): string, required
name of the ResourceClaimTemplate
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../workload-resources/resource-claim-template-v1alpha1#ResourceClaimTemplate" >}}">ResourceClaimTemplate</a>): OK
401: Unauthorized
### `list` list or watch objects of kind ResourceClaimTemplate
#### HTTP Request
GET /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/resourceclaimtemplates
#### Parameters
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **allowWatchBookmarks** (*in query*): boolean
<a href="{{< ref "../common-parameters/common-parameters#allowWatchBookmarks" >}}">allowWatchBookmarks</a>
- **continue** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#continue" >}}">continue</a>
- **fieldSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldSelector" >}}">fieldSelector</a>
- **labelSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#labelSelector" >}}">labelSelector</a>
- **limit** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#limit" >}}">limit</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
- **resourceVersion** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersion" >}}">resourceVersion</a>
- **resourceVersionMatch** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersionMatch" >}}">resourceVersionMatch</a>
- **timeoutSeconds** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#timeoutSeconds" >}}">timeoutSeconds</a>
- **watch** (*in query*): boolean
<a href="{{< ref "../common-parameters/common-parameters#watch" >}}">watch</a>
#### Response
200 (<a href="{{< ref "../workload-resources/resource-claim-template-v1alpha1#ResourceClaimTemplateList" >}}">ResourceClaimTemplateList</a>): OK
401: Unauthorized
### `list` list or watch objects of kind ResourceClaimTemplate
#### HTTP Request
GET /apis/resource.k8s.io/v1alpha1/resourceclaimtemplates
#### Parameters
- **allowWatchBookmarks** (*in query*): boolean
<a href="{{< ref "../common-parameters/common-parameters#allowWatchBookmarks" >}}">allowWatchBookmarks</a>
- **continue** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#continue" >}}">continue</a>
- **fieldSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldSelector" >}}">fieldSelector</a>
- **labelSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#labelSelector" >}}">labelSelector</a>
- **limit** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#limit" >}}">limit</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
- **resourceVersion** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersion" >}}">resourceVersion</a>
- **resourceVersionMatch** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersionMatch" >}}">resourceVersionMatch</a>
- **timeoutSeconds** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#timeoutSeconds" >}}">timeoutSeconds</a>
- **watch** (*in query*): boolean
<a href="{{< ref "../common-parameters/common-parameters#watch" >}}">watch</a>
#### Response
200 (<a href="{{< ref "../workload-resources/resource-claim-template-v1alpha1#ResourceClaimTemplateList" >}}">ResourceClaimTemplateList</a>): OK
401: Unauthorized
### `create` create a ResourceClaimTemplate
#### HTTP Request
POST /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/resourceclaimtemplates
#### Parameters
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **body**: <a href="{{< ref "../workload-resources/resource-claim-template-v1alpha1#ResourceClaimTemplate" >}}">ResourceClaimTemplate</a>, required
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldManager** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldManager" >}}">fieldManager</a>
- **fieldValidation** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldValidation" >}}">fieldValidation</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../workload-resources/resource-claim-template-v1alpha1#ResourceClaimTemplate" >}}">ResourceClaimTemplate</a>): OK
201 (<a href="{{< ref "../workload-resources/resource-claim-template-v1alpha1#ResourceClaimTemplate" >}}">ResourceClaimTemplate</a>): Created
202 (<a href="{{< ref "../workload-resources/resource-claim-template-v1alpha1#ResourceClaimTemplate" >}}">ResourceClaimTemplate</a>): Accepted
401: Unauthorized
### `update` replace the specified ResourceClaimTemplate
#### HTTP Request
PUT /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/resourceclaimtemplates/{name}
#### Parameters
- **name** (*in path*): string, required
name of the ResourceClaimTemplate
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **body**: <a href="{{< ref "../workload-resources/resource-claim-template-v1alpha1#ResourceClaimTemplate" >}}">ResourceClaimTemplate</a>, required
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldManager** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldManager" >}}">fieldManager</a>
- **fieldValidation** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldValidation" >}}">fieldValidation</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../workload-resources/resource-claim-template-v1alpha1#ResourceClaimTemplate" >}}">ResourceClaimTemplate</a>): OK
201 (<a href="{{< ref "../workload-resources/resource-claim-template-v1alpha1#ResourceClaimTemplate" >}}">ResourceClaimTemplate</a>): Created
401: Unauthorized
### `patch` partially update the specified ResourceClaimTemplate
#### HTTP Request
PATCH /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/resourceclaimtemplates/{name}
#### Parameters
- **name** (*in path*): string, required
name of the ResourceClaimTemplate
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **body**: <a href="{{< ref "../common-definitions/patch#Patch" >}}">Patch</a>, required
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldManager** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldManager" >}}">fieldManager</a>
- **fieldValidation** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldValidation" >}}">fieldValidation</a>
- **force** (*in query*): boolean
<a href="{{< ref "../common-parameters/common-parameters#force" >}}">force</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../workload-resources/resource-claim-template-v1alpha1#ResourceClaimTemplate" >}}">ResourceClaimTemplate</a>): OK
201 (<a href="{{< ref "../workload-resources/resource-claim-template-v1alpha1#ResourceClaimTemplate" >}}">ResourceClaimTemplate</a>): Created
401: Unauthorized
### `delete` delete a ResourceClaimTemplate
#### HTTP Request
DELETE /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/resourceclaimtemplates/{name}
#### Parameters
- **name** (*in path*): string, required
name of the ResourceClaimTemplate
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **body**: <a href="{{< ref "../common-definitions/delete-options#DeleteOptions" >}}">DeleteOptions</a>
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **gracePeriodSeconds** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#gracePeriodSeconds" >}}">gracePeriodSeconds</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
- **propagationPolicy** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#propagationPolicy" >}}">propagationPolicy</a>
#### Response
200 (<a href="{{< ref "../workload-resources/resource-claim-template-v1alpha1#ResourceClaimTemplate" >}}">ResourceClaimTemplate</a>): OK
202 (<a href="{{< ref "../workload-resources/resource-claim-template-v1alpha1#ResourceClaimTemplate" >}}">ResourceClaimTemplate</a>): Accepted
401: Unauthorized
### `deletecollection` delete collection of ResourceClaimTemplate
#### HTTP Request
DELETE /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/resourceclaimtemplates
#### Parameters
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **body**: <a href="{{< ref "../common-definitions/delete-options#DeleteOptions" >}}">DeleteOptions</a>
- **continue** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#continue" >}}">continue</a>
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldSelector" >}}">fieldSelector</a>
- **gracePeriodSeconds** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#gracePeriodSeconds" >}}">gracePeriodSeconds</a>
- **labelSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#labelSelector" >}}">labelSelector</a>
- **limit** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#limit" >}}">limit</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
- **propagationPolicy** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#propagationPolicy" >}}">propagationPolicy</a>
- **resourceVersion** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersion" >}}">resourceVersion</a>
- **resourceVersionMatch** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersionMatch" >}}">resourceVersionMatch</a>
- **timeoutSeconds** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#timeoutSeconds" >}}">timeoutSeconds</a>
#### Response
200 (<a href="{{< ref "../common-definitions/status#Status" >}}">Status</a>): OK
401: Unauthorized

View File

@ -0,0 +1,848 @@
---
api_metadata:
apiVersion: "resource.k8s.io/v1alpha1"
import: "k8s.io/api/resource/v1alpha1"
kind: "ResourceClaim"
content_type: "api_reference"
description: "ResourceClaim describes which resources are needed by a resource consumer."
title: "ResourceClaim v1alpha1"
weight: 15
auto_generated: true
---
<!--
The file is auto-generated from the Go source code of the component using a generic
[generator](https://github.com/kubernetes-sigs/reference-docs/). To learn how
to generate the reference documentation, please read
[Contributing to the reference documentation](/docs/contribute/generate-ref-docs/).
To update the reference content, please follow the
[Contributing upstream](/docs/contribute/generate-ref-docs/contribute-upstream/)
guide. You can file document formatting bugs against the
[reference-docs](https://github.com/kubernetes-sigs/reference-docs/) project.
-->
`apiVersion: resource.k8s.io/v1alpha1`
`import "k8s.io/api/resource/v1alpha1"`
## ResourceClaim {#ResourceClaim}
ResourceClaim describes which resources are needed by a resource consumer. Its status tracks whether the resource has been allocated and what the resulting attributes are.
This is an alpha type and requires enabling the DynamicResourceAllocation feature gate.
<hr>
- **apiVersion**: resource.k8s.io/v1alpha1
- **kind**: ResourceClaim
- **metadata** (<a href="{{< ref "../common-definitions/object-meta#ObjectMeta" >}}">ObjectMeta</a>)
Standard object metadata
- **spec** (<a href="{{< ref "../workload-resources/resource-claim-v1alpha1#ResourceClaimSpec" >}}">ResourceClaimSpec</a>), required
Spec describes the desired attributes of a resource that then needs to be allocated. It can only be set once when creating the ResourceClaim.
- **status** (<a href="{{< ref "../workload-resources/resource-claim-v1alpha1#ResourceClaimStatus" >}}">ResourceClaimStatus</a>)
Status describes whether the resource is available and with which attributes.
## ResourceClaimSpec {#ResourceClaimSpec}
ResourceClaimSpec defines how a resource is to be allocated.
<hr>
- **resourceClassName** (string), required
ResourceClassName references the driver and additional parameters via the name of a ResourceClass that was created as part of the driver deployment.
- **allocationMode** (string)
Allocation can start immediately or when a Pod wants to use the resource. "WaitForFirstConsumer" is the default.
- **parametersRef** (ResourceClaimParametersReference)
ParametersRef references a separate object with arbitrary parameters that will be used by the driver when allocating a resource for the claim.
The object must be in the same namespace as the ResourceClaim.
<a name="ResourceClaimParametersReference"></a>
*ResourceClaimParametersReference contains enough information to let you locate the parameters for a ResourceClaim. The object must be in the same namespace as the ResourceClaim.*
- **parametersRef.kind** (string), required
Kind is the type of resource being referenced. This is the same value as in the parameter object's metadata, for example "ConfigMap".
- **parametersRef.name** (string), required
Name is the name of resource being referenced.
- **parametersRef.apiGroup** (string)
APIGroup is the group for the resource being referenced. It is empty for the core API. This matches the group in the APIVersion that is used when creating the resources.
## ResourceClaimStatus {#ResourceClaimStatus}
ResourceClaimStatus tracks whether the resource has been allocated and what the resulting attributes are.
<hr>
- **allocation** (AllocationResult)
Allocation is set by the resource driver once a resource has been allocated successfully. If this is not specified, the resource is not yet allocated.
<a name="AllocationResult"></a>
*AllocationResult contains attributed of an allocated resource.*
- **allocation.availableOnNodes** (NodeSelector)
This field will get set by the resource driver after it has allocated the resource driver to inform the scheduler where it can schedule Pods using the ResourceClaim.
Setting this field is optional. If null, the resource is available everywhere.
<a name="NodeSelector"></a>
*A node selector represents the union of the results of one or more label queries over a set of nodes; that is, it represents the OR of the selectors represented by the node selector terms.*
- **allocation.availableOnNodes.nodeSelectorTerms** ([]NodeSelectorTerm), required
Required. A list of node selector terms. The terms are ORed.
<a name="NodeSelectorTerm"></a>
*A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.*
- **allocation.availableOnNodes.nodeSelectorTerms.matchExpressions** ([]<a href="{{< ref "../common-definitions/node-selector-requirement#NodeSelectorRequirement" >}}">NodeSelectorRequirement</a>)
A list of node selector requirements by node's labels.
- **allocation.availableOnNodes.nodeSelectorTerms.matchFields** ([]<a href="{{< ref "../common-definitions/node-selector-requirement#NodeSelectorRequirement" >}}">NodeSelectorRequirement</a>)
A list of node selector requirements by node's fields.
- **allocation.resourceHandle** (string)
ResourceHandle contains arbitrary data returned by the driver after a successful allocation. This is opaque for Kubernetes. Driver documentation may explain to users how to interpret this data if needed.
The maximum size of this field is 16KiB. This may get increased in the future, but not reduced.
- **allocation.shareable** (boolean)
Shareable determines whether the resource supports more than one consumer at a time.
- **deallocationRequested** (boolean)
DeallocationRequested indicates that a ResourceClaim is to be deallocated.
The driver then must deallocate this claim and reset the field together with clearing the Allocation field.
While DeallocationRequested is set, no new consumers may be added to ReservedFor.
- **driverName** (string)
DriverName is a copy of the driver name from the ResourceClass at the time when allocation started.
- **reservedFor** ([]ResourceClaimConsumerReference)
*Set: unique values will be kept during a merge*
ReservedFor indicates which entities are currently allowed to use the claim. A Pod which references a ResourceClaim which is not reserved for that Pod will not be started.
There can be at most 32 such reservations. This may get increased in the future, but not reduced.
<a name="ResourceClaimConsumerReference"></a>
*ResourceClaimConsumerReference contains enough information to let you locate the consumer of a ResourceClaim. The user must be a resource in the same namespace as the ResourceClaim.*
- **reservedFor.name** (string), required
Name is the name of resource being referenced.
- **reservedFor.resource** (string), required
Resource is the type of resource being referenced, for example "pods".
- **reservedFor.uid** (string), required
UID identifies exactly one incarnation of the resource.
- **reservedFor.apiGroup** (string)
APIGroup is the group for the resource being referenced. It is empty for the core API. This matches the group in the APIVersion that is used when creating the resources.
## ResourceClaimList {#ResourceClaimList}
ResourceClaimList is a collection of claims.
<hr>
- **apiVersion**: resource.k8s.io/v1alpha1
- **kind**: ResourceClaimList
- **metadata** (<a href="{{< ref "../common-definitions/list-meta#ListMeta" >}}">ListMeta</a>)
Standard list metadata
- **items** ([]<a href="{{< ref "../workload-resources/resource-claim-v1alpha1#ResourceClaim" >}}">ResourceClaim</a>), required
Items is the list of resource claims.
## Operations {#Operations}
<hr>
### `get` read the specified ResourceClaim
#### HTTP Request
GET /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/resourceclaims/{name}
#### Parameters
- **name** (*in path*): string, required
name of the ResourceClaim
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../workload-resources/resource-claim-v1alpha1#ResourceClaim" >}}">ResourceClaim</a>): OK
401: Unauthorized
### `get` read status of the specified ResourceClaim
#### HTTP Request
GET /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/resourceclaims/{name}/status
#### Parameters
- **name** (*in path*): string, required
name of the ResourceClaim
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../workload-resources/resource-claim-v1alpha1#ResourceClaim" >}}">ResourceClaim</a>): OK
401: Unauthorized
### `list` list or watch objects of kind ResourceClaim
#### HTTP Request
GET /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/resourceclaims
#### Parameters
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **allowWatchBookmarks** (*in query*): boolean
<a href="{{< ref "../common-parameters/common-parameters#allowWatchBookmarks" >}}">allowWatchBookmarks</a>
- **continue** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#continue" >}}">continue</a>
- **fieldSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldSelector" >}}">fieldSelector</a>
- **labelSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#labelSelector" >}}">labelSelector</a>
- **limit** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#limit" >}}">limit</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
- **resourceVersion** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersion" >}}">resourceVersion</a>
- **resourceVersionMatch** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersionMatch" >}}">resourceVersionMatch</a>
- **timeoutSeconds** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#timeoutSeconds" >}}">timeoutSeconds</a>
- **watch** (*in query*): boolean
<a href="{{< ref "../common-parameters/common-parameters#watch" >}}">watch</a>
#### Response
200 (<a href="{{< ref "../workload-resources/resource-claim-v1alpha1#ResourceClaimList" >}}">ResourceClaimList</a>): OK
401: Unauthorized
### `list` list or watch objects of kind ResourceClaim
#### HTTP Request
GET /apis/resource.k8s.io/v1alpha1/resourceclaims
#### Parameters
- **allowWatchBookmarks** (*in query*): boolean
<a href="{{< ref "../common-parameters/common-parameters#allowWatchBookmarks" >}}">allowWatchBookmarks</a>
- **continue** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#continue" >}}">continue</a>
- **fieldSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldSelector" >}}">fieldSelector</a>
- **labelSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#labelSelector" >}}">labelSelector</a>
- **limit** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#limit" >}}">limit</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
- **resourceVersion** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersion" >}}">resourceVersion</a>
- **resourceVersionMatch** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersionMatch" >}}">resourceVersionMatch</a>
- **timeoutSeconds** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#timeoutSeconds" >}}">timeoutSeconds</a>
- **watch** (*in query*): boolean
<a href="{{< ref "../common-parameters/common-parameters#watch" >}}">watch</a>
#### Response
200 (<a href="{{< ref "../workload-resources/resource-claim-v1alpha1#ResourceClaimList" >}}">ResourceClaimList</a>): OK
401: Unauthorized
### `create` create a ResourceClaim
#### HTTP Request
POST /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/resourceclaims
#### Parameters
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **body**: <a href="{{< ref "../workload-resources/resource-claim-v1alpha1#ResourceClaim" >}}">ResourceClaim</a>, required
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldManager** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldManager" >}}">fieldManager</a>
- **fieldValidation** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldValidation" >}}">fieldValidation</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../workload-resources/resource-claim-v1alpha1#ResourceClaim" >}}">ResourceClaim</a>): OK
201 (<a href="{{< ref "../workload-resources/resource-claim-v1alpha1#ResourceClaim" >}}">ResourceClaim</a>): Created
202 (<a href="{{< ref "../workload-resources/resource-claim-v1alpha1#ResourceClaim" >}}">ResourceClaim</a>): Accepted
401: Unauthorized
### `update` replace the specified ResourceClaim
#### HTTP Request
PUT /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/resourceclaims/{name}
#### Parameters
- **name** (*in path*): string, required
name of the ResourceClaim
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **body**: <a href="{{< ref "../workload-resources/resource-claim-v1alpha1#ResourceClaim" >}}">ResourceClaim</a>, required
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldManager** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldManager" >}}">fieldManager</a>
- **fieldValidation** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldValidation" >}}">fieldValidation</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../workload-resources/resource-claim-v1alpha1#ResourceClaim" >}}">ResourceClaim</a>): OK
201 (<a href="{{< ref "../workload-resources/resource-claim-v1alpha1#ResourceClaim" >}}">ResourceClaim</a>): Created
401: Unauthorized
### `update` replace status of the specified ResourceClaim
#### HTTP Request
PUT /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/resourceclaims/{name}/status
#### Parameters
- **name** (*in path*): string, required
name of the ResourceClaim
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **body**: <a href="{{< ref "../workload-resources/resource-claim-v1alpha1#ResourceClaim" >}}">ResourceClaim</a>, required
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldManager** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldManager" >}}">fieldManager</a>
- **fieldValidation** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldValidation" >}}">fieldValidation</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../workload-resources/resource-claim-v1alpha1#ResourceClaim" >}}">ResourceClaim</a>): OK
201 (<a href="{{< ref "../workload-resources/resource-claim-v1alpha1#ResourceClaim" >}}">ResourceClaim</a>): Created
401: Unauthorized
### `patch` partially update the specified ResourceClaim
#### HTTP Request
PATCH /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/resourceclaims/{name}
#### Parameters
- **name** (*in path*): string, required
name of the ResourceClaim
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **body**: <a href="{{< ref "../common-definitions/patch#Patch" >}}">Patch</a>, required
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldManager** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldManager" >}}">fieldManager</a>
- **fieldValidation** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldValidation" >}}">fieldValidation</a>
- **force** (*in query*): boolean
<a href="{{< ref "../common-parameters/common-parameters#force" >}}">force</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../workload-resources/resource-claim-v1alpha1#ResourceClaim" >}}">ResourceClaim</a>): OK
201 (<a href="{{< ref "../workload-resources/resource-claim-v1alpha1#ResourceClaim" >}}">ResourceClaim</a>): Created
401: Unauthorized
### `patch` partially update status of the specified ResourceClaim
#### HTTP Request
PATCH /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/resourceclaims/{name}/status
#### Parameters
- **name** (*in path*): string, required
name of the ResourceClaim
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **body**: <a href="{{< ref "../common-definitions/patch#Patch" >}}">Patch</a>, required
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldManager** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldManager" >}}">fieldManager</a>
- **fieldValidation** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldValidation" >}}">fieldValidation</a>
- **force** (*in query*): boolean
<a href="{{< ref "../common-parameters/common-parameters#force" >}}">force</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../workload-resources/resource-claim-v1alpha1#ResourceClaim" >}}">ResourceClaim</a>): OK
201 (<a href="{{< ref "../workload-resources/resource-claim-v1alpha1#ResourceClaim" >}}">ResourceClaim</a>): Created
401: Unauthorized
### `delete` delete a ResourceClaim
#### HTTP Request
DELETE /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/resourceclaims/{name}
#### Parameters
- **name** (*in path*): string, required
name of the ResourceClaim
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **body**: <a href="{{< ref "../common-definitions/delete-options#DeleteOptions" >}}">DeleteOptions</a>
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **gracePeriodSeconds** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#gracePeriodSeconds" >}}">gracePeriodSeconds</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
- **propagationPolicy** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#propagationPolicy" >}}">propagationPolicy</a>
#### Response
200 (<a href="{{< ref "../workload-resources/resource-claim-v1alpha1#ResourceClaim" >}}">ResourceClaim</a>): OK
202 (<a href="{{< ref "../workload-resources/resource-claim-v1alpha1#ResourceClaim" >}}">ResourceClaim</a>): Accepted
401: Unauthorized
### `deletecollection` delete collection of ResourceClaim
#### HTTP Request
DELETE /apis/resource.k8s.io/v1alpha1/namespaces/{namespace}/resourceclaims
#### Parameters
- **namespace** (*in path*): string, required
<a href="{{< ref "../common-parameters/common-parameters#namespace" >}}">namespace</a>
- **body**: <a href="{{< ref "../common-definitions/delete-options#DeleteOptions" >}}">DeleteOptions</a>
- **continue** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#continue" >}}">continue</a>
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldSelector" >}}">fieldSelector</a>
- **gracePeriodSeconds** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#gracePeriodSeconds" >}}">gracePeriodSeconds</a>
- **labelSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#labelSelector" >}}">labelSelector</a>
- **limit** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#limit" >}}">limit</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
- **propagationPolicy** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#propagationPolicy" >}}">propagationPolicy</a>
- **resourceVersion** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersion" >}}">resourceVersion</a>
- **resourceVersionMatch** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersionMatch" >}}">resourceVersionMatch</a>
- **timeoutSeconds** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#timeoutSeconds" >}}">timeoutSeconds</a>
#### Response
200 (<a href="{{< ref "../common-definitions/status#Status" >}}">Status</a>): OK
401: Unauthorized

View File

@ -0,0 +1,513 @@
---
api_metadata:
apiVersion: "resource.k8s.io/v1alpha1"
import: "k8s.io/api/resource/v1alpha1"
kind: "ResourceClass"
content_type: "api_reference"
description: "ResourceClass is used by administrators to influence how resources are allocated."
title: "ResourceClass v1alpha1"
weight: 17
auto_generated: true
---
<!--
The file is auto-generated from the Go source code of the component using a generic
[generator](https://github.com/kubernetes-sigs/reference-docs/). To learn how
to generate the reference documentation, please read
[Contributing to the reference documentation](/docs/contribute/generate-ref-docs/).
To update the reference content, please follow the
[Contributing upstream](/docs/contribute/generate-ref-docs/contribute-upstream/)
guide. You can file document formatting bugs against the
[reference-docs](https://github.com/kubernetes-sigs/reference-docs/) project.
-->
`apiVersion: resource.k8s.io/v1alpha1`
`import "k8s.io/api/resource/v1alpha1"`
## ResourceClass {#ResourceClass}
ResourceClass is used by administrators to influence how resources are allocated.
This is an alpha type and requires enabling the DynamicResourceAllocation feature gate.
<hr>
- **apiVersion**: resource.k8s.io/v1alpha1
- **kind**: ResourceClass
- **metadata** (<a href="{{< ref "../common-definitions/object-meta#ObjectMeta" >}}">ObjectMeta</a>)
Standard object metadata
- **driverName** (string), required
DriverName defines the name of the dynamic resource driver that is used for allocation of a ResourceClaim that uses this class.
Resource drivers have a unique name in forward domain order (acme.example.com).
- **parametersRef** (ResourceClassParametersReference)
ParametersRef references an arbitrary separate object that may hold parameters that will be used by the driver when allocating a resource that uses this class. A dynamic resource driver can distinguish between parameters stored here and and those stored in ResourceClaimSpec.
<a name="ResourceClassParametersReference"></a>
*ResourceClassParametersReference contains enough information to let you locate the parameters for a ResourceClass.*
- **parametersRef.kind** (string), required
Kind is the type of resource being referenced. This is the same value as in the parameter object's metadata.
- **parametersRef.name** (string), required
Name is the name of resource being referenced.
- **parametersRef.apiGroup** (string)
APIGroup is the group for the resource being referenced. It is empty for the core API. This matches the group in the APIVersion that is used when creating the resources.
- **parametersRef.namespace** (string)
Namespace that contains the referenced resource. Must be empty for cluster-scoped resources and non-empty for namespaced resources.
- **suitableNodes** (NodeSelector)
Only nodes matching the selector will be considered by the scheduler when trying to find a Node that fits a Pod when that Pod uses a ResourceClaim that has not been allocated yet.
Setting this field is optional. If null, all nodes are candidates.
<a name="NodeSelector"></a>
*A node selector represents the union of the results of one or more label queries over a set of nodes; that is, it represents the OR of the selectors represented by the node selector terms.*
- **suitableNodes.nodeSelectorTerms** ([]NodeSelectorTerm), required
Required. A list of node selector terms. The terms are ORed.
<a name="NodeSelectorTerm"></a>
*A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.*
- **suitableNodes.nodeSelectorTerms.matchExpressions** ([]<a href="{{< ref "../common-definitions/node-selector-requirement#NodeSelectorRequirement" >}}">NodeSelectorRequirement</a>)
A list of node selector requirements by node's labels.
- **suitableNodes.nodeSelectorTerms.matchFields** ([]<a href="{{< ref "../common-definitions/node-selector-requirement#NodeSelectorRequirement" >}}">NodeSelectorRequirement</a>)
A list of node selector requirements by node's fields.
## ResourceClassList {#ResourceClassList}
ResourceClassList is a collection of classes.
<hr>
- **apiVersion**: resource.k8s.io/v1alpha1
- **kind**: ResourceClassList
- **metadata** (<a href="{{< ref "../common-definitions/list-meta#ListMeta" >}}">ListMeta</a>)
Standard list metadata
- **items** ([]<a href="{{< ref "../workload-resources/resource-class-v1alpha1#ResourceClass" >}}">ResourceClass</a>), required
Items is the list of resource classes.
## Operations {#Operations}
<hr>
### `get` read the specified ResourceClass
#### HTTP Request
GET /apis/resource.k8s.io/v1alpha1/resourceclasses/{name}
#### Parameters
- **name** (*in path*): string, required
name of the ResourceClass
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../workload-resources/resource-class-v1alpha1#ResourceClass" >}}">ResourceClass</a>): OK
401: Unauthorized
### `list` list or watch objects of kind ResourceClass
#### HTTP Request
GET /apis/resource.k8s.io/v1alpha1/resourceclasses
#### Parameters
- **allowWatchBookmarks** (*in query*): boolean
<a href="{{< ref "../common-parameters/common-parameters#allowWatchBookmarks" >}}">allowWatchBookmarks</a>
- **continue** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#continue" >}}">continue</a>
- **fieldSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldSelector" >}}">fieldSelector</a>
- **labelSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#labelSelector" >}}">labelSelector</a>
- **limit** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#limit" >}}">limit</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
- **resourceVersion** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersion" >}}">resourceVersion</a>
- **resourceVersionMatch** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersionMatch" >}}">resourceVersionMatch</a>
- **timeoutSeconds** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#timeoutSeconds" >}}">timeoutSeconds</a>
- **watch** (*in query*): boolean
<a href="{{< ref "../common-parameters/common-parameters#watch" >}}">watch</a>
#### Response
200 (<a href="{{< ref "../workload-resources/resource-class-v1alpha1#ResourceClassList" >}}">ResourceClassList</a>): OK
401: Unauthorized
### `create` create a ResourceClass
#### HTTP Request
POST /apis/resource.k8s.io/v1alpha1/resourceclasses
#### Parameters
- **body**: <a href="{{< ref "../workload-resources/resource-class-v1alpha1#ResourceClass" >}}">ResourceClass</a>, required
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldManager** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldManager" >}}">fieldManager</a>
- **fieldValidation** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldValidation" >}}">fieldValidation</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../workload-resources/resource-class-v1alpha1#ResourceClass" >}}">ResourceClass</a>): OK
201 (<a href="{{< ref "../workload-resources/resource-class-v1alpha1#ResourceClass" >}}">ResourceClass</a>): Created
202 (<a href="{{< ref "../workload-resources/resource-class-v1alpha1#ResourceClass" >}}">ResourceClass</a>): Accepted
401: Unauthorized
### `update` replace the specified ResourceClass
#### HTTP Request
PUT /apis/resource.k8s.io/v1alpha1/resourceclasses/{name}
#### Parameters
- **name** (*in path*): string, required
name of the ResourceClass
- **body**: <a href="{{< ref "../workload-resources/resource-class-v1alpha1#ResourceClass" >}}">ResourceClass</a>, required
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldManager** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldManager" >}}">fieldManager</a>
- **fieldValidation** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldValidation" >}}">fieldValidation</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../workload-resources/resource-class-v1alpha1#ResourceClass" >}}">ResourceClass</a>): OK
201 (<a href="{{< ref "../workload-resources/resource-class-v1alpha1#ResourceClass" >}}">ResourceClass</a>): Created
401: Unauthorized
### `patch` partially update the specified ResourceClass
#### HTTP Request
PATCH /apis/resource.k8s.io/v1alpha1/resourceclasses/{name}
#### Parameters
- **name** (*in path*): string, required
name of the ResourceClass
- **body**: <a href="{{< ref "../common-definitions/patch#Patch" >}}">Patch</a>, required
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldManager** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldManager" >}}">fieldManager</a>
- **fieldValidation** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldValidation" >}}">fieldValidation</a>
- **force** (*in query*): boolean
<a href="{{< ref "../common-parameters/common-parameters#force" >}}">force</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
#### Response
200 (<a href="{{< ref "../workload-resources/resource-class-v1alpha1#ResourceClass" >}}">ResourceClass</a>): OK
201 (<a href="{{< ref "../workload-resources/resource-class-v1alpha1#ResourceClass" >}}">ResourceClass</a>): Created
401: Unauthorized
### `delete` delete a ResourceClass
#### HTTP Request
DELETE /apis/resource.k8s.io/v1alpha1/resourceclasses/{name}
#### Parameters
- **name** (*in path*): string, required
name of the ResourceClass
- **body**: <a href="{{< ref "../common-definitions/delete-options#DeleteOptions" >}}">DeleteOptions</a>
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **gracePeriodSeconds** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#gracePeriodSeconds" >}}">gracePeriodSeconds</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
- **propagationPolicy** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#propagationPolicy" >}}">propagationPolicy</a>
#### Response
200 (<a href="{{< ref "../workload-resources/resource-class-v1alpha1#ResourceClass" >}}">ResourceClass</a>): OK
202 (<a href="{{< ref "../workload-resources/resource-class-v1alpha1#ResourceClass" >}}">ResourceClass</a>): Accepted
401: Unauthorized
### `deletecollection` delete collection of ResourceClass
#### HTTP Request
DELETE /apis/resource.k8s.io/v1alpha1/resourceclasses
#### Parameters
- **body**: <a href="{{< ref "../common-definitions/delete-options#DeleteOptions" >}}">DeleteOptions</a>
- **continue** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#continue" >}}">continue</a>
- **dryRun** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#dryRun" >}}">dryRun</a>
- **fieldSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#fieldSelector" >}}">fieldSelector</a>
- **gracePeriodSeconds** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#gracePeriodSeconds" >}}">gracePeriodSeconds</a>
- **labelSelector** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#labelSelector" >}}">labelSelector</a>
- **limit** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#limit" >}}">limit</a>
- **pretty** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#pretty" >}}">pretty</a>
- **propagationPolicy** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#propagationPolicy" >}}">propagationPolicy</a>
- **resourceVersion** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersion" >}}">resourceVersion</a>
- **resourceVersionMatch** (*in query*): string
<a href="{{< ref "../common-parameters/common-parameters#resourceVersionMatch" >}}">resourceVersionMatch</a>
- **timeoutSeconds** (*in query*): integer
<a href="{{< ref "../common-parameters/common-parameters#timeoutSeconds" >}}">timeoutSeconds</a>
#### Response
200 (<a href="{{< ref "../common-definitions/status#Status" >}}">Status</a>): OK
401: Unauthorized

View File

@ -74,7 +74,7 @@ A StatefulSetSpec is the specification of a StatefulSet.
- **template** (<a href="{{< ref "../workload-resources/pod-template-v1#PodTemplateSpec" >}}">PodTemplateSpec</a>), required
template is the object that describes the pod that will be created if insufficient replicas are detected. Each pod stamped out by the StatefulSet will fulfill this Template, but have a unique identity from the rest of the StatefulSet.
template is the object that describes the pod that will be created if insufficient replicas are detected. Each pod stamped out by the StatefulSet will fulfill this Template, but have a unique identity from the rest of the StatefulSet. Each pod will be named with the format \<statefulsetname>-\<podindex>. For example, a pod in a StatefulSet named "web" with index number "3" would be named "web-3".
- **replicas** (int32)
@ -144,6 +144,20 @@ A StatefulSetSpec is the specification of a StatefulSet.
WhenScaled specifies what happens to PVCs created from StatefulSet VolumeClaimTemplates when the StatefulSet is scaled down. The default policy of `Retain` causes PVCs to not be affected by a scaledown. The `Delete` policy causes the associated PVCs for any excess pods above the replica count to be deleted.
- **ordinals** (StatefulSetOrdinals)
ordinals controls the numbering of replica indices in a StatefulSet. The default ordinals behavior assigns a "0" index to the first replica and increments the index by one for each additional replica requested. Using the ordinals field requires the StatefulSetStartOrdinal feature gate to be enabled, which is alpha.
<a name="StatefulSetOrdinals"></a>
*StatefulSetOrdinals describes the policy used for replica ordinal assignment in this StatefulSet.*
- **ordinals.start** (int32)
start is the number representing the first replica's index. It may be used to number replicas from an alternate index (eg: 1-indexed) over the default 0-indexed names, or to orchestrate progressive movement of replicas from one StatefulSet to another. If set, replica indices will be in the range:
[.spec.ordinals.start, .spec.ordinals.start + .spec.replicas).
If unset, defaults to 0. Replica indices will be in the range:
[0, .spec.replicas).