From 890b36a496fb93c68efedc06385293ee35326df7 Mon Sep 17 00:00:00 2001 From: Qiming Teng Date: Sat, 24 Aug 2024 22:29:16 +0800 Subject: [PATCH] Update generated API reference for v1.31 --- .../certificate-signing-request-v1.md | 272 ++-- .../cluster-trust-bundle-v1alpha1.md | 184 +-- .../self-subject-review-v1.md | 20 +- .../service-account-v1.md | 260 ++-- .../token-request-v1.md | 26 +- .../token-review-v1.md | 24 +- .../cluster-role-binding-v1.md | 186 +-- .../cluster-role-v1.md | 198 +-- .../local-subject-access-review-v1.md | 22 +- .../role-binding-v1.md | 258 ++-- .../authorization-resources/role-v1.md | 268 ++-- .../self-subject-access-review-v1.md | 90 +- .../self-subject-rules-review-v1.md | 34 +- .../subject-access-review-v1.md | 92 +- .../cluster-resources/api-service-v1.md | 232 ++-- .../cluster-cidr-v1alpha1.md | 516 -------- .../cluster-resources/component-status-v1.md | 52 +- .../cluster-resources/event-v1.md | 256 ++-- .../cluster-resources/ip-address-v1beta1.md | 515 ++++++++ .../lease-candidate-v1alpha1.md | 630 ++++++++- .../cluster-resources/lease-v1.md | 268 ++-- .../cluster-resources/namespace-v1.md | 199 +-- .../cluster-resources/node-v1.md | 289 ++-- .../cluster-resources/runtime-class-v1.md | 186 +-- .../cluster-resources/service-cidr-v1beta1.md | 683 ++++++++++ .../common-definitions/delete-options.md | 2 + .../common-definitions/label-selector.md | 4 + .../local-object-reference.md | 2 +- .../node-selector-requirement.md | 2 + .../common-definitions/object-meta.md | 6 + .../common-definitions/status.md | 4 + .../common-parameters/common-parameters.md | 182 +-- .../config-map-v1.md | 256 ++-- .../csi-driver-v1.md | 192 +-- .../csi-node-v1.md | 190 +-- .../csi-storage-capacity-v1.md | 260 ++-- .../persistent-volume-claim-v1.md | 379 +++--- .../persistent-volume-v1.md | 258 ++-- .../config-and-storage-resources/secret-v1.md | 256 ++-- .../storage-class-v1.md | 192 +-- .../storage-version-migration-v1alpha1.md | 704 ++++++++++ .../volume-attachment-v1.md | 230 ++-- .../volume-attributes-class-v1beta1.md | 488 +++++++ .../config-and-storage-resources/volume.md | 90 +- .../custom-resource-definition-v1.md | 294 +++-- .../extend-resources/device-class-v1alpha3.md | 646 +++++++++ .../mutating-webhook-configuration-v1.md | 194 +-- .../validating-webhook-configuration-v1.md | 208 +-- .../kubernetes-api/other-resources/_index.md | 17 - ...g-admission-policy-binding-list-v1beta1.md | 28 - .../flow-schema-v1.md} | 320 ++--- .../policy-resources/ip-address-v1alpha1.md | 509 ------- .../policy-resources/limit-range-v1.md | 260 ++-- .../policy-resources/network-policy-v1.md | 276 ++-- .../pod-disruption-budget-v1.md | 314 ++--- .../priority-level-configuration-v1.md} | 312 ++--- .../policy-resources/resource-quota-v1.md | 320 ++--- .../validating-admission-policy-binding-v1.md | 1129 ++++++++++++++++ .../validating-admission-policy-v1.md} | 300 +++-- .../service-resources/endpoint-slice-v1.md | 260 ++-- .../service-resources/endpoints-v1.md | 266 ++-- .../service-resources/ingress-class-v1.md | 184 +-- .../service-resources/ingress-v1.md | 314 ++--- .../service-resources/service-v1.md | 324 ++--- .../binding-v1.md | 60 +- .../controller-revision-v1.md | 258 ++-- .../workload-resources/cron-job-v1.md | 314 ++--- .../workload-resources/daemon-set-v1.md | 316 ++--- .../workload-resources/deployment-v1.md | 316 ++--- .../horizontal-pod-autoscaler-v1.md | 314 ++--- .../horizontal-pod-autoscaler-v2.md | 314 ++--- .../workload-resources/job-v1.md | 420 +++--- .../pod-scheduling-context-v1alpha2.md | 787 ----------- .../pod-scheduling-context-v1alpha3.md | 797 +++++++++++ .../workload-resources/pod-template-v1.md | 258 ++-- .../workload-resources/pod-v1.md | 1000 ++++++-------- .../workload-resources/priority-class-v1.md | 186 +-- .../workload-resources/replica-set-v1.md | 316 ++--- .../replication-controller-v1.md | 316 ++--- .../resource-claim-template-v1alpha2.md | 600 --------- .../resource-claim-template-v1alpha3.md | 612 +++++++++ .../resource-claim-v1alpha2.md | 878 ------------ .../resource-claim-v1alpha3.md | 1171 +++++++++++++++++ .../resource-class-v1alpha2.md | 523 -------- .../resource-slice-v1alpha3.md | 634 +++++++++ .../workload-resources/stateful-set-v1.md | 322 ++--- 86 files changed, 15779 insertions(+), 10865 deletions(-) delete mode 100644 content/en/docs/reference/kubernetes-api/cluster-resources/cluster-cidr-v1alpha1.md create mode 100644 content/en/docs/reference/kubernetes-api/cluster-resources/ip-address-v1beta1.md create mode 100644 content/en/docs/reference/kubernetes-api/cluster-resources/service-cidr-v1beta1.md create mode 100644 content/en/docs/reference/kubernetes-api/config-and-storage-resources/storage-version-migration-v1alpha1.md create mode 100644 content/en/docs/reference/kubernetes-api/config-and-storage-resources/volume-attributes-class-v1beta1.md create mode 100644 content/en/docs/reference/kubernetes-api/extend-resources/device-class-v1alpha3.md delete mode 100644 content/en/docs/reference/kubernetes-api/other-resources/_index.md delete mode 100644 content/en/docs/reference/kubernetes-api/other-resources/validating-admission-policy-binding-list-v1beta1.md rename content/en/docs/reference/kubernetes-api/{cluster-resources/flow-schema-v1beta3.md => policy-resources/flow-schema-v1.md} (64%) delete mode 100644 content/en/docs/reference/kubernetes-api/policy-resources/ip-address-v1alpha1.md rename content/en/docs/reference/kubernetes-api/{cluster-resources/priority-level-configuration-v1beta3.md => policy-resources/priority-level-configuration-v1.md} (59%) create mode 100644 content/en/docs/reference/kubernetes-api/policy-resources/validating-admission-policy-binding-v1.md rename content/en/docs/reference/kubernetes-api/{extend-resources/validating-admission-policy-v1beta1.md => policy-resources/validating-admission-policy-v1.md} (84%) rename content/en/docs/reference/kubernetes-api/{cluster-resources => workload-resources}/binding-v1.md (62%) delete mode 100644 content/en/docs/reference/kubernetes-api/workload-resources/pod-scheduling-context-v1alpha2.md create mode 100644 content/en/docs/reference/kubernetes-api/workload-resources/pod-scheduling-context-v1alpha3.md delete mode 100644 content/en/docs/reference/kubernetes-api/workload-resources/resource-claim-template-v1alpha2.md create mode 100644 content/en/docs/reference/kubernetes-api/workload-resources/resource-claim-template-v1alpha3.md delete mode 100644 content/en/docs/reference/kubernetes-api/workload-resources/resource-claim-v1alpha2.md create mode 100644 content/en/docs/reference/kubernetes-api/workload-resources/resource-claim-v1alpha3.md delete mode 100644 content/en/docs/reference/kubernetes-api/workload-resources/resource-class-v1alpha2.md create mode 100644 content/en/docs/reference/kubernetes-api/workload-resources/resource-slice-v1alpha3.md diff --git a/content/en/docs/reference/kubernetes-api/authentication-resources/certificate-signing-request-v1.md b/content/en/docs/reference/kubernetes-api/authentication-resources/certificate-signing-request-v1.md index e462d8ad87699..781dacf88fa2d 100644 --- a/content/en/docs/reference/kubernetes-api/authentication-resources/certificate-signing-request-v1.md +++ b/content/en/docs/reference/kubernetes-api/authentication-resources/certificate-signing-request-v1.md @@ -285,9 +285,9 @@ GET /apis/certificates.k8s.io/v1/certificatesigningrequests/{name} name of the CertificateSigningRequest -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -313,9 +313,9 @@ GET /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/approval name of the CertificateSigningRequest -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -341,9 +341,9 @@ GET /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/status name of the CertificateSigningRequest -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -364,59 +364,59 @@ GET /apis/certificates.k8s.io/v1/certificatesigningrequests #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -437,29 +437,29 @@ POST /apis/certificates.k8s.io/v1/certificatesigningrequests #### Parameters -- **body**: }}">CertificateSigningRequest, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">CertificateSigningRequest, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -489,29 +489,29 @@ PUT /apis/certificates.k8s.io/v1/certificatesigningrequests/{name} name of the CertificateSigningRequest -- **body**: }}">CertificateSigningRequest, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">CertificateSigningRequest, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -539,29 +539,29 @@ PUT /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/approval name of the CertificateSigningRequest -- **body**: }}">CertificateSigningRequest, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">CertificateSigningRequest, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -589,29 +589,29 @@ PUT /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/status name of the CertificateSigningRequest -- **body**: }}">CertificateSigningRequest, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">CertificateSigningRequest, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -639,34 +639,34 @@ PATCH /apis/certificates.k8s.io/v1/certificatesigningrequests/{name} name of the CertificateSigningRequest -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -694,34 +694,34 @@ PATCH /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/approval name of the CertificateSigningRequest -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -749,34 +749,34 @@ PATCH /apis/certificates.k8s.io/v1/certificatesigningrequests/{name}/status name of the CertificateSigningRequest -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -804,29 +804,34 @@ DELETE /apis/certificates.k8s.io/v1/certificatesigningrequests/{name} name of the CertificateSigningRequest -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- **dryRun** (*in query*): string - }}">propagationPolicy + }}">dryRun @@ -849,69 +854,74 @@ DELETE /apis/certificates.k8s.io/v1/certificatesigningrequests #### Parameters -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: + + - }}">sendInitialEvents +- ****: + + -- **timeoutSeconds** (*in query*): integer - }}">timeoutSeconds +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/authentication-resources/cluster-trust-bundle-v1alpha1.md b/content/en/docs/reference/kubernetes-api/authentication-resources/cluster-trust-bundle-v1alpha1.md index 9744934632315..56726e96155d4 100644 --- a/content/en/docs/reference/kubernetes-api/authentication-resources/cluster-trust-bundle-v1alpha1.md +++ b/content/en/docs/reference/kubernetes-api/authentication-resources/cluster-trust-bundle-v1alpha1.md @@ -133,9 +133,9 @@ GET /apis/certificates.k8s.io/v1alpha1/clustertrustbundles/{name} name of the ClusterTrustBundle -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -156,59 +156,59 @@ GET /apis/certificates.k8s.io/v1alpha1/clustertrustbundles #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -229,29 +229,29 @@ POST /apis/certificates.k8s.io/v1alpha1/clustertrustbundles #### Parameters -- **body**: }}">ClusterTrustBundle, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ClusterTrustBundle, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -281,29 +281,29 @@ PUT /apis/certificates.k8s.io/v1alpha1/clustertrustbundles/{name} name of the ClusterTrustBundle -- **body**: }}">ClusterTrustBundle, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ClusterTrustBundle, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -331,34 +331,34 @@ PATCH /apis/certificates.k8s.io/v1alpha1/clustertrustbundles/{name} name of the ClusterTrustBundle -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -386,29 +386,34 @@ DELETE /apis/certificates.k8s.io/v1alpha1/clustertrustbundles/{name} name of the ClusterTrustBundle -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: + + - }}">propagationPolicy + +- **dryRun** (*in query*): string + + }}">dryRun @@ -431,69 +436,74 @@ DELETE /apis/certificates.k8s.io/v1alpha1/clustertrustbundles #### Parameters -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: + + - }}">timeoutSeconds + +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/authentication-resources/self-subject-review-v1.md b/content/en/docs/reference/kubernetes-api/authentication-resources/self-subject-review-v1.md index 5137fb84b8669..e76b7d53b12d9 100644 --- a/content/en/docs/reference/kubernetes-api/authentication-resources/self-subject-review-v1.md +++ b/content/en/docs/reference/kubernetes-api/authentication-resources/self-subject-review-v1.md @@ -69,6 +69,8 @@ SelfSubjectReviewStatus is filled by the kube-apiserver and sent back to a user. - **userInfo.groups** ([]string) + *Atomic: will be replaced during a merge* + The names of groups this user is a part of. - **userInfo.uid** (string) @@ -103,29 +105,29 @@ POST /apis/authentication.k8s.io/v1/selfsubjectreviews #### Parameters -- **body**: }}">SelfSubjectReview, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">SelfSubjectReview, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation diff --git a/content/en/docs/reference/kubernetes-api/authentication-resources/service-account-v1.md b/content/en/docs/reference/kubernetes-api/authentication-resources/service-account-v1.md index 589f0b923c7fb..e10576e9a0dd1 100644 --- a/content/en/docs/reference/kubernetes-api/authentication-resources/service-account-v1.md +++ b/content/en/docs/reference/kubernetes-api/authentication-resources/service-account-v1.md @@ -48,12 +48,16 @@ ServiceAccount binds together: * a name, understood by users, and perhaps by per - **imagePullSecrets** ([]}}">LocalObjectReference) + *Atomic: will be replaced during a merge* + ImagePullSecrets is a list of references to secrets in the same namespace to use for pulling any images in pods that reference this ServiceAccount. ImagePullSecrets are distinct from Secrets because Secrets can be mounted in the pod, but ImagePullSecrets are only accessed by the kubelet. More info: https://kubernetes.io/docs/concepts/containers/images/#specifying-imagepullsecrets-on-a-pod - **secrets** ([]}}">ObjectReference) *Patch strategy: merge on key `name`* + *Map: unique values on key name will be kept during a merge* + Secrets is a list of the secrets in the same namespace that pods running using this ServiceAccount are allowed to use. Pods are only limited to this list if this service account has a "kubernetes.io/enforce-mountable-secrets" annotation set to "true". This field should not be used to find auto-generated service account token secrets for use outside of pods. Instead, tokens can be requested directly using the TokenRequest API, or service account token secrets can be manually created. More info: https://kubernetes.io/docs/concepts/configuration/secret @@ -109,14 +113,14 @@ GET /api/v1/namespaces/{namespace}/serviceaccounts/{name} name of the ServiceAccount -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -137,64 +141,64 @@ GET /api/v1/namespaces/{namespace}/serviceaccounts #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -215,59 +219,59 @@ GET /api/v1/serviceaccounts #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -288,34 +292,34 @@ POST /api/v1/namespaces/{namespace}/serviceaccounts #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">ServiceAccount, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ServiceAccount, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -345,34 +349,34 @@ PUT /api/v1/namespaces/{namespace}/serviceaccounts/{name} name of the ServiceAccount -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">ServiceAccount, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ServiceAccount, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -400,39 +404,39 @@ PATCH /api/v1/namespaces/{namespace}/serviceaccounts/{name} name of the ServiceAccount -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -460,34 +464,39 @@ DELETE /api/v1/namespaces/{namespace}/serviceaccounts/{name} name of the ServiceAccount -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- **dryRun** (*in query*): string - }}">propagationPolicy + }}">dryRun @@ -510,74 +519,79 @@ DELETE /api/v1/namespaces/{namespace}/serviceaccounts #### Parameters -- **namespace** (*in path*): string, required +- ****: + + + + +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- **dryRun** (*in query*): string - }}">timeoutSeconds + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/authentication-resources/token-request-v1.md b/content/en/docs/reference/kubernetes-api/authentication-resources/token-request-v1.md index 55e367574c12a..338aaf5d10f87 100644 --- a/content/en/docs/reference/kubernetes-api/authentication-resources/token-request-v1.md +++ b/content/en/docs/reference/kubernetes-api/authentication-resources/token-request-v1.md @@ -62,6 +62,8 @@ TokenRequestSpec contains client provided parameters of a token request. - **audiences** ([]string), required + *Atomic: will be replaced during a merge* + Audiences are the intendend audiences of the token. A recipient of a token must identify themself with an identifier in the list of audiences of the token, and otherwise should reject the token. A token issued for multiple audiences may be used to authenticate against any of the audiences listed but implies a high degree of trust between the target audiences. - **boundObjectRef** (BoundObjectReference) @@ -136,29 +138,34 @@ POST /api/v1/namespaces/{namespace}/serviceaccounts/{name}/token #### Parameters +- ****: + + + + - **name** (*in path*): string, required name of the TokenRequest -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">TokenRequest, required +- ****: -- **dryRun** (*in query*): string +- **body**: }}">TokenRequest, required - }}">dryRun + -- **fieldManager** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldManager + }}">dryRun - **fieldValidation** (*in query*): string @@ -166,11 +173,6 @@ POST /api/v1/namespaces/{namespace}/serviceaccounts/{name}/token }}">fieldValidation -- **pretty** (*in query*): string - - }}">pretty - - #### Response diff --git a/content/en/docs/reference/kubernetes-api/authentication-resources/token-review-v1.md b/content/en/docs/reference/kubernetes-api/authentication-resources/token-review-v1.md index 2e21803aa67b7..75bbf14f2eda3 100644 --- a/content/en/docs/reference/kubernetes-api/authentication-resources/token-review-v1.md +++ b/content/en/docs/reference/kubernetes-api/authentication-resources/token-review-v1.md @@ -62,6 +62,8 @@ TokenReviewSpec is a description of the token authentication request. - **audiences** ([]string) + *Atomic: will be replaced during a merge* + Audiences is a list of the identifiers that the resource server presented with the token identifies as. Audience-aware token authenticators will verify that the token was intended for at least one of the audiences in this list. If no audiences are provided, the audience will default to the audience of the Kubernetes apiserver. - **token** (string) @@ -80,6 +82,8 @@ TokenReviewStatus is the result of the token authentication request. - **audiences** ([]string) + *Atomic: will be replaced during a merge* + Audiences are audience identifiers chosen by the authenticator that are compatible with both the TokenReview and token. An identifier is any identifier in the intersection of the TokenReviewSpec audiences and the token's audiences. A client of the TokenReview API that sets the spec.audiences field should validate that a compatible audience identifier is returned in the status.audiences field to ensure that the TokenReview server is audience aware. If a TokenReview returns an empty status.audience field where status.authenticated is "true", the token is valid against the audience of the Kubernetes API server. - **authenticated** (boolean) @@ -103,6 +107,8 @@ TokenReviewStatus is the result of the token authentication request. - **user.groups** ([]string) + *Atomic: will be replaced during a merge* + The names of groups this user is a part of. - **user.uid** (string) @@ -137,29 +143,29 @@ POST /apis/authentication.k8s.io/v1/tokenreviews #### Parameters -- **body**: }}">TokenReview, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">TokenReview, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation diff --git a/content/en/docs/reference/kubernetes-api/authorization-resources/cluster-role-binding-v1.md b/content/en/docs/reference/kubernetes-api/authorization-resources/cluster-role-binding-v1.md index 63016f9d10516..91b47ae0650a3 100644 --- a/content/en/docs/reference/kubernetes-api/authorization-resources/cluster-role-binding-v1.md +++ b/content/en/docs/reference/kubernetes-api/authorization-resources/cluster-role-binding-v1.md @@ -63,6 +63,8 @@ ClusterRoleBinding references a ClusterRole, but not contain it. It can referen - **subjects** ([]Subject) + *Atomic: will be replaced during a merge* + Subjects holds references to the objects the role applies to. @@ -137,9 +139,9 @@ GET /apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name} name of the ClusterRoleBinding -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -160,59 +162,59 @@ GET /apis/rbac.authorization.k8s.io/v1/clusterrolebindings #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -233,29 +235,29 @@ POST /apis/rbac.authorization.k8s.io/v1/clusterrolebindings #### Parameters -- **body**: }}">ClusterRoleBinding, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ClusterRoleBinding, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -285,29 +287,29 @@ PUT /apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name} name of the ClusterRoleBinding -- **body**: }}">ClusterRoleBinding, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ClusterRoleBinding, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -335,34 +337,34 @@ PATCH /apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name} name of the ClusterRoleBinding -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -390,29 +392,34 @@ DELETE /apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name} name of the ClusterRoleBinding -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- **dryRun** (*in query*): string - }}">propagationPolicy + }}">dryRun @@ -435,69 +442,74 @@ DELETE /apis/rbac.authorization.k8s.io/v1/clusterrolebindings #### Parameters -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: + + - }}">timeoutSeconds + +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/authorization-resources/cluster-role-v1.md b/content/en/docs/reference/kubernetes-api/authorization-resources/cluster-role-v1.md index 5a4805c682a82..3d25bb25e143b 100644 --- a/content/en/docs/reference/kubernetes-api/authorization-resources/cluster-role-v1.md +++ b/content/en/docs/reference/kubernetes-api/authorization-resources/cluster-role-v1.md @@ -51,10 +51,14 @@ ClusterRole is a cluster level, logical grouping of PolicyRules that can be refe - **aggregationRule.clusterRoleSelectors** ([]}}">LabelSelector) + *Atomic: will be replaced during a merge* + ClusterRoleSelectors holds a list of selectors which will be used to find ClusterRoles and create the rules. If any of the selectors match, then the ClusterRole's permissions will be added - **rules** ([]PolicyRule) + *Atomic: will be replaced during a merge* + Rules holds all the PolicyRules for this ClusterRole @@ -62,22 +66,32 @@ ClusterRole is a cluster level, logical grouping of PolicyRules that can be refe - **rules.apiGroups** ([]string) + *Atomic: will be replaced during a merge* + APIGroups is the name of the APIGroup that contains the resources. If multiple API groups are specified, any action requested against one of the enumerated resources in any API group will be allowed. "" represents the core API group and "*" represents all API groups. - **rules.resources** ([]string) + *Atomic: will be replaced during a merge* + Resources is a list of resources this rule applies to. '*' represents all resources. - **rules.verbs** ([]string), required + *Atomic: will be replaced during a merge* + Verbs is a list of Verbs that apply to ALL the ResourceKinds contained in this rule. '*' represents all verbs. - **rules.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. - **rules.nonResourceURLs** ([]string) + *Atomic: will be replaced during a merge* + NonResourceURLs is a set of partial urls that a user should have access to. *s are allowed, but only as the full, final step in the path Since non-resource URLs are not namespaced, this field is only applicable for ClusterRoles referenced from a ClusterRoleBinding. Rules can either apply to API resources (such as "pods" or "secrets") or non-resource URL paths (such as "/api"), but not both. @@ -133,9 +147,9 @@ GET /apis/rbac.authorization.k8s.io/v1/clusterroles/{name} name of the ClusterRole -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -156,59 +170,59 @@ GET /apis/rbac.authorization.k8s.io/v1/clusterroles #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -229,29 +243,29 @@ POST /apis/rbac.authorization.k8s.io/v1/clusterroles #### Parameters -- **body**: }}">ClusterRole, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ClusterRole, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -281,29 +295,29 @@ PUT /apis/rbac.authorization.k8s.io/v1/clusterroles/{name} name of the ClusterRole -- **body**: }}">ClusterRole, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ClusterRole, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -331,34 +345,34 @@ PATCH /apis/rbac.authorization.k8s.io/v1/clusterroles/{name} name of the ClusterRole -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -386,29 +400,34 @@ DELETE /apis/rbac.authorization.k8s.io/v1/clusterroles/{name} name of the ClusterRole -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- **dryRun** (*in query*): string - }}">propagationPolicy + }}">dryRun @@ -431,69 +450,74 @@ DELETE /apis/rbac.authorization.k8s.io/v1/clusterroles #### Parameters -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: + + - }}">timeoutSeconds + +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/authorization-resources/local-subject-access-review-v1.md b/content/en/docs/reference/kubernetes-api/authorization-resources/local-subject-access-review-v1.md index 6f786078e77b1..5ec51f7a45424 100644 --- a/content/en/docs/reference/kubernetes-api/authorization-resources/local-subject-access-review-v1.md +++ b/content/en/docs/reference/kubernetes-api/authorization-resources/local-subject-access-review-v1.md @@ -74,34 +74,34 @@ POST /apis/authorization.k8s.io/v1/namespaces/{namespace}/localsubjectaccessrevi #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">LocalSubjectAccessReview, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">LocalSubjectAccessReview, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation diff --git a/content/en/docs/reference/kubernetes-api/authorization-resources/role-binding-v1.md b/content/en/docs/reference/kubernetes-api/authorization-resources/role-binding-v1.md index 6d26ada485396..c0bb52b6d024c 100644 --- a/content/en/docs/reference/kubernetes-api/authorization-resources/role-binding-v1.md +++ b/content/en/docs/reference/kubernetes-api/authorization-resources/role-binding-v1.md @@ -63,6 +63,8 @@ RoleBinding references a role, but does not contain it. It can reference a Role - **subjects** ([]Subject) + *Atomic: will be replaced during a merge* + Subjects holds references to the objects the role applies to. @@ -137,14 +139,14 @@ GET /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name name of the RoleBinding -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -165,64 +167,64 @@ GET /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -243,59 +245,59 @@ GET /apis/rbac.authorization.k8s.io/v1/rolebindings #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -316,34 +318,34 @@ POST /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">RoleBinding, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">RoleBinding, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -373,34 +375,34 @@ PUT /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name name of the RoleBinding -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">RoleBinding, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">RoleBinding, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -428,39 +430,39 @@ PATCH /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{na name of the RoleBinding -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -488,34 +490,39 @@ DELETE /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{n name of the RoleBinding -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- **dryRun** (*in query*): string - }}">propagationPolicy + }}">dryRun @@ -538,74 +545,79 @@ DELETE /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings #### Parameters -- **namespace** (*in path*): string, required +- ****: + + + + +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- **dryRun** (*in query*): string - }}">timeoutSeconds + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/authorization-resources/role-v1.md b/content/en/docs/reference/kubernetes-api/authorization-resources/role-v1.md index 6985e4fca9dd9..474f45aec5545 100644 --- a/content/en/docs/reference/kubernetes-api/authorization-resources/role-v1.md +++ b/content/en/docs/reference/kubernetes-api/authorization-resources/role-v1.md @@ -44,6 +44,8 @@ Role is a namespaced, logical grouping of PolicyRules that can be referenced as - **rules** ([]PolicyRule) + *Atomic: will be replaced during a merge* + Rules holds all the PolicyRules for this Role @@ -51,22 +53,32 @@ Role is a namespaced, logical grouping of PolicyRules that can be referenced as - **rules.apiGroups** ([]string) + *Atomic: will be replaced during a merge* + APIGroups is the name of the APIGroup that contains the resources. If multiple API groups are specified, any action requested against one of the enumerated resources in any API group will be allowed. "" represents the core API group and "*" represents all API groups. - **rules.resources** ([]string) + *Atomic: will be replaced during a merge* + Resources is a list of resources this rule applies to. '*' represents all resources. - **rules.verbs** ([]string), required + *Atomic: will be replaced during a merge* + Verbs is a list of Verbs that apply to ALL the ResourceKinds contained in this rule. '*' represents all verbs. - **rules.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. - **rules.nonResourceURLs** ([]string) + *Atomic: will be replaced during a merge* + NonResourceURLs is a set of partial urls that a user should have access to. *s are allowed, but only as the full, final step in the path Since non-resource URLs are not namespaced, this field is only applicable for ClusterRoles referenced from a ClusterRoleBinding. Rules can either apply to API resources (such as "pods" or "secrets") or non-resource URL paths (such as "/api"), but not both. @@ -122,14 +134,14 @@ GET /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name} name of the Role -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -150,64 +162,64 @@ GET /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -228,59 +240,59 @@ GET /apis/rbac.authorization.k8s.io/v1/roles #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -301,34 +313,34 @@ POST /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Role, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Role, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -358,34 +370,34 @@ PUT /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name} name of the Role -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Role, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Role, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -413,39 +425,39 @@ PATCH /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name} name of the Role -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -473,34 +485,39 @@ DELETE /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name} name of the Role -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- **dryRun** (*in query*): string - }}">propagationPolicy + }}">dryRun @@ -523,74 +540,79 @@ DELETE /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles #### Parameters -- **namespace** (*in path*): string, required +- ****: + + + + +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- **dryRun** (*in query*): string - }}">timeoutSeconds + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/authorization-resources/self-subject-access-review-v1.md b/content/en/docs/reference/kubernetes-api/authorization-resources/self-subject-access-review-v1.md index cfce75947e5b8..c22f2c276c903 100644 --- a/content/en/docs/reference/kubernetes-api/authorization-resources/self-subject-access-review-v1.md +++ b/content/en/docs/reference/kubernetes-api/authorization-resources/self-subject-access-review-v1.md @@ -82,10 +82,82 @@ SelfSubjectAccessReviewSpec is a description of the access request. Exactly one *ResourceAttributes includes the authorization attributes available for resource requests to the Authorizer interface* + - **resourceAttributes.fieldSelector** (FieldSelectorAttributes) + + fieldSelector describes the limitation on access based on field. It can only limit access, not broaden it. + + This field is alpha-level. To use this field, you must enable the `AuthorizeWithSelectors` feature gate (disabled by default). + + + *FieldSelectorAttributes indicates a field limited access. Webhook authors are encouraged to * ensure rawSelector and requirements are not both set * consider the requirements field if set * not try to parse or consider the rawSelector field if set. This is to avoid another CVE-2022-2880 (i.e. getting different systems to agree on how exactly to parse a query is not something we want), see https://www.oxeye.io/resources/golang-parameter-smuggling-attack for more details. For the *SubjectAccessReview endpoints of the kube-apiserver: * If rawSelector is empty and requirements are empty, the request is not limited. * If rawSelector is present and requirements are empty, the rawSelector will be parsed and limited if the parsing succeeds. * If rawSelector is empty and requirements are present, the requirements should be honored * If rawSelector is present and requirements are present, the request is invalid.* + + - **resourceAttributes.fieldSelector.rawSelector** (string) + + rawSelector is the serialization of a field selector that would be included in a query parameter. Webhook implementations are encouraged to ignore rawSelector. The kube-apiserver's *SubjectAccessReview will parse the rawSelector as long as the requirements are not present. + + - **resourceAttributes.fieldSelector.requirements** ([]FieldSelectorRequirement) + + *Atomic: will be replaced during a merge* + + requirements is the parsed interpretation of a field selector. All requirements must be met for a resource instance to match the selector. Webhook implementations should handle requirements, but how to handle them is up to the webhook. Since requirements can only limit the request, it is safe to authorize as unlimited request if the requirements are not understood. + + + *FieldSelectorRequirement is a selector that contains values, a key, and an operator that relates the key and values.* + + - **resourceAttributes.fieldSelector.requirements.key** (string), required + + key is the field selector key that the requirement applies to. + + - **resourceAttributes.fieldSelector.requirements.operator** (string), required + + operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. The list of operators may grow in the future. + + - **resourceAttributes.fieldSelector.requirements.values** ([]string) + + *Atomic: will be replaced during a merge* + + values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. + - **resourceAttributes.group** (string) Group is the API Group of the Resource. "*" means all. + - **resourceAttributes.labelSelector** (LabelSelectorAttributes) + + labelSelector describes the limitation on access based on labels. It can only limit access, not broaden it. + + This field is alpha-level. To use this field, you must enable the `AuthorizeWithSelectors` feature gate (disabled by default). + + + *LabelSelectorAttributes indicates a label limited access. Webhook authors are encouraged to * ensure rawSelector and requirements are not both set * consider the requirements field if set * not try to parse or consider the rawSelector field if set. This is to avoid another CVE-2022-2880 (i.e. getting different systems to agree on how exactly to parse a query is not something we want), see https://www.oxeye.io/resources/golang-parameter-smuggling-attack for more details. For the *SubjectAccessReview endpoints of the kube-apiserver: * If rawSelector is empty and requirements are empty, the request is not limited. * If rawSelector is present and requirements are empty, the rawSelector will be parsed and limited if the parsing succeeds. * If rawSelector is empty and requirements are present, the requirements should be honored * If rawSelector is present and requirements are present, the request is invalid.* + + - **resourceAttributes.labelSelector.rawSelector** (string) + + rawSelector is the serialization of a field selector that would be included in a query parameter. Webhook implementations are encouraged to ignore rawSelector. The kube-apiserver's *SubjectAccessReview will parse the rawSelector as long as the requirements are not present. + + - **resourceAttributes.labelSelector.requirements** ([]LabelSelectorRequirement) + + *Atomic: will be replaced during a merge* + + requirements is the parsed interpretation of a label selector. All requirements must be met for a resource instance to match the selector. Webhook implementations should handle requirements, but how to handle them is up to the webhook. Since requirements can only limit the request, it is safe to authorize as unlimited request if the requirements are not understood. + + + *A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.* + + - **resourceAttributes.labelSelector.requirements.key** (string), required + + key is the label key that the selector applies to. + + - **resourceAttributes.labelSelector.requirements.operator** (string), required + + operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + + - **resourceAttributes.labelSelector.requirements.values** ([]string) + + *Atomic: will be replaced during a merge* + + values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + - **resourceAttributes.name** (string) Name is the name of the resource being requested for a "get" or deleted for a "delete". "" (empty) means all. @@ -134,29 +206,29 @@ POST /apis/authorization.k8s.io/v1/selfsubjectaccessreviews #### Parameters -- **body**: }}">SelfSubjectAccessReview, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">SelfSubjectAccessReview, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation diff --git a/content/en/docs/reference/kubernetes-api/authorization-resources/self-subject-rules-review-v1.md b/content/en/docs/reference/kubernetes-api/authorization-resources/self-subject-rules-review-v1.md index 1e862f5a0239e..1e7f8a9e21571 100644 --- a/content/en/docs/reference/kubernetes-api/authorization-resources/self-subject-rules-review-v1.md +++ b/content/en/docs/reference/kubernetes-api/authorization-resources/self-subject-rules-review-v1.md @@ -59,6 +59,8 @@ SelfSubjectRulesReview enumerates the set of actions the current user can perfor - **status.nonResourceRules** ([]NonResourceRule), required + *Atomic: will be replaced during a merge* + NonResourceRules is the list of actions the subject is allowed to perform on non-resources. The list ordering isn't significant, may contain duplicates, and possibly be incomplete. @@ -66,14 +68,20 @@ SelfSubjectRulesReview enumerates the set of actions the current user can perfor - **status.nonResourceRules.verbs** ([]string), required + *Atomic: will be replaced during a merge* + Verb is a list of kubernetes non-resource API verbs, like: get, post, put, delete, patch, head, options. "*" means all. - **status.nonResourceRules.nonResourceURLs** ([]string) + *Atomic: will be replaced during a merge* + NonResourceURLs is a set of partial urls that a user should have access to. *s are allowed, but only as the full, final step in the path. "*" means all. - **status.resourceRules** ([]ResourceRule), required + *Atomic: will be replaced during a merge* + ResourceRules is the list of actions the subject is allowed to perform on resources. The list ordering isn't significant, may contain duplicates, and possibly be incomplete. @@ -81,18 +89,26 @@ SelfSubjectRulesReview enumerates the set of actions the current user can perfor - **status.resourceRules.verbs** ([]string), required + *Atomic: will be replaced during a merge* + Verb is a list of kubernetes resource API verbs, like: get, list, watch, create, update, delete, proxy. "*" means all. - **status.resourceRules.apiGroups** ([]string) + *Atomic: will be replaced during a merge* + APIGroups is the name of the APIGroup that contains the resources. If multiple API groups are specified, any action requested against one of the enumerated resources in any API group will be allowed. "*" means all. - **status.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. "*" means all. - **status.resourceRules.resources** ([]string) + *Atomic: will be replaced during a merge* + Resources is a list of resources this rule applies to. "*" means all in the specified apiGroups. "*/foo" represents the subresource 'foo' for all resources in the specified apiGroups. @@ -138,29 +154,29 @@ POST /apis/authorization.k8s.io/v1/selfsubjectrulesreviews #### Parameters -- **body**: }}">SelfSubjectRulesReview, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">SelfSubjectRulesReview, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation diff --git a/content/en/docs/reference/kubernetes-api/authorization-resources/subject-access-review-v1.md b/content/en/docs/reference/kubernetes-api/authorization-resources/subject-access-review-v1.md index 85e304d3baf0c..1ad3c1e6819a0 100644 --- a/content/en/docs/reference/kubernetes-api/authorization-resources/subject-access-review-v1.md +++ b/content/en/docs/reference/kubernetes-api/authorization-resources/subject-access-review-v1.md @@ -66,6 +66,8 @@ SubjectAccessReviewSpec is a description of the access request. Exactly one of - **groups** ([]string) + *Atomic: will be replaced during a merge* + Groups is the groups you're testing for. - **nonResourceAttributes** (NonResourceAttributes) @@ -90,10 +92,82 @@ SubjectAccessReviewSpec is a description of the access request. Exactly one of *ResourceAttributes includes the authorization attributes available for resource requests to the Authorizer interface* + - **resourceAttributes.fieldSelector** (FieldSelectorAttributes) + + fieldSelector describes the limitation on access based on field. It can only limit access, not broaden it. + + This field is alpha-level. To use this field, you must enable the `AuthorizeWithSelectors` feature gate (disabled by default). + + + *FieldSelectorAttributes indicates a field limited access. Webhook authors are encouraged to * ensure rawSelector and requirements are not both set * consider the requirements field if set * not try to parse or consider the rawSelector field if set. This is to avoid another CVE-2022-2880 (i.e. getting different systems to agree on how exactly to parse a query is not something we want), see https://www.oxeye.io/resources/golang-parameter-smuggling-attack for more details. For the *SubjectAccessReview endpoints of the kube-apiserver: * If rawSelector is empty and requirements are empty, the request is not limited. * If rawSelector is present and requirements are empty, the rawSelector will be parsed and limited if the parsing succeeds. * If rawSelector is empty and requirements are present, the requirements should be honored * If rawSelector is present and requirements are present, the request is invalid.* + + - **resourceAttributes.fieldSelector.rawSelector** (string) + + rawSelector is the serialization of a field selector that would be included in a query parameter. Webhook implementations are encouraged to ignore rawSelector. The kube-apiserver's *SubjectAccessReview will parse the rawSelector as long as the requirements are not present. + + - **resourceAttributes.fieldSelector.requirements** ([]FieldSelectorRequirement) + + *Atomic: will be replaced during a merge* + + requirements is the parsed interpretation of a field selector. All requirements must be met for a resource instance to match the selector. Webhook implementations should handle requirements, but how to handle them is up to the webhook. Since requirements can only limit the request, it is safe to authorize as unlimited request if the requirements are not understood. + + + *FieldSelectorRequirement is a selector that contains values, a key, and an operator that relates the key and values.* + + - **resourceAttributes.fieldSelector.requirements.key** (string), required + + key is the field selector key that the requirement applies to. + + - **resourceAttributes.fieldSelector.requirements.operator** (string), required + + operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. The list of operators may grow in the future. + + - **resourceAttributes.fieldSelector.requirements.values** ([]string) + + *Atomic: will be replaced during a merge* + + values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. + - **resourceAttributes.group** (string) Group is the API Group of the Resource. "*" means all. + - **resourceAttributes.labelSelector** (LabelSelectorAttributes) + + labelSelector describes the limitation on access based on labels. It can only limit access, not broaden it. + + This field is alpha-level. To use this field, you must enable the `AuthorizeWithSelectors` feature gate (disabled by default). + + + *LabelSelectorAttributes indicates a label limited access. Webhook authors are encouraged to * ensure rawSelector and requirements are not both set * consider the requirements field if set * not try to parse or consider the rawSelector field if set. This is to avoid another CVE-2022-2880 (i.e. getting different systems to agree on how exactly to parse a query is not something we want), see https://www.oxeye.io/resources/golang-parameter-smuggling-attack for more details. For the *SubjectAccessReview endpoints of the kube-apiserver: * If rawSelector is empty and requirements are empty, the request is not limited. * If rawSelector is present and requirements are empty, the rawSelector will be parsed and limited if the parsing succeeds. * If rawSelector is empty and requirements are present, the requirements should be honored * If rawSelector is present and requirements are present, the request is invalid.* + + - **resourceAttributes.labelSelector.rawSelector** (string) + + rawSelector is the serialization of a field selector that would be included in a query parameter. Webhook implementations are encouraged to ignore rawSelector. The kube-apiserver's *SubjectAccessReview will parse the rawSelector as long as the requirements are not present. + + - **resourceAttributes.labelSelector.requirements** ([]LabelSelectorRequirement) + + *Atomic: will be replaced during a merge* + + requirements is the parsed interpretation of a label selector. All requirements must be met for a resource instance to match the selector. Webhook implementations should handle requirements, but how to handle them is up to the webhook. Since requirements can only limit the request, it is safe to authorize as unlimited request if the requirements are not understood. + + + *A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.* + + - **resourceAttributes.labelSelector.requirements.key** (string), required + + key is the label key that the selector applies to. + + - **resourceAttributes.labelSelector.requirements.operator** (string), required + + operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + + - **resourceAttributes.labelSelector.requirements.values** ([]string) + + *Atomic: will be replaced during a merge* + + values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + - **resourceAttributes.name** (string) Name is the name of the resource being requested for a "get" or deleted for a "delete". "" (empty) means all. @@ -176,29 +250,29 @@ POST /apis/authorization.k8s.io/v1/subjectaccessreviews #### Parameters -- **body**: }}">SubjectAccessReview, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">SubjectAccessReview, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation diff --git a/content/en/docs/reference/kubernetes-api/cluster-resources/api-service-v1.md b/content/en/docs/reference/kubernetes-api/cluster-resources/api-service-v1.md index 59df5a5e0e670..0d5e7a35970c4 100644 --- a/content/en/docs/reference/kubernetes-api/cluster-resources/api-service-v1.md +++ b/content/en/docs/reference/kubernetes-api/cluster-resources/api-service-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "APIService represents a server for a particular GroupVersion." title: "APIService" -weight: 4 +weight: 1 auto_generated: true --- @@ -62,7 +62,7 @@ APIServiceSpec contains information for locating and communicating with a server - **groupPriorityMinimum** (int32), required - GroupPriorityMininum is the priority this group should have at least. Higher priority means that the group is preferred by clients over lower priority ones. Note that other versions of this group might specify even higher GroupPriorityMininum values such that the whole group gets a higher priority. The primary sort is based on GroupPriorityMinimum, ordered highest number to lowest (20 before 10). The secondary sort is based on the alphabetical comparison of the name of the object. (v1.bar before v1.foo) We'd recommend something like: *.k8s.io (except extensions) at 18000 and PaaSes (OpenShift, Deis) are recommended to be in the 2000s + GroupPriorityMinimum is the priority this group should have at least. Higher priority means that the group is preferred by clients over lower priority ones. Note that other versions of this group might specify even higher GroupPriorityMinimum values such that the whole group gets a higher priority. The primary sort is based on GroupPriorityMinimum, ordered highest number to lowest (20 before 10). The secondary sort is based on the alphabetical comparison of the name of the object. (v1.bar before v1.foo) We'd recommend something like: *.k8s.io (except extensions) at 18000 and PaaSes (OpenShift, Deis) are recommended to be in the 2000s - **versionPriority** (int32), required @@ -202,9 +202,9 @@ GET /apis/apiregistration.k8s.io/v1/apiservices/{name} name of the APIService -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -230,9 +230,9 @@ GET /apis/apiregistration.k8s.io/v1/apiservices/{name}/status name of the APIService -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -253,59 +253,59 @@ GET /apis/apiregistration.k8s.io/v1/apiservices #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -326,29 +326,29 @@ POST /apis/apiregistration.k8s.io/v1/apiservices #### Parameters -- **body**: }}">APIService, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">APIService, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -378,29 +378,29 @@ PUT /apis/apiregistration.k8s.io/v1/apiservices/{name} name of the APIService -- **body**: }}">APIService, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">APIService, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -428,29 +428,29 @@ PUT /apis/apiregistration.k8s.io/v1/apiservices/{name}/status name of the APIService -- **body**: }}">APIService, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">APIService, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -478,34 +478,34 @@ PATCH /apis/apiregistration.k8s.io/v1/apiservices/{name} name of the APIService -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -533,34 +533,34 @@ PATCH /apis/apiregistration.k8s.io/v1/apiservices/{name}/status name of the APIService -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -588,29 +588,34 @@ DELETE /apis/apiregistration.k8s.io/v1/apiservices/{name} name of the APIService -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + -- **gracePeriodSeconds** (*in query*): integer - }}">gracePeriodSeconds +- ****: + -- **pretty** (*in query*): string - }}">pretty +- ****: + -- **propagationPolicy** (*in query*): string - }}">propagationPolicy +- **dryRun** (*in query*): string + + }}">dryRun @@ -633,69 +638,74 @@ DELETE /apis/apiregistration.k8s.io/v1/apiservices #### Parameters -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + + + +- ****: + + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- **dryRun** (*in query*): string - }}">timeoutSeconds + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/cluster-resources/cluster-cidr-v1alpha1.md b/content/en/docs/reference/kubernetes-api/cluster-resources/cluster-cidr-v1alpha1.md deleted file mode 100644 index 4fdf307e9742e..0000000000000 --- a/content/en/docs/reference/kubernetes-api/cluster-resources/cluster-cidr-v1alpha1.md +++ /dev/null @@ -1,516 +0,0 @@ ---- -api_metadata: - apiVersion: "networking.k8s.io/v1alpha1" - import: "k8s.io/api/networking/v1alpha1" - kind: "ClusterCIDR" -content_type: "api_reference" -description: "ClusterCIDR represents a single configuration for per-Node Pod CIDR allocations when the MultiCIDRRangeAllocator is enabled (see the config for kube-controller-manager)." -title: "ClusterCIDR v1alpha1" -weight: 11 -auto_generated: true ---- - - - -`apiVersion: networking.k8s.io/v1alpha1` - -`import "k8s.io/api/networking/v1alpha1"` - - -## ClusterCIDR {#ClusterCIDR} - -ClusterCIDR represents a single configuration for per-Node Pod CIDR allocations when the MultiCIDRRangeAllocator is enabled (see the config for kube-controller-manager). A cluster may have any number of ClusterCIDR resources, all of which will be considered when allocating a CIDR for a Node. A ClusterCIDR is eligible to be used for a given Node when the node selector matches the node in question and has free CIDRs to allocate. In case of multiple matching ClusterCIDR resources, the allocator will attempt to break ties using internal heuristics, but any ClusterCIDR whose node selector matches the Node may be used. - -
- -- **apiVersion**: networking.k8s.io/v1alpha1 - - -- **kind**: ClusterCIDR - - -- **metadata** (}}">ObjectMeta) - - Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata - -- **spec** (}}">ClusterCIDRSpec) - - spec is the desired state of the ClusterCIDR. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status - - - - - -## ClusterCIDRSpec {#ClusterCIDRSpec} - -ClusterCIDRSpec defines the desired state of ClusterCIDR. - -
- -- **perNodeHostBits** (int32), required - - perNodeHostBits defines the number of host bits to be configured per node. A subnet mask determines how much of the address is used for network bits and host bits. For example an IPv4 address of 192.168.0.0/24, splits the address into 24 bits for the network portion and 8 bits for the host portion. To allocate 256 IPs, set this field to 8 (a /24 mask for IPv4 or a /120 for IPv6). Minimum value is 4 (16 IPs). This field is immutable. - -- **ipv4** (string) - - ipv4 defines an IPv4 IP block in CIDR notation(e.g. "10.0.0.0/8"). At least one of ipv4 and ipv6 must be specified. This field is immutable. - -- **ipv6** (string) - - 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) - - nodeSelector defines which nodes the config is applicable to. An empty or nil nodeSelector selects all nodes. This field is immutable. - - - *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.* - - - **nodeSelector.nodeSelectorTerms** ([]NodeSelectorTerm), required - - Required. A list of node selector terms. The terms are ORed. - - - *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.* - - - **nodeSelector.nodeSelectorTerms.matchExpressions** ([]}}">NodeSelectorRequirement) - - A list of node selector requirements by node's labels. - - - **nodeSelector.nodeSelectorTerms.matchFields** ([]}}">NodeSelectorRequirement) - - A list of node selector requirements by node's fields. - - - - - -## ClusterCIDRList {#ClusterCIDRList} - -ClusterCIDRList contains a list of ClusterCIDR. - -
- -- **apiVersion**: networking.k8s.io/v1alpha1 - - -- **kind**: ClusterCIDRList - - -- **metadata** (}}">ListMeta) - - Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata - -- **items** ([]}}">ClusterCIDR), required - - items is the list of ClusterCIDRs. - - - - - -## Operations {#Operations} - - - -
- - - - - - -### `get` read the specified ClusterCIDR - -#### HTTP Request - -GET /apis/networking.k8s.io/v1alpha1/clustercidrs/{name} - -#### Parameters - - -- **name** (*in path*): string, required - - name of the ClusterCIDR - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">ClusterCIDR): OK - -401: Unauthorized - - -### `list` list or watch objects of kind ClusterCIDR - -#### HTTP Request - -GET /apis/networking.k8s.io/v1alpha1/clustercidrs - -#### Parameters - - -- **allowWatchBookmarks** (*in query*): boolean - - }}">allowWatchBookmarks - - -- **continue** (*in query*): string - - }}">continue - - -- **fieldSelector** (*in query*): string - - }}">fieldSelector - - -- **labelSelector** (*in query*): string - - }}">labelSelector - - -- **limit** (*in query*): integer - - }}">limit - - -- **pretty** (*in query*): string - - }}">pretty - - -- **resourceVersion** (*in query*): string - - }}">resourceVersion - - -- **resourceVersionMatch** (*in query*): string - - }}">resourceVersionMatch - - -- **sendInitialEvents** (*in query*): boolean - - }}">sendInitialEvents - - -- **timeoutSeconds** (*in query*): integer - - }}">timeoutSeconds - - -- **watch** (*in query*): boolean - - }}">watch - - - -#### Response - - -200 (}}">ClusterCIDRList): OK - -401: Unauthorized - - -### `create` create a ClusterCIDR - -#### HTTP Request - -POST /apis/networking.k8s.io/v1alpha1/clustercidrs - -#### Parameters - - -- **body**: }}">ClusterCIDR, required - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldManager** (*in query*): string - - }}">fieldManager - - -- **fieldValidation** (*in query*): string - - }}">fieldValidation - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">ClusterCIDR): OK - -201 (}}">ClusterCIDR): Created - -202 (}}">ClusterCIDR): Accepted - -401: Unauthorized - - -### `update` replace the specified ClusterCIDR - -#### HTTP Request - -PUT /apis/networking.k8s.io/v1alpha1/clustercidrs/{name} - -#### Parameters - - -- **name** (*in path*): string, required - - name of the ClusterCIDR - - -- **body**: }}">ClusterCIDR, required - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldManager** (*in query*): string - - }}">fieldManager - - -- **fieldValidation** (*in query*): string - - }}">fieldValidation - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">ClusterCIDR): OK - -201 (}}">ClusterCIDR): Created - -401: Unauthorized - - -### `patch` partially update the specified ClusterCIDR - -#### HTTP Request - -PATCH /apis/networking.k8s.io/v1alpha1/clustercidrs/{name} - -#### Parameters - - -- **name** (*in path*): string, required - - name of the ClusterCIDR - - -- **body**: }}">Patch, required - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldManager** (*in query*): string - - }}">fieldManager - - -- **fieldValidation** (*in query*): string - - }}">fieldValidation - - -- **force** (*in query*): boolean - - }}">force - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">ClusterCIDR): OK - -201 (}}">ClusterCIDR): Created - -401: Unauthorized - - -### `delete` delete a ClusterCIDR - -#### HTTP Request - -DELETE /apis/networking.k8s.io/v1alpha1/clustercidrs/{name} - -#### Parameters - - -- **name** (*in path*): string, required - - name of the ClusterCIDR - - -- **body**: }}">DeleteOptions - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **gracePeriodSeconds** (*in query*): integer - - }}">gracePeriodSeconds - - -- **pretty** (*in query*): string - - }}">pretty - - -- **propagationPolicy** (*in query*): string - - }}">propagationPolicy - - - -#### Response - - -200 (}}">Status): OK - -202 (}}">Status): Accepted - -401: Unauthorized - - -### `deletecollection` delete collection of ClusterCIDR - -#### HTTP Request - -DELETE /apis/networking.k8s.io/v1alpha1/clustercidrs - -#### Parameters - - -- **body**: }}">DeleteOptions - - - - -- **continue** (*in query*): string - - }}">continue - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldSelector** (*in query*): string - - }}">fieldSelector - - -- **gracePeriodSeconds** (*in query*): integer - - }}">gracePeriodSeconds - - -- **labelSelector** (*in query*): string - - }}">labelSelector - - -- **limit** (*in query*): integer - - }}">limit - - -- **pretty** (*in query*): string - - }}">pretty - - -- **propagationPolicy** (*in query*): string - - }}">propagationPolicy - - -- **resourceVersion** (*in query*): string - - }}">resourceVersion - - -- **resourceVersionMatch** (*in query*): string - - }}">resourceVersionMatch - - -- **sendInitialEvents** (*in query*): boolean - - }}">sendInitialEvents - - -- **timeoutSeconds** (*in query*): integer - - }}">timeoutSeconds - - - -#### Response - - -200 (}}">Status): OK - -401: Unauthorized - diff --git a/content/en/docs/reference/kubernetes-api/cluster-resources/component-status-v1.md b/content/en/docs/reference/kubernetes-api/cluster-resources/component-status-v1.md index f1bcf3b065496..662804952b3f4 100644 --- a/content/en/docs/reference/kubernetes-api/cluster-resources/component-status-v1.md +++ b/content/en/docs/reference/kubernetes-api/cluster-resources/component-status-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "ComponentStatus (and ComponentStatusList) holds the cluster validation info." title: "ComponentStatus" -weight: 10 +weight: 2 auto_generated: true --- @@ -46,6 +46,8 @@ ComponentStatus (and ComponentStatusList) holds the cluster validation info. Dep *Patch strategy: merge on key `type`* + *Map: unique values on key type will be kept during a merge* + List of component conditions observed @@ -120,9 +122,9 @@ GET /api/v1/componentstatuses/{name} name of the ComponentStatus -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -143,59 +145,59 @@ GET /api/v1/componentstatuses #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + diff --git a/content/en/docs/reference/kubernetes-api/cluster-resources/event-v1.md b/content/en/docs/reference/kubernetes-api/cluster-resources/event-v1.md index fcdec600ee723..9441c6968c590 100644 --- a/content/en/docs/reference/kubernetes-api/cluster-resources/event-v1.md +++ b/content/en/docs/reference/kubernetes-api/cluster-resources/event-v1.md @@ -185,14 +185,14 @@ GET /apis/events.k8s.io/v1/namespaces/{namespace}/events/{name} name of the Event -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -213,64 +213,64 @@ GET /apis/events.k8s.io/v1/namespaces/{namespace}/events #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -291,59 +291,59 @@ GET /apis/events.k8s.io/v1/events #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -364,34 +364,34 @@ POST /apis/events.k8s.io/v1/namespaces/{namespace}/events #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Event, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Event, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -421,34 +421,34 @@ PUT /apis/events.k8s.io/v1/namespaces/{namespace}/events/{name} name of the Event -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Event, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Event, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -476,39 +476,39 @@ PATCH /apis/events.k8s.io/v1/namespaces/{namespace}/events/{name} name of the Event -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -536,34 +536,39 @@ DELETE /apis/events.k8s.io/v1/namespaces/{namespace}/events/{name} name of the Event -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + + + +- **dryRun** (*in query*): string + + }}">dryRun @@ -586,74 +591,79 @@ DELETE /apis/events.k8s.io/v1/namespaces/{namespace}/events #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + + + +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/cluster-resources/ip-address-v1beta1.md b/content/en/docs/reference/kubernetes-api/cluster-resources/ip-address-v1beta1.md new file mode 100644 index 0000000000000..b52a304f66859 --- /dev/null +++ b/content/en/docs/reference/kubernetes-api/cluster-resources/ip-address-v1beta1.md @@ -0,0 +1,515 @@ +--- +api_metadata: + apiVersion: "networking.k8s.io/v1beta1" + import: "k8s.io/api/networking/v1beta1" + kind: "IPAddress" +content_type: "api_reference" +description: "IPAddress represents a single IP of a single IP Family." +title: "IPAddress v1beta1" +weight: 4 +auto_generated: true +--- + + + +`apiVersion: networking.k8s.io/v1beta1` + +`import "k8s.io/api/networking/v1beta1"` + + +## IPAddress {#IPAddress} + +IPAddress represents a single IP of a single IP Family. The object is designed to be used by APIs that operate on IP addresses. The object is used by the Service core API for allocation of IP addresses. An IP address can be represented in different formats, to guarantee the uniqueness of the IP, the name of the object is the IP address in canonical format, four decimal digits separated by dots suppressing leading zeros for IPv4 and the representation defined by RFC 5952 for IPv6. Valid: 192.168.1.5 or 2001:db8::1 or 2001:db8:aaaa:bbbb:cccc:dddd:eeee:1 Invalid: 10.01.2.3 or 2001:db8:0:0:0::1 + +
+ +- **apiVersion**: networking.k8s.io/v1beta1 + + +- **kind**: IPAddress + + +- **metadata** (}}">ObjectMeta) + + Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata + +- **spec** (}}">IPAddressSpec) + + spec is the desired state of the IPAddress. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status + + + + + +## IPAddressSpec {#IPAddressSpec} + +IPAddressSpec describe the attributes in an IP Address. + +
+ +- **parentRef** (ParentReference), required + + ParentRef references the resource that an IPAddress is attached to. An IPAddress must reference a parent object. + + + *ParentReference describes a reference to a parent object.* + + - **parentRef.name** (string), required + + Name is the name of the object being referenced. + + - **parentRef.resource** (string), required + + Resource is the resource of the object being referenced. + + - **parentRef.group** (string) + + Group is the group of the object being referenced. + + - **parentRef.namespace** (string) + + Namespace is the namespace of the object being referenced. + + + + + +## IPAddressList {#IPAddressList} + +IPAddressList contains a list of IPAddress. + +
+ +- **apiVersion**: networking.k8s.io/v1beta1 + + +- **kind**: IPAddressList + + +- **metadata** (}}">ListMeta) + + Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata + +- **items** ([]}}">IPAddress), required + + items is the list of IPAddresses. + + + + + +## Operations {#Operations} + + + +
+ + + + + + +### `get` read the specified IPAddress + +#### HTTP Request + +GET /apis/networking.k8s.io/v1beta1/ipaddresses/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the IPAddress + + +- ****: + + + + + +#### Response + + +200 (}}">IPAddress): OK + +401: Unauthorized + + +### `list` list or watch objects of kind IPAddress + +#### HTTP Request + +GET /apis/networking.k8s.io/v1beta1/ipaddresses + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + + +#### Response + + +200 (}}">IPAddressList): OK + +401: Unauthorized + + +### `create` create an IPAddress + +#### HTTP Request + +POST /apis/networking.k8s.io/v1beta1/ipaddresses + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- **body**: }}">IPAddress, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">IPAddress): OK + +201 (}}">IPAddress): Created + +202 (}}">IPAddress): Accepted + +401: Unauthorized + + +### `update` replace the specified IPAddress + +#### HTTP Request + +PUT /apis/networking.k8s.io/v1beta1/ipaddresses/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the IPAddress + + +- ****: + + + + +- ****: + + + + +- **body**: }}">IPAddress, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">IPAddress): OK + +201 (}}">IPAddress): Created + +401: Unauthorized + + +### `patch` partially update the specified IPAddress + +#### HTTP Request + +PATCH /apis/networking.k8s.io/v1beta1/ipaddresses/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the IPAddress + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">IPAddress): OK + +201 (}}">IPAddress): Created + +401: Unauthorized + + +### `delete` delete an IPAddress + +#### HTTP Request + +DELETE /apis/networking.k8s.io/v1beta1/ipaddresses/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the IPAddress + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + + +#### Response + + +200 (}}">Status): OK + +202 (}}">Status): Accepted + +401: Unauthorized + + +### `deletecollection` delete collection of IPAddress + +#### HTTP Request + +DELETE /apis/networking.k8s.io/v1beta1/ipaddresses + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + + +#### Response + + +200 (}}">Status): OK + +401: Unauthorized + diff --git a/content/en/docs/reference/kubernetes-api/cluster-resources/lease-candidate-v1alpha1.md b/content/en/docs/reference/kubernetes-api/cluster-resources/lease-candidate-v1alpha1.md index 85397cccc42e6..d0a2e4ad47f81 100644 --- a/content/en/docs/reference/kubernetes-api/cluster-resources/lease-candidate-v1alpha1.md +++ b/content/en/docs/reference/kubernetes-api/cluster-resources/lease-candidate-v1alpha1.md @@ -4,9 +4,633 @@ api_metadata: import: "k8s.io/api/coordination/v1alpha1" kind: "LeaseCandidate" content_type: "api_reference" -description: "This is a placeholder page to be overwritten when the docs are generated for 1.31" -title: "LeaseCandidate" -weight: 5 +description: "LeaseCandidate defines a candidate for a Lease object." +title: "LeaseCandidate v1alpha1" +weight: 6 +auto_generated: true --- + + +`apiVersion: coordination.k8s.io/v1alpha1` + +`import "k8s.io/api/coordination/v1alpha1"` + + +## LeaseCandidate {#LeaseCandidate} + +LeaseCandidate defines a candidate for a Lease object. Candidates are created such that coordinated leader election will pick the best leader from the list of candidates. + +
+ +- **apiVersion**: coordination.k8s.io/v1alpha1 + + +- **kind**: LeaseCandidate + + +- **metadata** (}}">ObjectMeta) + + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata + +- **spec** (}}">LeaseCandidateSpec) + + spec contains the specification of the Lease. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status + + + + + +## LeaseCandidateSpec {#LeaseCandidateSpec} + +LeaseCandidateSpec is a specification of a Lease. + +
+ +- **leaseName** (string), required + + LeaseName is the name of the lease for which this candidate is contending. This field is immutable. + +- **preferredStrategies** ([]string), required + + *Atomic: will be replaced during a merge* + + PreferredStrategies indicates the list of strategies for picking the leader for coordinated leader election. The list is ordered, and the first strategy supersedes all other strategies. The list is used by coordinated leader election to make a decision about the final election strategy. This follows as - If all clients have strategy X as the first element in this list, strategy X will be used. - If a candidate has strategy [X] and another candidate has strategy [Y, X], Y supersedes X and strategy Y + will be used. + - If a candidate has strategy [X, Y] and another candidate has strategy [Y, X], this is a user error and leader + election will not operate the Lease until resolved. + (Alpha) Using this field requires the CoordinatedLeaderElection feature gate to be enabled. + +- **binaryVersion** (string) + + BinaryVersion is the binary version. It must be in a semver format without leading `v`. This field is required when strategy is "OldestEmulationVersion" + +- **emulationVersion** (string) + + EmulationVersion is the emulation version. It must be in a semver format without leading `v`. EmulationVersion must be less than or equal to BinaryVersion. This field is required when strategy is "OldestEmulationVersion" + +- **pingTime** (MicroTime) + + PingTime is the last time that the server has requested the LeaseCandidate to renew. It is only done during leader election to check if any LeaseCandidates have become ineligible. When PingTime is updated, the LeaseCandidate will respond by updating RenewTime. + + + *MicroTime is version of Time with microsecond level precision.* + +- **renewTime** (MicroTime) + + RenewTime is the time that the LeaseCandidate was last updated. Any time a Lease needs to do leader election, the PingTime field is updated to signal to the LeaseCandidate that they should update the RenewTime. Old LeaseCandidate objects are also garbage collected if it has been hours since the last renew. The PingTime field is updated regularly to prevent garbage collection for still active LeaseCandidates. + + + *MicroTime is version of Time with microsecond level precision.* + + + + + +## LeaseCandidateList {#LeaseCandidateList} + +LeaseCandidateList is a list of Lease objects. + +
+ +- **apiVersion**: coordination.k8s.io/v1alpha1 + + +- **kind**: LeaseCandidateList + + +- **metadata** (}}">ListMeta) + + Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata + +- **items** ([]}}">LeaseCandidate), required + + items is a list of schema objects. + + + + + +## Operations {#Operations} + + + +
+ + + + + + +### `get` read the specified LeaseCandidate + +#### HTTP Request + +GET /apis/coordination.k8s.io/v1alpha1/namespaces/{namespace}/leasecandidates/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the LeaseCandidate + + +- ****: + + + + +- ****: + + + + + +#### Response + + +200 (}}">LeaseCandidate): OK + +401: Unauthorized + + +### `list` list or watch objects of kind LeaseCandidate + +#### HTTP Request + +GET /apis/coordination.k8s.io/v1alpha1/namespaces/{namespace}/leasecandidates + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + + +#### Response + + +200 (}}">LeaseCandidateList): OK + +401: Unauthorized + + +### `list` list or watch objects of kind LeaseCandidate + +#### HTTP Request + +GET /apis/coordination.k8s.io/v1alpha1/leasecandidates + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + + +#### Response + + +200 (}}">LeaseCandidateList): OK + +401: Unauthorized + + +### `create` create a LeaseCandidate + +#### HTTP Request + +POST /apis/coordination.k8s.io/v1alpha1/namespaces/{namespace}/leasecandidates + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **body**: }}">LeaseCandidate, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">LeaseCandidate): OK + +201 (}}">LeaseCandidate): Created + +202 (}}">LeaseCandidate): Accepted + +401: Unauthorized + + +### `update` replace the specified LeaseCandidate + +#### HTTP Request + +PUT /apis/coordination.k8s.io/v1alpha1/namespaces/{namespace}/leasecandidates/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the LeaseCandidate + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **body**: }}">LeaseCandidate, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">LeaseCandidate): OK + +201 (}}">LeaseCandidate): Created + +401: Unauthorized + + +### `patch` partially update the specified LeaseCandidate + +#### HTTP Request + +PATCH /apis/coordination.k8s.io/v1alpha1/namespaces/{namespace}/leasecandidates/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the LeaseCandidate + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">LeaseCandidate): OK + +201 (}}">LeaseCandidate): Created + +401: Unauthorized + + +### `delete` delete a LeaseCandidate + +#### HTTP Request + +DELETE /apis/coordination.k8s.io/v1alpha1/namespaces/{namespace}/leasecandidates/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the LeaseCandidate + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + + +#### Response + + +200 (}}">Status): OK + +202 (}}">Status): Accepted + +401: Unauthorized + + +### `deletecollection` delete collection of LeaseCandidate + +#### HTTP Request + +DELETE /apis/coordination.k8s.io/v1alpha1/namespaces/{namespace}/leasecandidates + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + + +#### Response + + +200 (}}">Status): OK + +401: Unauthorized diff --git a/content/en/docs/reference/kubernetes-api/cluster-resources/lease-v1.md b/content/en/docs/reference/kubernetes-api/cluster-resources/lease-v1.md index c88ee6d7e4d3f..32e3b445ceae0 100644 --- a/content/en/docs/reference/kubernetes-api/cluster-resources/lease-v1.md +++ b/content/en/docs/reference/kubernetes-api/cluster-resources/lease-v1.md @@ -65,16 +65,20 @@ LeaseSpec is a specification of a Lease. - **holderIdentity** (string) - holderIdentity contains the identity of the holder of a current lease. + holderIdentity contains the identity of the holder of a current lease. If Coordinated Leader Election is used, the holder identity must be equal to the elected LeaseCandidate.metadata.name field. - **leaseDurationSeconds** (int32) - leaseDurationSeconds is a duration that candidates for a lease need to wait to force acquire it. This is measure against time of last observed renewTime. + leaseDurationSeconds is a duration that candidates for a lease need to wait to force acquire it. This is measured against the time of last observed renewTime. - **leaseTransitions** (int32) leaseTransitions is the number of transitions of a lease between holders. +- **preferredHolder** (string) + + PreferredHolder signals to a lease holder that the lease has a more optimal holder and should be given up. This field can only be set if Strategy is also set. + - **renewTime** (MicroTime) renewTime is a time when the current holder of a lease has last updated the lease. @@ -82,6 +86,10 @@ LeaseSpec is a specification of a Lease. *MicroTime is version of Time with microsecond level precision.* +- **strategy** (string) + + Strategy indicates the strategy for picking the leader for coordinated leader election. If the field is not specified, there is no active coordination for this lease. (Alpha) Using this field requires the CoordinatedLeaderElection feature gate to be enabled. + @@ -135,14 +143,14 @@ GET /apis/coordination.k8s.io/v1/namespaces/{namespace}/leases/{name} name of the Lease -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -163,64 +171,64 @@ GET /apis/coordination.k8s.io/v1/namespaces/{namespace}/leases #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -241,59 +249,59 @@ GET /apis/coordination.k8s.io/v1/leases #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -314,34 +322,34 @@ POST /apis/coordination.k8s.io/v1/namespaces/{namespace}/leases #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Lease, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Lease, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -371,34 +379,34 @@ PUT /apis/coordination.k8s.io/v1/namespaces/{namespace}/leases/{name} name of the Lease -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Lease, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Lease, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -426,39 +434,39 @@ PATCH /apis/coordination.k8s.io/v1/namespaces/{namespace}/leases/{name} name of the Lease -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -486,34 +494,39 @@ DELETE /apis/coordination.k8s.io/v1/namespaces/{namespace}/leases/{name} name of the Lease -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + + + +- **dryRun** (*in query*): string + + }}">dryRun @@ -536,74 +549,79 @@ DELETE /apis/coordination.k8s.io/v1/namespaces/{namespace}/leases #### Parameters -- **namespace** (*in path*): string, required +- ****: + + + + +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- **dryRun** (*in query*): string - }}">timeoutSeconds + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/cluster-resources/namespace-v1.md b/content/en/docs/reference/kubernetes-api/cluster-resources/namespace-v1.md index 6388d7126e4db..4435581f17c3a 100644 --- a/content/en/docs/reference/kubernetes-api/cluster-resources/namespace-v1.md +++ b/content/en/docs/reference/kubernetes-api/cluster-resources/namespace-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "Namespace provides a scope for Names." title: "Namespace" -weight: 2 +weight: 7 auto_generated: true --- @@ -62,6 +62,8 @@ NamespaceSpec describes the attributes on a Namespace. - **finalizers** ([]string) + *Atomic: will be replaced during a merge* + Finalizers is an opaque list of values that must be empty to permanently remove object from storage. More info: https://kubernetes.io/docs/tasks/administer-cluster/namespaces/ @@ -78,6 +80,8 @@ NamespaceStatus is information about the current status of a Namespace. *Patch strategy: merge on key `type`* + *Map: unique values on key type will be kept during a merge* + Represents the latest available observations of a namespace's current state. @@ -160,9 +164,9 @@ GET /api/v1/namespaces/{name} name of the Namespace -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -188,9 +192,9 @@ GET /api/v1/namespaces/{name}/status name of the Namespace -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -211,59 +215,59 @@ GET /api/v1/namespaces #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -284,29 +288,29 @@ POST /api/v1/namespaces #### Parameters -- **body**: }}">Namespace, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Namespace, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -336,29 +340,29 @@ PUT /api/v1/namespaces/{name} name of the Namespace -- **body**: }}">Namespace, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Namespace, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -381,24 +385,29 @@ PUT /api/v1/namespaces/{name}/finalize #### Parameters +- ****: + + + + - **name** (*in path*): string, required name of the Namespace -- **body**: }}">Namespace, required +- ****: -- **dryRun** (*in query*): string +- **body**: }}">Namespace, required - }}">dryRun + -- **fieldManager** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldManager + }}">dryRun - **fieldValidation** (*in query*): string @@ -406,11 +415,6 @@ PUT /api/v1/namespaces/{name}/finalize }}">fieldValidation -- **pretty** (*in query*): string - - }}">pretty - - #### Response @@ -436,29 +440,29 @@ PUT /api/v1/namespaces/{name}/status name of the Namespace -- **body**: }}">Namespace, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Namespace, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -486,34 +490,34 @@ PATCH /api/v1/namespaces/{name} name of the Namespace -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -541,34 +545,34 @@ PATCH /api/v1/namespaces/{name}/status name of the Namespace -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -596,29 +600,34 @@ DELETE /api/v1/namespaces/{name} name of the Namespace -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- **dryRun** (*in query*): string - }}">propagationPolicy + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/cluster-resources/node-v1.md b/content/en/docs/reference/kubernetes-api/cluster-resources/node-v1.md index 0a73ea2cb2d04..1fca02885efd1 100644 --- a/content/en/docs/reference/kubernetes-api/cluster-resources/node-v1.md +++ b/content/en/docs/reference/kubernetes-api/cluster-resources/node-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "Node is a worker node in Kubernetes." title: "Node" -weight: 1 +weight: 8 auto_generated: true --- @@ -104,6 +104,8 @@ NodeSpec describes the attributes that a node is created with. - **podCIDRs** ([]string) + *Set: unique values will be kept during a merge* + podCIDRs represents the IP ranges assigned to the node for usage by Pods on that node. If this field is specified, the 0th entry must match the podCIDR field. It may contain at most 1 value for each of IPv4 and IPv6. - **providerID** (string) @@ -112,6 +114,8 @@ NodeSpec describes the attributes that a node is created with. - **taints** ([]Taint) + *Atomic: will be replaced during a merge* + If specified, the node's taints. @@ -154,6 +158,8 @@ NodeStatus is information about the current status of a node. *Patch strategy: merge on key `type`* + *Map: unique values on key type will be kept during a merge* + 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. Consumers should assume that addresses can change during the lifetime of a Node. However, there are some exceptions where this may not be possible, such as Pods that inherit a Node's address in its own status or consumers of the downward API (status.hostIP). @@ -173,12 +179,14 @@ NodeStatus is information about the current status of a node. - **capacity** (map[string]}}">Quantity) - Capacity represents the total resources of a node. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#capacity + Capacity represents the total resources of a node. More info: https://kubernetes.io/docs/reference/node/node-status/#capacity - **conditions** ([]NodeCondition) *Patch strategy: merge on key `type`* + *Map: unique values on key type will be kept during a merge* + Conditions is an array of current observed node conditions. More info: https://kubernetes.io/docs/concepts/nodes/node/#condition @@ -345,8 +353,21 @@ NodeStatus is information about the current status of a node. Port number of the given endpoint. +- **features** (NodeFeatures) + + Features describes the set of features implemented by the CRI implementation. + + + *NodeFeatures describes the set of features implemented by the CRI implementation. The features contained in the NodeFeatures should depend only on the cri implementation independent of runtime handlers.* + + - **features.supplementalGroupsPolicy** (boolean) + + SupplementalGroupsPolicy is set to true if the runtime supports SupplementalGroupsPolicy and ContainerUser. + - **images** ([]ContainerImage) + *Atomic: will be replaced during a merge* + List of container images on this node @@ -354,6 +375,8 @@ NodeStatus is information about the current status of a node. - **images.names** ([]string) + *Atomic: will be replaced during a merge* + Names by which this image is known. e.g. ["kubernetes.example/hyperkube:v1.0.7", "cloud-vendor.registry.example/cloud-vendor/hyperkube:v1.0.7"] - **images.sizeBytes** (int64) @@ -385,7 +408,7 @@ NodeStatus is information about the current status of a node. - **nodeInfo.kubeProxyVersion** (string), required - KubeProxy Version reported by the node. + Deprecated: KubeProxy Version reported by the node. - **nodeInfo.kubeletVersion** (string), required @@ -411,8 +434,38 @@ NodeStatus is information about the current status of a node. NodePhase is the recently observed lifecycle phase of the node. More info: https://kubernetes.io/docs/concepts/nodes/node/#phase The field is never populated, and now is deprecated. +- **runtimeHandlers** ([]NodeRuntimeHandler) + + *Atomic: will be replaced during a merge* + + The available runtime handlers. + + + *NodeRuntimeHandler is a set of runtime handler information.* + + - **runtimeHandlers.features** (NodeRuntimeHandlerFeatures) + + Supported features. + + + *NodeRuntimeHandlerFeatures is a set of features implemented by the runtime handler.* + + - **runtimeHandlers.features.recursiveReadOnlyMounts** (boolean) + + RecursiveReadOnlyMounts is set to true if the runtime handler supports RecursiveReadOnlyMounts. + + - **runtimeHandlers.features.userNamespaces** (boolean) + + UserNamespaces is set to true if the runtime handler supports UserNamespaces, including for volumes. + + - **runtimeHandlers.name** (string) + + Runtime handler name. Empty for the default runtime handler. + - **volumesAttached** ([]AttachedVolume) + *Atomic: will be replaced during a merge* + List of volumes that are attached to the node. @@ -428,6 +481,8 @@ NodeStatus is information about the current status of a node. - **volumesInUse** ([]string) + *Atomic: will be replaced during a merge* + List of attachable volumes in use (mounted) by the node. @@ -483,9 +538,9 @@ GET /api/v1/nodes/{name} name of the Node -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -511,9 +566,9 @@ GET /api/v1/nodes/{name}/status name of the Node -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -534,59 +589,59 @@ GET /api/v1/nodes #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -607,29 +662,29 @@ POST /api/v1/nodes #### Parameters -- **body**: }}">Node, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Node, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -659,29 +714,29 @@ PUT /api/v1/nodes/{name} name of the Node -- **body**: }}">Node, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Node, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -709,29 +764,29 @@ PUT /api/v1/nodes/{name}/status name of the Node -- **body**: }}">Node, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Node, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -759,34 +814,34 @@ PATCH /api/v1/nodes/{name} name of the Node -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -814,34 +869,34 @@ PATCH /api/v1/nodes/{name}/status name of the Node -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -869,29 +924,34 @@ DELETE /api/v1/nodes/{name} name of the Node -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- **dryRun** (*in query*): string - }}">propagationPolicy + }}">dryRun @@ -914,69 +974,74 @@ DELETE /api/v1/nodes #### Parameters -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: + + - }}">sendInitialEvents +- ****: + + -- **timeoutSeconds** (*in query*): integer - }}">timeoutSeconds +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/cluster-resources/runtime-class-v1.md b/content/en/docs/reference/kubernetes-api/cluster-resources/runtime-class-v1.md index 0fade3be57e8d..c1d322943c881 100644 --- a/content/en/docs/reference/kubernetes-api/cluster-resources/runtime-class-v1.md +++ b/content/en/docs/reference/kubernetes-api/cluster-resources/runtime-class-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "RuntimeClass defines a class of container runtime supported in the cluster." title: "RuntimeClass" -weight: 6 +weight: 9 auto_generated: true --- @@ -151,9 +151,9 @@ GET /apis/node.k8s.io/v1/runtimeclasses/{name} name of the RuntimeClass -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -174,59 +174,59 @@ GET /apis/node.k8s.io/v1/runtimeclasses #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -247,29 +247,29 @@ POST /apis/node.k8s.io/v1/runtimeclasses #### Parameters -- **body**: }}">RuntimeClass, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">RuntimeClass, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -299,29 +299,29 @@ PUT /apis/node.k8s.io/v1/runtimeclasses/{name} name of the RuntimeClass -- **body**: }}">RuntimeClass, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">RuntimeClass, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -349,34 +349,34 @@ PATCH /apis/node.k8s.io/v1/runtimeclasses/{name} name of the RuntimeClass -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -404,29 +404,34 @@ DELETE /apis/node.k8s.io/v1/runtimeclasses/{name} name of the RuntimeClass -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: + + - }}">propagationPolicy + +- **dryRun** (*in query*): string + + }}">dryRun @@ -449,69 +454,74 @@ DELETE /apis/node.k8s.io/v1/runtimeclasses #### Parameters -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: + + - }}">timeoutSeconds + +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/cluster-resources/service-cidr-v1beta1.md b/content/en/docs/reference/kubernetes-api/cluster-resources/service-cidr-v1beta1.md new file mode 100644 index 0000000000000..a34cc3fc69c7d --- /dev/null +++ b/content/en/docs/reference/kubernetes-api/cluster-resources/service-cidr-v1beta1.md @@ -0,0 +1,683 @@ +--- +api_metadata: + apiVersion: "networking.k8s.io/v1beta1" + import: "k8s.io/api/networking/v1beta1" + kind: "ServiceCIDR" +content_type: "api_reference" +description: "ServiceCIDR defines a range of IP addresses using CIDR format (e." +title: "ServiceCIDR v1beta1" +weight: 10 +auto_generated: true +--- + + + +`apiVersion: networking.k8s.io/v1beta1` + +`import "k8s.io/api/networking/v1beta1"` + + +## ServiceCIDR {#ServiceCIDR} + +ServiceCIDR defines a range of IP addresses using CIDR format (e.g. 192.168.0.0/24 or 2001:db2::/64). This range is used to allocate ClusterIPs to Service objects. + +
+ +- **apiVersion**: networking.k8s.io/v1beta1 + + +- **kind**: ServiceCIDR + + +- **metadata** (}}">ObjectMeta) + + Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata + +- **spec** (}}">ServiceCIDRSpec) + + spec is the desired state of the ServiceCIDR. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status + +- **status** (}}">ServiceCIDRStatus) + + status represents the current state of the ServiceCIDR. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status + + + + + +## ServiceCIDRSpec {#ServiceCIDRSpec} + +ServiceCIDRSpec define the CIDRs the user wants to use for allocating ClusterIPs for Services. + +
+ +- **cidrs** ([]string) + + *Atomic: will be replaced during a merge* + + CIDRs defines the IP blocks in CIDR notation (e.g. "192.168.0.0/24" or "2001:db8::/64") from which to assign service cluster IPs. Max of two CIDRs is allowed, one of each IP family. This field is immutable. + + + + + +## ServiceCIDRStatus {#ServiceCIDRStatus} + +ServiceCIDRStatus describes the current state of the ServiceCIDR. + +
+ +- **conditions** ([]Condition) + + *Patch strategy: merge on key `type`* + + *Map: unique values on key type will be kept during a merge* + + conditions holds an array of metav1.Condition that describe the state of the ServiceCIDR. Current service state + + + *Condition contains details for one aspect of the current state of this API Resource.* + + - **conditions.lastTransitionTime** (Time), required + + lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + + + *Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.* + + - **conditions.message** (string), required + + message is a human readable message indicating details about the transition. This may be an empty string. + + - **conditions.reason** (string), required + + reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty. + + - **conditions.status** (string), required + + status of the condition, one of True, False, Unknown. + + - **conditions.type** (string), required + + type of condition in CamelCase or in foo.example.com/CamelCase. + + - **conditions.observedGeneration** (int64) + + observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance. + + + + + +## ServiceCIDRList {#ServiceCIDRList} + +ServiceCIDRList contains a list of ServiceCIDR objects. + +
+ +- **apiVersion**: networking.k8s.io/v1beta1 + + +- **kind**: ServiceCIDRList + + +- **metadata** (}}">ListMeta) + + Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata + +- **items** ([]}}">ServiceCIDR), required + + items is the list of ServiceCIDRs. + + + + + +## Operations {#Operations} + + + +
+ + + + + + +### `get` read the specified ServiceCIDR + +#### HTTP Request + +GET /apis/networking.k8s.io/v1beta1/servicecidrs/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ServiceCIDR + + +- ****: + + + + + +#### Response + + +200 (}}">ServiceCIDR): OK + +401: Unauthorized + + +### `get` read status of the specified ServiceCIDR + +#### HTTP Request + +GET /apis/networking.k8s.io/v1beta1/servicecidrs/{name}/status + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ServiceCIDR + + +- ****: + + + + + +#### Response + + +200 (}}">ServiceCIDR): OK + +401: Unauthorized + + +### `list` list or watch objects of kind ServiceCIDR + +#### HTTP Request + +GET /apis/networking.k8s.io/v1beta1/servicecidrs + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + + +#### Response + + +200 (}}">ServiceCIDRList): OK + +401: Unauthorized + + +### `create` create a ServiceCIDR + +#### HTTP Request + +POST /apis/networking.k8s.io/v1beta1/servicecidrs + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- **body**: }}">ServiceCIDR, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">ServiceCIDR): OK + +201 (}}">ServiceCIDR): Created + +202 (}}">ServiceCIDR): Accepted + +401: Unauthorized + + +### `update` replace the specified ServiceCIDR + +#### HTTP Request + +PUT /apis/networking.k8s.io/v1beta1/servicecidrs/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ServiceCIDR + + +- ****: + + + + +- ****: + + + + +- **body**: }}">ServiceCIDR, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">ServiceCIDR): OK + +201 (}}">ServiceCIDR): Created + +401: Unauthorized + + +### `update` replace status of the specified ServiceCIDR + +#### HTTP Request + +PUT /apis/networking.k8s.io/v1beta1/servicecidrs/{name}/status + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ServiceCIDR + + +- ****: + + + + +- ****: + + + + +- **body**: }}">ServiceCIDR, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">ServiceCIDR): OK + +201 (}}">ServiceCIDR): Created + +401: Unauthorized + + +### `patch` partially update the specified ServiceCIDR + +#### HTTP Request + +PATCH /apis/networking.k8s.io/v1beta1/servicecidrs/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ServiceCIDR + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">ServiceCIDR): OK + +201 (}}">ServiceCIDR): Created + +401: Unauthorized + + +### `patch` partially update status of the specified ServiceCIDR + +#### HTTP Request + +PATCH /apis/networking.k8s.io/v1beta1/servicecidrs/{name}/status + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ServiceCIDR + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">ServiceCIDR): OK + +201 (}}">ServiceCIDR): Created + +401: Unauthorized + + +### `delete` delete a ServiceCIDR + +#### HTTP Request + +DELETE /apis/networking.k8s.io/v1beta1/servicecidrs/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ServiceCIDR + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + + +#### Response + + +200 (}}">Status): OK + +202 (}}">Status): Accepted + +401: Unauthorized + + +### `deletecollection` delete collection of ServiceCIDR + +#### HTTP Request + +DELETE /apis/networking.k8s.io/v1beta1/servicecidrs + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + + +#### Response + + +200 (}}">Status): OK + +401: Unauthorized + diff --git a/content/en/docs/reference/kubernetes-api/common-definitions/delete-options.md b/content/en/docs/reference/kubernetes-api/common-definitions/delete-options.md index 4131bcb1ddda9..5979b67d4e80e 100644 --- a/content/en/docs/reference/kubernetes-api/common-definitions/delete-options.md +++ b/content/en/docs/reference/kubernetes-api/common-definitions/delete-options.md @@ -36,6 +36,8 @@ DeleteOptions may be provided when deleting an API object. - **dryRun** ([]string) + *Atomic: will be replaced during a merge* + When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed - **gracePeriodSeconds** (int64) diff --git a/content/en/docs/reference/kubernetes-api/common-definitions/label-selector.md b/content/en/docs/reference/kubernetes-api/common-definitions/label-selector.md index 8569c661d7686..feb4cdeb692fc 100644 --- a/content/en/docs/reference/kubernetes-api/common-definitions/label-selector.md +++ b/content/en/docs/reference/kubernetes-api/common-definitions/label-selector.md @@ -32,6 +32,8 @@ A label selector is a label query over a set of resources. The result of matchLa - **matchExpressions** ([]LabelSelectorRequirement) + *Atomic: will be replaced during a merge* + matchExpressions is a list of label selector requirements. The requirements are ANDed. @@ -47,6 +49,8 @@ A label selector is a label query over a set of resources. The result of matchLa - **matchExpressions.values** ([]string) + *Atomic: will be replaced during a merge* + values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. - **matchLabels** (map[string]string) diff --git a/content/en/docs/reference/kubernetes-api/common-definitions/local-object-reference.md b/content/en/docs/reference/kubernetes-api/common-definitions/local-object-reference.md index ce56803bacbd9..f3ba8e1f4b106 100644 --- a/content/en/docs/reference/kubernetes-api/common-definitions/local-object-reference.md +++ b/content/en/docs/reference/kubernetes-api/common-definitions/local-object-reference.md @@ -32,7 +32,7 @@ LocalObjectReference contains enough information to let you locate the reference - **name** (string) - Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + Name of the referent. This field is effectively required, but due to backwards compatibility is allowed to be empty. Instances of this type with an empty value here are almost certainly wrong. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names diff --git a/content/en/docs/reference/kubernetes-api/common-definitions/node-selector-requirement.md b/content/en/docs/reference/kubernetes-api/common-definitions/node-selector-requirement.md index 33af2e88e30bb..bcbabaf39853f 100644 --- a/content/en/docs/reference/kubernetes-api/common-definitions/node-selector-requirement.md +++ b/content/en/docs/reference/kubernetes-api/common-definitions/node-selector-requirement.md @@ -40,6 +40,8 @@ A node selector requirement is a selector that contains values, a key, and an op - **values** ([]string) + *Atomic: will be replaced during a merge* + An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. diff --git a/content/en/docs/reference/kubernetes-api/common-definitions/object-meta.md b/content/en/docs/reference/kubernetes-api/common-definitions/object-meta.md index 9386baeb83e7f..7bc22fa73f6fe 100644 --- a/content/en/docs/reference/kubernetes-api/common-definitions/object-meta.md +++ b/content/en/docs/reference/kubernetes-api/common-definitions/object-meta.md @@ -63,10 +63,14 @@ ObjectMeta is metadata that all persisted resources must have, which includes al - **finalizers** ([]string) + *Set: unique values will be kept during a merge* + Must be empty before the object is deleted from the registry. Each entry is an identifier for the responsible component that will remove the entry from the list. If the deletionTimestamp of the object is non-nil, entries in this list can only be removed. Finalizers may be processed and removed in any order. Order is NOT enforced because it introduces significant risk of stuck finalizers. finalizers is a shared field, any actor with permission can reorder it. If the finalizer list is processed in order, then this can lead to a situation in which the component responsible for the first finalizer in the list is waiting for a signal (field value, external system, or other) produced by a component responsible for a finalizer later in the list, resulting in a deadlock. Without enforced ordering finalizers are free to order amongst themselves and are not vulnerable to ordering changes in the list. - **managedFields** ([]ManagedFieldsEntry) + *Atomic: will be replaced during a merge* + ManagedFields maps workflow-id and version to the set of fields that are managed by that workflow. This is mostly for internal housekeeping, and users typically shouldn't need to set or understand this field. A workflow can be the user's name, a controller's name, or the name of a specific apply path like "ci-cd". The set of fields is always in the version that the workflow used when modifying the object. @@ -114,6 +118,8 @@ ObjectMeta is metadata that all persisted resources must have, which includes al *Patch strategy: merge on key `uid`* + *Map: unique values on key uid will be kept during a merge* + List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller. diff --git a/content/en/docs/reference/kubernetes-api/common-definitions/status.md b/content/en/docs/reference/kubernetes-api/common-definitions/status.md index 9688eebe5ffb0..ff5a436a85093 100644 --- a/content/en/docs/reference/kubernetes-api/common-definitions/status.md +++ b/content/en/docs/reference/kubernetes-api/common-definitions/status.md @@ -40,6 +40,8 @@ Status is a return value for calls that don't return other objects. - **details** (StatusDetails) + *Atomic: will be replaced during a merge* + Extended data associated with the reason. Each reason may define its own extended details. This field is optional and the data returned is not guaranteed to conform to any schema except that defined by the reason type. @@ -47,6 +49,8 @@ Status is a return value for calls that don't return other objects. - **details.causes** ([]StatusCause) + *Atomic: will be replaced during a merge* + The Causes array includes more details associated with the StatusReason failure. Not all StatusReasons may provide detailed causes. diff --git a/content/en/docs/reference/kubernetes-api/common-parameters/common-parameters.md b/content/en/docs/reference/kubernetes-api/common-parameters/common-parameters.md index 6c4c643f80bdd..8e307ce087cee 100644 --- a/content/en/docs/reference/kubernetes-api/common-parameters/common-parameters.md +++ b/content/en/docs/reference/kubernetes-api/common-parameters/common-parameters.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "" title: "Common Parameters" -weight: 11 +weight: 10 auto_generated: true --- @@ -26,28 +26,6 @@ guide. You can file document formatting bugs against the -## allowWatchBookmarks {#allowWatchBookmarks} - -allowWatchBookmarks requests watch events with type "BOOKMARK". Servers that do not implement bookmarks may ignore this flag and bookmarks are sent at the server's discretion. Clients should not assume bookmarks are returned at any specific interval, nor may they assume the server will send any BOOKMARK event during a session. If this is not a watch, this field is ignored. - -
- - - - - -## continue {#continue} - -The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the "next key". - -This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications. - -
- - - - - ## dryRun {#dryRun} When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed @@ -58,26 +36,6 @@ When present, indicates that modifications should not be persisted. An invalid o -## fieldManager {#fieldManager} - -fieldManager is a name associated with the actor or entity that is making these changes. The value must be less than or 128 characters long, and only contain printable characters, as defined by https://pkg.go.dev/unicode#IsPrint. - -
- - - - - -## fieldSelector {#fieldSelector} - -A selector to restrict the list of returned objects by their fields. Defaults to everything. - -
- - - - - ## fieldValidation {#fieldValidation} fieldValidation instructs the server on how to handle objects in the request (POST/PUT/PATCH) containing unknown or duplicate fields. Valid values are: - Ignore: This will ignore any unknown fields that are silently dropped from the object, and will ignore all but the last duplicate field that the decoder encounters. This is the default behavior prior to v1.23. - Warn: This will send a warning via the standard warning response header for each unknown field that is dropped from the object, and for each duplicate field that is encountered. The request will still succeed if there are no other errors, and will only persist the last of any duplicate fields. This is the default in v1.23+ - Strict: This will fail the request with a BadRequest error if any unknown fields would be dropped from the object, or if any duplicate fields are present. The error returned from the server will contain all unknown and duplicate fields encountered. @@ -88,141 +46,3 @@ fieldValidation instructs the server on how to handle objects in the request (PO -## force {#force} - -Force is going to "force" Apply requests. It means user will re-acquire conflicting fields owned by other people. Force flag must be unset for non-apply patch requests. - -
- - - - - -## gracePeriodSeconds {#gracePeriodSeconds} - -The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately. - -
- - - - - -## labelSelector {#labelSelector} - -A selector to restrict the list of returned objects by their labels. Defaults to everything. - -
- - - - - -## limit {#limit} - -limit is a maximum number of responses to return for a list call. If more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true. - -The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned. - -
- - - - - -## namespace {#namespace} - -object name and auth scope, such as for teams and projects - -
- - - - - -## pretty {#pretty} - -If 'true', then the output is pretty printed. - -
- - - - - -## propagationPolicy {#propagationPolicy} - -Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: 'Orphan' - orphan the dependents; 'Background' - allow the garbage collector to delete the dependents in the background; 'Foreground' - a cascading policy that deletes all dependents in the foreground. - -
- - - - - -## resourceVersion {#resourceVersion} - -resourceVersion sets a constraint on what resource versions a request may be served from. See https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions for details. - -Defaults to unset - -
- - - - - -## resourceVersionMatch {#resourceVersionMatch} - -resourceVersionMatch determines how resourceVersion is applied to list calls. It is highly recommended that resourceVersionMatch be set for list calls where resourceVersion is set See https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions for details. - -Defaults to unset - -
- - - - - -## sendInitialEvents {#sendInitialEvents} - -`sendInitialEvents=true` may be set together with `watch=true`. In that case, the watch stream will begin with synthetic events to produce the current state of objects in the collection. Once all such events have been sent, a synthetic "Bookmark" event will be sent. The bookmark will report the ResourceVersion (RV) corresponding to the set of objects, and be marked with `"k8s.io/initial-events-end": "true"` annotation. Afterwards, the watch stream will proceed as usual, sending watch events corresponding to changes (subsequent to the RV) to objects watched. - -When `sendInitialEvents` option is set, we require `resourceVersionMatch` option to also be set. The semantic of the watch request is as following: - `resourceVersionMatch` = NotOlderThan - is interpreted as "data at least as new as the provided `resourceVersion`" - and the bookmark event is send when the state is synced - to a `resourceVersion` at least as fresh as the one provided by the ListOptions. - If `resourceVersion` is unset, this is interpreted as "consistent read" and the - bookmark event is send when the state is synced at least to the moment - when request started being processed. -- `resourceVersionMatch` set to any other value or unset - Invalid error is returned. - -Defaults to true if `resourceVersion=""` or `resourceVersion="0"` (for backward compatibility reasons) and to false otherwise. - -
- - - - - -## timeoutSeconds {#timeoutSeconds} - -Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity. - -
- - - - - -## watch {#watch} - -Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion. - -
- - - - - diff --git a/content/en/docs/reference/kubernetes-api/config-and-storage-resources/config-map-v1.md b/content/en/docs/reference/kubernetes-api/config-and-storage-resources/config-map-v1.md index 78318e2a089d4..7e150f8f5f6cf 100644 --- a/content/en/docs/reference/kubernetes-api/config-and-storage-resources/config-map-v1.md +++ b/content/en/docs/reference/kubernetes-api/config-and-storage-resources/config-map-v1.md @@ -107,14 +107,14 @@ GET /api/v1/namespaces/{namespace}/configmaps/{name} name of the ConfigMap -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -135,64 +135,64 @@ GET /api/v1/namespaces/{namespace}/configmaps #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -213,59 +213,59 @@ GET /api/v1/configmaps #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -286,34 +286,34 @@ POST /api/v1/namespaces/{namespace}/configmaps #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">ConfigMap, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ConfigMap, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -343,34 +343,34 @@ PUT /api/v1/namespaces/{namespace}/configmaps/{name} name of the ConfigMap -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">ConfigMap, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ConfigMap, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -398,39 +398,39 @@ PATCH /api/v1/namespaces/{namespace}/configmaps/{name} name of the ConfigMap -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -458,34 +458,39 @@ DELETE /api/v1/namespaces/{namespace}/configmaps/{name} name of the ConfigMap -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + + + +- **dryRun** (*in query*): string + + }}">dryRun @@ -508,74 +513,79 @@ DELETE /api/v1/namespaces/{namespace}/configmaps #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + + + +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/config-and-storage-resources/csi-driver-v1.md b/content/en/docs/reference/kubernetes-api/config-and-storage-resources/csi-driver-v1.md index 8f331c62bd097..49f23065af182 100644 --- a/content/en/docs/reference/kubernetes-api/config-and-storage-resources/csi-driver-v1.md +++ b/content/en/docs/reference/kubernetes-api/config-and-storage-resources/csi-driver-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "CSIDriver captures information about a Container Storage Interface (CSI) volume driver deployed on the cluster." title: "CSIDriver" -weight: 8 +weight: 3 auto_generated: true --- @@ -66,7 +66,7 @@ CSIDriverSpec is the specification of a CSIDriver. fsGroupPolicy defines if the underlying volume supports changing ownership and permission of the volume before being mounted. Refer to the specific FSGroupPolicy values for additional details. - This field is immutable. + This field was immutable in Kubernetes \< 1.29 and now is mutable. Defaults to ReadWriteOnceWithFSType, which will examine each volume to determine if Kubernetes should modify ownership and permissions of the volume. With the default policy the defined fsGroup will only be applied if a fstype is defined and the volume's access mode contains ReadWriteOnce. @@ -76,12 +76,12 @@ CSIDriverSpec is the specification of a CSIDriver. The CSI driver specifies podInfoOnMount as part of driver deployment. If true, Kubelet will pass pod information as VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is responsible for parsing and validating the information passed in as VolumeContext. - The following VolumeConext will be passed if podInfoOnMount is set to true. This list might grow, but the prefix will be used. "csi.storage.k8s.io/pod.name": pod.Name "csi.storage.k8s.io/pod.namespace": pod.Namespace "csi.storage.k8s.io/pod.uid": string(pod.UID) "csi.storage.k8s.io/ephemeral": "true" if the volume is an ephemeral inline volume + The following VolumeContext will be passed if podInfoOnMount is set to true. This list might grow, but the prefix will be used. "csi.storage.k8s.io/pod.name": pod.Name "csi.storage.k8s.io/pod.namespace": pod.Namespace "csi.storage.k8s.io/pod.uid": string(pod.UID) "csi.storage.k8s.io/ephemeral": "true" if the volume is an ephemeral inline volume defined by a CSIVolumeSource, otherwise "false" "csi.storage.k8s.io/ephemeral" is a new feature in Kubernetes 1.16. It is only required for drivers which support both the "Persistent" and "Ephemeral" VolumeLifecycleMode. Other drivers can leave pod info disabled and/or ignore this field. As Kubernetes 1.15 doesn't support this field, drivers can only support one mode when deployed on such a cluster and the deployment determines which mode that is, for example via a command line parameter of the driver. - This field is immutable. + This field was immutable in Kubernetes \< 1.29 and now is mutable. - **requiresRepublish** (boolean) @@ -199,9 +199,9 @@ GET /apis/storage.k8s.io/v1/csidrivers/{name} name of the CSIDriver -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -222,59 +222,59 @@ GET /apis/storage.k8s.io/v1/csidrivers #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -295,29 +295,29 @@ POST /apis/storage.k8s.io/v1/csidrivers #### Parameters -- **body**: }}">CSIDriver, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">CSIDriver, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -347,29 +347,29 @@ PUT /apis/storage.k8s.io/v1/csidrivers/{name} name of the CSIDriver -- **body**: }}">CSIDriver, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">CSIDriver, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -397,34 +397,34 @@ PATCH /apis/storage.k8s.io/v1/csidrivers/{name} name of the CSIDriver -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -452,29 +452,34 @@ DELETE /apis/storage.k8s.io/v1/csidrivers/{name} name of the CSIDriver -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- **dryRun** (*in query*): string - }}">propagationPolicy + }}">dryRun @@ -497,69 +502,74 @@ DELETE /apis/storage.k8s.io/v1/csidrivers #### Parameters -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: + + - }}">timeoutSeconds + +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/config-and-storage-resources/csi-node-v1.md b/content/en/docs/reference/kubernetes-api/config-and-storage-resources/csi-node-v1.md index 2315e13a76d5a..ad190eb99bdf8 100644 --- a/content/en/docs/reference/kubernetes-api/config-and-storage-resources/csi-node-v1.md +++ b/content/en/docs/reference/kubernetes-api/config-and-storage-resources/csi-node-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "CSINode holds information about all CSI drivers installed on a node." title: "CSINode" -weight: 9 +weight: 4 auto_generated: true --- @@ -60,6 +60,8 @@ CSINodeSpec holds information about the specification of all CSI drivers install *Patch strategy: merge on key `name`* + *Map: unique values on key name will be kept during a merge* + drivers is a list of information of all CSI Drivers existing on a node. If all drivers in the list are uninstalled, this can become empty. @@ -86,6 +88,8 @@ CSINodeSpec holds information about the specification of all CSI drivers install - **drivers.topologyKeys** ([]string) + *Atomic: will be replaced during a merge* + topologyKeys is the list of keys supported by the driver. When a driver is initialized on a cluster, it provides a set of topology keys that it understands (e.g. "company.com/zone", "company.com/region"). When a driver is initialized on a node, it provides the same topology keys along with values. Kubelet will expose these topology keys as labels on its own node object. When Kubernetes does topology aware provisioning, it can use this list to determine which labels it should retrieve from the node object and pass back to the driver. It is possible for different nodes to use different topology keys. This can be empty if driver does not support topology. @@ -141,9 +145,9 @@ GET /apis/storage.k8s.io/v1/csinodes/{name} name of the CSINode -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -164,59 +168,59 @@ GET /apis/storage.k8s.io/v1/csinodes #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -237,29 +241,29 @@ POST /apis/storage.k8s.io/v1/csinodes #### Parameters -- **body**: }}">CSINode, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">CSINode, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -289,29 +293,29 @@ PUT /apis/storage.k8s.io/v1/csinodes/{name} name of the CSINode -- **body**: }}">CSINode, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">CSINode, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -339,34 +343,34 @@ PATCH /apis/storage.k8s.io/v1/csinodes/{name} name of the CSINode -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -394,29 +398,34 @@ DELETE /apis/storage.k8s.io/v1/csinodes/{name} name of the CSINode -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- **dryRun** (*in query*): string - }}">propagationPolicy + }}">dryRun @@ -439,69 +448,74 @@ DELETE /apis/storage.k8s.io/v1/csinodes #### Parameters -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: + + - }}">timeoutSeconds + +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/config-and-storage-resources/csi-storage-capacity-v1.md b/content/en/docs/reference/kubernetes-api/config-and-storage-resources/csi-storage-capacity-v1.md index a1414630a8145..a535860988105 100644 --- a/content/en/docs/reference/kubernetes-api/config-and-storage-resources/csi-storage-capacity-v1.md +++ b/content/en/docs/reference/kubernetes-api/config-and-storage-resources/csi-storage-capacity-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "CSIStorageCapacity stores the result of one CSI GetCapacity call." title: "CSIStorageCapacity" -weight: 10 +weight: 5 auto_generated: true --- @@ -96,8 +96,6 @@ CSIStorageCapacityList is a collection of CSIStorageCapacity objects. - **items** ([]}}">CSIStorageCapacity), required - *Map: unique values on key name will be kept during a merge* - items is the list of CSIStorageCapacity objects. @@ -129,14 +127,14 @@ GET /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities/{name} name of the CSIStorageCapacity -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -157,64 +155,64 @@ GET /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -235,59 +233,59 @@ GET /apis/storage.k8s.io/v1/csistoragecapacities #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -308,34 +306,34 @@ POST /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">CSIStorageCapacity, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">CSIStorageCapacity, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -365,34 +363,34 @@ PUT /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities/{name} name of the CSIStorageCapacity -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">CSIStorageCapacity, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">CSIStorageCapacity, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -420,39 +418,39 @@ PATCH /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities/{name} name of the CSIStorageCapacity -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -480,34 +478,39 @@ DELETE /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities/{name name of the CSIStorageCapacity -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- **dryRun** (*in query*): string - }}">propagationPolicy + }}">dryRun @@ -530,74 +533,79 @@ DELETE /apis/storage.k8s.io/v1/namespaces/{namespace}/csistoragecapacities #### Parameters -- **namespace** (*in path*): string, required +- ****: + + + + +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- **dryRun** (*in query*): string - }}">timeoutSeconds + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/config-and-storage-resources/persistent-volume-claim-v1.md b/content/en/docs/reference/kubernetes-api/config-and-storage-resources/persistent-volume-claim-v1.md index a7a3c475bd486..a3ff4b37071f6 100644 --- a/content/en/docs/reference/kubernetes-api/config-and-storage-resources/persistent-volume-claim-v1.md +++ b/content/en/docs/reference/kubernetes-api/config-and-storage-resources/persistent-volume-claim-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "PersistentVolumeClaim is a user's request for and claim to a persistent volume." title: "PersistentVolumeClaim" -weight: 4 +weight: 6 auto_generated: true --- @@ -62,35 +62,20 @@ PersistentVolumeClaimSpec describes the common attributes of storage devices and - **accessModes** ([]string) + *Atomic: will be replaced during a merge* + accessModes contains the desired access modes the volume should have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1 - **selector** (}}">LabelSelector) selector is a label query over volumes to consider for binding. -- **resources** (ResourceRequirements) +- **resources** (VolumeResourceRequirements) resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources - - *ResourceRequirements describes the compute resource requirements.* - - - **resources.claims** ([]ResourceClaim) - - *Map: unique values on key name 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. It can only be set for containers. - - - *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. + + *VolumeResourceRequirements describes the storage resource requirements for a volume.* - **resources.limits** (map[string]}}">Quantity) @@ -151,6 +136,10 @@ PersistentVolumeClaimSpec describes the common attributes of storage devices and 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. +- **volumeAttributesClassName** (string) + + volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim. If specified, the CSI driver will create or update the volume with the attributes defined in the corresponding VolumeAttributesClass. This has a different purpose than storageClassName, it can be changed after the claim is created. An empty string value means that no VolumeAttributesClass will be applied to the claim but it's not allowed to reset this field to empty string once it is set. If unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass will be set by the persistentvolume controller if it exists. If the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be set to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource exists. More info: https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/ (Beta) Using this field requires the VolumeAttributesClass feature gate to be enabled (off by default). + ## PersistentVolumeClaimStatus {#PersistentVolumeClaimStatus} @@ -161,6 +150,8 @@ PersistentVolumeClaimStatus is the current status of a persistent volume claim. - **accessModes** ([]string) + *Atomic: will be replaced during a merge* + accessModes contains the actual access modes the volume backing the PVC has. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1 - **allocatedResourceStatuses** (map[string]string) @@ -218,7 +209,9 @@ PersistentVolumeClaimStatus is the current status of a persistent volume claim. *Patch strategy: merge on key `type`* - conditions is the current Condition of persistent volume claim. If underlying persistent volume is being resized then the Condition will be set to 'ResizeStarted'. + *Map: unique values on key type will be kept during a merge* + + conditions is the current Condition of persistent volume claim. If underlying persistent volume is being resized then the Condition will be set to 'Resizing'. *PersistentVolumeClaimCondition contains details about state of pvc* @@ -249,7 +242,35 @@ PersistentVolumeClaimStatus is the current status of a persistent volume claim. - **conditions.reason** (string) - reason is a unique, this should be a short, machine understandable string that gives the reason for condition's last transition. If it reports "ResizeStarted" that means the underlying persistent volume is being resized. + reason is a unique, this should be a short, machine understandable string that gives the reason for condition's last transition. If it reports "Resizing" that means the underlying persistent volume is being resized. + +- **currentVolumeAttributesClassName** (string) + + currentVolumeAttributesClassName is the current name of the VolumeAttributesClass the PVC is using. When unset, there is no VolumeAttributeClass applied to this PersistentVolumeClaim This is a beta field and requires enabling VolumeAttributesClass feature (off by default). + +- **modifyVolumeStatus** (ModifyVolumeStatus) + + ModifyVolumeStatus represents the status object of ControllerModifyVolume operation. When this is unset, there is no ModifyVolume operation being attempted. This is a beta field and requires enabling VolumeAttributesClass feature (off by default). + + + *ModifyVolumeStatus represents the status object of ControllerModifyVolume operation* + + - **modifyVolumeStatus.status** (string), required + + status is the status of the ControllerModifyVolume operation. It can be in any of following states: + - Pending + Pending indicates that the PersistentVolumeClaim cannot be modified due to unmet requirements, such as + the specified VolumeAttributesClass not existing. + - InProgress + InProgress indicates that the volume is being modified. + - Infeasible + Infeasible indicates that the request has been rejected as invalid by the CSI driver. To + resolve the error, a valid VolumeAttributesClass needs to be specified. + Note: New statuses can be added in the future. Consumers should check for unknown statuses and fail appropriately. + + - **modifyVolumeStatus.targetVolumeAttributesClassName** (string) + + targetVolumeAttributesClassName is the name of the VolumeAttributesClass the PVC currently being reconciled - **phase** (string) @@ -308,14 +329,14 @@ GET /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name} name of the PersistentVolumeClaim -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -341,14 +362,14 @@ GET /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status name of the PersistentVolumeClaim -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -369,64 +390,64 @@ GET /api/v1/namespaces/{namespace}/persistentvolumeclaims #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -447,59 +468,59 @@ GET /api/v1/persistentvolumeclaims #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -520,34 +541,34 @@ POST /api/v1/namespaces/{namespace}/persistentvolumeclaims #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">PersistentVolumeClaim, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">PersistentVolumeClaim, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -577,34 +598,34 @@ PUT /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name} name of the PersistentVolumeClaim -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">PersistentVolumeClaim, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">PersistentVolumeClaim, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -632,34 +653,34 @@ PUT /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status name of the PersistentVolumeClaim -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">PersistentVolumeClaim, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">PersistentVolumeClaim, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -687,39 +708,39 @@ PATCH /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name} name of the PersistentVolumeClaim -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -747,39 +768,39 @@ PATCH /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status name of the PersistentVolumeClaim -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -807,34 +828,39 @@ DELETE /api/v1/namespaces/{namespace}/persistentvolumeclaims/{name} name of the PersistentVolumeClaim -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + -- **gracePeriodSeconds** (*in query*): integer - }}">gracePeriodSeconds +- ****: + -- **pretty** (*in query*): string - }}">pretty +- ****: + -- **propagationPolicy** (*in query*): string - }}">propagationPolicy +- **dryRun** (*in query*): string + + }}">dryRun @@ -857,74 +883,79 @@ DELETE /api/v1/namespaces/{namespace}/persistentvolumeclaims #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + + + +- ****: + + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- **dryRun** (*in query*): string - }}">timeoutSeconds + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/config-and-storage-resources/persistent-volume-v1.md b/content/en/docs/reference/kubernetes-api/config-and-storage-resources/persistent-volume-v1.md index 552b4ba2d3905..0bb7419e45cfc 100644 --- a/content/en/docs/reference/kubernetes-api/config-and-storage-resources/persistent-volume-v1.md +++ b/content/en/docs/reference/kubernetes-api/config-and-storage-resources/persistent-volume-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "PersistentVolume (PV) is a storage resource provisioned by an administrator." title: "PersistentVolume" -weight: 5 +weight: 7 auto_generated: true --- @@ -62,6 +62,8 @@ PersistentVolumeSpec is the specification of a persistent volume. - **accessModes** ([]string) + *Atomic: will be replaced during a merge* + accessModes contains all ways the volume can be mounted. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes - **capacity** (map[string]}}">Quantity) @@ -74,6 +76,8 @@ PersistentVolumeSpec is the specification of a persistent volume. - **mountOptions** ([]string) + *Atomic: will be replaced during a merge* + mountOptions is the list of mount options, e.g. ["ro", "soft"]. Not validated - mount will simply fail if one is invalid. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes/#mount-options - **nodeAffinity** (VolumeNodeAffinity) @@ -92,6 +96,8 @@ PersistentVolumeSpec is the specification of a persistent volume. - **nodeAffinity.required.nodeSelectorTerms** ([]NodeSelectorTerm), required + *Atomic: will be replaced during a merge* + Required. A list of node selector terms. The terms are ORed. @@ -99,10 +105,14 @@ PersistentVolumeSpec is the specification of a persistent volume. - **nodeAffinity.required.nodeSelectorTerms.matchExpressions** ([]}}">NodeSelectorRequirement) + *Atomic: will be replaced during a merge* + A list of node selector requirements by node's labels. - **nodeAffinity.required.nodeSelectorTerms.matchFields** ([]}}">NodeSelectorRequirement) + *Atomic: will be replaced during a merge* + A list of node selector requirements by node's fields. - **persistentVolumeReclaimPolicy** (string) @@ -113,6 +123,10 @@ PersistentVolumeSpec is the specification of a persistent volume. storageClassName is the name of StorageClass to which this persistent volume belongs. Empty value means that this volume does not belong to any StorageClass. +- **volumeAttributesClassName** (string) + + Name of VolumeAttributesClass to which this persistent volume belongs. Empty value is not allowed. When this field is not set, it indicates that this volume does not belong to any VolumeAttributesClass. This field is mutable and can be changed by the CSI driver after a volume has been updated successfully to a new class. For an unbound PersistentVolume, the volumeAttributesClassName will be matched with unbound PersistentVolumeClaims during the binding process. This is a beta field and requires enabling VolumeAttributesClass feature (off by default). + - **volumeMode** (string) volumeMode defines if a volume is intended to be used with a formatted filesystem or to remain in raw block state. Value of Filesystem is implied when not included in spec. @@ -243,6 +257,8 @@ PersistentVolumeSpec is the specification of a persistent volume. - **cephfs.monitors** ([]string), required + *Atomic: will be replaced during a merge* + monitors is Required: Monitors is a collection of Ceph monitors More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it - **cephfs.path** (string) @@ -361,7 +377,7 @@ PersistentVolumeSpec is the specification of a persistent volume. - **csi.nodeExpandSecretRef** (SecretReference) - nodeExpandSecretRef is a reference to the secret object containing sensitive information to pass to the CSI driver to complete the CSI NodeExpandVolume call. This is a beta field which is enabled default by CSINodeExpandSecret feature gate. This field is optional, may be omitted if no secret is required. If the secret object contains more than one secret, all secrets are passed. + nodeExpandSecretRef is a reference to the secret object containing sensitive information to pass to the CSI driver to complete the CSI NodeExpandVolume call. This field is optional, may be omitted if no secret is required. If the secret object contains more than one secret, all secrets are passed. *SecretReference represents a Secret Reference. It has enough information to retrieve secret in any namespace* @@ -433,10 +449,14 @@ PersistentVolumeSpec is the specification of a persistent volume. - **fc.targetWWNs** ([]string) + *Atomic: will be replaced during a merge* + targetWWNs is Optional: FC target worldwide names (WWNs) - **fc.wwids** ([]string) + *Atomic: will be replaced during a merge* + wwids Optional: FC volume world wide identifiers (wwids) Either wwids or combination of targetWWNs and lun must be set, but not both simultaneously. - **flexVolume** (FlexPersistentVolumeSource) @@ -581,6 +601,8 @@ PersistentVolumeSpec is the specification of a persistent volume. - **iscsi.portals** ([]string) + *Atomic: will be replaced during a merge* + portals is the iSCSI Target Portal List. The Portal is either an IP or ip_addr:port if the port is other than default (typically TCP ports 860 and 3260). - **iscsi.readOnly** (boolean) @@ -699,6 +721,8 @@ PersistentVolumeSpec is the specification of a persistent volume. - **rbd.monitors** ([]string), required + *Atomic: will be replaced during a merge* + monitors is a collection of Ceph monitors. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it - **rbd.fsType** (string) @@ -854,7 +878,7 @@ PersistentVolumeStatus is the current status of a persistent volume. - **lastPhaseTransitionTime** (Time) - lastPhaseTransitionTime is the time the phase transitioned from one to another and automatically resets to current time everytime a volume phase transitions. This is an alpha field and requires enabling PersistentVolumeLastPhaseTransitionTime feature. + lastPhaseTransitionTime is the time the phase transitioned from one to another and automatically resets to current time everytime a volume phase transitions. *Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.* @@ -924,9 +948,9 @@ GET /api/v1/persistentvolumes/{name} name of the PersistentVolume -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -952,9 +976,9 @@ GET /api/v1/persistentvolumes/{name}/status name of the PersistentVolume -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -975,59 +999,59 @@ GET /api/v1/persistentvolumes #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -1048,29 +1072,29 @@ POST /api/v1/persistentvolumes #### Parameters -- **body**: }}">PersistentVolume, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">PersistentVolume, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -1100,29 +1124,29 @@ PUT /api/v1/persistentvolumes/{name} name of the PersistentVolume -- **body**: }}">PersistentVolume, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">PersistentVolume, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -1150,29 +1174,29 @@ PUT /api/v1/persistentvolumes/{name}/status name of the PersistentVolume -- **body**: }}">PersistentVolume, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">PersistentVolume, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -1200,34 +1224,34 @@ PATCH /api/v1/persistentvolumes/{name} name of the PersistentVolume -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -1255,34 +1279,34 @@ PATCH /api/v1/persistentvolumes/{name}/status name of the PersistentVolume -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -1310,29 +1334,34 @@ DELETE /api/v1/persistentvolumes/{name} name of the PersistentVolume -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: + + - }}">dryRun +- ****: + + -- **gracePeriodSeconds** (*in query*): integer - }}">gracePeriodSeconds +- ****: + -- **pretty** (*in query*): string - }}">pretty +- ****: + -- **propagationPolicy** (*in query*): string - }}">propagationPolicy +- **dryRun** (*in query*): string + + }}">dryRun @@ -1355,69 +1384,74 @@ DELETE /api/v1/persistentvolumes #### Parameters -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + -- **fieldSelector** (*in query*): string - }}">fieldSelector +- ****: + -- **gracePeriodSeconds** (*in query*): integer - }}">gracePeriodSeconds +- ****: + -- **labelSelector** (*in query*): string - }}">labelSelector +- ****: + -- **limit** (*in query*): integer - }}">limit +- ****: + -- **pretty** (*in query*): string - }}">pretty +- ****: + -- **propagationPolicy** (*in query*): string - }}">propagationPolicy +- ****: + -- **resourceVersion** (*in query*): string - }}">resourceVersion +- ****: + + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- **dryRun** (*in query*): string - }}">timeoutSeconds + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/config-and-storage-resources/secret-v1.md b/content/en/docs/reference/kubernetes-api/config-and-storage-resources/secret-v1.md index 3bc2a6b650567..772be7fe30c12 100644 --- a/content/en/docs/reference/kubernetes-api/config-and-storage-resources/secret-v1.md +++ b/content/en/docs/reference/kubernetes-api/config-and-storage-resources/secret-v1.md @@ -111,14 +111,14 @@ GET /api/v1/namespaces/{namespace}/secrets/{name} name of the Secret -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -139,64 +139,64 @@ GET /api/v1/namespaces/{namespace}/secrets #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -217,59 +217,59 @@ GET /api/v1/secrets #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -290,34 +290,34 @@ POST /api/v1/namespaces/{namespace}/secrets #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Secret, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Secret, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -347,34 +347,34 @@ PUT /api/v1/namespaces/{namespace}/secrets/{name} name of the Secret -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Secret, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Secret, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -402,39 +402,39 @@ PATCH /api/v1/namespaces/{namespace}/secrets/{name} name of the Secret -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -462,34 +462,39 @@ DELETE /api/v1/namespaces/{namespace}/secrets/{name} name of the Secret -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + + + +- **dryRun** (*in query*): string + + }}">dryRun @@ -512,74 +517,79 @@ DELETE /api/v1/namespaces/{namespace}/secrets #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + + + +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/config-and-storage-resources/storage-class-v1.md b/content/en/docs/reference/kubernetes-api/config-and-storage-resources/storage-class-v1.md index 9998f631b348f..ee58a7cfd7c5f 100644 --- a/content/en/docs/reference/kubernetes-api/config-and-storage-resources/storage-class-v1.md +++ b/content/en/docs/reference/kubernetes-api/config-and-storage-resources/storage-class-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "StorageClass describes the parameters for a class of storage for which PersistentVolumes can be dynamically provisioned." title: "StorageClass" -weight: 6 +weight: 8 auto_generated: true --- @@ -63,6 +63,8 @@ StorageClasses are non-namespaced; the name of the storage class according to et - **allowedTopologies.matchLabelExpressions** ([]TopologySelectorLabelRequirement) + *Atomic: will be replaced during a merge* + A list of topology selector requirements by labels. @@ -74,10 +76,14 @@ StorageClasses are non-namespaced; the name of the storage class according to et - **allowedTopologies.matchLabelExpressions.values** ([]string), required + *Atomic: will be replaced during a merge* + An array of string values. One value must match the label to be selected. Each entry in Values is ORed. - **mountOptions** ([]string) + *Atomic: will be replaced during a merge* + mountOptions controls the mountOptions for dynamically provisioned PersistentVolumes of this storage class. e.g. ["ro", "soft"]. Not validated - mount of the PVs will simply fail if one is invalid. - **parameters** (map[string]string) @@ -145,9 +151,9 @@ GET /apis/storage.k8s.io/v1/storageclasses/{name} name of the StorageClass -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -168,59 +174,59 @@ GET /apis/storage.k8s.io/v1/storageclasses #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -241,29 +247,29 @@ POST /apis/storage.k8s.io/v1/storageclasses #### Parameters -- **body**: }}">StorageClass, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">StorageClass, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -293,29 +299,29 @@ PUT /apis/storage.k8s.io/v1/storageclasses/{name} name of the StorageClass -- **body**: }}">StorageClass, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">StorageClass, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -343,34 +349,34 @@ PATCH /apis/storage.k8s.io/v1/storageclasses/{name} name of the StorageClass -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -398,29 +404,34 @@ DELETE /apis/storage.k8s.io/v1/storageclasses/{name} name of the StorageClass -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- **dryRun** (*in query*): string - }}">propagationPolicy + }}">dryRun @@ -443,69 +454,74 @@ DELETE /apis/storage.k8s.io/v1/storageclasses #### Parameters -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: + + - }}">timeoutSeconds + +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/config-and-storage-resources/storage-version-migration-v1alpha1.md b/content/en/docs/reference/kubernetes-api/config-and-storage-resources/storage-version-migration-v1alpha1.md new file mode 100644 index 0000000000000..077eda29020eb --- /dev/null +++ b/content/en/docs/reference/kubernetes-api/config-and-storage-resources/storage-version-migration-v1alpha1.md @@ -0,0 +1,704 @@ +--- +api_metadata: + apiVersion: "storagemigration.k8s.io/v1alpha1" + import: "k8s.io/api/storagemigration/v1alpha1" + kind: "StorageVersionMigration" +content_type: "api_reference" +description: "StorageVersionMigration represents a migration of stored data to the latest storage version." +title: "StorageVersionMigration v1alpha1" +weight: 9 +auto_generated: true +--- + + + +`apiVersion: storagemigration.k8s.io/v1alpha1` + +`import "k8s.io/api/storagemigration/v1alpha1"` + + +## StorageVersionMigration {#StorageVersionMigration} + +StorageVersionMigration represents a migration of stored data to the latest storage version. + +
+ +- **apiVersion**: storagemigration.k8s.io/v1alpha1 + + +- **kind**: StorageVersionMigration + + +- **metadata** (}}">ObjectMeta) + + Standard object metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata + +- **spec** (}}">StorageVersionMigrationSpec) + + Specification of the migration. + +- **status** (}}">StorageVersionMigrationStatus) + + Status of the migration. + + + + + +## StorageVersionMigrationSpec {#StorageVersionMigrationSpec} + +Spec of the storage version migration. + +
+ +- **continueToken** (string) + + The token used in the list options to get the next chunk of objects to migrate. When the .status.conditions indicates the migration is "Running", users can use this token to check the progress of the migration. + +- **resource** (GroupVersionResource), required + + The resource that is being migrated. The migrator sends requests to the endpoint serving the resource. Immutable. + + + *The names of the group, the version, and the resource.* + + - **resource.group** (string) + + The name of the group. + + - **resource.resource** (string) + + The name of the resource. + + - **resource.version** (string) + + The name of the version. + + + + + +## StorageVersionMigrationStatus {#StorageVersionMigrationStatus} + +Status of the storage version migration. + +
+ +- **conditions** ([]MigrationCondition) + + *Patch strategy: merge on key `type`* + + *Map: unique values on key type will be kept during a merge* + + The latest available observations of the migration's current state. + + + *Describes the state of a migration at a certain point.* + + - **conditions.status** (string), required + + Status of the condition, one of True, False, Unknown. + + - **conditions.type** (string), required + + Type of the condition. + + - **conditions.lastUpdateTime** (Time) + + The last time this condition was updated. + + + *Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.* + + - **conditions.message** (string) + + A human readable message indicating details about the transition. + + - **conditions.reason** (string) + + The reason for the condition's last transition. + +- **resourceVersion** (string) + + ResourceVersion to compare with the GC cache for performing the migration. This is the current resource version of given group, version and resource when kube-controller-manager first observes this StorageVersionMigration resource. + + + + + +## StorageVersionMigrationList {#StorageVersionMigrationList} + +StorageVersionMigrationList is a collection of storage version migrations. + +
+ +- **apiVersion**: storagemigration.k8s.io/v1alpha1 + + +- **kind**: StorageVersionMigrationList + + +- **metadata** (}}">ListMeta) + + Standard list metadata More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata + +- **items** ([]}}">StorageVersionMigration), required + + *Patch strategy: merge on key `type`* + + *Map: unique values on key type will be kept during a merge* + + Items is the list of StorageVersionMigration + + + + + +## Operations {#Operations} + + + +
+ + + + + + +### `get` read the specified StorageVersionMigration + +#### HTTP Request + +GET /apis/storagemigration.k8s.io/v1alpha1/storageversionmigrations/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the StorageVersionMigration + + +- ****: + + + + + +#### Response + + +200 (}}">StorageVersionMigration): OK + +401: Unauthorized + + +### `get` read status of the specified StorageVersionMigration + +#### HTTP Request + +GET /apis/storagemigration.k8s.io/v1alpha1/storageversionmigrations/{name}/status + +#### Parameters + + +- **name** (*in path*): string, required + + name of the StorageVersionMigration + + +- ****: + + + + + +#### Response + + +200 (}}">StorageVersionMigration): OK + +401: Unauthorized + + +### `list` list or watch objects of kind StorageVersionMigration + +#### HTTP Request + +GET /apis/storagemigration.k8s.io/v1alpha1/storageversionmigrations + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + + +#### Response + + +200 (}}">StorageVersionMigrationList): OK + +401: Unauthorized + + +### `create` create a StorageVersionMigration + +#### HTTP Request + +POST /apis/storagemigration.k8s.io/v1alpha1/storageversionmigrations + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- **body**: }}">StorageVersionMigration, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">StorageVersionMigration): OK + +201 (}}">StorageVersionMigration): Created + +202 (}}">StorageVersionMigration): Accepted + +401: Unauthorized + + +### `update` replace the specified StorageVersionMigration + +#### HTTP Request + +PUT /apis/storagemigration.k8s.io/v1alpha1/storageversionmigrations/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the StorageVersionMigration + + +- ****: + + + + +- ****: + + + + +- **body**: }}">StorageVersionMigration, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">StorageVersionMigration): OK + +201 (}}">StorageVersionMigration): Created + +401: Unauthorized + + +### `update` replace status of the specified StorageVersionMigration + +#### HTTP Request + +PUT /apis/storagemigration.k8s.io/v1alpha1/storageversionmigrations/{name}/status + +#### Parameters + + +- **name** (*in path*): string, required + + name of the StorageVersionMigration + + +- ****: + + + + +- ****: + + + + +- **body**: }}">StorageVersionMigration, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">StorageVersionMigration): OK + +201 (}}">StorageVersionMigration): Created + +401: Unauthorized + + +### `patch` partially update the specified StorageVersionMigration + +#### HTTP Request + +PATCH /apis/storagemigration.k8s.io/v1alpha1/storageversionmigrations/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the StorageVersionMigration + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">StorageVersionMigration): OK + +201 (}}">StorageVersionMigration): Created + +401: Unauthorized + + +### `patch` partially update status of the specified StorageVersionMigration + +#### HTTP Request + +PATCH /apis/storagemigration.k8s.io/v1alpha1/storageversionmigrations/{name}/status + +#### Parameters + + +- **name** (*in path*): string, required + + name of the StorageVersionMigration + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">StorageVersionMigration): OK + +201 (}}">StorageVersionMigration): Created + +401: Unauthorized + + +### `delete` delete a StorageVersionMigration + +#### HTTP Request + +DELETE /apis/storagemigration.k8s.io/v1alpha1/storageversionmigrations/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the StorageVersionMigration + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + + +#### Response + + +200 (}}">Status): OK + +202 (}}">Status): Accepted + +401: Unauthorized + + +### `deletecollection` delete collection of StorageVersionMigration + +#### HTTP Request + +DELETE /apis/storagemigration.k8s.io/v1alpha1/storageversionmigrations + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + + +#### Response + + +200 (}}">Status): OK + +401: Unauthorized + diff --git a/content/en/docs/reference/kubernetes-api/config-and-storage-resources/volume-attachment-v1.md b/content/en/docs/reference/kubernetes-api/config-and-storage-resources/volume-attachment-v1.md index bc8d3629dcbd9..7ea460a205111 100644 --- a/content/en/docs/reference/kubernetes-api/config-and-storage-resources/volume-attachment-v1.md +++ b/content/en/docs/reference/kubernetes-api/config-and-storage-resources/volume-attachment-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "VolumeAttachment captures the intent to attach or detach the specified volume to/from the specified node." title: "VolumeAttachment" -weight: 7 +weight: 11 auto_generated: true --- @@ -192,9 +192,9 @@ GET /apis/storage.k8s.io/v1/volumeattachments/{name} name of the VolumeAttachment -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -220,9 +220,9 @@ GET /apis/storage.k8s.io/v1/volumeattachments/{name}/status name of the VolumeAttachment -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -243,59 +243,59 @@ GET /apis/storage.k8s.io/v1/volumeattachments #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -316,29 +316,29 @@ POST /apis/storage.k8s.io/v1/volumeattachments #### Parameters -- **body**: }}">VolumeAttachment, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">VolumeAttachment, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -368,29 +368,29 @@ PUT /apis/storage.k8s.io/v1/volumeattachments/{name} name of the VolumeAttachment -- **body**: }}">VolumeAttachment, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">VolumeAttachment, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -418,29 +418,29 @@ PUT /apis/storage.k8s.io/v1/volumeattachments/{name}/status name of the VolumeAttachment -- **body**: }}">VolumeAttachment, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">VolumeAttachment, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -468,34 +468,34 @@ PATCH /apis/storage.k8s.io/v1/volumeattachments/{name} name of the VolumeAttachment -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -523,34 +523,34 @@ PATCH /apis/storage.k8s.io/v1/volumeattachments/{name}/status name of the VolumeAttachment -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -578,29 +578,34 @@ DELETE /apis/storage.k8s.io/v1/volumeattachments/{name} name of the VolumeAttachment -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + -- **gracePeriodSeconds** (*in query*): integer - }}">gracePeriodSeconds +- ****: + -- **pretty** (*in query*): string - }}">pretty +- ****: + -- **propagationPolicy** (*in query*): string - }}">propagationPolicy +- **dryRun** (*in query*): string + + }}">dryRun @@ -623,69 +628,74 @@ DELETE /apis/storage.k8s.io/v1/volumeattachments #### Parameters -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + + + +- ****: + + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- **dryRun** (*in query*): string - }}">timeoutSeconds + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/config-and-storage-resources/volume-attributes-class-v1beta1.md b/content/en/docs/reference/kubernetes-api/config-and-storage-resources/volume-attributes-class-v1beta1.md new file mode 100644 index 0000000000000..8d26eba77f919 --- /dev/null +++ b/content/en/docs/reference/kubernetes-api/config-and-storage-resources/volume-attributes-class-v1beta1.md @@ -0,0 +1,488 @@ +--- +api_metadata: + apiVersion: "storage.k8s.io/v1beta1" + import: "k8s.io/api/storage/v1beta1" + kind: "VolumeAttributesClass" +content_type: "api_reference" +description: "VolumeAttributesClass represents a specification of mutable volume attributes defined by the CSI driver." +title: "VolumeAttributesClass v1beta1" +weight: 12 +auto_generated: true +--- + + + +`apiVersion: storage.k8s.io/v1beta1` + +`import "k8s.io/api/storage/v1beta1"` + + +## VolumeAttributesClass {#VolumeAttributesClass} + +VolumeAttributesClass represents a specification of mutable volume attributes defined by the CSI driver. The class can be specified during dynamic provisioning of PersistentVolumeClaims, and changed in the PersistentVolumeClaim spec after provisioning. + +
+ +- **apiVersion**: storage.k8s.io/v1beta1 + + +- **kind**: VolumeAttributesClass + + +- **metadata** (}}">ObjectMeta) + + Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata + +- **driverName** (string), required + + Name of the CSI driver This field is immutable. + +- **parameters** (map[string]string) + + parameters hold volume attributes defined by the CSI driver. These values are opaque to the Kubernetes and are passed directly to the CSI driver. The underlying storage provider supports changing these attributes on an existing volume, however the parameters field itself is immutable. To invoke a volume update, a new VolumeAttributesClass should be created with new parameters, and the PersistentVolumeClaim should be updated to reference the new VolumeAttributesClass. + + This field is required and must contain at least one key/value pair. The keys cannot be empty, and the maximum number of parameters is 512, with a cumulative max size of 256K. If the CSI driver rejects invalid parameters, the target PersistentVolumeClaim will be set to an "Infeasible" state in the modifyVolumeStatus field. + + + + + +## VolumeAttributesClassList {#VolumeAttributesClassList} + +VolumeAttributesClassList is a collection of VolumeAttributesClass objects. + +
+ +- **apiVersion**: storage.k8s.io/v1beta1 + + +- **kind**: VolumeAttributesClassList + + +- **metadata** (}}">ListMeta) + + Standard list metadata More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata + +- **items** ([]}}">VolumeAttributesClass), required + + items is the list of VolumeAttributesClass objects. + + + + + +## Operations {#Operations} + + + +
+ + + + + + +### `get` read the specified VolumeAttributesClass + +#### HTTP Request + +GET /apis/storage.k8s.io/v1beta1/volumeattributesclasses/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the VolumeAttributesClass + + +- ****: + + + + + +#### Response + + +200 (}}">VolumeAttributesClass): OK + +401: Unauthorized + + +### `list` list or watch objects of kind VolumeAttributesClass + +#### HTTP Request + +GET /apis/storage.k8s.io/v1beta1/volumeattributesclasses + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + + +#### Response + + +200 (}}">VolumeAttributesClassList): OK + +401: Unauthorized + + +### `create` create a VolumeAttributesClass + +#### HTTP Request + +POST /apis/storage.k8s.io/v1beta1/volumeattributesclasses + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- **body**: }}">VolumeAttributesClass, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">VolumeAttributesClass): OK + +201 (}}">VolumeAttributesClass): Created + +202 (}}">VolumeAttributesClass): Accepted + +401: Unauthorized + + +### `update` replace the specified VolumeAttributesClass + +#### HTTP Request + +PUT /apis/storage.k8s.io/v1beta1/volumeattributesclasses/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the VolumeAttributesClass + + +- ****: + + + + +- ****: + + + + +- **body**: }}">VolumeAttributesClass, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">VolumeAttributesClass): OK + +201 (}}">VolumeAttributesClass): Created + +401: Unauthorized + + +### `patch` partially update the specified VolumeAttributesClass + +#### HTTP Request + +PATCH /apis/storage.k8s.io/v1beta1/volumeattributesclasses/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the VolumeAttributesClass + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">VolumeAttributesClass): OK + +201 (}}">VolumeAttributesClass): Created + +401: Unauthorized + + +### `delete` delete a VolumeAttributesClass + +#### HTTP Request + +DELETE /apis/storage.k8s.io/v1beta1/volumeattributesclasses/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the VolumeAttributesClass + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + + +#### Response + + +200 (}}">VolumeAttributesClass): OK + +202 (}}">VolumeAttributesClass): Accepted + +401: Unauthorized + + +### `deletecollection` delete collection of VolumeAttributesClass + +#### HTTP Request + +DELETE /apis/storage.k8s.io/v1beta1/volumeattributesclasses + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + + +#### Response + + +200 (}}">Status): OK + +401: Unauthorized + diff --git a/content/en/docs/reference/kubernetes-api/config-and-storage-resources/volume.md b/content/en/docs/reference/kubernetes-api/config-and-storage-resources/volume.md index b81f55944d54b..05e93787de777 100644 --- a/content/en/docs/reference/kubernetes-api/config-and-storage-resources/volume.md +++ b/content/en/docs/reference/kubernetes-api/config-and-storage-resources/volume.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "Volume represents a named volume in a pod that may be accessed by any container in the pod." title: "Volume" -weight: 3 +weight: 10 auto_generated: true --- @@ -70,7 +70,7 @@ Volume represents a named volume in a pod that may be accessed by any container - **configMap.name** (string) - Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + Name of the referent. This field is effectively required, but due to backwards compatibility is allowed to be empty. Instances of this type with an empty value here are almost certainly wrong. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - **configMap.optional** (boolean) @@ -82,6 +82,8 @@ Volume represents a named volume in a pod that may be accessed by any container - **configMap.items** ([]}}">KeyToPath) + *Atomic: will be replaced during a merge* + items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. - **secret** (SecretVolumeSource) @@ -107,6 +109,8 @@ Volume represents a named volume in a pod that may be accessed by any container - **secret.items** ([]}}">KeyToPath) + *Atomic: will be replaced during a merge* + items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. - **downwardAPI** (DownwardAPIVolumeSource) @@ -122,6 +126,8 @@ Volume represents a named volume in a pod that may be accessed by any container - **downwardAPI.items** ([]}}">DownwardAPIVolumeFile) + *Atomic: will be replaced during a merge* + Items is a list of downward API volume file - **projected** (ProjectedVolumeSource) @@ -137,10 +143,45 @@ Volume represents a named volume in a pod that may be accessed by any container - **projected.sources** ([]VolumeProjection) - sources is the list of volume projections + *Atomic: will be replaced during a merge* + + sources is the list of volume projections. Each entry in this list handles one source. - *Projection that may be projected along with other supported volume types* + *Projection that may be projected along with other supported volume types. Exactly one of these fields must be set.* + + - **projected.sources.clusterTrustBundle** (ClusterTrustBundleProjection) + + ClusterTrustBundle allows a pod to access the `.spec.trustBundle` field of ClusterTrustBundle objects in an auto-updating file. + + Alpha, gated by the ClusterTrustBundleProjection feature gate. + + ClusterTrustBundle objects can either be selected by name, or by the combination of signer name and a label selector. + + Kubelet performs aggressive normalization of the PEM contents written into the pod filesystem. Esoteric PEM features such as inter-block comments and block headers are stripped. Certificates are deduplicated. The ordering of certificates within the file is arbitrary, and Kubelet may change the order over time. + + + *ClusterTrustBundleProjection describes how to select a set of ClusterTrustBundle objects and project their contents into the pod filesystem.* + + - **projected.sources.clusterTrustBundle.path** (string), required + + Relative path from the volume root to write the bundle. + + - **projected.sources.clusterTrustBundle.labelSelector** (}}">LabelSelector) + + Select all ClusterTrustBundles that match this label selector. Only has effect if signerName is set. Mutually-exclusive with name. If unset, interpreted as "match nothing". If set but empty, interpreted as "match everything". + + - **projected.sources.clusterTrustBundle.name** (string) + + Select a single ClusterTrustBundle by object name. Mutually-exclusive with signerName and labelSelector. + + - **projected.sources.clusterTrustBundle.optional** (boolean) + + If true, don't block pod startup if the referenced ClusterTrustBundle(s) aren't available. If using name, then the named ClusterTrustBundle is allowed not to exist. If using signerName, then the combination of signerName and labelSelector is allowed to match zero ClusterTrustBundles. + + - **projected.sources.clusterTrustBundle.signerName** (string) + + Select all ClusterTrustBundles that match this signer name. Mutually-exclusive with name. The contents of all selected ClusterTrustBundles will be unified and deduplicated. - **projected.sources.configMap** (ConfigMapProjection) @@ -153,7 +194,7 @@ Volume represents a named volume in a pod that may be accessed by any container - **projected.sources.configMap.name** (string) - Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + Name of the referent. This field is effectively required, but due to backwards compatibility is allowed to be empty. Instances of this type with an empty value here are almost certainly wrong. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - **projected.sources.configMap.optional** (boolean) @@ -161,6 +202,8 @@ Volume represents a named volume in a pod that may be accessed by any container - **projected.sources.configMap.items** ([]}}">KeyToPath) + *Atomic: will be replaced during a merge* + items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. - **projected.sources.downwardAPI** (DownwardAPIProjection) @@ -172,6 +215,8 @@ Volume represents a named volume in a pod that may be accessed by any container - **projected.sources.downwardAPI.items** ([]}}">DownwardAPIVolumeFile) + *Atomic: will be replaced during a merge* + Items is a list of DownwardAPIVolume file - **projected.sources.secret** (SecretProjection) @@ -185,7 +230,7 @@ Volume represents a named volume in a pod that may be accessed by any container - **projected.sources.secret.name** (string) - Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + Name of the referent. This field is effectively required, but due to backwards compatibility is allowed to be empty. Instances of this type with an empty value here are almost certainly wrong. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - **projected.sources.secret.optional** (boolean) @@ -193,6 +238,8 @@ Volume represents a named volume in a pod that may be accessed by any container - **projected.sources.secret.items** ([]}}">KeyToPath) + *Atomic: will be replaced during a merge* + items if unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. - **projected.sources.serviceAccountToken** (ServiceAccountTokenProjection) @@ -334,6 +381,8 @@ Volume represents a named volume in a pod that may be accessed by any container - **cephfs.monitors** ([]string), required + *Atomic: will be replaced during a merge* + monitors is Required: Monitors is a collection of Ceph monitors More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it - **cephfs.path** (string) @@ -468,10 +517,14 @@ Volume represents a named volume in a pod that may be accessed by any container - **fc.targetWWNs** ([]string) + *Atomic: will be replaced during a merge* + targetWWNs is Optional: FC target worldwide names (WWNs) - **fc.wwids** ([]string) + *Atomic: will be replaced during a merge* + wwids Optional: FC volume world wide identifiers (wwids) Either wwids or combination of targetWWNs and lun must be set, but not both simultaneously. - **flexVolume** (FlexVolumeSource) @@ -601,6 +654,8 @@ Volume represents a named volume in a pod that may be accessed by any container - **iscsi.portals** ([]string) + *Atomic: will be replaced during a merge* + portals is the iSCSI Target Portal List. The portal is either an IP or ip_addr:port if the port is other than default (typically TCP ports 860 and 3260). - **iscsi.readOnly** (boolean) @@ -611,6 +666,25 @@ Volume represents a named volume in a pod that may be accessed by any container secretRef is the CHAP Secret for iSCSI target and initiator authentication +- **image** (ImageVolumeSource) + + image represents an OCI object (a container image or artifact) pulled and mounted on the kubelet's host machine. The volume is resolved at pod startup depending on which PullPolicy value is provided: + + - Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails. - Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present. - IfNotPresent: the kubelet pulls if the reference isn't already present on disk. Container creation will fail if the reference isn't present and the pull fails. + + The volume gets re-resolved if the pod gets deleted and recreated, which means that new remote content will become available on pod recreation. A failure to resolve or pull the image during pod startup will block containers from starting and may add significant latency. Failures will be retried using normal volume backoff and will be reported on the pod reason and message. The types of objects that may be mounted by this volume are defined by the container runtime implementation on a host machine and at minimum must include all valid types supported by the container image field. The OCI object gets mounted in a single directory (spec.containers[*].volumeMounts.mountPath) by merging the manifest layers in the same way as for container images. The volume will be mounted read-only (ro) and non-executable files (noexec). Sub path mounts for containers are not supported (spec.containers[*].volumeMounts.subpath). The field spec.securityContext.fsGroupChangePolicy has no effect on this volume type. + + + *ImageVolumeSource represents a image volume resource.* + + - **image.pullPolicy** (string) + + Policy for pulling OCI objects. Possible values are: Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails. Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present. IfNotPresent: the kubelet pulls if the reference isn't already present on disk. Container creation will fail if the reference isn't present and the pull fails. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. + + - **image.reference** (string) + + Required: Image or artifact reference to be used. Behaves in the same way as pod.spec.containers[*].image. Pull secrets will be assembled in the same way as for the container image by looking up node credentials, SA image pull secrets, and pod spec image pull secrets. More info: https://kubernetes.io/docs/concepts/containers/images This field is optional to allow higher level config management to default or override container images in workload controllers like Deployments and StatefulSets. + - **nfs** (NFSVolumeSource) nfs represents an NFS mount on the host that shares a pod's lifetime More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs @@ -708,6 +782,8 @@ Volume represents a named volume in a pod that may be accessed by any container - **rbd.monitors** ([]string), required + *Atomic: will be replaced during a merge* + monitors is a collection of Ceph monitors. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it - **rbd.fsType** (string) @@ -869,7 +945,7 @@ DownwardAPIVolumeFile represents information to create the file containing the p - **fieldRef** (}}">ObjectFieldSelector) - Required: Selects a field of the pod: only annotations, labels, name and namespace are supported. + Required: Selects a field of the pod: only annotations, labels, name, namespace and uid are supported. - **mode** (int32) diff --git a/content/en/docs/reference/kubernetes-api/extend-resources/custom-resource-definition-v1.md b/content/en/docs/reference/kubernetes-api/extend-resources/custom-resource-definition-v1.md index c36f69f0353ff..4fe95164f4daa 100644 --- a/content/en/docs/reference/kubernetes-api/extend-resources/custom-resource-definition-v1.md +++ b/content/en/docs/reference/kubernetes-api/extend-resources/custom-resource-definition-v1.md @@ -81,6 +81,8 @@ CustomResourceDefinitionSpec describes how a user wants their resource to appear - **names.categories** ([]string) + *Atomic: will be replaced during a merge* + categories is a list of grouped resources this custom resource belongs to (e.g. 'all'). This is published in API discovery documents, and used by clients to support invocations like `kubectl get all`. - **names.listKind** (string) @@ -89,6 +91,8 @@ CustomResourceDefinitionSpec describes how a user wants their resource to appear - **names.shortNames** ([]string) + *Atomic: will be replaced during a merge* + shortNames are short names for the resource, exposed in API discovery documents, and used by clients to support invocations like `kubectl get \`. It must be all lowercase. - **names.singular** (string) @@ -101,6 +105,8 @@ CustomResourceDefinitionSpec describes how a user wants their resource to appear - **versions** ([]CustomResourceDefinitionVersion), required + *Atomic: will be replaced during a merge* + versions is the list of all API versions of the defined custom resource. Version names are used to compute the order in which served versions are listed in API discovery. If the version string is "kube-like", it will sort above non "kube-like" version strings, which are ordered lexicographically. "Kube-like" versions start with a "v", then are followed by a number (the major version), then optionally the string "alpha" or "beta" and another number (the minor version). These are sorted first by GA > beta > alpha (where GA is a version with no suffix such as beta or alpha), and then by comparing major version, then minor version. An example sorted list of versions: v10, v2, v1, v11beta2, v10beta3, v3beta1, v12alpha1, v11alpha2, foo1, foo10. @@ -120,6 +126,8 @@ CustomResourceDefinitionSpec describes how a user wants their resource to appear - **versions.additionalPrinterColumns** ([]CustomResourceColumnDefinition) + *Atomic: will be replaced during a merge* + additionalPrinterColumns specifies additional columns returned in Table output. See https://kubernetes.io/docs/reference/using-api/api-concepts/#receiving-resources-as-tables for details. If no columns are specified, a single column displaying the age of the custom resource is used. @@ -168,6 +176,19 @@ CustomResourceDefinitionSpec describes how a user wants their resource to appear openAPIV3Schema is the OpenAPI v3 schema to use for validation and pruning. + - **versions.selectableFields** ([]SelectableField) + + *Atomic: will be replaced during a merge* + + selectableFields specifies paths to fields that may be used as field selectors. A maximum of 8 selectable fields are allowed. See https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors + + + *SelectableField specifies the JSON path of a field that may be used with field selectors.* + + - **versions.selectableFields.jsonPath** (string), required + + jsonPath is a simple JSON path which is evaluated against each custom resource to produce a field selector value. Only JSON paths without the array notation are allowed. Must point to a field of type string, boolean or integer. Types with enum values and strings with formats are allowed. If jsonPath refers to absent field in a resource, the jsonPath evaluates to an empty string. Must not point to metdata fields. Required. + - **versions.subresources** (CustomResourceSubresources) subresources specify what subresources this version of the defined custom resource have. @@ -222,6 +243,8 @@ CustomResourceDefinitionSpec describes how a user wants their resource to appear - **conversion.webhook.conversionReviewVersions** ([]string), required + *Atomic: will be replaced during a merge* + conversionReviewVersions is an ordered list of preferred `ConversionReview` versions the Webhook expects. The API server will use the first version in the list which it supports. If none of the versions specified in this list are supported by API server, conversion will fail for the custom resource. If a persisted Webhook configuration specifies allowed versions and does not include any versions known to the API Server, calls to the webhook will fail. - **conversion.webhook.clientConfig** (WebhookClientConfig) @@ -308,9 +331,15 @@ JSONSchemaProps is a JSON-Schema following Specification Draft 4 (http://json-sc - **allOf** ([]}}">JSONSchemaProps) + *Atomic: will be replaced during a merge* + + - **anyOf** ([]}}">JSONSchemaProps) + *Atomic: will be replaced during a merge* + + - **default** (JSON) @@ -333,6 +362,9 @@ JSONSchemaProps is a JSON-Schema following Specification Draft 4 (http://json-sc - **enum** ([]JSON) + *Atomic: will be replaced during a merge* + + *JSON represents any valid JSON value. These types are supported: bool, int64, float64, string, []interface{}, map[string]interface{} and nil.* @@ -411,6 +443,9 @@ JSONSchemaProps is a JSON-Schema following Specification Draft 4 (http://json-sc - **oneOf** ([]}}">JSONSchemaProps) + *Atomic: will be replaced during a merge* + + - **pattern** (string) @@ -423,6 +458,9 @@ JSONSchemaProps is a JSON-Schema following Specification Draft 4 (http://json-sc - **required** ([]string) + *Atomic: will be replaced during a merge* + + - **title** (string) @@ -452,6 +490,8 @@ JSONSchemaProps is a JSON-Schema following Specification Draft 4 (http://json-sc - **x-kubernetes-list-map-keys** ([]string) + *Atomic: will be replaced during a merge* + x-kubernetes-list-map-keys annotates an array with the x-kubernetes-list-type `map` by specifying the keys used as the index of the map. This tag MUST only be used on lists that have the "x-kubernetes-list-type" extension set to "map". Also, the values specified for this attribute must be a scalar typed field of the child structure (no nesting is supported). @@ -496,7 +536,7 @@ JSONSchemaProps is a JSON-Schema following Specification Draft 4 (http://json-sc *Map: unique values on key rule will be kept during a merge* - x-kubernetes-validations describes a list of validation rules written in the CEL expression language. This field is an alpha-level. Using this field requires the feature gate `CustomResourceValidationExpressions` to be enabled. + x-kubernetes-validations describes a list of validation rules written in the CEL expression language. *ValidationRule describes a validation rule written in the CEL expression language.* @@ -528,6 +568,14 @@ JSONSchemaProps is a JSON-Schema following Specification Draft 4 (http://json-sc - '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. + + If `rule` makes use of the `oldSelf` variable it is implicitly a `transition rule`. + + By default, the `oldSelf` variable is the same type as `self`. When `optionalOldSelf` is true, the `oldSelf` variable is a CEL optional + variable whose value() is the same type as `self`. + See the documentation for the `optionalOldSelf` field for details. + + Transition rules by default are applied only on UPDATE requests and are skipped if an old value could not be found. You can opt a transition rule into unconditional evaluation by setting `optionalOldSelf` to true. - **x-kubernetes-validations.fieldPath** (string) @@ -541,6 +589,16 @@ JSONSchemaProps is a JSON-Schema following Specification Draft 4 (http://json-sc MessageExpression declares a CEL expression that evaluates to the validation failure message that is returned when this rule fails. Since messageExpression is used as a failure message, it must evaluate to a string. If both message and messageExpression are present on a rule, then messageExpression will be used if validation fails. If messageExpression results in a runtime error, the runtime error is logged, and the validation failure message is produced as if the messageExpression field were unset. If messageExpression evaluates to an empty string, a string with only spaces, or a string that contains line breaks, then the validation failure message will also be produced as if the messageExpression field were unset, and the fact that messageExpression produced an empty string/string with only spaces/string with line breaks will be logged. messageExpression has access to all the same variables as the rule; the only difference is the return type. Example: "x must be less than max ("+string(self.max)+")" + - **x-kubernetes-validations.optionalOldSelf** (boolean) + + optionalOldSelf is used to opt a transition rule into evaluation even when the object is first created, or if the old object is missing the value. + + When enabled `oldSelf` will be a CEL optional whose value will be `None` if there is no old value, or when the object is initially created. + + You may check for presence of oldSelf using `oldSelf.hasValue()` and unwrap it after checking using `oldSelf.value()`. Check the CEL documentation for Optional types for more information: https://pkg.go.dev/github.com/google/cel-go/cel#OptionalTypes + + May not be set unless `oldSelf` is used in `rule`. + - **x-kubernetes-validations.reason** (string) reason provides a machine-readable validation failure reason that is returned to the caller when a request fails this validation rule. The HTTP status code returned to the caller will match the reason of the reason of the first failed validation rule. The currently supported reasons are: "FieldValueInvalid", "FieldValueForbidden", "FieldValueRequired", "FieldValueDuplicate". If not set, default to use "FieldValueInvalid". All future added reasons must be accepted by clients when reading this value and unknown reasons should be treated as FieldValueInvalid. @@ -572,6 +630,8 @@ CustomResourceDefinitionStatus indicates the state of the CustomResourceDefiniti - **acceptedNames.categories** ([]string) + *Atomic: will be replaced during a merge* + categories is a list of grouped resources this custom resource belongs to (e.g. 'all'). This is published in API discovery documents, and used by clients to support invocations like `kubectl get all`. - **acceptedNames.listKind** (string) @@ -580,6 +640,8 @@ CustomResourceDefinitionStatus indicates the state of the CustomResourceDefiniti - **acceptedNames.shortNames** ([]string) + *Atomic: will be replaced during a merge* + shortNames are short names for the resource, exposed in API discovery documents, and used by clients to support invocations like `kubectl get \`. It must be all lowercase. - **acceptedNames.singular** (string) @@ -620,6 +682,8 @@ CustomResourceDefinitionStatus indicates the state of the CustomResourceDefiniti - **storedVersions** ([]string) + *Atomic: will be replaced during a merge* + storedVersions lists all versions of CustomResources that were ever persisted. Tracking these versions allows a migration path for stored versions in etcd. The field is mutable so a migration controller can finish a migration to another version (ensuring no old objects are left in storage), and then remove the rest of the versions from this list. Versions may not be removed from `spec.versions` while they exist in this list. @@ -677,9 +741,9 @@ GET /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name} name of the CustomResourceDefinition -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -705,9 +769,9 @@ GET /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}/status name of the CustomResourceDefinition -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -728,59 +792,59 @@ GET /apis/apiextensions.k8s.io/v1/customresourcedefinitions #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -801,29 +865,29 @@ POST /apis/apiextensions.k8s.io/v1/customresourcedefinitions #### Parameters -- **body**: }}">CustomResourceDefinition, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">CustomResourceDefinition, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -853,29 +917,29 @@ PUT /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name} name of the CustomResourceDefinition -- **body**: }}">CustomResourceDefinition, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">CustomResourceDefinition, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -903,29 +967,29 @@ PUT /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}/status name of the CustomResourceDefinition -- **body**: }}">CustomResourceDefinition, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">CustomResourceDefinition, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -953,34 +1017,34 @@ PATCH /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name} name of the CustomResourceDefinition -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -1008,34 +1072,34 @@ PATCH /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}/status name of the CustomResourceDefinition -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -1063,29 +1127,34 @@ DELETE /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name} name of the CustomResourceDefinition -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + + + +- **dryRun** (*in query*): string + + }}">dryRun @@ -1108,69 +1177,74 @@ DELETE /apis/apiextensions.k8s.io/v1/customresourcedefinitions #### Parameters -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- **dryRun** (*in query*): string - }}">timeoutSeconds + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/extend-resources/device-class-v1alpha3.md b/content/en/docs/reference/kubernetes-api/extend-resources/device-class-v1alpha3.md new file mode 100644 index 0000000000000..1d68c09bd88c5 --- /dev/null +++ b/content/en/docs/reference/kubernetes-api/extend-resources/device-class-v1alpha3.md @@ -0,0 +1,646 @@ +--- +api_metadata: + apiVersion: "resource.k8s.io/v1alpha3" + import: "k8s.io/api/resource/v1alpha3" + kind: "DeviceClass" +content_type: "api_reference" +description: "DeviceClass is a vendor- or admin-provided resource that contains device configuration and selectors." +title: "DeviceClass v1alpha3" +weight: 2 +auto_generated: true +--- + + + +`apiVersion: resource.k8s.io/v1alpha3` + +`import "k8s.io/api/resource/v1alpha3"` + + +## DeviceClass {#DeviceClass} + +DeviceClass is a vendor- or admin-provided resource that contains device configuration and selectors. It can be referenced in the device requests of a claim to apply these presets. Cluster scoped. + +This is an alpha type and requires enabling the DynamicResourceAllocation feature gate. + +
+ +- **apiVersion**: resource.k8s.io/v1alpha3 + + +- **kind**: DeviceClass + + +- **metadata** (}}">ObjectMeta) + + Standard object metadata + +- **spec** (}}">DeviceClassSpec), required + + Spec defines what can be allocated and how to configure it. + + This is mutable. Consumers have to be prepared for classes changing at any time, either because they get updated or replaced. Claim allocations are done once based on whatever was set in classes at the time of allocation. + + Changing the spec automatically increments the metadata.generation number. + + + + + +## DeviceClassSpec {#DeviceClassSpec} + +DeviceClassSpec is used in a [DeviceClass] to define what can be allocated and how to configure it. + +
+ +- **config** ([]DeviceClassConfiguration) + + *Atomic: will be replaced during a merge* + + Config defines configuration parameters that apply to each device that is claimed via this class. Some classses may potentially be satisfied by multiple drivers, so each instance of a vendor configuration applies to exactly one driver. + + They are passed to the driver, but are not considered while allocating the claim. + + + *DeviceClassConfiguration is used in DeviceClass.* + + - **config.opaque** (OpaqueDeviceConfiguration) + + Opaque provides driver-specific configuration parameters. + + + *OpaqueDeviceConfiguration contains configuration parameters for a driver in a format defined by the driver vendor.* + + - **config.opaque.driver** (string), required + + Driver is used to determine which kubelet plugin needs to be passed these configuration parameters. + + An admission policy provided by the driver developer could use this to decide whether it needs to validate them. + + Must be a DNS subdomain and should end with a DNS domain owned by the vendor of the driver. + + - **config.opaque.parameters** (RawExtension), required + + Parameters can contain arbitrary data. It is the responsibility of the driver developer to handle validation and versioning. Typically this includes self-identification and a version ("kind" + "apiVersion" for Kubernetes types), with conversion between different versions. + + + *RawExtension is used to hold extensions in external versions. + + To use this, make a field which has RawExtension as its type in your external, versioned struct, and Object in your internal struct. You also need to register your various plugin types. + + // Internal package: + + type MyAPIObject struct { + runtime.TypeMeta `json:",inline"` + MyPlugin runtime.Object `json:"myPlugin"` + } + + type PluginA struct { + AOption string `json:"aOption"` + } + + // External package: + + type MyAPIObject struct { + runtime.TypeMeta `json:",inline"` + MyPlugin runtime.RawExtension `json:"myPlugin"` + } + + type PluginA struct { + AOption string `json:"aOption"` + } + + // On the wire, the JSON will look something like this: + + { + "kind":"MyAPIObject", + "apiVersion":"v1", + "myPlugin": { + "kind":"PluginA", + "aOption":"foo", + }, + } + + So what happens? Decode first uses json or yaml to unmarshal the serialized data into your external MyAPIObject. That causes the raw JSON to be stored, but not unpacked. The next step is to copy (using pkg/conversion) into the internal struct. The runtime package's DefaultScheme has conversion functions installed which will unpack the JSON stored in RawExtension, turning it into the correct object type, and storing it in the Object. (TODO: In the case where the object is of an unknown type, a runtime.Unknown object will be created and stored.)* + +- **selectors** ([]DeviceSelector) + + *Atomic: will be replaced during a merge* + + Each selector must be satisfied by a device which is claimed via this class. + + + *DeviceSelector must have exactly one field set.* + + - **selectors.cel** (CELDeviceSelector) + + CEL contains a CEL expression for selecting a device. + + + *CELDeviceSelector contains a CEL expression for selecting a device.* + + - **selectors.cel.expression** (string), required + + Expression is a CEL expression which evaluates a single device. It must evaluate to true when the device under consideration satisfies the desired criteria, and false when it does not. Any other result is an error and causes allocation of devices to abort. + + The expression's input is an object named "device", which carries the following properties: + - driver (string): the name of the driver which defines this device. + - attributes (map[string]object): the device's attributes, grouped by prefix + (e.g. device.attributes["dra.example.com"] evaluates to an object with all + of the attributes which were prefixed by "dra.example.com". + - capacity (map[string]object): the device's capacities, grouped by prefix. + + Example: Consider a device with driver="dra.example.com", which exposes two attributes named "model" and "ext.example.com/family" and which exposes one capacity named "modules". This input to this expression would have the following fields: + + device.driver + device.attributes["dra.example.com"].model + device.attributes["ext.example.com"].family + device.capacity["dra.example.com"].modules + + The device.driver field can be used to check for a specific driver, either as a high-level precondition (i.e. you only want to consider devices from this driver) or as part of a multi-clause expression that is meant to consider devices from different drivers. + + The value type of each attribute is defined by the device definition, and users who write these expressions must consult the documentation for their specific drivers. The value type of each capacity is Quantity. + + If an unknown prefix is used as a lookup in either device.attributes or device.capacity, an empty map will be returned. Any reference to an unknown field will cause an evaluation error and allocation to abort. + + A robust expression should check for the existence of attributes before referencing them. + + For ease of use, the cel.bind() function is enabled, and can be used to simplify expressions that access multiple attributes with the same domain. For example: + + cel.bind(dra, device.attributes["dra.example.com"], dra.someBool && dra.anotherBool) + +- **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 claim that has not been allocated yet *and* that claim gets allocated through a control plane controller. It is ignored when the claim does not use a control plane controller for allocation. + + Setting this field is optional. If unset, all Nodes are candidates. + + This is an alpha field and requires enabling the DRAControlPlaneController feature gate. + + + *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 + + *Atomic: will be replaced during a merge* + + Required. A list of node selector terms. The terms are ORed. + + + *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** ([]}}">NodeSelectorRequirement) + + *Atomic: will be replaced during a merge* + + A list of node selector requirements by node's labels. + + - **suitableNodes.nodeSelectorTerms.matchFields** ([]}}">NodeSelectorRequirement) + + *Atomic: will be replaced during a merge* + + A list of node selector requirements by node's fields. + + + + + +## DeviceClassList {#DeviceClassList} + +DeviceClassList is a collection of classes. + +
+ +- **apiVersion**: resource.k8s.io/v1alpha3 + + +- **kind**: DeviceClassList + + +- **metadata** (}}">ListMeta) + + Standard list metadata + +- **items** ([]}}">DeviceClass), required + + Items is the list of resource classes. + + + + + +## Operations {#Operations} + + + +
+ + + + + + +### `get` read the specified DeviceClass + +#### HTTP Request + +GET /apis/resource.k8s.io/v1alpha3/deviceclasses/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the DeviceClass + + +- ****: + + + + + +#### Response + + +200 (}}">DeviceClass): OK + +401: Unauthorized + + +### `list` list or watch objects of kind DeviceClass + +#### HTTP Request + +GET /apis/resource.k8s.io/v1alpha3/deviceclasses + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + + +#### Response + + +200 (}}">DeviceClassList): OK + +401: Unauthorized + + +### `create` create a DeviceClass + +#### HTTP Request + +POST /apis/resource.k8s.io/v1alpha3/deviceclasses + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- **body**: }}">DeviceClass, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">DeviceClass): OK + +201 (}}">DeviceClass): Created + +202 (}}">DeviceClass): Accepted + +401: Unauthorized + + +### `update` replace the specified DeviceClass + +#### HTTP Request + +PUT /apis/resource.k8s.io/v1alpha3/deviceclasses/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the DeviceClass + + +- ****: + + + + +- ****: + + + + +- **body**: }}">DeviceClass, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">DeviceClass): OK + +201 (}}">DeviceClass): Created + +401: Unauthorized + + +### `patch` partially update the specified DeviceClass + +#### HTTP Request + +PATCH /apis/resource.k8s.io/v1alpha3/deviceclasses/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the DeviceClass + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">DeviceClass): OK + +201 (}}">DeviceClass): Created + +401: Unauthorized + + +### `delete` delete a DeviceClass + +#### HTTP Request + +DELETE /apis/resource.k8s.io/v1alpha3/deviceclasses/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the DeviceClass + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + + +#### Response + + +200 (}}">DeviceClass): OK + +202 (}}">DeviceClass): Accepted + +401: Unauthorized + + +### `deletecollection` delete collection of DeviceClass + +#### HTTP Request + +DELETE /apis/resource.k8s.io/v1alpha3/deviceclasses + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + + +#### Response + + +200 (}}">Status): OK + +401: Unauthorized + diff --git a/content/en/docs/reference/kubernetes-api/extend-resources/mutating-webhook-configuration-v1.md b/content/en/docs/reference/kubernetes-api/extend-resources/mutating-webhook-configuration-v1.md index 6240ce40e6ea4..1826906a187e3 100644 --- a/content/en/docs/reference/kubernetes-api/extend-resources/mutating-webhook-configuration-v1.md +++ b/content/en/docs/reference/kubernetes-api/extend-resources/mutating-webhook-configuration-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "MutatingWebhookConfiguration describes the configuration of and admission webhook that accept or reject and may change the object." title: "MutatingWebhookConfiguration" -weight: 2 +weight: 3 auto_generated: true --- @@ -46,6 +46,8 @@ MutatingWebhookConfiguration describes the configuration of and admission webhoo *Patch strategy: merge on key `name`* + *Map: unique values on key name will be kept during a merge* + Webhooks is a list of webhooks and the affected resources and operations. @@ -53,6 +55,8 @@ MutatingWebhookConfiguration describes the configuration of and admission webhoo - **webhooks.admissionReviewVersions** ([]string), required + *Atomic: will be replaced during a merge* + AdmissionReviewVersions is an ordered list of preferred `AdmissionReview` versions the Webhook expects. API server will try to use first version in the list which it supports. If none of the versions specified in this list supported by API server, validation will fail for this object. If a persisted webhook configuration specifies allowed versions and does not include any versions known to the API Server, calls to the webhook will fail and be subject to the failure policy. - **webhooks.clientConfig** (WebhookClientConfig), required @@ -131,8 +135,6 @@ MutatingWebhookConfiguration describes the configuration of and admission webhoo 3. If any matchCondition evaluates to an error (but none are FALSE): - If failurePolicy=Fail, reject the request - If failurePolicy=Ignore, the error is ignored and the webhook is skipped - - This is a beta feature and managed by the AdmissionWebhookMatchConditions feature gate. *MatchCondition represents a condition which must by fulfilled for a request to be sent to a webhook.* @@ -215,6 +217,8 @@ MutatingWebhookConfiguration describes the configuration of and admission webhoo - **webhooks.rules** ([]RuleWithOperations) + *Atomic: will be replaced during a merge* + Rules describes what operations on what resources/subresources the webhook cares about. The webhook cares about an operation if it matches _any_ Rule. However, in order to prevent ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks from putting the cluster in a state which cannot be recovered from without completely disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects. @@ -311,9 +315,9 @@ GET /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations/{name} name of the MutatingWebhookConfiguration -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -334,59 +338,59 @@ GET /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -407,29 +411,29 @@ POST /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations #### Parameters -- **body**: }}">MutatingWebhookConfiguration, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">MutatingWebhookConfiguration, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -459,29 +463,29 @@ PUT /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations/{name} name of the MutatingWebhookConfiguration -- **body**: }}">MutatingWebhookConfiguration, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">MutatingWebhookConfiguration, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -509,34 +513,34 @@ PATCH /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations/{name} name of the MutatingWebhookConfiguration -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -564,29 +568,34 @@ DELETE /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations/{name name of the MutatingWebhookConfiguration -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + -- **gracePeriodSeconds** (*in query*): integer - }}">gracePeriodSeconds +- ****: + -- **pretty** (*in query*): string - }}">pretty +- ****: + -- **propagationPolicy** (*in query*): string - }}">propagationPolicy +- **dryRun** (*in query*): string + + }}">dryRun @@ -609,69 +618,74 @@ DELETE /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations #### Parameters -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + + + +- ****: + + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- **dryRun** (*in query*): string - }}">timeoutSeconds + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/extend-resources/validating-webhook-configuration-v1.md b/content/en/docs/reference/kubernetes-api/extend-resources/validating-webhook-configuration-v1.md index dbecb6fea7b96..c90f3e8fbcac5 100644 --- a/content/en/docs/reference/kubernetes-api/extend-resources/validating-webhook-configuration-v1.md +++ b/content/en/docs/reference/kubernetes-api/extend-resources/validating-webhook-configuration-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "ValidatingWebhookConfiguration describes the configuration of and admission webhook that accept or reject and object without changing it." title: "ValidatingWebhookConfiguration" -weight: 3 +weight: 4 auto_generated: true --- @@ -46,6 +46,8 @@ ValidatingWebhookConfiguration describes the configuration of and admission webh *Patch strategy: merge on key `name`* + *Map: unique values on key name will be kept during a merge* + Webhooks is a list of webhooks and the affected resources and operations. @@ -53,6 +55,8 @@ ValidatingWebhookConfiguration describes the configuration of and admission webh - **webhooks.admissionReviewVersions** ([]string), required + *Atomic: will be replaced during a merge* + AdmissionReviewVersions is an ordered list of preferred `AdmissionReview` versions the Webhook expects. API server will try to use first version in the list which it supports. If none of the versions specified in this list supported by API server, validation will fail for this object. If a persisted webhook configuration specifies allowed versions and does not include any versions known to the API Server, calls to the webhook will fail and be subject to the failure policy. - **webhooks.clientConfig** (WebhookClientConfig), required @@ -131,8 +135,6 @@ ValidatingWebhookConfiguration describes the configuration of and admission webh 3. If any matchCondition evaluates to an error (but none are FALSE): - If failurePolicy=Fail, reject the request - If failurePolicy=Ignore, the error is ignored and the webhook is skipped - - This is a beta feature and managed by the AdmissionWebhookMatchConditions feature gate. *MatchCondition represents a condition which must by fulfilled for a request to be sent to a webhook.* @@ -205,6 +207,8 @@ ValidatingWebhookConfiguration describes the configuration of and admission webh - **webhooks.rules** ([]RuleWithOperations) + *Atomic: will be replaced during a merge* + Rules describes what operations on what resources/subresources the webhook cares about. The webhook cares about an operation if it matches _any_ Rule. However, in order to prevent ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks from putting the cluster in a state which cannot be recovered from without completely disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects. @@ -258,19 +262,21 @@ ValidatingWebhookConfigurationList is a list of ValidatingWebhookConfiguration.
-- **apiVersion**: admissionregistration.k8s.io/v1 +- **items** ([]}}">ValidatingWebhookConfiguration), required + List of ValidatingWebhookConfiguration. -- **kind**: ValidatingWebhookConfigurationList +- **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 -- **metadata** (}}">ListMeta) +- **kind** (string) - Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + 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 -- **items** ([]}}">ValidatingWebhookConfiguration), required +- **metadata** (}}">ListMeta) - List of ValidatingWebhookConfiguration. + Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds @@ -301,9 +307,9 @@ GET /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations/{name} name of the ValidatingWebhookConfiguration -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -324,59 +330,59 @@ GET /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -397,29 +403,29 @@ POST /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations #### Parameters -- **body**: }}">ValidatingWebhookConfiguration, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ValidatingWebhookConfiguration, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -449,29 +455,29 @@ PUT /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations/{name} name of the ValidatingWebhookConfiguration -- **body**: }}">ValidatingWebhookConfiguration, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ValidatingWebhookConfiguration, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -499,34 +505,34 @@ PATCH /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations/{nam name of the ValidatingWebhookConfiguration -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -554,29 +560,34 @@ DELETE /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations/{na name of the ValidatingWebhookConfiguration -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + + + +- **dryRun** (*in query*): string + + }}">dryRun @@ -599,69 +610,74 @@ DELETE /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations #### Parameters -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- **dryRun** (*in query*): string - }}">timeoutSeconds + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/other-resources/_index.md b/content/en/docs/reference/kubernetes-api/other-resources/_index.md deleted file mode 100644 index 2530e518b00bb..0000000000000 --- a/content/en/docs/reference/kubernetes-api/other-resources/_index.md +++ /dev/null @@ -1,17 +0,0 @@ ---- -title: "Other Resources" -weight: 10 -auto_generated: true ---- - - - diff --git a/content/en/docs/reference/kubernetes-api/other-resources/validating-admission-policy-binding-list-v1beta1.md b/content/en/docs/reference/kubernetes-api/other-resources/validating-admission-policy-binding-list-v1beta1.md deleted file mode 100644 index 58edc3226a647..0000000000000 --- a/content/en/docs/reference/kubernetes-api/other-resources/validating-admission-policy-binding-list-v1beta1.md +++ /dev/null @@ -1,28 +0,0 @@ ---- -api_metadata: - apiVersion: "admissionregistration.k8s.io/v1beta1" - import: "k8s.io/api/admissionregistration/v1beta1" - kind: "ValidatingAdmissionPolicyBindingList" -content_type: "api_reference" -description: "" -title: "ValidatingAdmissionPolicyBindingList v1beta1" -weight: 1 -auto_generated: true ---- - - - -`apiVersion: admissionregistration.k8s.io/v1beta1` - -`import "k8s.io/api/admissionregistration/v1beta1"` - - diff --git a/content/en/docs/reference/kubernetes-api/cluster-resources/flow-schema-v1beta3.md b/content/en/docs/reference/kubernetes-api/policy-resources/flow-schema-v1.md similarity index 64% rename from content/en/docs/reference/kubernetes-api/cluster-resources/flow-schema-v1beta3.md rename to content/en/docs/reference/kubernetes-api/policy-resources/flow-schema-v1.md index 94957e33ba260..453271b2fa471 100644 --- a/content/en/docs/reference/kubernetes-api/cluster-resources/flow-schema-v1beta3.md +++ b/content/en/docs/reference/kubernetes-api/policy-resources/flow-schema-v1.md @@ -1,12 +1,12 @@ --- api_metadata: - apiVersion: "flowcontrol.apiserver.k8s.io/v1beta3" - import: "k8s.io/api/flowcontrol/v1beta3" + apiVersion: "flowcontrol.apiserver.k8s.io/v1" + import: "k8s.io/api/flowcontrol/v1" kind: "FlowSchema" content_type: "api_reference" description: "FlowSchema defines the schema of a group of flows." -title: "FlowSchema v1beta3" -weight: 7 +title: "FlowSchema" +weight: 1 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/v1beta3` +`apiVersion: flowcontrol.apiserver.k8s.io/v1` -`import "k8s.io/api/flowcontrol/v1beta3"` +`import "k8s.io/api/flowcontrol/v1"` ## FlowSchema {#FlowSchema} @@ -32,7 +32,7 @@ FlowSchema defines the schema of a group of flows. Note that a flow is made up o
-- **apiVersion**: flowcontrol.apiserver.k8s.io/v1beta3 +- **apiVersion**: flowcontrol.apiserver.k8s.io/v1 - **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** (}}">FlowSchemaSpec) +- **spec** (}}">FlowSchemaSpec) `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** (}}">FlowSchemaStatus) +- **status** (}}">FlowSchemaStatus) `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 @@ -60,17 +60,6 @@ FlowSchemaSpec describes how the FlowSchema's specification looks like.
-- **priorityLevelConfiguration** (PriorityLevelConfigurationReference), required - - `priorityLevelConfiguration` should reference a PriorityLevelConfiguration in the cluster. If the reference cannot be resolved, the FlowSchema will be ignored and marked as invalid in its status. Required. - - - *PriorityLevelConfigurationReference contains information that points to the "request-priority" being used.* - - - **priorityLevelConfiguration.name** (string), required - - `name` is the name of the priority level configuration being referenced Required. - - **distinguisherMethod** (FlowDistinguisherMethod) `distinguisherMethod` defines how to compute the flow distinguisher for requests that match this schema. `nil` specifies that the distinguisher is disabled and thus will always be the empty string. @@ -86,6 +75,17 @@ FlowSchemaSpec describes how the FlowSchema's specification looks like. `matchingPrecedence` is used to choose among the FlowSchemas that match a given request. The chosen FlowSchema is among those with the numerically lowest (which we take to be logically highest) MatchingPrecedence. Each MatchingPrecedence value must be ranged in [1,10000]. Note that if the precedence is not specified, it will be set to 1000 as default. +- **priorityLevelConfiguration** (PriorityLevelConfigurationReference), required + + `priorityLevelConfiguration` should reference a PriorityLevelConfiguration in the cluster. If the reference cannot be resolved, the FlowSchema will be ignored and marked as invalid in its status. Required. + + + *PriorityLevelConfigurationReference contains information that points to the "request-priority" being used.* + + - **priorityLevelConfiguration.name** (string), required + + `name` is the name of the priority level configuration being referenced Required. + - **rules** ([]PolicyRulesWithSubjects) *Atomic: will be replaced during a merge* @@ -263,7 +263,7 @@ FlowSchemaList is a list of FlowSchema objects.
-- **apiVersion**: flowcontrol.apiserver.k8s.io/v1beta3 +- **apiVersion**: flowcontrol.apiserver.k8s.io/v1 - **kind**: FlowSchemaList @@ -273,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** ([]}}">FlowSchema), required +- **items** ([]}}">FlowSchema), required `items` is a list of FlowSchemas. @@ -296,7 +296,7 @@ FlowSchemaList is a list of FlowSchema objects. #### HTTP Request -GET /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name} +GET /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name} #### Parameters @@ -306,16 +306,16 @@ GET /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name} name of the FlowSchema -- **pretty** (*in query*): string +- ****: - }}">pretty + #### Response -200 (}}">FlowSchema): OK +200 (}}">FlowSchema): OK 401: Unauthorized @@ -324,7 +324,7 @@ GET /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name} #### HTTP Request -GET /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name}/status +GET /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}/status #### Parameters @@ -334,16 +334,16 @@ GET /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name}/status name of the FlowSchema -- **pretty** (*in query*): string +- ****: - }}">pretty + #### Response -200 (}}">FlowSchema): OK +200 (}}">FlowSchema): OK 401: Unauthorized @@ -352,71 +352,71 @@ GET /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name}/status #### HTTP Request -GET /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas +GET /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + #### Response -200 (}}">FlowSchemaList): OK +200 (}}">FlowSchemaList): OK 401: Unauthorized @@ -425,45 +425,45 @@ GET /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas #### HTTP Request -POST /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas +POST /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas #### Parameters -- **body**: }}">FlowSchema, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">FlowSchema, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation #### Response -200 (}}">FlowSchema): OK +200 (}}">FlowSchema): OK -201 (}}">FlowSchema): Created +201 (}}">FlowSchema): Created -202 (}}">FlowSchema): Accepted +202 (}}">FlowSchema): Accepted 401: Unauthorized @@ -472,7 +472,7 @@ POST /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas #### HTTP Request -PUT /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name} +PUT /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name} #### Parameters @@ -482,38 +482,38 @@ PUT /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name} name of the FlowSchema -- **body**: }}">FlowSchema, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">FlowSchema, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation #### Response -200 (}}">FlowSchema): OK +200 (}}">FlowSchema): OK -201 (}}">FlowSchema): Created +201 (}}">FlowSchema): Created 401: Unauthorized @@ -522,7 +522,7 @@ PUT /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name} #### HTTP Request -PUT /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name}/status +PUT /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}/status #### Parameters @@ -532,38 +532,38 @@ PUT /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name}/status name of the FlowSchema -- **body**: }}">FlowSchema, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">FlowSchema, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation #### Response -200 (}}">FlowSchema): OK +200 (}}">FlowSchema): OK -201 (}}">FlowSchema): Created +201 (}}">FlowSchema): Created 401: Unauthorized @@ -572,7 +572,7 @@ PUT /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name}/status #### HTTP Request -PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name} +PATCH /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name} #### Parameters @@ -582,43 +582,43 @@ PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name} name of the FlowSchema -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation #### Response -200 (}}">FlowSchema): OK +200 (}}">FlowSchema): OK -201 (}}">FlowSchema): Created +201 (}}">FlowSchema): Created 401: Unauthorized @@ -627,7 +627,7 @@ PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name} #### HTTP Request -PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name}/status +PATCH /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name}/status #### Parameters @@ -637,43 +637,43 @@ PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name}/status name of the FlowSchema -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation #### Response -200 (}}">FlowSchema): OK +200 (}}">FlowSchema): OK -201 (}}">FlowSchema): Created +201 (}}">FlowSchema): Created 401: Unauthorized @@ -682,7 +682,7 @@ PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name}/status #### HTTP Request -DELETE /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name} +DELETE /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas/{name} #### Parameters @@ -692,29 +692,34 @@ DELETE /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name} name of the FlowSchema -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: + + - }}">gracePeriodSeconds +- ****: -- **pretty** (*in query*): string + - }}">pretty +- ****: -- **propagationPolicy** (*in query*): string + - }}">propagationPolicy + +- **dryRun** (*in query*): string + + }}">dryRun @@ -732,74 +737,79 @@ DELETE /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas/{name} #### HTTP Request -DELETE /apis/flowcontrol.apiserver.k8s.io/v1beta3/flowschemas +DELETE /apis/flowcontrol.apiserver.k8s.io/v1/flowschemas #### Parameters -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: + + - }}">gracePeriodSeconds +- ****: -- **labelSelector** (*in query*): string + - }}">labelSelector +- ****: -- **limit** (*in query*): integer + - }}">limit + +- ****: + + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- **dryRun** (*in query*): string - }}">timeoutSeconds + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/policy-resources/ip-address-v1alpha1.md b/content/en/docs/reference/kubernetes-api/policy-resources/ip-address-v1alpha1.md deleted file mode 100644 index 4828acb88c290..0000000000000 --- a/content/en/docs/reference/kubernetes-api/policy-resources/ip-address-v1alpha1.md +++ /dev/null @@ -1,509 +0,0 @@ ---- -api_metadata: - apiVersion: "networking.k8s.io/v1alpha1" - import: "k8s.io/api/networking/v1alpha1" - kind: "IPAddress" -content_type: "api_reference" -description: "IPAddress represents a single IP of a single IP Family." -title: "IPAddress v1alpha1" -weight: 5 -auto_generated: true ---- - - - -`apiVersion: networking.k8s.io/v1alpha1` - -`import "k8s.io/api/networking/v1alpha1"` - - -## IPAddress {#IPAddress} - -IPAddress represents a single IP of a single IP Family. The object is designed to be used by APIs that operate on IP addresses. The object is used by the Service core API for allocation of IP addresses. An IP address can be represented in different formats, to guarantee the uniqueness of the IP, the name of the object is the IP address in canonical format, four decimal digits separated by dots suppressing leading zeros for IPv4 and the representation defined by RFC 5952 for IPv6. Valid: 192.168.1.5 or 2001:db8::1 or 2001:db8:aaaa:bbbb:cccc:dddd:eeee:1 Invalid: 10.01.2.3 or 2001:db8:0:0:0::1 - -
- -- **apiVersion**: networking.k8s.io/v1alpha1 - - -- **kind**: IPAddress - - -- **metadata** (}}">ObjectMeta) - - Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata - -- **spec** (}}">IPAddressSpec) - - spec is the desired state of the IPAddress. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status - - - - - -## IPAddressSpec {#IPAddressSpec} - -IPAddressSpec describe the attributes in an IP Address. - -
- -- **parentRef** (ParentReference) - - ParentRef references the resource that an IPAddress is attached to. An IPAddress must reference a parent object. - - - *ParentReference describes a reference to a parent object.* - - - **parentRef.group** (string) - - Group is the group of the object being referenced. - - - **parentRef.name** (string) - - Name is the name of the object being referenced. - - - **parentRef.namespace** (string) - - Namespace is the namespace of the object being referenced. - - - **parentRef.resource** (string) - - Resource is the resource of the object being referenced. - - - **parentRef.uid** (string) - - UID is the uid of the object being referenced. - - - - - -## IPAddressList {#IPAddressList} - -IPAddressList contains a list of IPAddress. - -
- -- **apiVersion**: networking.k8s.io/v1alpha1 - - -- **kind**: IPAddressList - - -- **metadata** (}}">ListMeta) - - Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata - -- **items** ([]}}">IPAddress), required - - items is the list of IPAddresses. - - - - - -## Operations {#Operations} - - - -
- - - - - - -### `get` read the specified IPAddress - -#### HTTP Request - -GET /apis/networking.k8s.io/v1alpha1/ipaddresses/{name} - -#### Parameters - - -- **name** (*in path*): string, required - - name of the IPAddress - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">IPAddress): OK - -401: Unauthorized - - -### `list` list or watch objects of kind IPAddress - -#### HTTP Request - -GET /apis/networking.k8s.io/v1alpha1/ipaddresses - -#### Parameters - - -- **allowWatchBookmarks** (*in query*): boolean - - }}">allowWatchBookmarks - - -- **continue** (*in query*): string - - }}">continue - - -- **fieldSelector** (*in query*): string - - }}">fieldSelector - - -- **labelSelector** (*in query*): string - - }}">labelSelector - - -- **limit** (*in query*): integer - - }}">limit - - -- **pretty** (*in query*): string - - }}">pretty - - -- **resourceVersion** (*in query*): string - - }}">resourceVersion - - -- **resourceVersionMatch** (*in query*): string - - }}">resourceVersionMatch - - -- **sendInitialEvents** (*in query*): boolean - - }}">sendInitialEvents - - -- **timeoutSeconds** (*in query*): integer - - }}">timeoutSeconds - - -- **watch** (*in query*): boolean - - }}">watch - - - -#### Response - - -200 (}}">IPAddressList): OK - -401: Unauthorized - - -### `create` create an IPAddress - -#### HTTP Request - -POST /apis/networking.k8s.io/v1alpha1/ipaddresses - -#### Parameters - - -- **body**: }}">IPAddress, required - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldManager** (*in query*): string - - }}">fieldManager - - -- **fieldValidation** (*in query*): string - - }}">fieldValidation - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">IPAddress): OK - -201 (}}">IPAddress): Created - -202 (}}">IPAddress): Accepted - -401: Unauthorized - - -### `update` replace the specified IPAddress - -#### HTTP Request - -PUT /apis/networking.k8s.io/v1alpha1/ipaddresses/{name} - -#### Parameters - - -- **name** (*in path*): string, required - - name of the IPAddress - - -- **body**: }}">IPAddress, required - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldManager** (*in query*): string - - }}">fieldManager - - -- **fieldValidation** (*in query*): string - - }}">fieldValidation - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">IPAddress): OK - -201 (}}">IPAddress): Created - -401: Unauthorized - - -### `patch` partially update the specified IPAddress - -#### HTTP Request - -PATCH /apis/networking.k8s.io/v1alpha1/ipaddresses/{name} - -#### Parameters - - -- **name** (*in path*): string, required - - name of the IPAddress - - -- **body**: }}">Patch, required - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldManager** (*in query*): string - - }}">fieldManager - - -- **fieldValidation** (*in query*): string - - }}">fieldValidation - - -- **force** (*in query*): boolean - - }}">force - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">IPAddress): OK - -201 (}}">IPAddress): Created - -401: Unauthorized - - -### `delete` delete an IPAddress - -#### HTTP Request - -DELETE /apis/networking.k8s.io/v1alpha1/ipaddresses/{name} - -#### Parameters - - -- **name** (*in path*): string, required - - name of the IPAddress - - -- **body**: }}">DeleteOptions - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **gracePeriodSeconds** (*in query*): integer - - }}">gracePeriodSeconds - - -- **pretty** (*in query*): string - - }}">pretty - - -- **propagationPolicy** (*in query*): string - - }}">propagationPolicy - - - -#### Response - - -200 (}}">Status): OK - -202 (}}">Status): Accepted - -401: Unauthorized - - -### `deletecollection` delete collection of IPAddress - -#### HTTP Request - -DELETE /apis/networking.k8s.io/v1alpha1/ipaddresses - -#### Parameters - - -- **body**: }}">DeleteOptions - - - - -- **continue** (*in query*): string - - }}">continue - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldSelector** (*in query*): string - - }}">fieldSelector - - -- **gracePeriodSeconds** (*in query*): integer - - }}">gracePeriodSeconds - - -- **labelSelector** (*in query*): string - - }}">labelSelector - - -- **limit** (*in query*): integer - - }}">limit - - -- **pretty** (*in query*): string - - }}">pretty - - -- **propagationPolicy** (*in query*): string - - }}">propagationPolicy - - -- **resourceVersion** (*in query*): string - - }}">resourceVersion - - -- **resourceVersionMatch** (*in query*): string - - }}">resourceVersionMatch - - -- **sendInitialEvents** (*in query*): boolean - - }}">sendInitialEvents - - -- **timeoutSeconds** (*in query*): integer - - }}">timeoutSeconds - - - -#### Response - - -200 (}}">Status): OK - -401: Unauthorized - diff --git a/content/en/docs/reference/kubernetes-api/policy-resources/limit-range-v1.md b/content/en/docs/reference/kubernetes-api/policy-resources/limit-range-v1.md index ef4355e4f275f..0a2f4f6c31cba 100644 --- a/content/en/docs/reference/kubernetes-api/policy-resources/limit-range-v1.md +++ b/content/en/docs/reference/kubernetes-api/policy-resources/limit-range-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "LimitRange sets resource usage limits for each kind of resource in a Namespace." title: "LimitRange" -weight: 1 +weight: 2 auto_generated: true --- @@ -58,6 +58,8 @@ LimitRangeSpec defines a min/max usage limit for resources that match on kind. - **limits** ([]LimitRangeItem), required + *Atomic: will be replaced during a merge* + Limits is the list of LimitRangeItem objects that are enforced. @@ -140,14 +142,14 @@ GET /api/v1/namespaces/{namespace}/limitranges/{name} name of the LimitRange -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -168,64 +170,64 @@ GET /api/v1/namespaces/{namespace}/limitranges #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -246,59 +248,59 @@ GET /api/v1/limitranges #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -319,34 +321,34 @@ POST /api/v1/namespaces/{namespace}/limitranges #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">LimitRange, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">LimitRange, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -376,34 +378,34 @@ PUT /api/v1/namespaces/{namespace}/limitranges/{name} name of the LimitRange -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">LimitRange, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">LimitRange, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -431,39 +433,39 @@ PATCH /api/v1/namespaces/{namespace}/limitranges/{name} name of the LimitRange -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -491,34 +493,39 @@ DELETE /api/v1/namespaces/{namespace}/limitranges/{name} name of the LimitRange -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- **dryRun** (*in query*): string - }}">propagationPolicy + }}">dryRun @@ -541,74 +548,79 @@ DELETE /api/v1/namespaces/{namespace}/limitranges #### Parameters -- **namespace** (*in path*): string, required +- ****: + + + + +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- **dryRun** (*in query*): string - }}">timeoutSeconds + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/policy-resources/network-policy-v1.md b/content/en/docs/reference/kubernetes-api/policy-resources/network-policy-v1.md index d182afa48133d..97e964c8b245b 100644 --- a/content/en/docs/reference/kubernetes-api/policy-resources/network-policy-v1.md +++ b/content/en/docs/reference/kubernetes-api/policy-resources/network-policy-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "NetworkPolicy describes what network traffic is allowed for a set of Pods." title: "NetworkPolicy" -weight: 3 +weight: 4 auto_generated: true --- @@ -62,10 +62,14 @@ NetworkPolicySpec provides the specification of a NetworkPolicy - **policyTypes** ([]string) + *Atomic: will be replaced during a merge* + policyTypes is a list of rule types that the NetworkPolicy relates to. Valid options are ["Ingress"], ["Egress"], or ["Ingress", "Egress"]. If this field is not specified, it will default based on the existence of ingress or egress rules; policies that contain an egress section are assumed to affect egress, and all policies (whether or not they contain an ingress section) are assumed to affect ingress. If you want to write an egress-only policy, you must explicitly specify policyTypes [ "Egress" ]. Likewise, if you want to write a policy that specifies that no egress is allowed, you must specify a policyTypes value that include "Egress" (since such a policy would not include an egress section and would otherwise default to just [ "Ingress" ]). This field is beta-level in 1.8 - **ingress** ([]NetworkPolicyIngressRule) + *Atomic: will be replaced during a merge* + ingress is a list of ingress rules to be applied to the selected pods. Traffic is allowed to a pod if there are no NetworkPolicies selecting the pod (and cluster policy otherwise allows the traffic), OR if the traffic source is the pod's local node, OR if the traffic matches at least one ingress rule across all of the NetworkPolicy objects whose podSelector matches the pod. If this field is empty then this NetworkPolicy does not allow any traffic (and serves solely to ensure that the pods it selects are isolated by default) @@ -73,6 +77,8 @@ NetworkPolicySpec provides the specification of a NetworkPolicy - **ingress.from** ([]NetworkPolicyPeer) + *Atomic: will be replaced during a merge* + from is a list of sources which should be able to access the pods selected for this rule. Items in this list are combined using a logical OR operation. If this field is empty or missing, this rule matches all sources (traffic not restricted by source). If this field is present and contains at least one item, this rule allows traffic only if the traffic matches at least one item in the from list. @@ -91,6 +97,8 @@ NetworkPolicySpec provides the specification of a NetworkPolicy - **ingress.from.ipBlock.except** ([]string) + *Atomic: will be replaced during a merge* + except is a slice of CIDRs that should not be included within an IPBlock 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** (}}">LabelSelector) @@ -107,6 +115,8 @@ NetworkPolicySpec provides the specification of a NetworkPolicy - **ingress.ports** ([]NetworkPolicyPort) + *Atomic: will be replaced during a merge* + ports is a list of ports which should be made accessible on the pods selected for this rule. Each item in this list is combined using a logical OR. If this field is empty or missing, this rule matches all ports (traffic not restricted by port). If this field is present and contains at least one item, then this rule allows traffic only if the traffic matches at least one port in the list. @@ -129,6 +139,8 @@ NetworkPolicySpec provides the specification of a NetworkPolicy - **egress** ([]NetworkPolicyEgressRule) + *Atomic: will be replaced during a merge* + egress is a list of egress rules to be applied to the selected pods. Outgoing traffic is allowed if there are no NetworkPolicies selecting the pod (and cluster policy otherwise allows the traffic), OR if the traffic matches at least one egress rule across all of the NetworkPolicy objects whose podSelector matches the pod. If this field is empty then this NetworkPolicy limits all outgoing traffic (and serves solely to ensure that the pods it selects are isolated by default). This field is beta-level in 1.8 @@ -136,6 +148,8 @@ NetworkPolicySpec provides the specification of a NetworkPolicy - **egress.to** ([]NetworkPolicyPeer) + *Atomic: will be replaced during a merge* + to is a list of destinations for outgoing traffic of pods selected for this rule. Items in this list are combined using a logical OR operation. If this field is empty or missing, this rule matches all destinations (traffic not restricted by destination). If this field is present and contains at least one item, this rule allows traffic only if the traffic matches at least one item in the to list. @@ -154,6 +168,8 @@ NetworkPolicySpec provides the specification of a NetworkPolicy - **egress.to.ipBlock.except** ([]string) + *Atomic: will be replaced during a merge* + except is a slice of CIDRs that should not be included within an IPBlock 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** (}}">LabelSelector) @@ -170,6 +186,8 @@ NetworkPolicySpec provides the specification of a NetworkPolicy - **egress.ports** ([]NetworkPolicyPort) + *Atomic: will be replaced during a merge* + ports is a list of destination ports for outgoing traffic. Each item in this list is combined using a logical OR. If this field is empty or missing, this rule matches all ports (traffic not restricted by port). If this field is present and contains at least one item, then this rule allows traffic only if the traffic matches at least one port in the list. @@ -243,14 +261,14 @@ GET /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name} name of the NetworkPolicy -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -271,64 +289,64 @@ GET /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -349,59 +367,59 @@ GET /apis/networking.k8s.io/v1/networkpolicies #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -422,34 +440,34 @@ POST /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">NetworkPolicy, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">NetworkPolicy, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -479,34 +497,34 @@ PUT /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name} name of the NetworkPolicy -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">NetworkPolicy, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">NetworkPolicy, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -534,39 +552,39 @@ PATCH /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name} name of the NetworkPolicy -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -594,34 +612,39 @@ DELETE /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name} name of the NetworkPolicy -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + + + +- **dryRun** (*in query*): string + + }}">dryRun @@ -644,74 +667,79 @@ DELETE /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies #### Parameters -- **namespace** (*in path*): string, required +- ****: + + + + +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- **dryRun** (*in query*): string - }}">timeoutSeconds + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/policy-resources/pod-disruption-budget-v1.md b/content/en/docs/reference/kubernetes-api/policy-resources/pod-disruption-budget-v1.md index ece7b336b9f3c..8d31a26832d3b 100644 --- a/content/en/docs/reference/kubernetes-api/policy-resources/pod-disruption-budget-v1.md +++ b/content/en/docs/reference/kubernetes-api/policy-resources/pod-disruption-budget-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "PodDisruptionBudget is an object to define the max disruption that can be caused to a collection of pods." title: "PodDisruptionBudget" -weight: 4 +weight: 5 auto_generated: true --- @@ -228,14 +228,14 @@ GET /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name} name of the PodDisruptionBudget -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -261,14 +261,14 @@ GET /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}/status name of the PodDisruptionBudget -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -289,64 +289,64 @@ GET /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -367,59 +367,59 @@ GET /apis/policy/v1/poddisruptionbudgets #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -440,34 +440,34 @@ POST /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">PodDisruptionBudget, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">PodDisruptionBudget, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -497,34 +497,34 @@ PUT /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name} name of the PodDisruptionBudget -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">PodDisruptionBudget, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">PodDisruptionBudget, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -552,34 +552,34 @@ PUT /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}/status name of the PodDisruptionBudget -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">PodDisruptionBudget, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">PodDisruptionBudget, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -607,39 +607,39 @@ PATCH /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name} name of the PodDisruptionBudget -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -667,39 +667,39 @@ PATCH /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name}/status name of the PodDisruptionBudget -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -727,34 +727,39 @@ DELETE /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets/{name} name of the PodDisruptionBudget -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: + + - }}">gracePeriodSeconds +- ****: -- **pretty** (*in query*): string + - }}">pretty +- ****: -- **propagationPolicy** (*in query*): string + - }}">propagationPolicy + +- **dryRun** (*in query*): string + + }}">dryRun @@ -777,74 +782,79 @@ DELETE /apis/policy/v1/namespaces/{namespace}/poddisruptionbudgets #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: + + - }}">sendInitialEvents +- ****: + + -- **timeoutSeconds** (*in query*): integer - }}">timeoutSeconds +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/cluster-resources/priority-level-configuration-v1beta3.md b/content/en/docs/reference/kubernetes-api/policy-resources/priority-level-configuration-v1.md similarity index 59% rename from content/en/docs/reference/kubernetes-api/cluster-resources/priority-level-configuration-v1beta3.md rename to content/en/docs/reference/kubernetes-api/policy-resources/priority-level-configuration-v1.md index a5a54c354f958..67cdef7a72438 100644 --- a/content/en/docs/reference/kubernetes-api/cluster-resources/priority-level-configuration-v1beta3.md +++ b/content/en/docs/reference/kubernetes-api/policy-resources/priority-level-configuration-v1.md @@ -1,12 +1,12 @@ --- api_metadata: - apiVersion: "flowcontrol.apiserver.k8s.io/v1beta3" - import: "k8s.io/api/flowcontrol/v1beta3" + apiVersion: "flowcontrol.apiserver.k8s.io/v1" + import: "k8s.io/api/flowcontrol/v1" kind: "PriorityLevelConfiguration" content_type: "api_reference" description: "PriorityLevelConfiguration represents the configuration of a priority level." -title: "PriorityLevelConfiguration v1beta3" -weight: 8 +title: "PriorityLevelConfiguration" +weight: 6 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/v1beta3` +`apiVersion: flowcontrol.apiserver.k8s.io/v1` -`import "k8s.io/api/flowcontrol/v1beta3"` +`import "k8s.io/api/flowcontrol/v1"` ## PriorityLevelConfiguration {#PriorityLevelConfiguration} @@ -32,7 +32,7 @@ PriorityLevelConfiguration represents the configuration of a priority level.
-- **apiVersion**: flowcontrol.apiserver.k8s.io/v1beta3 +- **apiVersion**: flowcontrol.apiserver.k8s.io/v1 - **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** (}}">PriorityLevelConfigurationSpec) +- **spec** (}}">PriorityLevelConfigurationSpec) `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** (}}">PriorityLevelConfigurationStatus) +- **status** (}}">PriorityLevelConfigurationStatus) `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 @@ -60,10 +60,6 @@ PriorityLevelConfigurationSpec specifies the configuration of a priority level.
-- **type** (string), required - - `type` indicates whether this priority level is subject to limitation on request execution. A value of `"Exempt"` means that requests of this priority level are not subject to a limit (and thus are never queued) and do not detract from the capacity made available to other priority levels. A value of `"Limited"` means that (a) requests of this priority level _are_ subject to limits and (b) some of the server's limited capacity is made available exclusively to this priority level. Required. - - **exempt** (ExemptPriorityLevelConfiguration) `exempt` specifies how requests are handled for an exempt priority level. This field MUST be empty if `type` is `"Limited"`. This field MAY be non-empty if `type` is `"Exempt"`. If empty and `type` is `"Exempt"` then the default values for `ExemptPriorityLevelConfiguration` apply. @@ -144,7 +140,15 @@ PriorityLevelConfigurationSpec specifies the configuration of a priority level. NominalCL(i) = ceil( ServerCL * NCS(i) / sum_ncs ) sum_ncs = sum[priority level k] NCS(k) - Bigger numbers mean a larger nominal concurrency limit, at the expense of every other priority level. This field has a default value of 30. + Bigger numbers mean a larger nominal concurrency limit, at the expense of every other priority level. + + If not specified, this field defaults to a value of 30. + + Setting this field to zero supports the construction of a "jail" for this priority level that is used to hold some request(s) + +- **type** (string), required + + `type` indicates whether this priority level is subject to limitation on request execution. A value of `"Exempt"` means that requests of this priority level are not subject to a limit (and thus are never queued) and do not detract from the capacity made available to other priority levels. A value of `"Limited"` means that (a) requests of this priority level _are_ subject to limits and (b) some of the server's limited capacity is made available exclusively to this priority level. Required. @@ -200,7 +204,7 @@ PriorityLevelConfigurationList is a list of PriorityLevelConfiguration objects.
-- **apiVersion**: flowcontrol.apiserver.k8s.io/v1beta3 +- **apiVersion**: flowcontrol.apiserver.k8s.io/v1 - **kind**: PriorityLevelConfigurationList @@ -210,7 +214,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** ([]}}">PriorityLevelConfiguration), required +- **items** ([]}}">PriorityLevelConfiguration), required `items` is a list of request-priorities. @@ -233,7 +237,7 @@ PriorityLevelConfigurationList is a list of PriorityLevelConfiguration objects. #### HTTP Request -GET /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{name} +GET /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name} #### Parameters @@ -243,16 +247,16 @@ GET /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{name name of the PriorityLevelConfiguration -- **pretty** (*in query*): string +- ****: - }}">pretty + #### Response -200 (}}">PriorityLevelConfiguration): OK +200 (}}">PriorityLevelConfiguration): OK 401: Unauthorized @@ -261,7 +265,7 @@ GET /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{name #### HTTP Request -GET /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{name}/status +GET /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}/status #### Parameters @@ -271,16 +275,16 @@ GET /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{name name of the PriorityLevelConfiguration -- **pretty** (*in query*): string +- ****: - }}">pretty + #### Response -200 (}}">PriorityLevelConfiguration): OK +200 (}}">PriorityLevelConfiguration): OK 401: Unauthorized @@ -289,71 +293,71 @@ GET /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{name #### HTTP Request -GET /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations +GET /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + #### Response -200 (}}">PriorityLevelConfigurationList): OK +200 (}}">PriorityLevelConfigurationList): OK 401: Unauthorized @@ -362,45 +366,45 @@ GET /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations #### HTTP Request -POST /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations +POST /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations #### Parameters -- **body**: }}">PriorityLevelConfiguration, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">PriorityLevelConfiguration, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation #### Response -200 (}}">PriorityLevelConfiguration): OK +200 (}}">PriorityLevelConfiguration): OK -201 (}}">PriorityLevelConfiguration): Created +201 (}}">PriorityLevelConfiguration): Created -202 (}}">PriorityLevelConfiguration): Accepted +202 (}}">PriorityLevelConfiguration): Accepted 401: Unauthorized @@ -409,7 +413,7 @@ POST /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations #### HTTP Request -PUT /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{name} +PUT /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name} #### Parameters @@ -419,38 +423,38 @@ PUT /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{name name of the PriorityLevelConfiguration -- **body**: }}">PriorityLevelConfiguration, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">PriorityLevelConfiguration, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation #### Response -200 (}}">PriorityLevelConfiguration): OK +200 (}}">PriorityLevelConfiguration): OK -201 (}}">PriorityLevelConfiguration): Created +201 (}}">PriorityLevelConfiguration): Created 401: Unauthorized @@ -459,7 +463,7 @@ PUT /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{name #### HTTP Request -PUT /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{name}/status +PUT /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}/status #### Parameters @@ -469,38 +473,38 @@ PUT /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{name name of the PriorityLevelConfiguration -- **body**: }}">PriorityLevelConfiguration, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">PriorityLevelConfiguration, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation #### Response -200 (}}">PriorityLevelConfiguration): OK +200 (}}">PriorityLevelConfiguration): OK -201 (}}">PriorityLevelConfiguration): Created +201 (}}">PriorityLevelConfiguration): Created 401: Unauthorized @@ -509,7 +513,7 @@ PUT /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{name #### HTTP Request -PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{name} +PATCH /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name} #### Parameters @@ -519,43 +523,43 @@ PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{na name of the PriorityLevelConfiguration -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation #### Response -200 (}}">PriorityLevelConfiguration): OK +200 (}}">PriorityLevelConfiguration): OK -201 (}}">PriorityLevelConfiguration): Created +201 (}}">PriorityLevelConfiguration): Created 401: Unauthorized @@ -564,7 +568,7 @@ PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{na #### HTTP Request -PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{name}/status +PATCH /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name}/status #### Parameters @@ -574,43 +578,43 @@ PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{na name of the PriorityLevelConfiguration -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation #### Response -200 (}}">PriorityLevelConfiguration): OK +200 (}}">PriorityLevelConfiguration): OK -201 (}}">PriorityLevelConfiguration): Created +201 (}}">PriorityLevelConfiguration): Created 401: Unauthorized @@ -619,7 +623,7 @@ PATCH /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{na #### HTTP Request -DELETE /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{name} +DELETE /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations/{name} #### Parameters @@ -629,29 +633,34 @@ DELETE /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{n name of the PriorityLevelConfiguration -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: + + - }}">dryRun +- ****: + + -- **gracePeriodSeconds** (*in query*): integer - }}">gracePeriodSeconds +- ****: + -- **pretty** (*in query*): string - }}">pretty +- ****: + -- **propagationPolicy** (*in query*): string - }}">propagationPolicy +- **dryRun** (*in query*): string + + }}">dryRun @@ -669,74 +678,79 @@ DELETE /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations/{n #### HTTP Request -DELETE /apis/flowcontrol.apiserver.k8s.io/v1beta3/prioritylevelconfigurations +DELETE /apis/flowcontrol.apiserver.k8s.io/v1/prioritylevelconfigurations #### Parameters -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + -- **fieldSelector** (*in query*): string - }}">fieldSelector +- ****: + -- **gracePeriodSeconds** (*in query*): integer - }}">gracePeriodSeconds +- ****: + -- **labelSelector** (*in query*): string - }}">labelSelector +- ****: + -- **limit** (*in query*): integer - }}">limit +- ****: + -- **pretty** (*in query*): string - }}">pretty +- ****: + -- **propagationPolicy** (*in query*): string - }}">propagationPolicy +- ****: + -- **resourceVersion** (*in query*): string - }}">resourceVersion +- ****: + + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- **dryRun** (*in query*): string - }}">timeoutSeconds + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/policy-resources/resource-quota-v1.md b/content/en/docs/reference/kubernetes-api/policy-resources/resource-quota-v1.md index 887b89886b57f..797e9d808dbe2 100644 --- a/content/en/docs/reference/kubernetes-api/policy-resources/resource-quota-v1.md +++ b/content/en/docs/reference/kubernetes-api/policy-resources/resource-quota-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "ResourceQuota sets aggregate quota restrictions enforced per namespace." title: "ResourceQuota" -weight: 2 +weight: 3 auto_generated: true --- @@ -73,6 +73,8 @@ ResourceQuotaSpec defines the desired hard limits to enforce for Quota. - **scopeSelector.matchExpressions** ([]ScopedResourceSelectorRequirement) + *Atomic: will be replaced during a merge* + A list of scope selector requirements by scope of the resources. @@ -88,10 +90,14 @@ ResourceQuotaSpec defines the desired hard limits to enforce for Quota. - **scopeSelector.matchExpressions.values** ([]string) + *Atomic: will be replaced during a merge* + An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. - **scopes** ([]string) + *Atomic: will be replaced during a merge* + A collection of filters that must match each object tracked by a quota. If not specified, the quota matches all objects. @@ -165,14 +171,14 @@ GET /api/v1/namespaces/{namespace}/resourcequotas/{name} name of the ResourceQuota -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -198,14 +204,14 @@ GET /api/v1/namespaces/{namespace}/resourcequotas/{name}/status name of the ResourceQuota -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -226,64 +232,64 @@ GET /api/v1/namespaces/{namespace}/resourcequotas #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -304,59 +310,59 @@ GET /api/v1/resourcequotas #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -377,34 +383,34 @@ POST /api/v1/namespaces/{namespace}/resourcequotas #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">ResourceQuota, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ResourceQuota, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -434,34 +440,34 @@ PUT /api/v1/namespaces/{namespace}/resourcequotas/{name} name of the ResourceQuota -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">ResourceQuota, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ResourceQuota, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -489,34 +495,34 @@ PUT /api/v1/namespaces/{namespace}/resourcequotas/{name}/status name of the ResourceQuota -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">ResourceQuota, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ResourceQuota, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -544,39 +550,39 @@ PATCH /api/v1/namespaces/{namespace}/resourcequotas/{name} name of the ResourceQuota -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -604,39 +610,39 @@ PATCH /api/v1/namespaces/{namespace}/resourcequotas/{name}/status name of the ResourceQuota -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -664,34 +670,39 @@ DELETE /api/v1/namespaces/{namespace}/resourcequotas/{name} name of the ResourceQuota -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: + + - }}">gracePeriodSeconds +- ****: -- **pretty** (*in query*): string + - }}">pretty +- ****: -- **propagationPolicy** (*in query*): string + - }}">propagationPolicy + +- **dryRun** (*in query*): string + + }}">dryRun @@ -714,74 +725,79 @@ DELETE /api/v1/namespaces/{namespace}/resourcequotas #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: + + - }}">sendInitialEvents +- ****: + + -- **timeoutSeconds** (*in query*): integer - }}">timeoutSeconds +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/policy-resources/validating-admission-policy-binding-v1.md b/content/en/docs/reference/kubernetes-api/policy-resources/validating-admission-policy-binding-v1.md new file mode 100644 index 0000000000000..66271d0d581d9 --- /dev/null +++ b/content/en/docs/reference/kubernetes-api/policy-resources/validating-admission-policy-binding-v1.md @@ -0,0 +1,1129 @@ +--- +api_metadata: + apiVersion: "admissionregistration.k8s.io/v1" + import: "k8s.io/api/admissionregistration/v1" + kind: "ValidatingAdmissionPolicyBinding" +content_type: "api_reference" +description: "ValidatingAdmissionPolicyBinding binds the ValidatingAdmissionPolicy with paramerized resources." +title: "ValidatingAdmissionPolicyBinding" +weight: 8 +auto_generated: true +--- + + + +`apiVersion: admissionregistration.k8s.io/v1` + +`import "k8s.io/api/admissionregistration/v1"` + + +## ValidatingAdmissionPolicyBinding {#ValidatingAdmissionPolicyBinding} + +ValidatingAdmissionPolicyBinding binds the ValidatingAdmissionPolicy with paramerized resources. ValidatingAdmissionPolicyBinding and parameter CRDs together define how cluster administrators configure policies for clusters. + +For a given admission request, each binding will cause its policy to be evaluated N times, where N is 1 for policies/bindings that don't use params, otherwise N is the number of parameters selected by the binding. + +The CEL expressions of a policy must have a computed CEL cost below the maximum CEL budget. Each evaluation of the policy is given an independent CEL cost budget. Adding/removing policies, bindings, or params can not affect whether a given (policy, binding, param) combination is within its own CEL budget. + +
+ +- **apiVersion**: admissionregistration.k8s.io/v1 + + +- **kind**: ValidatingAdmissionPolicyBinding + + +- **metadata** (}}">ObjectMeta) + + 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. + + + *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. + + + *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) + + + *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** (}}">LabelSelector) + + 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** (}}">LabelSelector) + + 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. + + + *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. If the policy does not specify a ParamKind then this field is ignored, and the rules are evaluated without a param. + + + *ParamRef describes how to locate the params to be used as input to expressions of rules applied by a policy binding.* + + - **spec.paramRef.name** (string) + + name is the name of the resource being referenced. + + One of `name` or `selector` must be set, but `name` and `selector` are mutually exclusive properties. If one is set, the other must be unset. + + A single parameter used for all admission requests can be configured by setting the `name` field, leaving `selector` blank, and setting namespace if `paramKind` is namespace-scoped. + + - **spec.paramRef.namespace** (string) + + namespace is the namespace of the referenced resource. Allows limiting the search for params to a specific namespace. Applies to both `name` and `selector` fields. + + A per-namespace parameter may be used by specifying a namespace-scoped `paramKind` in the policy and leaving this field empty. + + - If `paramKind` is cluster-scoped, this field MUST be unset. Setting this field results in a configuration error. + + - If `paramKind` is namespace-scoped, the namespace of the object being evaluated for admission will be used when this field is left unset. Take care that if this is left empty the binding must not match any cluster-scoped resources, which will result in an error. + + - **spec.paramRef.parameterNotFoundAction** (string) + + `parameterNotFoundAction` controls the behavior of the binding when the resource exists, and name or selector is valid, but there are no parameters matched by the binding. If the value is set to `Allow`, then no matched parameters will be treated as successful validation by the binding. If set to `Deny`, then no matched parameters will be subject to the `failurePolicy` of the policy. + + Allowed values are `Allow` or `Deny` + + Required + + - **spec.paramRef.selector** (}}">LabelSelector) + + selector can be used to match multiple param objects based on their labels. Supply selector: {} to match all resources of the ParamKind. + + If multiple params are found, they are all evaluated with the policy expressions and the results are ANDed together. + + One of `name` or `selector` must be set, but `name` and `selector` are mutually exclusive properties. If one is set, the other must be unset. + + - **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. + + - **spec.validationActions** ([]string) + + *Set: unique values will be kept during a merge* + + validationActions declares how Validations of the referenced ValidatingAdmissionPolicy are enforced. If a validation evaluates to false it is always enforced according to these actions. + + Failures defined by the ValidatingAdmissionPolicy's FailurePolicy are enforced according to these actions only if the FailurePolicy is set to Fail, otherwise the failures are ignored. This includes compilation errors, runtime errors and misconfigurations of the policy. + + validationActions is declared as a set of action values. Order does not matter. validationActions may not contain duplicates of the same action. + + The supported actions values are: + + "Deny" specifies that a validation failure results in a denied request. + + "Warn" specifies that a validation failure is reported to the request client in HTTP Warning headers, with a warning code of 299. Warnings can be sent both for allowed or denied admission responses. + + "Audit" specifies that a validation failure is included in the published audit event for the request. The audit event will contain a `validation.policy.admission.k8s.io/validation_failure` audit annotation with a value containing the details of the validation failures, formatted as a JSON list of objects, each with the following fields: - message: The validation failure message string - policy: The resource name of the ValidatingAdmissionPolicy - binding: The resource name of the ValidatingAdmissionPolicyBinding - expressionIndex: The index of the failed validations in the ValidatingAdmissionPolicy - validationActions: The enforcement actions enacted for the validation failure Example audit annotation: `"validation.policy.admission.k8s.io/validation_failure": "[{"message": "Invalid value", {"policy": "policy.example.com", {"binding": "policybinding.example.com", {"expressionIndex": "1", {"validationActions": ["Audit"]}]"` + + Clients should expect to handle additional values by ignoring any values not recognized. + + "Deny" and "Warn" may not be used together since this combination needlessly duplicates the validation failure both in the API response body and the HTTP warning headers. + + Required. + + + + + +## ValidatingAdmissionPolicy {#ValidatingAdmissionPolicy} + +ValidatingAdmissionPolicy describes the definition of an admission validation policy that accepts or rejects an object without changing it. + +
+ +- **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** (}}">ObjectMeta) + + 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. + + + *ValidatingAdmissionPolicySpec is the specification of the desired behavior of the AdmissionPolicy.* + + - **spec.auditAnnotations** ([]AuditAnnotation) + + *Atomic: will be replaced during a merge* + + auditAnnotations contains CEL expressions which are used to produce audit annotations for the audit event of the API request. validations and auditAnnotations may not both be empty; a least one of validations or auditAnnotations is required. + + + *AuditAnnotation describes how to produce an audit annotation for an API request.* + + - **spec.auditAnnotations.key** (string), required + + key specifies the audit annotation key. The audit annotation keys of a ValidatingAdmissionPolicy must be unique. The key must be a qualified name ([A-Za-z0-9][-A-Za-z0-9_.]*) no more than 63 bytes in length. + + The key is combined with the resource name of the ValidatingAdmissionPolicy to construct an audit annotation key: "{ValidatingAdmissionPolicy name}/{key}". + + If an admission webhook uses the same resource name as this ValidatingAdmissionPolicy and the same audit annotation key, the annotation key will be identical. In this case, the first annotation written with the key will be included in the audit event and all subsequent annotations with the same key will be discarded. + + Required. + + - **spec.auditAnnotations.valueExpression** (string), required + + valueExpression represents the expression which is evaluated by CEL to produce an audit annotation value. The expression must evaluate to either a string or null value. If the expression evaluates to a string, the audit annotation is included with the string value. If the expression evaluates to null or empty string the audit annotation will be omitted. The valueExpression may be no longer than 5kb in length. If the result of the valueExpression is more than 10kb in length, it will be truncated to 10kb. + + If multiple ValidatingAdmissionPolicyBinding resources match an API request, then the valueExpression will be evaluated for each binding. All unique values produced by the valueExpressions will be joined together in a comma-separated list. + + Required. + + - **spec.failurePolicy** (string) + + failurePolicy defines how to handle failures for the admission policy. Failures can occur from CEL expression parse errors, type check errors, runtime errors and 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. + + failurePolicy does not define how validations that evaluate to false are handled. + + When failurePolicy is set to Fail, ValidatingAdmissionPolicyBinding validationActions define how failures are enforced. + + Allowed values are Ignore or Fail. Defaults to Fail. + + - **spec.matchConditions** ([]MatchCondition) + + *Patch strategy: merge on key `name`* + + *Map: unique values on key name will be kept during a merge* + + MatchConditions is a list of conditions that must be met for a request to be validated. Match conditions filter requests that have already been matched by the rules, namespaceSelector, and objectSelector. An empty list of matchConditions matches all requests. There are a maximum of 64 match conditions allowed. + + If a parameter object is provided, it can be accessed via the `params` handle in the same manner as validation expressions. + + The exact matching logic is (in order): + 1. If ANY matchCondition evaluates to FALSE, the policy is skipped. + 2. If ALL matchConditions evaluate to TRUE, the policy is evaluated. + 3. If any matchCondition evaluates to an error (but none are FALSE): + - If failurePolicy=Fail, reject the request + - If failurePolicy=Ignore, the policy is skipped + + + *MatchCondition represents a condition which must by fulfilled for a request to be sent to a webhook.* + + - **spec.matchConditions.expression** (string), required + + Expression represents the expression which will be evaluated by CEL. Must evaluate to bool. CEL expressions have access to the contents of the AdmissionRequest and Authorizer, organized into CEL 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(/pkg/apis/admission/types.go#AdmissionRequest). 'authorizer' - A CEL Authorizer. May be used to perform authorization checks for the principal (user or service account) of the request. + See https://pkg.go.dev/k8s.io/apiserver/pkg/cel/library#Authz + 'authorizer.requestResource' - A CEL ResourceCheck constructed from the 'authorizer' and configured with the + request resource. + Documentation on CEL: https://kubernetes.io/docs/reference/using-api/cel/ + + Required. + + - **spec.matchConditions.name** (string), required + + Name is an identifier for this match condition, used for strategic merging of MatchConditions, as well as providing an identifier for logging purposes. A good name should be descriptive of the associated expression. Name must be a qualified name consisting of alphanumeric characters, '-', '_' or '.', and must start and end with an alphanumeric character (e.g. 'MyName', or 'my.name', or '123-abc', regex used for validation is '([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9]') with an optional DNS subdomain prefix and '/' (e.g. 'example.com/MyName') + + Required. + + - **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. + + + *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) + + + *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** (}}">LabelSelector) + + 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** (}}">LabelSelector) + + 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. + + + *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. + + + *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. + + - **spec.validations** ([]Validation) + + *Atomic: will be replaced during a merge* + + Validations contain CEL expressions which is used to apply the validation. Validations and AuditAnnotations may not both be empty; a minimum of one Validations or AuditAnnotations is required. + + + *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 API 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 API 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. - 'namespaceObject' - The namespace object that the incoming object belongs to. The value is null for cluster-scoped resources. - 'variables' - Map of composited variables, from its name to its lazily evaluated value. + For example, a variable named 'foo' can be accessed as 'variables.foo'. + - 'authorizer' - A CEL Authorizer. May be used to perform authorization checks for the principal (user or service account) of the request. + See https://pkg.go.dev/k8s.io/apiserver/pkg/cel/library#Authz + - 'authorizer.requestResource' - A CEL ResourceCheck constructed from the 'authorizer' and configured with the + request resource. + + 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.messageExpression** (string) + + messageExpression declares a CEL expression that evaluates to the validation failure message that is returned when this rule fails. Since messageExpression is used as a failure message, it must evaluate to a string. If both message and messageExpression are present on a validation, then messageExpression will be used if validation fails. If messageExpression results in a runtime error, the runtime error is logged, and the validation failure message is produced as if the messageExpression field were unset. If messageExpression evaluates to an empty string, a string with only spaces, or a string that contains line breaks, then the validation failure message will also be produced as if the messageExpression field were unset, and the fact that messageExpression produced an empty string/string with only spaces/string with line breaks will be logged. messageExpression has access to all the same variables as the `expression` except for 'authorizer' and 'authorizer.requestResource'. Example: "object.x must be less than max ("+string(params.max)+")" + + - **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.variables** ([]Variable) + + *Patch strategy: merge on key `name`* + + *Map: unique values on key name will be kept during a merge* + + Variables contain definitions of variables that can be used in composition of other expressions. Each variable is defined as a named CEL expression. The variables defined here will be available under `variables` in other expressions of the policy except MatchConditions because MatchConditions are evaluated before the rest of the policy. + + The expression of a variable can refer to other variables defined earlier in the list but not those after. Thus, Variables must be sorted by the order of first appearance and acyclic. + + + *Variable is the definition of a variable that is used for composition. A variable is defined as a named expression.* + + - **spec.variables.expression** (string), required + + Expression is the expression that will be evaluated as the value of the variable. The CEL expression has access to the same identifiers as the CEL expressions in Validation. + + - **spec.variables.name** (string), required + + Name is the name of the variable. The name must be a valid CEL identifier and unique among all variables. The variable can be accessed in other expressions through `variables` For example, if name is "foo", the variable will be available as `variables.foo` + +- **status** (ValidatingAdmissionPolicyStatus) + + The status of the ValidatingAdmissionPolicy, including warnings that are useful to determine if the policy behaves in the expected way. Populated by the system. Read-only. + + + *ValidatingAdmissionPolicyStatus represents the status of an admission validation policy.* + + - **status.conditions** ([]Condition) + + *Map: unique values on key type will be kept during a merge* + + The conditions represent the latest available observations of a policy's current state. + + + *Condition contains details for one aspect of the current state of this API Resource.* + + - **status.conditions.lastTransitionTime** (Time), required + + lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. + + + *Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.* + + - **status.conditions.message** (string), required + + message is a human readable message indicating details about the transition. This may be an empty string. + + - **status.conditions.reason** (string), required + + reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty. + + - **status.conditions.status** (string), required + + status of the condition, one of True, False, Unknown. + + - **status.conditions.type** (string), required + + type of condition in CamelCase or in foo.example.com/CamelCase. + + - **status.conditions.observedGeneration** (int64) + + observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance. + + - **status.observedGeneration** (int64) + + The generation observed by the controller. + + - **status.typeChecking** (TypeChecking) + + The results of type checking for each expression. Presence of this field indicates the completion of the type checking. + + + *TypeChecking contains results of type checking the expressions in the ValidatingAdmissionPolicy* + + - **status.typeChecking.expressionWarnings** ([]ExpressionWarning) + + *Atomic: will be replaced during a merge* + + The type checking warnings for each expression. + + + *ExpressionWarning is a warning information that targets a specific expression.* + + - **status.typeChecking.expressionWarnings.fieldRef** (string), required + + The path to the field that refers the expression. For example, the reference to the expression of the first item of validations is "spec.validations[0].expression" + + - **status.typeChecking.expressionWarnings.warning** (string), required + + The content of type checking information in a human-readable form. Each line of the warning contains the type that the expression is checked against, followed by the type check error from the compiler. + + + + + +## ValidatingAdmissionPolicyBindingList {#ValidatingAdmissionPolicyBindingList} + +ValidatingAdmissionPolicyBindingList is a list of ValidatingAdmissionPolicyBinding. + +
+ +- **items** ([]}}">ValidatingAdmissionPolicyBinding), required + + List of PolicyBinding. + +- **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** (}}">ListMeta) + + Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + + + + + +## Operations {#Operations} + + + +
+ + + + + + +### `get` read the specified ValidatingAdmissionPolicyBinding + +#### HTTP Request + +GET /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ValidatingAdmissionPolicyBinding + + +- ****: + + + + + +#### Response + + +200 (}}">ValidatingAdmissionPolicyBinding): OK + +401: Unauthorized + + +### `list` list or watch objects of kind ValidatingAdmissionPolicyBinding + +#### HTTP Request + +GET /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + + +#### Response + + +200 (}}">ValidatingAdmissionPolicyBindingList): OK + +401: Unauthorized + + +### `create` create a ValidatingAdmissionPolicyBinding + +#### HTTP Request + +POST /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- **body**: }}">ValidatingAdmissionPolicyBinding, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">ValidatingAdmissionPolicyBinding): OK + +201 (}}">ValidatingAdmissionPolicyBinding): Created + +202 (}}">ValidatingAdmissionPolicyBinding): Accepted + +401: Unauthorized + + +### `update` replace the specified ValidatingAdmissionPolicyBinding + +#### HTTP Request + +PUT /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ValidatingAdmissionPolicyBinding + + +- ****: + + + + +- ****: + + + + +- **body**: }}">ValidatingAdmissionPolicyBinding, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">ValidatingAdmissionPolicyBinding): OK + +201 (}}">ValidatingAdmissionPolicyBinding): Created + +401: Unauthorized + + +### `patch` partially update the specified ValidatingAdmissionPolicyBinding + +#### HTTP Request + +PATCH /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ValidatingAdmissionPolicyBinding + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">ValidatingAdmissionPolicyBinding): OK + +201 (}}">ValidatingAdmissionPolicyBinding): Created + +401: Unauthorized + + +### `delete` delete a ValidatingAdmissionPolicyBinding + +#### HTTP Request + +DELETE /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ValidatingAdmissionPolicyBinding + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + + +#### Response + + +200 (}}">Status): OK + +202 (}}">Status): Accepted + +401: Unauthorized + + +### `deletecollection` delete collection of ValidatingAdmissionPolicyBinding + +#### HTTP Request + +DELETE /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + + +#### Response + + +200 (}}">Status): OK + +401: Unauthorized + diff --git a/content/en/docs/reference/kubernetes-api/extend-resources/validating-admission-policy-v1beta1.md b/content/en/docs/reference/kubernetes-api/policy-resources/validating-admission-policy-v1.md similarity index 84% rename from content/en/docs/reference/kubernetes-api/extend-resources/validating-admission-policy-v1beta1.md rename to content/en/docs/reference/kubernetes-api/policy-resources/validating-admission-policy-v1.md index 1f9b8ef4bb3fd..3f9583e876a26 100644 --- a/content/en/docs/reference/kubernetes-api/extend-resources/validating-admission-policy-v1beta1.md +++ b/content/en/docs/reference/kubernetes-api/policy-resources/validating-admission-policy-v1.md @@ -1,12 +1,12 @@ --- api_metadata: - apiVersion: "admissionregistration.k8s.io/v1beta1" - import: "k8s.io/api/admissionregistration/v1beta1" + apiVersion: "admissionregistration.k8s.io/v1" + import: "k8s.io/api/admissionregistration/v1" 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 v1beta1" -weight: 4 +title: "ValidatingAdmissionPolicy" +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: admissionregistration.k8s.io/v1beta1` +`apiVersion: admissionregistration.k8s.io/v1` -`import "k8s.io/api/admissionregistration/v1beta1"` +`import "k8s.io/api/admissionregistration/v1"` ## ValidatingAdmissionPolicy {#ValidatingAdmissionPolicy} @@ -32,7 +32,7 @@ ValidatingAdmissionPolicy describes the definition of an admission validation po
-- **apiVersion**: admissionregistration.k8s.io/v1beta1 +- **apiVersion**: admissionregistration.k8s.io/v1 - **kind**: ValidatingAdmissionPolicy @@ -106,7 +106,7 @@ ValidatingAdmissionPolicy describes the definition of an admission validation po - If failurePolicy=Ignore, the policy is skipped - *MatchCondition represents a condition which must be fulfilled for a request to be sent to a webhook.* + *MatchCondition represents a condition which must by fulfilled for a request to be sent to a webhook.* - **spec.matchConditions.expression** (string), required @@ -446,13 +446,13 @@ ValidatingAdmissionPolicyList is a list of ValidatingAdmissionPolicy.
-- **apiVersion** (string) +- **items** ([]}}">ValidatingAdmissionPolicy), required - 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 + List of ValidatingAdmissionPolicy. -- **items** ([]}}">ValidatingAdmissionPolicy) +- **apiVersion** (string) - List of ValidatingAdmissionPolicy. + 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) @@ -736,7 +736,7 @@ The CEL expressions of a policy must have a computed CEL cost below the maximum #### HTTP Request -GET /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies/{name} +GET /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name} #### Parameters @@ -746,16 +746,16 @@ GET /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies/{name name of the ValidatingAdmissionPolicy -- **pretty** (*in query*): string +- ****: - }}">pretty + #### Response -200 (}}">ValidatingAdmissionPolicy): OK +200 (}}">ValidatingAdmissionPolicy): OK 401: Unauthorized @@ -764,7 +764,7 @@ GET /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies/{name #### HTTP Request -GET /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies/{name}/status +GET /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}/status #### Parameters @@ -774,16 +774,16 @@ GET /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies/{name name of the ValidatingAdmissionPolicy -- **pretty** (*in query*): string +- ****: - }}">pretty + #### Response -200 (}}">ValidatingAdmissionPolicy): OK +200 (}}">ValidatingAdmissionPolicy): OK 401: Unauthorized @@ -792,71 +792,71 @@ GET /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies/{name #### HTTP Request -GET /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies +GET /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + #### Response -200 (}}">ValidatingAdmissionPolicyList): OK +200 (}}">ValidatingAdmissionPolicyList): OK 401: Unauthorized @@ -865,45 +865,45 @@ GET /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies #### HTTP Request -POST /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies +POST /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies #### Parameters -- **body**: }}">ValidatingAdmissionPolicy, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ValidatingAdmissionPolicy, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation #### Response -200 (}}">ValidatingAdmissionPolicy): OK +200 (}}">ValidatingAdmissionPolicy): OK -201 (}}">ValidatingAdmissionPolicy): Created +201 (}}">ValidatingAdmissionPolicy): Created -202 (}}">ValidatingAdmissionPolicy): Accepted +202 (}}">ValidatingAdmissionPolicy): Accepted 401: Unauthorized @@ -912,7 +912,7 @@ POST /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies #### HTTP Request -PUT /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies/{name} +PUT /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name} #### Parameters @@ -922,38 +922,38 @@ PUT /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies/{name name of the ValidatingAdmissionPolicy -- **body**: }}">ValidatingAdmissionPolicy, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ValidatingAdmissionPolicy, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation #### Response -200 (}}">ValidatingAdmissionPolicy): OK +200 (}}">ValidatingAdmissionPolicy): OK -201 (}}">ValidatingAdmissionPolicy): Created +201 (}}">ValidatingAdmissionPolicy): Created 401: Unauthorized @@ -962,7 +962,7 @@ PUT /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies/{name #### HTTP Request -PUT /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies/{name}/status +PUT /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}/status #### Parameters @@ -972,38 +972,38 @@ PUT /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies/{name name of the ValidatingAdmissionPolicy -- **body**: }}">ValidatingAdmissionPolicy, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ValidatingAdmissionPolicy, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation #### Response -200 (}}">ValidatingAdmissionPolicy): OK +200 (}}">ValidatingAdmissionPolicy): OK -201 (}}">ValidatingAdmissionPolicy): Created +201 (}}">ValidatingAdmissionPolicy): Created 401: Unauthorized @@ -1012,7 +1012,7 @@ PUT /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies/{name #### HTTP Request -PATCH /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies/{name} +PATCH /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name} #### Parameters @@ -1022,43 +1022,43 @@ PATCH /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies/{na name of the ValidatingAdmissionPolicy -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation #### Response -200 (}}">ValidatingAdmissionPolicy): OK +200 (}}">ValidatingAdmissionPolicy): OK -201 (}}">ValidatingAdmissionPolicy): Created +201 (}}">ValidatingAdmissionPolicy): Created 401: Unauthorized @@ -1067,7 +1067,7 @@ PATCH /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies/{na #### HTTP Request -PATCH /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies/{name}/status +PATCH /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}/status #### Parameters @@ -1077,43 +1077,43 @@ PATCH /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies/{na name of the ValidatingAdmissionPolicy -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation #### Response -200 (}}">ValidatingAdmissionPolicy): OK +200 (}}">ValidatingAdmissionPolicy): OK -201 (}}">ValidatingAdmissionPolicy): Created +201 (}}">ValidatingAdmissionPolicy): Created 401: Unauthorized @@ -1122,7 +1122,7 @@ PATCH /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies/{na #### HTTP Request -DELETE /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies/{name} +DELETE /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name} #### Parameters @@ -1132,29 +1132,34 @@ DELETE /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies/{n name of the ValidatingAdmissionPolicy -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + -- **gracePeriodSeconds** (*in query*): integer - }}">gracePeriodSeconds +- ****: + -- **pretty** (*in query*): string - }}">pretty +- ****: + -- **propagationPolicy** (*in query*): string - }}">propagationPolicy +- **dryRun** (*in query*): string + + }}">dryRun @@ -1172,74 +1177,79 @@ DELETE /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies/{n #### HTTP Request -DELETE /apis/admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies +DELETE /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies #### Parameters -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + + + +- ****: + + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- **dryRun** (*in query*): string - }}">timeoutSeconds + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/service-resources/endpoint-slice-v1.md b/content/en/docs/reference/kubernetes-api/service-resources/endpoint-slice-v1.md index 92a773bcec541..6289212d5c34a 100644 --- a/content/en/docs/reference/kubernetes-api/service-resources/endpoint-slice-v1.md +++ b/content/en/docs/reference/kubernetes-api/service-resources/endpoint-slice-v1.md @@ -139,7 +139,7 @@ EndpointSlice represents a subset of the endpoints that implement a service. For - **ports.name** (string) - name represents the name of this port. All ports in an EndpointSlice must have a unique name. If the EndpointSlice is dervied from a Kubernetes service, this corresponds to the Service.ports[].name. Name must either be an empty string or pass DNS_LABEL validation: * must be no more than 63 characters long. * must consist of lower case alphanumeric characters or '-'. * must start and end with an alphanumeric character. Default is empty string. + name represents the name of this port. All ports in an EndpointSlice must have a unique name. If the EndpointSlice is derived from a Kubernetes service, this corresponds to the Service.ports[].name. Name must either be an empty string or pass DNS_LABEL validation: * must be no more than 63 characters long. * must consist of lower case alphanumeric characters or '-'. * must start and end with an alphanumeric character. Default is empty string. - **ports.appProtocol** (string) @@ -148,7 +148,7 @@ EndpointSlice represents a subset of the endpoints that implement a service. For * Un-prefixed protocol names - reserved for IANA standard service names (as per RFC-6335 and https://www.iana.org/assignments/service-names). * Kubernetes-defined prefixed names: - * 'kubernetes.io/h2c' - HTTP/2 over cleartext as described in https://www.rfc-editor.org/rfc/rfc7540 + * 'kubernetes.io/h2c' - HTTP/2 prior knowledge over cleartext as described in https://www.rfc-editor.org/rfc/rfc9113.html#name-starting-http-2-with-prior- * 'kubernetes.io/ws' - WebSocket over cleartext as described in https://www.rfc-editor.org/rfc/rfc6455 * 'kubernetes.io/wss' - WebSocket over TLS as described in https://www.rfc-editor.org/rfc/rfc6455 @@ -207,14 +207,14 @@ GET /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices/{name} name of the EndpointSlice -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -235,64 +235,64 @@ GET /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -313,59 +313,59 @@ GET /apis/discovery.k8s.io/v1/endpointslices #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -386,34 +386,34 @@ POST /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">EndpointSlice, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">EndpointSlice, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -443,34 +443,34 @@ PUT /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices/{name} name of the EndpointSlice -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">EndpointSlice, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">EndpointSlice, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -498,39 +498,39 @@ PATCH /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices/{name} name of the EndpointSlice -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -558,34 +558,39 @@ DELETE /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices/{name} name of the EndpointSlice -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + + + +- **dryRun** (*in query*): string + + }}">dryRun @@ -608,74 +613,79 @@ DELETE /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + + + +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/service-resources/endpoints-v1.md b/content/en/docs/reference/kubernetes-api/service-resources/endpoints-v1.md index ec8d225037388..743811a760a91 100644 --- a/content/en/docs/reference/kubernetes-api/service-resources/endpoints-v1.md +++ b/content/en/docs/reference/kubernetes-api/service-resources/endpoints-v1.md @@ -56,6 +56,8 @@ Endpoints is a collection of endpoints that implement the actual service. Exampl - **subsets** ([]EndpointSubset) + *Atomic: will be replaced during a merge* + The set of all endpoints is the union of all subsets. Addresses are placed into subsets according to the IPs they share. A single address with multiple ports, some of which are ready and some of which are not (because they come from different containers) will result in the address being displayed in different subsets for the different ports. No address will appear in both Addresses and NotReadyAddresses in the same subset. Sets of addresses and ports that comprise a service. @@ -73,6 +75,8 @@ Endpoints is a collection of endpoints that implement the actual service. Exampl - **subsets.addresses** ([]EndpointAddress) + *Atomic: will be replaced during a merge* + IP addresses which offer the related ports that are marked as ready. These endpoints should be considered safe for load balancers and clients to utilize. @@ -96,6 +100,8 @@ Endpoints is a collection of endpoints that implement the actual service. Exampl - **subsets.notReadyAddresses** ([]EndpointAddress) + *Atomic: will be replaced during a merge* + IP addresses which offer the related ports but are not currently marked as ready because they have not yet finished starting, have recently failed a readiness check, or have recently failed a liveness check. @@ -119,6 +125,8 @@ Endpoints is a collection of endpoints that implement the actual service. Exampl - **subsets.ports** ([]EndpointPort) + *Atomic: will be replaced during a merge* + Port numbers available on the related IP addresses. @@ -143,7 +151,7 @@ Endpoints is a collection of endpoints that implement the actual service. Exampl * Un-prefixed protocol names - reserved for IANA standard service names (as per RFC-6335 and https://www.iana.org/assignments/service-names). * Kubernetes-defined prefixed names: - * 'kubernetes.io/h2c' - HTTP/2 over cleartext as described in https://www.rfc-editor.org/rfc/rfc7540 + * 'kubernetes.io/h2c' - HTTP/2 prior knowledge over cleartext as described in https://www.rfc-editor.org/rfc/rfc9113.html#name-starting-http-2-with-prior- * 'kubernetes.io/ws' - WebSocket over cleartext as described in https://www.rfc-editor.org/rfc/rfc6455 * 'kubernetes.io/wss' - WebSocket over TLS as described in https://www.rfc-editor.org/rfc/rfc6455 @@ -202,14 +210,14 @@ GET /api/v1/namespaces/{namespace}/endpoints/{name} name of the Endpoints -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -230,64 +238,64 @@ GET /api/v1/namespaces/{namespace}/endpoints #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -308,59 +316,59 @@ GET /api/v1/endpoints #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -381,34 +389,34 @@ POST /api/v1/namespaces/{namespace}/endpoints #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Endpoints, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Endpoints, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -438,34 +446,34 @@ PUT /api/v1/namespaces/{namespace}/endpoints/{name} name of the Endpoints -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Endpoints, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Endpoints, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -493,39 +501,39 @@ PATCH /api/v1/namespaces/{namespace}/endpoints/{name} name of the Endpoints -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -553,34 +561,39 @@ DELETE /api/v1/namespaces/{namespace}/endpoints/{name} name of the Endpoints -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- **dryRun** (*in query*): string - }}">propagationPolicy + }}">dryRun @@ -603,74 +616,79 @@ DELETE /api/v1/namespaces/{namespace}/endpoints #### Parameters -- **namespace** (*in path*): string, required +- ****: + + + + +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- **dryRun** (*in query*): string - }}">timeoutSeconds + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/service-resources/ingress-class-v1.md b/content/en/docs/reference/kubernetes-api/service-resources/ingress-class-v1.md index db6654f2f30ab..40e0941dc005b 100644 --- a/content/en/docs/reference/kubernetes-api/service-resources/ingress-class-v1.md +++ b/content/en/docs/reference/kubernetes-api/service-resources/ingress-class-v1.md @@ -140,9 +140,9 @@ GET /apis/networking.k8s.io/v1/ingressclasses/{name} name of the IngressClass -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -163,59 +163,59 @@ GET /apis/networking.k8s.io/v1/ingressclasses #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -236,29 +236,29 @@ POST /apis/networking.k8s.io/v1/ingressclasses #### Parameters -- **body**: }}">IngressClass, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">IngressClass, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -288,29 +288,29 @@ PUT /apis/networking.k8s.io/v1/ingressclasses/{name} name of the IngressClass -- **body**: }}">IngressClass, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">IngressClass, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -338,34 +338,34 @@ PATCH /apis/networking.k8s.io/v1/ingressclasses/{name} name of the IngressClass -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -393,29 +393,34 @@ DELETE /apis/networking.k8s.io/v1/ingressclasses/{name} name of the IngressClass -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: + + - }}">propagationPolicy + +- **dryRun** (*in query*): string + + }}">dryRun @@ -438,69 +443,74 @@ DELETE /apis/networking.k8s.io/v1/ingressclasses #### Parameters -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: + + - }}">timeoutSeconds + +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/service-resources/ingress-v1.md b/content/en/docs/reference/kubernetes-api/service-resources/ingress-v1.md index 354cfa6ba6035..eda951bd31905 100644 --- a/content/en/docs/reference/kubernetes-api/service-resources/ingress-v1.md +++ b/content/en/docs/reference/kubernetes-api/service-resources/ingress-v1.md @@ -203,6 +203,8 @@ IngressStatus describe the current state of the Ingress. - **loadBalancer.ingress** ([]IngressLoadBalancerIngress) + *Atomic: will be replaced during a merge* + ingress is a list containing ingress points for the load-balancer. @@ -295,14 +297,14 @@ GET /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name} name of the Ingress -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -328,14 +330,14 @@ GET /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}/status name of the Ingress -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -356,64 +358,64 @@ GET /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -434,59 +436,59 @@ GET /apis/networking.k8s.io/v1/ingresses #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -507,34 +509,34 @@ POST /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Ingress, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Ingress, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -564,34 +566,34 @@ PUT /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name} name of the Ingress -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Ingress, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Ingress, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -619,34 +621,34 @@ PUT /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}/status name of the Ingress -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Ingress, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Ingress, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -674,39 +676,39 @@ PATCH /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name} name of the Ingress -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -734,39 +736,39 @@ PATCH /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}/status name of the Ingress -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -794,34 +796,39 @@ DELETE /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name} name of the Ingress -- **namespace** (*in path*): string, required +- ****: + + + - }}">namespace +- ****: + + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- **dryRun** (*in query*): string - }}">propagationPolicy + }}">dryRun @@ -844,74 +851,79 @@ DELETE /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: + + - }}">sendInitialEvents +- ****: + + -- **timeoutSeconds** (*in query*): integer - }}">timeoutSeconds +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/service-resources/service-v1.md b/content/en/docs/reference/kubernetes-api/service-resources/service-v1.md index ad18df1a1a5bf..1d7444bac4ec5 100644 --- a/content/en/docs/reference/kubernetes-api/service-resources/service-v1.md +++ b/content/en/docs/reference/kubernetes-api/service-resources/service-v1.md @@ -105,7 +105,7 @@ ServiceSpec describes the attributes that a user creates on a service. * Un-prefixed protocol names - reserved for IANA standard service names (as per RFC-6335 and https://www.iana.org/assignments/service-names). * Kubernetes-defined prefixed names: - * 'kubernetes.io/h2c' - HTTP/2 over cleartext as described in https://www.rfc-editor.org/rfc/rfc7540 + * 'kubernetes.io/h2c' - HTTP/2 prior knowledge over cleartext as described in https://www.rfc-editor.org/rfc/rfc9113.html#name-starting-http-2-with-prior- * 'kubernetes.io/ws' - WebSocket over cleartext as described in https://www.rfc-editor.org/rfc/rfc6455 * 'kubernetes.io/wss' - WebSocket over TLS as described in https://www.rfc-editor.org/rfc/rfc6455 @@ -141,6 +141,8 @@ ServiceSpec describes the attributes that a user creates on a service. - **externalIPs** ([]string) + *Atomic: will be replaced during a merge* + externalIPs is a list of IP addresses for which nodes in the cluster will also accept traffic for this service. These IPs are not managed by Kubernetes. The user is responsible for ensuring that traffic arrives at a node with this IP. A common example is external load-balancers that are not part of the Kubernetes system. - **sessionAffinity** (string) @@ -153,6 +155,8 @@ ServiceSpec describes the attributes that a user creates on a service. - **loadBalancerSourceRanges** ([]string) + *Atomic: will be replaced during a merge* + If specified and supported by the platform, this will restrict traffic through the cloud-provider load-balancer will be restricted to the specified client IPs. This field will be ignored if the cloud-provider does not support the feature." More info: https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/ - **loadBalancerClass** (string) @@ -201,6 +205,10 @@ ServiceSpec describes the attributes that a user creates on a service. allocateLoadBalancerNodePorts defines if NodePorts will be automatically allocated for services with type LoadBalancer. Default is "true". It may be set to "false" if the cluster load-balancer does not rely on NodePorts. If the caller requests specific NodePorts (by specifying a value), those requests will be respected, regardless of this field. This field may only be set for services with type LoadBalancer and will be cleared if the type is changed to any other type. +- **trafficDistribution** (string) + + TrafficDistribution offers a way to express preferences for how traffic is distributed to Service endpoints. Implementations can use this field as a hint, but are not required to guarantee strict adherence. If the field is not set, the implementation will apply its default routing strategy. If set to "PreferClose", implementations should prioritize endpoints that are topologically close (e.g., same zone). This is an alpha field and requires enabling ServiceTrafficDistribution feature. + @@ -258,6 +266,8 @@ ServiceStatus represents the current status of a service. - **loadBalancer.ingress** ([]LoadBalancerIngress) + *Atomic: will be replaced during a merge* + Ingress is a list containing ingress points for the load-balancer. Traffic intended for the service should be sent to these ingress points. @@ -352,14 +362,14 @@ GET /api/v1/namespaces/{namespace}/services/{name} name of the Service -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -385,14 +395,14 @@ GET /api/v1/namespaces/{namespace}/services/{name}/status name of the Service -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -413,64 +423,64 @@ GET /api/v1/namespaces/{namespace}/services #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -491,59 +501,59 @@ GET /api/v1/services #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -564,34 +574,34 @@ POST /api/v1/namespaces/{namespace}/services #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Service, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Service, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -621,34 +631,34 @@ PUT /api/v1/namespaces/{namespace}/services/{name} name of the Service -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Service, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Service, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -676,34 +686,34 @@ PUT /api/v1/namespaces/{namespace}/services/{name}/status name of the Service -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Service, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Service, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -731,39 +741,39 @@ PATCH /api/v1/namespaces/{namespace}/services/{name} name of the Service -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -791,39 +801,39 @@ PATCH /api/v1/namespaces/{namespace}/services/{name}/status name of the Service -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -851,34 +861,39 @@ DELETE /api/v1/namespaces/{namespace}/services/{name} name of the Service -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- **dryRun** (*in query*): string - }}">propagationPolicy + }}">dryRun @@ -901,74 +916,79 @@ DELETE /api/v1/namespaces/{namespace}/services #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- **dryRun** (*in query*): string - }}">timeoutSeconds + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/cluster-resources/binding-v1.md b/content/en/docs/reference/kubernetes-api/workload-resources/binding-v1.md similarity index 62% rename from content/en/docs/reference/kubernetes-api/cluster-resources/binding-v1.md rename to content/en/docs/reference/kubernetes-api/workload-resources/binding-v1.md index f9115c9ad58e1..62cadc5a0d2c9 100644 --- a/content/en/docs/reference/kubernetes-api/cluster-resources/binding-v1.md +++ b/content/en/docs/reference/kubernetes-api/workload-resources/binding-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "Binding ties one object to another; for example, a pod is bound to a node by a scheduler." title: "Binding" -weight: 9 +weight: 2 auto_generated: true --- @@ -70,45 +70,45 @@ POST /api/v1/namespaces/{namespace}/bindings #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Binding, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Binding, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation #### Response -200 (}}">Binding): OK +200 (}}">Binding): OK -201 (}}">Binding): Created +201 (}}">Binding): Created -202 (}}">Binding): Accepted +202 (}}">Binding): Accepted 401: Unauthorized @@ -122,29 +122,34 @@ POST /api/v1/namespaces/{namespace}/pods/{name}/binding #### Parameters +- ****: + + + + - **name** (*in path*): string, required name of the Binding -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Binding, required +- ****: -- **dryRun** (*in query*): string +- **body**: }}">Binding, required - }}">dryRun + -- **fieldManager** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldManager + }}">dryRun - **fieldValidation** (*in query*): string @@ -152,20 +157,15 @@ POST /api/v1/namespaces/{namespace}/pods/{name}/binding }}">fieldValidation -- **pretty** (*in query*): string - - }}">pretty - - #### Response -200 (}}">Binding): OK +200 (}}">Binding): OK -201 (}}">Binding): Created +201 (}}">Binding): Created -202 (}}">Binding): Accepted +202 (}}">Binding): Accepted 401: Unauthorized diff --git a/content/en/docs/reference/kubernetes-api/workload-resources/controller-revision-v1.md b/content/en/docs/reference/kubernetes-api/workload-resources/controller-revision-v1.md index 39a4c73b6356a..298d7d473af4b 100644 --- a/content/en/docs/reference/kubernetes-api/workload-resources/controller-revision-v1.md +++ b/content/en/docs/reference/kubernetes-api/workload-resources/controller-revision-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "ControllerRevision implements an immutable snapshot of state data." title: "ControllerRevision" -weight: 7 +weight: 8 auto_generated: true --- @@ -143,14 +143,14 @@ GET /apis/apps/v1/namespaces/{namespace}/controllerrevisions/{name} name of the ControllerRevision -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -171,64 +171,64 @@ GET /apis/apps/v1/namespaces/{namespace}/controllerrevisions #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -249,59 +249,59 @@ GET /apis/apps/v1/controllerrevisions #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -322,34 +322,34 @@ POST /apis/apps/v1/namespaces/{namespace}/controllerrevisions #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">ControllerRevision, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ControllerRevision, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -379,34 +379,34 @@ PUT /apis/apps/v1/namespaces/{namespace}/controllerrevisions/{name} name of the ControllerRevision -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">ControllerRevision, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ControllerRevision, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -434,39 +434,39 @@ PATCH /apis/apps/v1/namespaces/{namespace}/controllerrevisions/{name} name of the ControllerRevision -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -494,34 +494,39 @@ DELETE /apis/apps/v1/namespaces/{namespace}/controllerrevisions/{name} name of the ControllerRevision -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + + + +- **dryRun** (*in query*): string + + }}">dryRun @@ -544,74 +549,79 @@ DELETE /apis/apps/v1/namespaces/{namespace}/controllerrevisions #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + + + +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/workload-resources/cron-job-v1.md b/content/en/docs/reference/kubernetes-api/workload-resources/cron-job-v1.md index 8222897d123a1..d3be5a5bb8e8b 100644 --- a/content/en/docs/reference/kubernetes-api/workload-resources/cron-job-v1.md +++ b/content/en/docs/reference/kubernetes-api/workload-resources/cron-job-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "CronJob represents the configuration of a single cron job." title: "CronJob" -weight: 10 +weight: 11 auto_generated: true --- @@ -188,14 +188,14 @@ GET /apis/batch/v1/namespaces/{namespace}/cronjobs/{name} name of the CronJob -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -221,14 +221,14 @@ GET /apis/batch/v1/namespaces/{namespace}/cronjobs/{name}/status name of the CronJob -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -249,64 +249,64 @@ GET /apis/batch/v1/namespaces/{namespace}/cronjobs #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -327,59 +327,59 @@ GET /apis/batch/v1/cronjobs #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -400,34 +400,34 @@ POST /apis/batch/v1/namespaces/{namespace}/cronjobs #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">CronJob, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">CronJob, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -457,34 +457,34 @@ PUT /apis/batch/v1/namespaces/{namespace}/cronjobs/{name} name of the CronJob -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">CronJob, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">CronJob, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -512,34 +512,34 @@ PUT /apis/batch/v1/namespaces/{namespace}/cronjobs/{name}/status name of the CronJob -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">CronJob, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">CronJob, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -567,39 +567,39 @@ PATCH /apis/batch/v1/namespaces/{namespace}/cronjobs/{name} name of the CronJob -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -627,39 +627,39 @@ PATCH /apis/batch/v1/namespaces/{namespace}/cronjobs/{name}/status name of the CronJob -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -687,34 +687,39 @@ DELETE /apis/batch/v1/namespaces/{namespace}/cronjobs/{name} name of the CronJob -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: + + - }}">gracePeriodSeconds +- ****: -- **pretty** (*in query*): string + - }}">pretty +- ****: -- **propagationPolicy** (*in query*): string + - }}">propagationPolicy + +- **dryRun** (*in query*): string + + }}">dryRun @@ -737,74 +742,79 @@ DELETE /apis/batch/v1/namespaces/{namespace}/cronjobs #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: + + - }}">sendInitialEvents +- ****: + + -- **timeoutSeconds** (*in query*): integer - }}">timeoutSeconds +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/workload-resources/daemon-set-v1.md b/content/en/docs/reference/kubernetes-api/workload-resources/daemon-set-v1.md index 923e9074f0596..1d2731ecbf244 100644 --- a/content/en/docs/reference/kubernetes-api/workload-resources/daemon-set-v1.md +++ b/content/en/docs/reference/kubernetes-api/workload-resources/daemon-set-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "DaemonSet represents the configuration of a daemon set." title: "DaemonSet" -weight: 8 +weight: 9 auto_generated: true --- @@ -154,6 +154,8 @@ DaemonSetStatus represents the current status of a daemon set. *Patch strategy: merge on key `type`* + *Map: unique values on key type will be kept during a merge* + Represents the latest available observations of a DaemonSet's current state. @@ -239,14 +241,14 @@ GET /apis/apps/v1/namespaces/{namespace}/daemonsets/{name} name of the DaemonSet -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -272,14 +274,14 @@ GET /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status name of the DaemonSet -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -300,64 +302,64 @@ GET /apis/apps/v1/namespaces/{namespace}/daemonsets #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -378,59 +380,59 @@ GET /apis/apps/v1/daemonsets #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -451,34 +453,34 @@ POST /apis/apps/v1/namespaces/{namespace}/daemonsets #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DaemonSet, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">DaemonSet, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -508,34 +510,34 @@ PUT /apis/apps/v1/namespaces/{namespace}/daemonsets/{name} name of the DaemonSet -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DaemonSet, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">DaemonSet, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -563,34 +565,34 @@ PUT /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status name of the DaemonSet -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DaemonSet, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">DaemonSet, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -618,39 +620,39 @@ PATCH /apis/apps/v1/namespaces/{namespace}/daemonsets/{name} name of the DaemonSet -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -678,39 +680,39 @@ PATCH /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status name of the DaemonSet -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -738,34 +740,39 @@ DELETE /apis/apps/v1/namespaces/{namespace}/daemonsets/{name} name of the DaemonSet -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: + + - }}">gracePeriodSeconds +- ****: -- **pretty** (*in query*): string + - }}">pretty +- ****: -- **propagationPolicy** (*in query*): string + - }}">propagationPolicy + +- **dryRun** (*in query*): string + + }}">dryRun @@ -788,74 +795,79 @@ DELETE /apis/apps/v1/namespaces/{namespace}/daemonsets #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: + + - }}">sendInitialEvents +- ****: + + -- **timeoutSeconds** (*in query*): integer - }}">timeoutSeconds +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/workload-resources/deployment-v1.md b/content/en/docs/reference/kubernetes-api/workload-resources/deployment-v1.md index 3ea68446fe0f1..21f0bc290e2cd 100644 --- a/content/en/docs/reference/kubernetes-api/workload-resources/deployment-v1.md +++ b/content/en/docs/reference/kubernetes-api/workload-resources/deployment-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "Deployment enables declarative updates for Pods and ReplicaSets." title: "Deployment" -weight: 5 +weight: 6 auto_generated: true --- @@ -160,6 +160,8 @@ DeploymentStatus is the most recently observed status of the Deployment. *Patch strategy: merge on key `type`* + *Map: unique values on key type will be kept during a merge* + Represents the latest available observations of a deployment's current state. @@ -252,14 +254,14 @@ GET /apis/apps/v1/namespaces/{namespace}/deployments/{name} name of the Deployment -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -285,14 +287,14 @@ GET /apis/apps/v1/namespaces/{namespace}/deployments/{name}/status name of the Deployment -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -313,64 +315,64 @@ GET /apis/apps/v1/namespaces/{namespace}/deployments #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -391,59 +393,59 @@ GET /apis/apps/v1/deployments #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -464,34 +466,34 @@ POST /apis/apps/v1/namespaces/{namespace}/deployments #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Deployment, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Deployment, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -521,34 +523,34 @@ PUT /apis/apps/v1/namespaces/{namespace}/deployments/{name} name of the Deployment -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Deployment, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Deployment, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -576,34 +578,34 @@ PUT /apis/apps/v1/namespaces/{namespace}/deployments/{name}/status name of the Deployment -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Deployment, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Deployment, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -631,39 +633,39 @@ PATCH /apis/apps/v1/namespaces/{namespace}/deployments/{name} name of the Deployment -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -691,39 +693,39 @@ PATCH /apis/apps/v1/namespaces/{namespace}/deployments/{name}/status name of the Deployment -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -751,34 +753,39 @@ DELETE /apis/apps/v1/namespaces/{namespace}/deployments/{name} name of the Deployment -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: + + - }}">gracePeriodSeconds +- ****: -- **pretty** (*in query*): string + - }}">pretty +- ****: -- **propagationPolicy** (*in query*): string + - }}">propagationPolicy + +- **dryRun** (*in query*): string + + }}">dryRun @@ -801,74 +808,79 @@ DELETE /apis/apps/v1/namespaces/{namespace}/deployments #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: + + - }}">sendInitialEvents +- ****: + + -- **timeoutSeconds** (*in query*): integer - }}">timeoutSeconds +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/workload-resources/horizontal-pod-autoscaler-v1.md b/content/en/docs/reference/kubernetes-api/workload-resources/horizontal-pod-autoscaler-v1.md index 699719e21f0f7..fee8733d77b8f 100644 --- a/content/en/docs/reference/kubernetes-api/workload-resources/horizontal-pod-autoscaler-v1.md +++ b/content/en/docs/reference/kubernetes-api/workload-resources/horizontal-pod-autoscaler-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "configuration of a horizontal pod autoscaler." title: "HorizontalPodAutoscaler" -weight: 11 +weight: 12 auto_generated: true --- @@ -177,14 +177,14 @@ GET /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name} name of the HorizontalPodAutoscaler -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -210,14 +210,14 @@ GET /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}/ name of the HorizontalPodAutoscaler -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -238,64 +238,64 @@ GET /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -316,59 +316,59 @@ GET /apis/autoscaling/v1/horizontalpodautoscalers #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -389,34 +389,34 @@ POST /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">HorizontalPodAutoscaler, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">HorizontalPodAutoscaler, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -446,34 +446,34 @@ PUT /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name} name of the HorizontalPodAutoscaler -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">HorizontalPodAutoscaler, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">HorizontalPodAutoscaler, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -501,34 +501,34 @@ PUT /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}/ name of the HorizontalPodAutoscaler -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">HorizontalPodAutoscaler, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">HorizontalPodAutoscaler, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -556,39 +556,39 @@ PATCH /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name name of the HorizontalPodAutoscaler -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -616,39 +616,39 @@ PATCH /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name name of the HorizontalPodAutoscaler -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -676,34 +676,39 @@ DELETE /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{nam name of the HorizontalPodAutoscaler -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: + + - }}">gracePeriodSeconds +- ****: -- **pretty** (*in query*): string + - }}">pretty +- ****: -- **propagationPolicy** (*in query*): string + - }}">propagationPolicy + +- **dryRun** (*in query*): string + + }}">dryRun @@ -726,74 +731,79 @@ DELETE /apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: + + - }}">sendInitialEvents +- ****: + + -- **timeoutSeconds** (*in query*): integer - }}">timeoutSeconds +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/workload-resources/horizontal-pod-autoscaler-v2.md b/content/en/docs/reference/kubernetes-api/workload-resources/horizontal-pod-autoscaler-v2.md index 9c0a6c5096517..857b36fae10d9 100644 --- a/content/en/docs/reference/kubernetes-api/workload-resources/horizontal-pod-autoscaler-v2.md +++ b/content/en/docs/reference/kubernetes-api/workload-resources/horizontal-pod-autoscaler-v2.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "HorizontalPodAutoscaler is the configuration for a horizontal pod autoscaler, which automatically manages the replica count of any resource implementing the scale subresource based on the metrics specified." title: "HorizontalPodAutoscaler" -weight: 12 +weight: 13 auto_generated: true --- @@ -743,14 +743,14 @@ GET /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name} name of the HorizontalPodAutoscaler -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -776,14 +776,14 @@ GET /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}/ name of the HorizontalPodAutoscaler -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -804,64 +804,64 @@ GET /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -882,59 +882,59 @@ GET /apis/autoscaling/v2/horizontalpodautoscalers #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -955,34 +955,34 @@ POST /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">HorizontalPodAutoscaler, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">HorizontalPodAutoscaler, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -1012,34 +1012,34 @@ PUT /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name} name of the HorizontalPodAutoscaler -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">HorizontalPodAutoscaler, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">HorizontalPodAutoscaler, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -1067,34 +1067,34 @@ PUT /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}/ name of the HorizontalPodAutoscaler -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">HorizontalPodAutoscaler, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">HorizontalPodAutoscaler, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -1122,39 +1122,39 @@ PATCH /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name name of the HorizontalPodAutoscaler -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -1182,39 +1182,39 @@ PATCH /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name name of the HorizontalPodAutoscaler -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -1242,34 +1242,39 @@ DELETE /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{nam name of the HorizontalPodAutoscaler -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: + + - }}">gracePeriodSeconds +- ****: -- **pretty** (*in query*): string + - }}">pretty +- ****: -- **propagationPolicy** (*in query*): string + - }}">propagationPolicy + +- **dryRun** (*in query*): string + + }}">dryRun @@ -1292,74 +1297,79 @@ DELETE /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: + + - }}">sendInitialEvents +- ****: + + -- **timeoutSeconds** (*in query*): integer - }}">timeoutSeconds +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/workload-resources/job-v1.md b/content/en/docs/reference/kubernetes-api/workload-resources/job-v1.md index 0afe9886eea29..19b390eb6d0bc 100644 --- a/content/en/docs/reference/kubernetes-api/workload-resources/job-v1.md +++ b/content/en/docs/reference/kubernetes-api/workload-resources/job-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "Job represents the configuration of a single job." title: "Job" -weight: 9 +weight: 10 auto_generated: true --- @@ -123,8 +123,6 @@ JobSpec describes how the job execution will look like. - **podFailurePolicy** (PodFailurePolicy) Specifies the policy of handling failed pods. In particular, it allows to specify the set of actions and conditions which need to be satisfied to take the associated action. If empty, the default behaviour applies - the counter of failed pods, represented by the jobs's .status.failed field, is incremented and it is checked against the backoffLimit. This field cannot be used in combination with restartPolicy=OnFailure. - - This field is beta-level. It can be used when the `JobPodFailurePolicy` feature gate is enabled (enabled by default). *PodFailurePolicy describes how failed pods influence the backoffLimit.* @@ -146,31 +144,14 @@ JobSpec describes how the job execution will look like. running pods are terminated. - FailIndex: indicates that the pod's index is marked as Failed and will not be restarted. - This value is alpha-level. It can be used when the - `JobBackoffLimitPerIndex` feature gate is enabled (disabled by default). + This value is beta-level. It can be used when the + `JobBackoffLimitPerIndex` feature gate is enabled (enabled by default). - Ignore: indicates that the counter towards the .backoffLimit is not incremented and a replacement pod is created. - Count: indicates that the pod is handled in the default way - the counter towards the .backoffLimit is incremented. Additional values are considered to be added in the future. Clients should react to an unknown action by skipping the rule. - - **podFailurePolicy.rules.onPodConditions** ([]PodFailurePolicyOnPodConditionsPattern), required - - *Atomic: will be replaced during a merge* - - Represents the requirement on the pod conditions. The requirement is represented as a list of pod condition patterns. The requirement is satisfied if at least one pattern matches an actual pod condition. At most 20 elements are allowed. - - - *PodFailurePolicyOnPodConditionsPattern describes a pattern for matching an actual pod condition type.* - - - **podFailurePolicy.rules.onPodConditions.status** (string), required - - Specifies the required Pod condition status. To match a pod condition it is required that the specified status equals the pod condition status. Defaults to True. - - - **podFailurePolicy.rules.onPodConditions.type** (string), required - - Specifies the required Pod condition type. To match a pod condition it is required that specified type equals the pod condition type. - - **podFailurePolicy.rules.onExitCodes** (PodFailurePolicyOnExitCodesRequirement) Represents the requirement on the container exit codes. @@ -200,16 +181,65 @@ JobSpec describes how the job execution will look like. Restricts the check for exit codes to the container with the specified name. When null, the rule applies to all containers. When specified, it should match one the container or initContainer names in the pod template. + - **podFailurePolicy.rules.onPodConditions** ([]PodFailurePolicyOnPodConditionsPattern) + + *Atomic: will be replaced during a merge* + + Represents the requirement on the pod conditions. The requirement is represented as a list of pod condition patterns. The requirement is satisfied if at least one pattern matches an actual pod condition. At most 20 elements are allowed. + + + *PodFailurePolicyOnPodConditionsPattern describes a pattern for matching an actual pod condition type.* + + - **podFailurePolicy.rules.onPodConditions.status** (string), required + + Specifies the required Pod condition status. To match a pod condition it is required that the specified status equals the pod condition status. Defaults to True. + + - **podFailurePolicy.rules.onPodConditions.type** (string), required + + Specifies the required Pod condition type. To match a pod condition it is required that specified type equals the pod condition type. + +- **successPolicy** (SuccessPolicy) + + successPolicy specifies the policy when the Job can be declared as succeeded. If empty, the default behavior applies - the Job is declared as succeeded only when the number of succeeded pods equals to the completions. When the field is specified, it must be immutable and works only for the Indexed Jobs. Once the Job meets the SuccessPolicy, the lingering pods are terminated. + + This field is beta-level. To use this field, you must enable the `JobSuccessPolicy` feature gate (enabled by default). + + + *SuccessPolicy describes when a Job can be declared as succeeded based on the success of some indexes.* + + - **successPolicy.rules** ([]SuccessPolicyRule), required + + *Atomic: will be replaced during a merge* + + rules represents the list of alternative rules for the declaring the Jobs as successful before `.status.succeeded >= .spec.completions`. Once any of the rules are met, the "SucceededCriteriaMet" condition is added, and the lingering pods are removed. The terminal state for such a Job has the "Complete" condition. Additionally, these rules are evaluated in order; Once the Job meets one of the rules, other rules are ignored. At most 20 elements are allowed. + + + *SuccessPolicyRule describes rule for declaring a Job as succeeded. Each rule must have at least one of the "succeededIndexes" or "succeededCount" specified.* + + - **successPolicy.rules.succeededCount** (int32) + + succeededCount specifies the minimal required size of the actual set of the succeeded indexes for the Job. When succeededCount is used along with succeededIndexes, the check is constrained only to the set of indexes specified by succeededIndexes. For example, given that succeededIndexes is "1-4", succeededCount is "3", and completed indexes are "1", "3", and "5", the Job isn't declared as succeeded because only "1" and "3" indexes are considered in that rules. When this field is null, this doesn't default to any value and is never evaluated at any time. When specified it needs to be a positive integer. + + - **successPolicy.rules.succeededIndexes** (string) + + succeededIndexes specifies the set of indexes which need to be contained in the actual set of the succeeded indexes for the Job. The list of indexes must be within 0 to ".spec.completions-1" and must not contain duplicates. At least one element is required. The indexes are represented as intervals separated by commas. The intervals can be a decimal integer or a pair of decimal integers separated by a hyphen. The number are listed in represented by the first and last element of the series, separated by a hyphen. For example, if the completed indexes are 1, 3, 4, 5 and 7, they are represented as "1,3-5,7". When this field is null, this field doesn't default to any value and is never evaluated at any time. + ### Alpha level - **backoffLimitPerIndex** (int32) - Specifies the limit for the number of retries within an index before marking this index as failed. When enabled the number of failures per index is kept in the pod's batch.kubernetes.io/job-index-failure-count annotation. It can only be set when Job's completionMode=Indexed, and the Pod's restart policy is Never. The field is immutable. This field is alpha-level. It can be used when the `JobBackoffLimitPerIndex` feature gate is enabled (disabled by default). + Specifies the limit for the number of retries within an index before marking this index as failed. When enabled the number of failures per index is kept in the pod's batch.kubernetes.io/job-index-failure-count annotation. It can only be set when Job's completionMode=Indexed, and the Pod's restart policy is Never. The field is immutable. This field is beta-level. It can be used when the `JobBackoffLimitPerIndex` feature gate is enabled (enabled by default). + +- **managedBy** (string) + + ManagedBy field indicates the controller that manages a Job. The k8s Job controller reconciles jobs which don't have this field at all or the field value is the reserved string `kubernetes.io/job-controller`, but skips reconciling Jobs with a custom value for this field. The value must be a valid domain-prefixed path (e.g. acme.io/foo) - all characters before the first "/" must be a valid subdomain as defined by RFC 1123. All characters trailing the first "/" must be valid HTTP Path characters as defined by RFC 3986. The value cannot exceed 63 characters. This field is immutable. + + This field is alpha-level. The job controller accepts setting the field when the feature gate JobManagedBy is enabled (disabled by default). - **maxFailedIndexes** (int32) - Specifies the maximal number of failed indexes before marking the Job as failed, when backoffLimitPerIndex is set. Once the number of failed indexes exceeds this number the entire Job is marked as Failed and its execution is terminated. When left as null the job continues execution of all of its indexes and is marked with the `Complete` Job condition. It can only be specified when backoffLimitPerIndex is set. It can be null or up to completions. It is required and must be less than or equal to 10^4 when is completions greater than 10^5. This field is alpha-level. It can be used when the `JobBackoffLimitPerIndex` feature gate is enabled (disabled by default). + Specifies the maximal number of failed indexes before marking the Job as failed, when backoffLimitPerIndex is set. Once the number of failed indexes exceeds this number the entire Job is marked as Failed and its execution is terminated. When left as null the job continues execution of all of its indexes and is marked with the `Complete` Job condition. It can only be specified when backoffLimitPerIndex is set. It can be null or up to completions. It is required and must be less than or equal to 10^4 when is completions greater than 10^5. This field is beta-level. It can be used when the `JobBackoffLimitPerIndex` feature gate is enabled (enabled by default). - **podReplacementPolicy** (string) @@ -218,7 +248,7 @@ JobSpec describes how the job execution will look like. - Failed means to wait until a previously created Pod is fully terminated (has phase Failed or Succeeded) before creating a replacement Pod. - When using podFailurePolicy, Failed is the the only allowed value. TerminatingOrFailed and Failed are allowed values when podFailurePolicy is not in use. This is an alpha field. Enable JobPodReplacementPolicy to be able to use this field. + When using podFailurePolicy, Failed is the the only allowed value. TerminatingOrFailed and Failed are allowed values when podFailurePolicy is not in use. This is an beta field. To use this, enable the JobPodReplacementPolicy feature toggle. This is on by default. @@ -231,28 +261,30 @@ JobStatus represents the current state of a Job. - **startTime** (Time) Represents time when the job controller started processing a job. When a Job is created in the suspended state, this field is not set until the first time it is resumed. This field is reset every time a Job is resumed from suspension. It is represented in RFC3339 form and is in UTC. + + Once set, the field can only be removed when the job is suspended. The field cannot be modified while the job is unsuspended or finished. *Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.* - **completionTime** (Time) - Represents time when the job was completed. It is not guaranteed to be set in happens-before order across separate operations. It is represented in RFC3339 form and is in UTC. The completion time is only set when the job finishes successfully. + Represents time when the job was completed. It is not guaranteed to be set in happens-before order across separate operations. It is represented in RFC3339 form and is in UTC. The completion time is set when the job finishes successfully, and only then. The value cannot be updated or removed. The value indicates the same or later point in time as the startTime field. *Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.* - **active** (int32) - The number of pending and running pods. + The number of pending and running pods which are not terminating (without a deletionTimestamp). The value is zero for finished jobs. - **failed** (int32) - The number of pods which reached phase Failed. + The number of pods which reached phase Failed. The value increases monotonically. - **succeeded** (int32) - The number of pods which reached phase Succeeded. + The number of pods which reached phase Succeeded. The value increases monotonically for a given spec. However, it may decrease in reaction to scale down of elastic indexed jobs. - **completedIndexes** (string) @@ -264,7 +296,11 @@ JobStatus represents the current state of a Job. *Atomic: will be replaced during a merge* - The latest available observations of an object's current state. When a Job fails, one of the conditions will have type "Failed" and status true. When a Job is suspended, one of the conditions will have type "Suspended" and status true; when the Job is resumed, the status of this condition will become false. When a Job is completed, one of the conditions will have type "Complete" and status true. More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/ + The latest available observations of an object's current state. When a Job fails, one of the conditions will have type "Failed" and status true. When a Job is suspended, one of the conditions will have type "Suspended" and status true; when the Job is resumed, the status of this condition will become false. When a Job is completed, one of the conditions will have type "Complete" and status true. + + A job is considered finished when it is in a terminal condition, either "Complete" or "Failed". A Job cannot have both the "Complete" and "Failed" conditions. Additionally, it cannot be in the "Complete" and "FailureTarget" conditions. The "Complete", "Failed" and "FailureTarget" conditions cannot be disabled. + + More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/ *JobCondition describes current state of a job.* @@ -308,7 +344,7 @@ JobStatus represents the current state of a Job. 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. - 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. The structure is empty for finished jobs. *UncountedTerminatedPods holds UIDs of Pods that have terminated but haven't been accounted in Job status counters.* @@ -332,22 +368,22 @@ JobStatus represents the current state of a Job. - **ready** (int32) - The number of pods which have a Ready condition. - - This field is beta-level. The job controller populates the field when the feature gate JobReadyPods is enabled (enabled by default). + The number of active pods which have a Ready condition and are not terminating (without a deletionTimestamp). ### Alpha level - **failedIndexes** (string) - FailedIndexes holds the failed indexes when backoffLimitPerIndex=true. The indexes are represented in the text format analogous as for the `completedIndexes` field, ie. they are kept as decimal integers separated by commas. The numbers are listed in increasing order. Three or more consecutive numbers are compressed and represented by the first and last element of the series, separated by a hyphen. For example, if the failed indexes are 1, 3, 4, 5 and 7, they are represented as "1,3-5,7". This field is alpha-level. It can be used when the `JobBackoffLimitPerIndex` feature gate is enabled (disabled by default). + FailedIndexes holds the failed indexes when spec.backoffLimitPerIndex is set. The indexes are represented in the text format analogous as for the `completedIndexes` field, ie. they are kept as decimal integers separated by commas. The numbers are listed in increasing order. Three or more consecutive numbers are compressed and represented by the first and last element of the series, separated by a hyphen. For example, if the failed indexes are 1, 3, 4, 5 and 7, they are represented as "1,3-5,7". The set of failed indexes cannot overlap with the set of completed indexes. + + This field is beta-level. It can be used when the `JobBackoffLimitPerIndex` feature gate is enabled (enabled by default). - **terminating** (int32) The number of pods which are terminating (in phase Pending or Running and have a deletionTimestamp). - This field is alpha-level. The job controller populates the field when the feature gate JobPodReplacementPolicy is enabled (disabled by default). + This field is beta-level. The job controller populates the field when the feature gate JobPodReplacementPolicy is enabled (enabled by default). @@ -400,14 +436,14 @@ GET /apis/batch/v1/namespaces/{namespace}/jobs/{name} name of the Job -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -433,14 +469,14 @@ GET /apis/batch/v1/namespaces/{namespace}/jobs/{name}/status name of the Job -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -461,64 +497,64 @@ GET /apis/batch/v1/namespaces/{namespace}/jobs #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -539,59 +575,59 @@ GET /apis/batch/v1/jobs #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -612,34 +648,34 @@ POST /apis/batch/v1/namespaces/{namespace}/jobs #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Job, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Job, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -669,34 +705,34 @@ PUT /apis/batch/v1/namespaces/{namespace}/jobs/{name} name of the Job -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Job, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Job, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -724,34 +760,34 @@ PUT /apis/batch/v1/namespaces/{namespace}/jobs/{name}/status name of the Job -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Job, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Job, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -779,39 +815,39 @@ PATCH /apis/batch/v1/namespaces/{namespace}/jobs/{name} name of the Job -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -839,39 +875,39 @@ PATCH /apis/batch/v1/namespaces/{namespace}/jobs/{name}/status name of the Job -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -899,34 +935,39 @@ DELETE /apis/batch/v1/namespaces/{namespace}/jobs/{name} name of the Job -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + + + +- ****: + + -- **propagationPolicy** (*in query*): string +- **dryRun** (*in query*): string - }}">propagationPolicy + }}">dryRun @@ -949,74 +990,79 @@ DELETE /apis/batch/v1/namespaces/{namespace}/jobs #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + + + +- ****: + + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- **dryRun** (*in query*): string - }}">timeoutSeconds + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/workload-resources/pod-scheduling-context-v1alpha2.md b/content/en/docs/reference/kubernetes-api/workload-resources/pod-scheduling-context-v1alpha2.md deleted file mode 100644 index bb6c08f3ceb1e..0000000000000 --- a/content/en/docs/reference/kubernetes-api/workload-resources/pod-scheduling-context-v1alpha2.md +++ /dev/null @@ -1,787 +0,0 @@ ---- -api_metadata: - apiVersion: "resource.k8s.io/v1alpha2" - import: "k8s.io/api/resource/v1alpha2" - kind: "PodSchedulingContext" -content_type: "api_reference" -description: "PodSchedulingContext objects hold information that is needed to schedule a Pod with ResourceClaims that use \"WaitForFirstConsumer\" allocation mode." -title: "PodSchedulingContext v1alpha2" -weight: 14 -auto_generated: true ---- - - - -`apiVersion: resource.k8s.io/v1alpha2` - -`import "k8s.io/api/resource/v1alpha2"` - - -## PodSchedulingContext {#PodSchedulingContext} - -PodSchedulingContext 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. - -
- -- **apiVersion**: resource.k8s.io/v1alpha2 - - -- **kind**: PodSchedulingContext - - -- **metadata** (}}">ObjectMeta) - - Standard object metadata - -- **spec** (}}">PodSchedulingContextSpec), required - - Spec describes where resources for the Pod are needed. - -- **status** (}}">PodSchedulingContextStatus) - - Status describes where resources for the Pod can be allocated. - - - - - -## PodSchedulingContextSpec {#PodSchedulingContextSpec} - -PodSchedulingContextSpec describes where resources for the Pod are needed. - -
- -- **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. - - - - - -## PodSchedulingContextStatus {#PodSchedulingContextStatus} - -PodSchedulingContextStatus describes where resources for the Pod can be allocated. - -
- -- **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. - - - *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. - - - - - -## PodSchedulingContextList {#PodSchedulingContextList} - -PodSchedulingContextList is a collection of Pod scheduling objects. - -
- -- **apiVersion**: resource.k8s.io/v1alpha2 - - -- **kind**: PodSchedulingContextList - - -- **metadata** (}}">ListMeta) - - Standard list metadata - -- **items** ([]}}">PodSchedulingContext), required - - Items is the list of PodSchedulingContext objects. - - - - - -## Operations {#Operations} - - - -
- - - - - - -### `get` read the specified PodSchedulingContext - -#### HTTP Request - -GET /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/podschedulingcontexts/{name} - -#### Parameters - - -- **name** (*in path*): string, required - - name of the PodSchedulingContext - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">PodSchedulingContext): OK - -401: Unauthorized - - -### `get` read status of the specified PodSchedulingContext - -#### HTTP Request - -GET /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/podschedulingcontexts/{name}/status - -#### Parameters - - -- **name** (*in path*): string, required - - name of the PodSchedulingContext - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">PodSchedulingContext): OK - -401: Unauthorized - - -### `list` list or watch objects of kind PodSchedulingContext - -#### HTTP Request - -GET /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/podschedulingcontexts - -#### Parameters - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **allowWatchBookmarks** (*in query*): boolean - - }}">allowWatchBookmarks - - -- **continue** (*in query*): string - - }}">continue - - -- **fieldSelector** (*in query*): string - - }}">fieldSelector - - -- **labelSelector** (*in query*): string - - }}">labelSelector - - -- **limit** (*in query*): integer - - }}">limit - - -- **pretty** (*in query*): string - - }}">pretty - - -- **resourceVersion** (*in query*): string - - }}">resourceVersion - - -- **resourceVersionMatch** (*in query*): string - - }}">resourceVersionMatch - - -- **sendInitialEvents** (*in query*): boolean - - }}">sendInitialEvents - - -- **timeoutSeconds** (*in query*): integer - - }}">timeoutSeconds - - -- **watch** (*in query*): boolean - - }}">watch - - - -#### Response - - -200 (}}">PodSchedulingContextList): OK - -401: Unauthorized - - -### `list` list or watch objects of kind PodSchedulingContext - -#### HTTP Request - -GET /apis/resource.k8s.io/v1alpha2/podschedulingcontexts - -#### Parameters - - -- **allowWatchBookmarks** (*in query*): boolean - - }}">allowWatchBookmarks - - -- **continue** (*in query*): string - - }}">continue - - -- **fieldSelector** (*in query*): string - - }}">fieldSelector - - -- **labelSelector** (*in query*): string - - }}">labelSelector - - -- **limit** (*in query*): integer - - }}">limit - - -- **pretty** (*in query*): string - - }}">pretty - - -- **resourceVersion** (*in query*): string - - }}">resourceVersion - - -- **resourceVersionMatch** (*in query*): string - - }}">resourceVersionMatch - - -- **sendInitialEvents** (*in query*): boolean - - }}">sendInitialEvents - - -- **timeoutSeconds** (*in query*): integer - - }}">timeoutSeconds - - -- **watch** (*in query*): boolean - - }}">watch - - - -#### Response - - -200 (}}">PodSchedulingContextList): OK - -401: Unauthorized - - -### `create` create a PodSchedulingContext - -#### HTTP Request - -POST /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/podschedulingcontexts - -#### Parameters - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **body**: }}">PodSchedulingContext, required - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldManager** (*in query*): string - - }}">fieldManager - - -- **fieldValidation** (*in query*): string - - }}">fieldValidation - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">PodSchedulingContext): OK - -201 (}}">PodSchedulingContext): Created - -202 (}}">PodSchedulingContext): Accepted - -401: Unauthorized - - -### `update` replace the specified PodSchedulingContext - -#### HTTP Request - -PUT /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/podschedulingcontexts/{name} - -#### Parameters - - -- **name** (*in path*): string, required - - name of the PodSchedulingContext - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **body**: }}">PodSchedulingContext, required - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldManager** (*in query*): string - - }}">fieldManager - - -- **fieldValidation** (*in query*): string - - }}">fieldValidation - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">PodSchedulingContext): OK - -201 (}}">PodSchedulingContext): Created - -401: Unauthorized - - -### `update` replace status of the specified PodSchedulingContext - -#### HTTP Request - -PUT /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/podschedulingcontexts/{name}/status - -#### Parameters - - -- **name** (*in path*): string, required - - name of the PodSchedulingContext - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **body**: }}">PodSchedulingContext, required - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldManager** (*in query*): string - - }}">fieldManager - - -- **fieldValidation** (*in query*): string - - }}">fieldValidation - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">PodSchedulingContext): OK - -201 (}}">PodSchedulingContext): Created - -401: Unauthorized - - -### `patch` partially update the specified PodSchedulingContext - -#### HTTP Request - -PATCH /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/podschedulingcontexts/{name} - -#### Parameters - - -- **name** (*in path*): string, required - - name of the PodSchedulingContext - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **body**: }}">Patch, required - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldManager** (*in query*): string - - }}">fieldManager - - -- **fieldValidation** (*in query*): string - - }}">fieldValidation - - -- **force** (*in query*): boolean - - }}">force - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">PodSchedulingContext): OK - -201 (}}">PodSchedulingContext): Created - -401: Unauthorized - - -### `patch` partially update status of the specified PodSchedulingContext - -#### HTTP Request - -PATCH /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/podschedulingcontexts/{name}/status - -#### Parameters - - -- **name** (*in path*): string, required - - name of the PodSchedulingContext - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **body**: }}">Patch, required - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldManager** (*in query*): string - - }}">fieldManager - - -- **fieldValidation** (*in query*): string - - }}">fieldValidation - - -- **force** (*in query*): boolean - - }}">force - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">PodSchedulingContext): OK - -201 (}}">PodSchedulingContext): Created - -401: Unauthorized - - -### `delete` delete a PodSchedulingContext - -#### HTTP Request - -DELETE /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/podschedulingcontexts/{name} - -#### Parameters - - -- **name** (*in path*): string, required - - name of the PodSchedulingContext - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **body**: }}">DeleteOptions - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **gracePeriodSeconds** (*in query*): integer - - }}">gracePeriodSeconds - - -- **pretty** (*in query*): string - - }}">pretty - - -- **propagationPolicy** (*in query*): string - - }}">propagationPolicy - - - -#### Response - - -200 (}}">PodSchedulingContext): OK - -202 (}}">PodSchedulingContext): Accepted - -401: Unauthorized - - -### `deletecollection` delete collection of PodSchedulingContext - -#### HTTP Request - -DELETE /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/podschedulingcontexts - -#### Parameters - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **body**: }}">DeleteOptions - - - - -- **continue** (*in query*): string - - }}">continue - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldSelector** (*in query*): string - - }}">fieldSelector - - -- **gracePeriodSeconds** (*in query*): integer - - }}">gracePeriodSeconds - - -- **labelSelector** (*in query*): string - - }}">labelSelector - - -- **limit** (*in query*): integer - - }}">limit - - -- **pretty** (*in query*): string - - }}">pretty - - -- **propagationPolicy** (*in query*): string - - }}">propagationPolicy - - -- **resourceVersion** (*in query*): string - - }}">resourceVersion - - -- **resourceVersionMatch** (*in query*): string - - }}">resourceVersionMatch - - -- **sendInitialEvents** (*in query*): boolean - - }}">sendInitialEvents - - -- **timeoutSeconds** (*in query*): integer - - }}">timeoutSeconds - - - -#### Response - - -200 (}}">Status): OK - -401: Unauthorized - diff --git a/content/en/docs/reference/kubernetes-api/workload-resources/pod-scheduling-context-v1alpha3.md b/content/en/docs/reference/kubernetes-api/workload-resources/pod-scheduling-context-v1alpha3.md new file mode 100644 index 0000000000000..ea81988cc0576 --- /dev/null +++ b/content/en/docs/reference/kubernetes-api/workload-resources/pod-scheduling-context-v1alpha3.md @@ -0,0 +1,797 @@ +--- +api_metadata: + apiVersion: "resource.k8s.io/v1alpha3" + import: "k8s.io/api/resource/v1alpha3" + kind: "PodSchedulingContext" +content_type: "api_reference" +description: "PodSchedulingContext objects hold information that is needed to schedule a Pod with ResourceClaims that use \"WaitForFirstConsumer\" allocation mode." +title: "PodSchedulingContext v1alpha3" +weight: 15 +auto_generated: true +--- + + + +`apiVersion: resource.k8s.io/v1alpha3` + +`import "k8s.io/api/resource/v1alpha3"` + + +## PodSchedulingContext {#PodSchedulingContext} + +PodSchedulingContext 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 DRAControlPlaneController feature gate. + +
+ +- **apiVersion**: resource.k8s.io/v1alpha3 + + +- **kind**: PodSchedulingContext + + +- **metadata** (}}">ObjectMeta) + + Standard object metadata + +- **spec** (}}">PodSchedulingContextSpec), required + + Spec describes where resources for the Pod are needed. + +- **status** (}}">PodSchedulingContextStatus) + + Status describes where resources for the Pod can be allocated. + + + + + +## PodSchedulingContextSpec {#PodSchedulingContextSpec} + +PodSchedulingContextSpec describes where resources for the Pod are needed. + +
+ +- **potentialNodes** ([]string) + + *Atomic: will be replaced 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. + + + + + +## PodSchedulingContextStatus {#PodSchedulingContextStatus} + +PodSchedulingContextStatus describes where resources for the Pod can be allocated. + +
+ +- **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. + + + *ResourceClaimSchedulingStatus contains information about one particular ResourceClaim with "WaitForFirstConsumer" allocation mode.* + + - **resourceClaims.name** (string), required + + Name matches the pod.spec.resourceClaims[*].Name field. + + - **resourceClaims.unsuitableNodes** ([]string) + + *Atomic: will be replaced 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. + + + + + +## PodSchedulingContextList {#PodSchedulingContextList} + +PodSchedulingContextList is a collection of Pod scheduling objects. + +
+ +- **apiVersion**: resource.k8s.io/v1alpha3 + + +- **kind**: PodSchedulingContextList + + +- **metadata** (}}">ListMeta) + + Standard list metadata + +- **items** ([]}}">PodSchedulingContext), required + + Items is the list of PodSchedulingContext objects. + + + + + +## Operations {#Operations} + + + +
+ + + + + + +### `get` read the specified PodSchedulingContext + +#### HTTP Request + +GET /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/podschedulingcontexts/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the PodSchedulingContext + + +- ****: + + + + +- ****: + + + + + +#### Response + + +200 (}}">PodSchedulingContext): OK + +401: Unauthorized + + +### `get` read status of the specified PodSchedulingContext + +#### HTTP Request + +GET /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/podschedulingcontexts/{name}/status + +#### Parameters + + +- **name** (*in path*): string, required + + name of the PodSchedulingContext + + +- ****: + + + + +- ****: + + + + + +#### Response + + +200 (}}">PodSchedulingContext): OK + +401: Unauthorized + + +### `list` list or watch objects of kind PodSchedulingContext + +#### HTTP Request + +GET /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/podschedulingcontexts + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + + +#### Response + + +200 (}}">PodSchedulingContextList): OK + +401: Unauthorized + + +### `list` list or watch objects of kind PodSchedulingContext + +#### HTTP Request + +GET /apis/resource.k8s.io/v1alpha3/podschedulingcontexts + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + + +#### Response + + +200 (}}">PodSchedulingContextList): OK + +401: Unauthorized + + +### `create` create a PodSchedulingContext + +#### HTTP Request + +POST /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/podschedulingcontexts + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **body**: }}">PodSchedulingContext, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">PodSchedulingContext): OK + +201 (}}">PodSchedulingContext): Created + +202 (}}">PodSchedulingContext): Accepted + +401: Unauthorized + + +### `update` replace the specified PodSchedulingContext + +#### HTTP Request + +PUT /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/podschedulingcontexts/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the PodSchedulingContext + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **body**: }}">PodSchedulingContext, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">PodSchedulingContext): OK + +201 (}}">PodSchedulingContext): Created + +401: Unauthorized + + +### `update` replace status of the specified PodSchedulingContext + +#### HTTP Request + +PUT /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/podschedulingcontexts/{name}/status + +#### Parameters + + +- **name** (*in path*): string, required + + name of the PodSchedulingContext + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **body**: }}">PodSchedulingContext, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">PodSchedulingContext): OK + +201 (}}">PodSchedulingContext): Created + +401: Unauthorized + + +### `patch` partially update the specified PodSchedulingContext + +#### HTTP Request + +PATCH /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/podschedulingcontexts/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the PodSchedulingContext + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">PodSchedulingContext): OK + +201 (}}">PodSchedulingContext): Created + +401: Unauthorized + + +### `patch` partially update status of the specified PodSchedulingContext + +#### HTTP Request + +PATCH /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/podschedulingcontexts/{name}/status + +#### Parameters + + +- **name** (*in path*): string, required + + name of the PodSchedulingContext + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">PodSchedulingContext): OK + +201 (}}">PodSchedulingContext): Created + +401: Unauthorized + + +### `delete` delete a PodSchedulingContext + +#### HTTP Request + +DELETE /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/podschedulingcontexts/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the PodSchedulingContext + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + + +#### Response + + +200 (}}">PodSchedulingContext): OK + +202 (}}">PodSchedulingContext): Accepted + +401: Unauthorized + + +### `deletecollection` delete collection of PodSchedulingContext + +#### HTTP Request + +DELETE /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/podschedulingcontexts + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + + +#### Response + + +200 (}}">Status): OK + +401: Unauthorized + diff --git a/content/en/docs/reference/kubernetes-api/workload-resources/pod-template-v1.md b/content/en/docs/reference/kubernetes-api/workload-resources/pod-template-v1.md index b8a028e890a89..b5aefd66868d1 100644 --- a/content/en/docs/reference/kubernetes-api/workload-resources/pod-template-v1.md +++ b/content/en/docs/reference/kubernetes-api/workload-resources/pod-template-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "PodTemplate describes a template for creating copies of a predefined pod." title: "PodTemplate" -weight: 2 +weight: 3 auto_generated: true --- @@ -117,14 +117,14 @@ GET /api/v1/namespaces/{namespace}/podtemplates/{name} name of the PodTemplate -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -145,64 +145,64 @@ GET /api/v1/namespaces/{namespace}/podtemplates #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -223,59 +223,59 @@ GET /api/v1/podtemplates #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -296,34 +296,34 @@ POST /api/v1/namespaces/{namespace}/podtemplates #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">PodTemplate, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">PodTemplate, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -353,34 +353,34 @@ PUT /api/v1/namespaces/{namespace}/podtemplates/{name} name of the PodTemplate -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">PodTemplate, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">PodTemplate, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -408,39 +408,39 @@ PATCH /api/v1/namespaces/{namespace}/podtemplates/{name} name of the PodTemplate -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -468,34 +468,39 @@ DELETE /api/v1/namespaces/{namespace}/podtemplates/{name} name of the PodTemplate -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + + + +- **dryRun** (*in query*): string + + }}">dryRun @@ -518,74 +523,79 @@ DELETE /api/v1/namespaces/{namespace}/podtemplates #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + + + +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/workload-resources/pod-v1.md b/content/en/docs/reference/kubernetes-api/workload-resources/pod-v1.md index 7c6bdf614cf4d..fbbb9b8b8c12b 100644 --- a/content/en/docs/reference/kubernetes-api/workload-resources/pod-v1.md +++ b/content/en/docs/reference/kubernetes-api/workload-resources/pod-v1.md @@ -69,24 +69,32 @@ PodSpec is a description of a pod. *Patch strategy: merge on key `name`* + *Map: unique values on key name will be kept during a merge* + List of containers belonging to the pod. Containers cannot currently be added or removed. There must be at least one container in a Pod. Cannot be updated. - **initContainers** ([]}}">Container) *Patch strategy: merge on key `name`* + *Map: unique values on key name will be kept during a merge* + List of initialization containers belonging to the pod. Init containers are executed in order prior to containers being started. If any init container fails, the pod is considered to have failed and is handled according to its restartPolicy. The name for an init container or normal container must be unique among all containers. Init containers may not have Lifecycle actions, Readiness probes, Liveness probes, or Startup probes. The resourceRequirements of an init container are taken into account during scheduling by finding the highest request/limit for each resource type, and then using the max of of that value or the sum of the normal containers. Limits are applied to init containers in a similar fashion. Init containers cannot currently be added or removed. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ - **ephemeralContainers** ([]}}">EphemeralContainer) *Patch strategy: merge on key `name`* + *Map: unique values on key name will be kept during a merge* + List of ephemeral containers run in this pod. Ephemeral containers may be run in an existing pod to perform user-initiated actions such as debugging. This list cannot be specified when creating a pod, and it cannot be modified by updating the pod spec. In order to add an ephemeral container to an existing pod, use the pod's ephemeralcontainers subresource. - **imagePullSecrets** ([]}}">LocalObjectReference) *Patch strategy: merge on key `name`* + *Map: unique values on key name will be kept during a merge* + ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this PodSpec. If specified, these secrets will be passed to individual puller implementations for them to use. More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod - **enableServiceLinks** (boolean) @@ -99,7 +107,7 @@ PodSpec is a description of a pod. If the OS field is set to linux, the following fields must be unset: -securityContext.windowsOptions - If the OS field is set to windows, following fields must be unset: - spec.hostPID - spec.hostIPC - spec.hostUsers - spec.securityContext.seLinuxOptions - spec.securityContext.seccompProfile - spec.securityContext.fsGroup - spec.securityContext.fsGroupChangePolicy - spec.securityContext.sysctls - spec.shareProcessNamespace - spec.securityContext.runAsUser - spec.securityContext.runAsGroup - spec.securityContext.supplementalGroups - spec.containers[*].securityContext.seLinuxOptions - spec.containers[*].securityContext.seccompProfile - spec.containers[*].securityContext.capabilities - spec.containers[*].securityContext.readOnlyRootFilesystem - spec.containers[*].securityContext.privileged - spec.containers[*].securityContext.allowPrivilegeEscalation - spec.containers[*].securityContext.procMount - spec.containers[*].securityContext.runAsUser - spec.containers[*].securityContext.runAsGroup + If the OS field is set to windows, following fields must be unset: - spec.hostPID - spec.hostIPC - spec.hostUsers - spec.securityContext.appArmorProfile - spec.securityContext.seLinuxOptions - spec.securityContext.seccompProfile - spec.securityContext.fsGroup - spec.securityContext.fsGroupChangePolicy - spec.securityContext.sysctls - spec.shareProcessNamespace - spec.securityContext.runAsUser - spec.securityContext.runAsGroup - spec.securityContext.supplementalGroups - spec.securityContext.supplementalGroupsPolicy - spec.containers[*].securityContext.appArmorProfile - spec.containers[*].securityContext.seLinuxOptions - spec.containers[*].securityContext.seccompProfile - spec.containers[*].securityContext.capabilities - spec.containers[*].securityContext.readOnlyRootFilesystem - spec.containers[*].securityContext.privileged - spec.containers[*].securityContext.allowPrivilegeEscalation - spec.containers[*].securityContext.procMount - spec.containers[*].securityContext.runAsUser - spec.containers[*].securityContext.runAsGroup *PodOS defines the OS parameters of a pod.* @@ -115,6 +123,8 @@ PodSpec is a description of a pod. *Patch strategies: retainKeys, merge on key `name`* + *Map: unique values on key name will be kept during a merge* + List of volumes that can be mounted by containers belonging to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes ### Scheduling @@ -126,7 +136,7 @@ PodSpec is a description of a pod. - **nodeName** (string) - NodeName is a request to schedule this pod onto a specific node. If it is non-empty, the scheduler simply schedules this pod onto that node, assuming that it fits resource requirements. + NodeName indicates in which node this pod is scheduled. If empty, this pod is a candidate for scheduling by the scheduler defined in schedulerName. Once this field is set, the kubelet for this node becomes responsible for the lifecycle of this pod. This field should not be used to express a desire for the pod to be scheduled on a specific node. https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodename - **affinity** (Affinity) @@ -149,6 +159,8 @@ PodSpec is a description of a pod. - **tolerations** ([]Toleration) + *Atomic: will be replaced during a merge* + If specified, the pod's tolerations. @@ -237,8 +249,6 @@ PodSpec is a description of a pod. MinDomains indicates a minimum number of eligible domains. When the number of eligible domains with matching topology keys is less than minDomains, Pod Topology Spread treats "global minimum" as 0, and then the calculation of Skew is performed. And when the number of eligible domains with matching topology keys equals or greater than minDomains, this value has no effect on scheduling. As a result, when the number of eligible domains is less than minDomains, scheduler won't schedule more than maxSkew Pods to those domains. If value is nil, the constraint behaves as if MinDomains is equal to 1. Valid values are integers greater than 0. When value is not nil, WhenUnsatisfiable must be DoNotSchedule. For example, in a 3-zone cluster, MaxSkew is set to 2, MinDomains is set to 5 and pods with the same labelSelector spread as 2/2/2: | zone1 | zone2 | zone3 | | P P | P P | P P | The number of domains is less than 5(MinDomains), so "global minimum" is treated as 0. In this situation, new pod with the same labelSelector cannot be scheduled, because computed skew will be 3(3 - 0) if new Pod is scheduled to any of the three zones, it will violate MaxSkew. - - This is a beta field and requires the MinDomainsInPodTopologySpread feature gate to be enabled (enabled by default). - **topologySpreadConstraints.nodeAffinityPolicy** (string) @@ -273,6 +283,8 @@ PodSpec is a description of a pod. - **readinessGates** ([]PodReadinessGate) + *Atomic: will be replaced during a merge* + If specified, all readiness gates will be evaluated for pod readiness. A pod is ready when all its containers are ready AND all conditions specified in the readiness gates have status equal to "True" More info: https://git.k8s.io/enhancements/keps/sig-network/580-pod-readiness-gates @@ -301,18 +313,22 @@ PodSpec is a description of a pod. *Patch strategy: merge on key `ip`* - HostAliases is an optional list of hosts and IPs that will be injected into the pod's hosts file if specified. This is only valid for non-hostNetwork pods. + *Map: unique values on key ip will be kept during a merge* + + HostAliases is an optional list of hosts and IPs that will be injected into the pod's hosts file if specified. *HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the pod's hosts file.* - - **hostAliases.hostnames** ([]string) + - **hostAliases.ip** (string), required - Hostnames for the above IP address. + IP address of the host file entry. - - **hostAliases.ip** (string) + - **hostAliases.hostnames** ([]string) - IP address of the host file entry. + *Atomic: will be replaced during a merge* + + Hostnames for the above IP address. - **dnsConfig** (PodDNSConfig) @@ -323,10 +339,14 @@ PodSpec is a description of a pod. - **dnsConfig.nameservers** ([]string) + *Atomic: will be replaced during a merge* + A list of DNS name server IP addresses. This will be appended to the base nameservers generated from DNSPolicy. Duplicated nameservers will be removed. - **dnsConfig.options** ([]PodDNSConfigOption) + *Atomic: will be replaced during a merge* + A list of DNS resolver options. This will be merged with the base options generated from DNSPolicy. Duplicated entries will be removed. Resolution options given in Options will override those that appear in the base DNSPolicy. @@ -341,6 +361,8 @@ PodSpec is a description of a pod. - **dnsConfig.searches** ([]string) + *Atomic: will be replaced during a merge* + A list of DNS search domains for host-name lookup. This will be appended to the base search paths generated from DNSPolicy. Duplicated search paths will be removed. - **dnsPolicy** (string) @@ -387,112 +409,6 @@ PodSpec is a description of a pod. *PodSecurityContext holds pod-level security attributes and common container settings. Some fields are also present in container.securityContext. Field values of container.securityContext take precedence over field values of PodSecurityContext.* - - **securityContext.runAsUser** (int64) - - The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows. - - - **securityContext.runAsNonRoot** (boolean) - - Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. - - - **securityContext.runAsGroup** (int64) - - The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows. - - - **securityContext.supplementalGroups** ([]int64) - - 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) - - A special supplemental group that applies to all containers in a pod. Some volume types allow the Kubelet to change the ownership of that volume to be owned by the pod: - - 1. The owning GID will be the FSGroup 2. The setgid bit is set (new files created in the volume will be owned by FSGroup) 3. The permission bits are OR'd with rw-rw---- - - If unset, the Kubelet will not modify the ownership and permissions of any volume. Note that this field cannot be set when spec.os.name is windows. - - - **securityContext.fsGroupChangePolicy** (string) - - fsGroupChangePolicy defines behavior of changing ownership and permission of the volume before being exposed inside Pod. This field will only apply to volume types which support fsGroup based ownership(and permissions). It will have no effect on ephemeral volume types such as: secret, configmaps and emptydir. Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used. Note that this field cannot be set when spec.os.name is windows. - - - **securityContext.seccompProfile** (SeccompProfile) - - The seccomp options to use by the containers in this pod. Note that this field cannot be set when spec.os.name is windows. - - - *SeccompProfile defines a pod/container's seccomp profile settings. Only one profile source may be set.* - - - **securityContext.seccompProfile.type** (string), required - - type indicates which kind of seccomp profile will be applied. Valid options are: - - Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. - - - **securityContext.seccompProfile.localhostProfile** (string) - - localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. - - - **securityContext.seLinuxOptions** (SELinuxOptions) - - The SELinux context to be applied to all containers. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows. - - - *SELinuxOptions are the labels to be applied to the container* - - - **securityContext.seLinuxOptions.level** (string) - - Level is SELinux level label that applies to the container. - - - **securityContext.seLinuxOptions.role** (string) - - Role is a SELinux role label that applies to the container. - - - **securityContext.seLinuxOptions.type** (string) - - Type is a SELinux type label that applies to the container. - - - **securityContext.seLinuxOptions.user** (string) - - User is a SELinux user label that applies to the container. - - - **securityContext.sysctls** ([]Sysctl) - - Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported sysctls (by the container runtime) might fail to launch. Note that this field cannot be set when spec.os.name is windows. - - - *Sysctl defines a kernel parameter to be set* - - - **securityContext.sysctls.name** (string), required - - Name of a property to set - - - **securityContext.sysctls.value** (string), required - - Value of a property to set - - - **securityContext.windowsOptions** (WindowsSecurityContextOptions) - - The Windows specific settings applied to all containers. If unspecified, the options within a container's SecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. - - - *WindowsSecurityContextOptions contain Windows-specific options and credentials.* - - - **securityContext.windowsOptions.gmsaCredentialSpec** (string) - - GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. - - - **securityContext.windowsOptions.gmsaCredentialSpecName** (string) - - GMSACredentialSpecName is the name of the GMSA credential spec to use. - - - **securityContext.windowsOptions.hostProcess** (boolean) - - HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. - - - **securityContext.windowsOptions.runAsUserName** (string) - - The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. - ### Alpha level @@ -513,32 +429,29 @@ PodSpec is a description of a pod. This field is immutable. - *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.* + *PodResourceClaim references exactly one ResourceClaim, either directly or by naming a ResourceClaimTemplate which is then turned into a ResourceClaim for the pod. + + 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) + - **resourceClaims.resourceClaimName** (string) - Source describes where to find the ResourceClaim. - - - *ClaimSource describes a reference to a ResourceClaim. + ResourceClaimName is the name of a ResourceClaim object in the same namespace as this pod. - 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) + Exactly one of ResourceClaimName and ResourceClaimTemplateName must be set. - ResourceClaimName is the name of a ResourceClaim object in the same namespace as this pod. + - **resourceClaims.resourceClaimTemplateName** (string) - - **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 pod name and resource name, along with a generated component, will be used to form a unique name for the ResourceClaim, which will be recorded in pod.status.resourceClaimStatuses. - - This field is immutable and no changes will be made to the corresponding ResourceClaim by the control plane after creating the ResourceClaim. + 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 pod name and resource name, along with a generated component, will be used to form a unique name for the ResourceClaim, which will be recorded in pod.status.resourceClaimStatuses. + + This field is immutable and no changes will be made to the corresponding ResourceClaim by the control plane after creating the ResourceClaim. + + Exactly one of ResourceClaimName and ResourceClaimTemplateName must be set. - **schedulingGates** ([]PodSchedulingGate) @@ -549,8 +462,6 @@ PodSpec is a description of a pod. SchedulingGates is an opaque list of values that if specified will block scheduling the pod. If schedulingGates is not empty, the pod will stay in the SchedulingGated state and the scheduler will not attempt to schedule the pod. SchedulingGates can only be set at pod creation time, and be removed only afterwards. - - This is a beta feature enabled by the PodSchedulingReadiness feature gate. *PodSchedulingGate is associated to a Pod to guard its scheduling.* @@ -564,7 +475,7 @@ PodSpec is a description of a pod. - **serviceAccount** (string) - DeprecatedServiceAccount is a depreciated alias for ServiceAccountName. Deprecated: Use serviceAccountName instead. + DeprecatedServiceAccount is a deprecated alias for ServiceAccountName. Deprecated: Use serviceAccountName instead. @@ -596,10 +507,14 @@ A single application container that you want to run within a pod. - **command** ([]string) + *Atomic: will be replaced during a merge* + Entrypoint array. Not executed within a shell. The container image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell - **args** ([]string) + *Atomic: will be replaced during a merge* + Arguments to the entrypoint. The container image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell - **workingDir** (string) @@ -647,6 +562,8 @@ A single application container that you want to run within a pod. *Patch strategy: merge on key `name`* + *Map: unique values on key name will be kept during a merge* + List of environment variables to set in the container. Cannot be updated. @@ -680,7 +597,7 @@ A single application container that you want to run within a pod. - **env.valueFrom.configMapKeyRef.name** (string) - Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + Name of the referent. This field is effectively required, but due to backwards compatibility is allowed to be empty. Instances of this type with an empty value here are almost certainly wrong. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - **env.valueFrom.configMapKeyRef.optional** (boolean) @@ -707,7 +624,7 @@ A single application container that you want to run within a pod. - **env.valueFrom.secretKeyRef.name** (string) - Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + Name of the referent. This field is effectively required, but due to backwards compatibility is allowed to be empty. Instances of this type with an empty value here are almost certainly wrong. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - **env.valueFrom.secretKeyRef.optional** (boolean) @@ -715,6 +632,8 @@ A single application container that you want to run within a pod. - **envFrom** ([]EnvFromSource) + *Atomic: will be replaced during a merge* + List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated. @@ -731,7 +650,7 @@ A single application container that you want to run within a pod. - **envFrom.configMapRef.name** (string) - Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + Name of the referent. This field is effectively required, but due to backwards compatibility is allowed to be empty. Instances of this type with an empty value here are almost certainly wrong. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - **envFrom.configMapRef.optional** (boolean) @@ -752,7 +671,7 @@ A single application container that you want to run within a pod. - **envFrom.secretRef.name** (string) - Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + Name of the referent. This field is effectively required, but due to backwards compatibility is allowed to be empty. Instances of this type with an empty value here are almost certainly wrong. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - **envFrom.secretRef.optional** (boolean) @@ -765,6 +684,8 @@ A single application container that you want to run within a pod. *Patch strategy: merge on key `mountPath`* + *Map: unique values on key mountPath will be kept during a merge* + Pod volumes to mount into the container's filesystem. Cannot be updated. @@ -780,12 +701,24 @@ A single application container that you want to run within a pod. - **volumeMounts.mountPropagation** (string) - mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified (which defaults to None). - **volumeMounts.readOnly** (boolean) Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + - **volumeMounts.recursiveReadOnly** (string) + + RecursiveReadOnly specifies whether read-only mounts should be handled recursively. + + If ReadOnly is false, this field has no meaning and must be unspecified. + + If ReadOnly is true, and this field is set to Disabled, the mount is not made recursively read-only. If this field is set to IfPossible, the mount is made recursively read-only, if it is supported by the container runtime. If this field is set to Enabled, the mount is made recursively read-only if it is supported by the container runtime, otherwise the pod will not be started and an error will be generated to indicate the reason. + + If this field is set to IfPossible or Enabled, MountPropagation must be set to None (or be unspecified, which defaults to None). + + If this field is not specified, it is treated as an equivalent of Disabled. + - **volumeMounts.subPath** (string) Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). @@ -798,6 +731,8 @@ A single application container that you want to run within a pod. *Patch strategy: merge on key `devicePath`* + *Map: unique values on key devicePath will be kept during a merge* + volumeDevices is the list of block devices to be used by the container. @@ -838,6 +773,10 @@ A single application container that you want to run within a pod. 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.claims.request** (string) + + Request is the name chosen for a request in the referenced claim. If empty, everything from the claim is made available, otherwise only the result of this request. + - **resources.limits** (map[string]}}">Quantity) Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ @@ -915,112 +854,6 @@ A single application container that you want to run within a pod. *SecurityContext holds security configuration that will be applied to a container. Some fields are present in both SecurityContext and PodSecurityContext. When both are set, the values in SecurityContext take precedence.* - - **securityContext.runAsUser** (int64) - - The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. - - - **securityContext.runAsNonRoot** (boolean) - - Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. - - - **securityContext.runAsGroup** (int64) - - The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. - - - **securityContext.readOnlyRootFilesystem** (boolean) - - Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows. - - - **securityContext.procMount** (string) - - procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows. - - - **securityContext.privileged** (boolean) - - Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows. - - - **securityContext.allowPrivilegeEscalation** (boolean) - - AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows. - - - **securityContext.capabilities** (Capabilities) - - The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. - - - *Adds and removes POSIX capabilities from running containers.* - - - **securityContext.capabilities.add** ([]string) - - Added capabilities - - - **securityContext.capabilities.drop** ([]string) - - Removed capabilities - - - **securityContext.seccompProfile** (SeccompProfile) - - The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. - - - *SeccompProfile defines a pod/container's seccomp profile settings. Only one profile source may be set.* - - - **securityContext.seccompProfile.type** (string), required - - type indicates which kind of seccomp profile will be applied. Valid options are: - - Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. - - - **securityContext.seccompProfile.localhostProfile** (string) - - localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. - - - **securityContext.seLinuxOptions** (SELinuxOptions) - - The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. - - - *SELinuxOptions are the labels to be applied to the container* - - - **securityContext.seLinuxOptions.level** (string) - - Level is SELinux level label that applies to the container. - - - **securityContext.seLinuxOptions.role** (string) - - Role is a SELinux role label that applies to the container. - - - **securityContext.seLinuxOptions.type** (string) - - Type is a SELinux type label that applies to the container. - - - **securityContext.seLinuxOptions.user** (string) - - User is a SELinux user label that applies to the container. - - - **securityContext.windowsOptions** (WindowsSecurityContextOptions) - - The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. - - - *WindowsSecurityContextOptions contain Windows-specific options and credentials.* - - - **securityContext.windowsOptions.gmsaCredentialSpec** (string) - - GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. - - - **securityContext.windowsOptions.gmsaCredentialSpecName** (string) - - GMSACredentialSpecName is the name of the GMSA credential spec to use. - - - **securityContext.windowsOptions.hostProcess** (boolean) - - HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. - - - **securityContext.windowsOptions.runAsUserName** (string) - - The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. - ### Debugging @@ -1074,10 +907,14 @@ To add an ephemeral container, use the ephemeralcontainers subresource of an exi - **command** ([]string) + *Atomic: will be replaced during a merge* + Entrypoint array. Not executed within a shell. The image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell - **args** ([]string) + *Atomic: will be replaced during a merge* + Arguments to the entrypoint. The image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell - **workingDir** (string) @@ -1091,6 +928,8 @@ To add an ephemeral container, use the ephemeralcontainers subresource of an exi *Patch strategy: merge on key `name`* + *Map: unique values on key name will be kept during a merge* + List of environment variables to set in the container. Cannot be updated. @@ -1124,7 +963,7 @@ To add an ephemeral container, use the ephemeralcontainers subresource of an exi - **env.valueFrom.configMapKeyRef.name** (string) - Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + Name of the referent. This field is effectively required, but due to backwards compatibility is allowed to be empty. Instances of this type with an empty value here are almost certainly wrong. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - **env.valueFrom.configMapKeyRef.optional** (boolean) @@ -1151,7 +990,7 @@ To add an ephemeral container, use the ephemeralcontainers subresource of an exi - **env.valueFrom.secretKeyRef.name** (string) - Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + Name of the referent. This field is effectively required, but due to backwards compatibility is allowed to be empty. Instances of this type with an empty value here are almost certainly wrong. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - **env.valueFrom.secretKeyRef.optional** (boolean) @@ -1159,6 +998,8 @@ To add an ephemeral container, use the ephemeralcontainers subresource of an exi - **envFrom** ([]EnvFromSource) + *Atomic: will be replaced during a merge* + List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated. @@ -1175,7 +1016,7 @@ To add an ephemeral container, use the ephemeralcontainers subresource of an exi - **envFrom.configMapRef.name** (string) - Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + Name of the referent. This field is effectively required, but due to backwards compatibility is allowed to be empty. Instances of this type with an empty value here are almost certainly wrong. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - **envFrom.configMapRef.optional** (boolean) @@ -1196,7 +1037,7 @@ To add an ephemeral container, use the ephemeralcontainers subresource of an exi - **envFrom.secretRef.name** (string) - Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + Name of the referent. This field is effectively required, but due to backwards compatibility is allowed to be empty. Instances of this type with an empty value here are almost certainly wrong. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - **envFrom.secretRef.optional** (boolean) @@ -1209,6 +1050,8 @@ To add an ephemeral container, use the ephemeralcontainers subresource of an exi *Patch strategy: merge on key `mountPath`* + *Map: unique values on key mountPath will be kept during a merge* + Pod volumes to mount into the container's filesystem. Subpath mounts are not allowed for ephemeral containers. Cannot be updated. @@ -1224,12 +1067,24 @@ To add an ephemeral container, use the ephemeralcontainers subresource of an exi - **volumeMounts.mountPropagation** (string) - mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. When RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified (which defaults to None). - **volumeMounts.readOnly** (boolean) Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + - **volumeMounts.recursiveReadOnly** (string) + + RecursiveReadOnly specifies whether read-only mounts should be handled recursively. + + If ReadOnly is false, this field has no meaning and must be unspecified. + + If ReadOnly is true, and this field is set to Disabled, the mount is not made recursively read-only. If this field is set to IfPossible, the mount is made recursively read-only, if it is supported by the container runtime. If this field is set to Enabled, the mount is made recursively read-only if it is supported by the container runtime, otherwise the pod will not be started and an error will be generated to indicate the reason. + + If this field is set to IfPossible or Enabled, MountPropagation must be set to None (or be unspecified, which defaults to None). + + If this field is not specified, it is treated as an equivalent of Disabled. + - **volumeMounts.subPath** (string) Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). @@ -1242,6 +1097,8 @@ To add an ephemeral container, use the ephemeralcontainers subresource of an exi *Patch strategy: merge on key `devicePath`* + *Map: unique values on key devicePath will be kept during a merge* + volumeDevices is the list of block devices to be used by the container. @@ -1315,112 +1172,6 @@ To add an ephemeral container, use the ephemeralcontainers subresource of an exi *SecurityContext holds security configuration that will be applied to a container. Some fields are present in both SecurityContext and PodSecurityContext. When both are set, the values in SecurityContext take precedence.* - - **securityContext.runAsUser** (int64) - - The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. - - - **securityContext.runAsNonRoot** (boolean) - - Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. - - - **securityContext.runAsGroup** (int64) - - The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. - - - **securityContext.readOnlyRootFilesystem** (boolean) - - Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows. - - - **securityContext.procMount** (string) - - procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows. - - - **securityContext.privileged** (boolean) - - Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows. - - - **securityContext.allowPrivilegeEscalation** (boolean) - - AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows. - - - **securityContext.capabilities** (Capabilities) - - The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. - - - *Adds and removes POSIX capabilities from running containers.* - - - **securityContext.capabilities.add** ([]string) - - Added capabilities - - - **securityContext.capabilities.drop** ([]string) - - Removed capabilities - - - **securityContext.seccompProfile** (SeccompProfile) - - The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. - - - *SeccompProfile defines a pod/container's seccomp profile settings. Only one profile source may be set.* - - - **securityContext.seccompProfile.type** (string), required - - type indicates which kind of seccomp profile will be applied. Valid options are: - - Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. - - - **securityContext.seccompProfile.localhostProfile** (string) - - localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. - - - **securityContext.seLinuxOptions** (SELinuxOptions) - - The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. - - - *SELinuxOptions are the labels to be applied to the container* - - - **securityContext.seLinuxOptions.level** (string) - - Level is SELinux level label that applies to the container. - - - **securityContext.seLinuxOptions.role** (string) - - Role is a SELinux role label that applies to the container. - - - **securityContext.seLinuxOptions.type** (string) - - Type is a SELinux type label that applies to the container. - - - **securityContext.seLinuxOptions.user** (string) - - User is a SELinux user label that applies to the container. - - - **securityContext.windowsOptions** (WindowsSecurityContextOptions) - - The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. - - - *WindowsSecurityContextOptions contain Windows-specific options and credentials.* - - - **securityContext.windowsOptions.gmsaCredentialSpec** (string) - - GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. - - - **securityContext.windowsOptions.gmsaCredentialSpecName** (string) - - GMSACredentialSpecName is the name of the GMSA credential spec to use. - - - **securityContext.windowsOptions.hostProcess** (boolean) - - HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. - - - **securityContext.windowsOptions.runAsUserName** (string) - - The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. - ### Not allowed @@ -1479,6 +1230,10 @@ To add an ephemeral container, use the ephemeralcontainers subresource of an exi 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.claims.request** (string) + + Request is the name chosen for a request in the referenced claim. If empty, everything from the claim is made available, otherwise only the result of this request. + - **resources.limits** (map[string]}}">Quantity) Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ @@ -1531,6 +1286,8 @@ LifecycleHandler defines a specific action that should be taken in a lifecycle h - **exec.command** ([]string) + *Atomic: will be replaced during a merge* + Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. - **httpGet** (HTTPGetAction) @@ -1553,6 +1310,8 @@ LifecycleHandler defines a specific action that should be taken in a lifecycle h - **httpGet.httpHeaders** ([]HTTPHeader) + *Atomic: will be replaced during a merge* + Custom headers to set in the request. HTTP allows repeated headers. @@ -1574,6 +1333,17 @@ LifecycleHandler defines a specific action that should be taken in a lifecycle h Scheme to use for connecting to the host. Defaults to HTTP. +- **sleep** (SleepAction) + + Sleep represents the duration that the container should sleep before being terminated. + + + *SleepAction describes a "sleep" action.* + + - **sleep.seconds** (int64), required + + Seconds is the number of seconds to sleep. + - **tcpSocket** (TCPSocketAction) Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. @@ -1604,6 +1374,8 @@ Node affinity is a group of node affinity scheduling rules. - **preferredDuringSchedulingIgnoredDuringExecution** ([]PreferredSchedulingTerm) + *Atomic: will be replaced during a merge* + The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred. @@ -1618,10 +1390,14 @@ Node affinity is a group of node affinity scheduling rules. - **preferredDuringSchedulingIgnoredDuringExecution.preference.matchExpressions** ([]}}">NodeSelectorRequirement) + *Atomic: will be replaced during a merge* + A list of node selector requirements by node's labels. - **preferredDuringSchedulingIgnoredDuringExecution.preference.matchFields** ([]}}">NodeSelectorRequirement) + *Atomic: will be replaced during a merge* + A list of node selector requirements by node's fields. - **preferredDuringSchedulingIgnoredDuringExecution.weight** (int32), required @@ -1637,6 +1413,8 @@ Node affinity is a group of node affinity scheduling rules. - **requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms** ([]NodeSelectorTerm), required + *Atomic: will be replaced during a merge* + Required. A list of node selector terms. The terms are ORed. @@ -1644,10 +1422,14 @@ Node affinity is a group of node affinity scheduling rules. - **requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressions** ([]}}">NodeSelectorRequirement) + *Atomic: will be replaced during a merge* + A list of node selector requirements by node's labels. - **requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFields** ([]}}">NodeSelectorRequirement) + *Atomic: will be replaced during a merge* + A list of node selector requirements by node's fields. @@ -1662,6 +1444,8 @@ Pod affinity is a group of inter pod affinity scheduling rules. - **preferredDuringSchedulingIgnoredDuringExecution** ([]WeightedPodAffinityTerm) + *Atomic: will be replaced during a merge* + The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. @@ -1680,7 +1464,19 @@ Pod affinity is a group of inter pod affinity scheduling rules. - **preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector** (}}">LabelSelector) - A label query over a set of resources, in this case pods. + A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + + - **preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.matchLabelKeys** ([]string) + + *Atomic: will be replaced during a merge* + + MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both matchLabelKeys and labelSelector. Also, matchLabelKeys cannot be set when labelSelector isn't set. This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). + + - **preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.mismatchLabelKeys** ([]string) + + *Atomic: will be replaced during a merge* + + MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. Also, mismatchLabelKeys cannot be set when labelSelector isn't set. This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). - **preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector** (}}">LabelSelector) @@ -1688,6 +1484,8 @@ Pod affinity is a group of inter pod affinity scheduling rules. - **preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaces** ([]string) + *Atomic: will be replaced during a merge* + namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". - **preferredDuringSchedulingIgnoredDuringExecution.weight** (int32), required @@ -1696,6 +1494,8 @@ Pod affinity is a group of inter pod affinity scheduling rules. - **requiredDuringSchedulingIgnoredDuringExecution** ([]PodAffinityTerm) + *Atomic: will be replaced during a merge* + If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. @@ -1707,7 +1507,19 @@ Pod affinity is a group of inter pod affinity scheduling rules. - **requiredDuringSchedulingIgnoredDuringExecution.labelSelector** (}}">LabelSelector) - A label query over a set of resources, in this case pods. + A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + + - **requiredDuringSchedulingIgnoredDuringExecution.matchLabelKeys** ([]string) + + *Atomic: will be replaced during a merge* + + MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both matchLabelKeys and labelSelector. Also, matchLabelKeys cannot be set when labelSelector isn't set. This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). + + - **requiredDuringSchedulingIgnoredDuringExecution.mismatchLabelKeys** ([]string) + + *Atomic: will be replaced during a merge* + + MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. Also, mismatchLabelKeys cannot be set when labelSelector isn't set. This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). - **requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector** (}}">LabelSelector) @@ -1715,6 +1527,8 @@ Pod affinity is a group of inter pod affinity scheduling rules. - **requiredDuringSchedulingIgnoredDuringExecution.namespaces** ([]string) + *Atomic: will be replaced during a merge* + namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". @@ -1729,6 +1543,8 @@ Pod anti affinity is a group of inter pod anti affinity scheduling rules. - **preferredDuringSchedulingIgnoredDuringExecution** ([]WeightedPodAffinityTerm) + *Atomic: will be replaced during a merge* + The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. @@ -1747,7 +1563,19 @@ Pod anti affinity is a group of inter pod anti affinity scheduling rules. - **preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector** (}}">LabelSelector) - A label query over a set of resources, in this case pods. + A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + + - **preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.matchLabelKeys** ([]string) + + *Atomic: will be replaced during a merge* + + MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both matchLabelKeys and labelSelector. Also, matchLabelKeys cannot be set when labelSelector isn't set. This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). + + - **preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.mismatchLabelKeys** ([]string) + + *Atomic: will be replaced during a merge* + + MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. Also, mismatchLabelKeys cannot be set when labelSelector isn't set. This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). - **preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector** (}}">LabelSelector) @@ -1755,6 +1583,8 @@ Pod anti affinity is a group of inter pod anti affinity scheduling rules. - **preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaces** ([]string) + *Atomic: will be replaced during a merge* + namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". - **preferredDuringSchedulingIgnoredDuringExecution.weight** (int32), required @@ -1763,6 +1593,8 @@ Pod anti affinity is a group of inter pod anti affinity scheduling rules. - **requiredDuringSchedulingIgnoredDuringExecution** ([]PodAffinityTerm) + *Atomic: will be replaced during a merge* + If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. @@ -1774,7 +1606,19 @@ Pod anti affinity is a group of inter pod anti affinity scheduling rules. - **requiredDuringSchedulingIgnoredDuringExecution.labelSelector** (}}">LabelSelector) - A label query over a set of resources, in this case pods. + A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + + - **requiredDuringSchedulingIgnoredDuringExecution.matchLabelKeys** ([]string) + + *Atomic: will be replaced during a merge* + + MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both matchLabelKeys and labelSelector. Also, matchLabelKeys cannot be set when labelSelector isn't set. This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). + + - **requiredDuringSchedulingIgnoredDuringExecution.mismatchLabelKeys** ([]string) + + *Atomic: will be replaced during a merge* + + MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. Also, mismatchLabelKeys cannot be set when labelSelector isn't set. This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). - **requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector** (}}">LabelSelector) @@ -1782,6 +1626,8 @@ Pod anti affinity is a group of inter pod anti affinity scheduling rules. - **requiredDuringSchedulingIgnoredDuringExecution.namespaces** ([]string) + *Atomic: will be replaced during a merge* + namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". @@ -1803,6 +1649,8 @@ Probe describes a health check to be performed against a container to determine - **exec.command** ([]string) + *Atomic: will be replaced during a merge* + Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. - **httpGet** (HTTPGetAction) @@ -1825,6 +1673,8 @@ Probe describes a health check to be performed against a container to determine - **httpGet.httpHeaders** ([]HTTPHeader) + *Atomic: will be replaced during a merge* + Custom headers to set in the request. HTTP allows repeated headers. @@ -1934,7 +1784,7 @@ PodStatus represents information about the status of a pod. Status may trail the *HostIP represents a single IP address allocated to the host.* - - **hostIPs.ip** (string) + - **hostIPs.ip** (string), required IP is the IP address assigned to the host @@ -1969,12 +1819,14 @@ PodStatus represents information about the status of a pod. Status may trail the *Patch strategy: merge on key `ip`* + *Map: unique values on key ip will be kept during a merge* + podIPs holds the IP addresses allocated to the pod. If this field is specified, the 0th entry must match the podIP field. Pods may be allocated at most 1 value for each of IPv4 and IPv6. This list is empty if no IPs have been allocated yet. *PodIP represents a single IP address allocated to the pod.* - - **podIPs.ip** (string) + - **podIPs.ip** (string), required IP is the IP address assigned to the pod @@ -1982,6 +1834,8 @@ PodStatus represents information about the status of a pod. Status may trail the *Patch strategy: merge on key `type`* + *Map: unique values on key type will be kept during a merge* + Current service state of pod. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#pod-conditions @@ -2023,6 +1877,8 @@ PodStatus represents information about the status of a pod. Status may trail the - **initContainerStatuses** ([]ContainerStatus) + *Atomic: will be replaced during a merge* + The list has one entry per init container in the manifest. The most recent successful init container will have ready = true, the most recently started container will have startTime set. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#pod-and-container-status @@ -2030,6 +1886,8 @@ PodStatus represents information about the status of a pod. Status may trail the - **containerStatuses** ([]ContainerStatus) + *Atomic: will be replaced during a merge* + The list has one entry per container in the manifest. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#pod-and-container-status @@ -2037,6 +1895,8 @@ PodStatus represents information about the status of a pod. Status may trail the - **ephemeralContainerStatuses** ([]ContainerStatus) + *Atomic: will be replaced during a merge* + Status for any ephemeral containers that have run in this pod. @@ -2059,7 +1919,7 @@ PodStatus represents information about the status of a pod. Status may trail the - **resourceClaimStatuses.resourceClaimName** (string) - ResourceClaimName is the name of the ResourceClaim that was generated for the Pod in the namespace of the Pod. It this is unset, then generating a ResourceClaim was not necessary. The pod.spec.resourceClaims entry can be ignored in this case. + ResourceClaimName is the name of the ResourceClaim that was generated for the Pod in the namespace of the Pod. If this is unset, then generating a ResourceClaim was not necessary. The pod.spec.resourceClaims entry can be ignored in this case. - **resize** (string) @@ -2120,14 +1980,14 @@ GET /api/v1/namespaces/{namespace}/pods/{name} name of the Pod -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -2153,14 +2013,14 @@ GET /api/v1/namespaces/{namespace}/pods/{name}/ephemeralcontainers name of the Pod -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -2181,59 +2041,59 @@ GET /api/v1/namespaces/{namespace}/pods/{name}/log #### Parameters -- **name** (*in path*): string, required +- ****: - name of the Pod + -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **container** (*in query*): string +- ****: - The container for which to stream logs. Defaults to only container if there is one container in the pod. + -- **follow** (*in query*): boolean +- ****: - Follow the log stream of the pod. Defaults to false. + -- **insecureSkipTLSVerifyBackend** (*in query*): boolean +- **name** (*in path*): string, required - insecureSkipTLSVerifyBackend indicates that the apiserver should not confirm the validity of the serving certificate of the backend it is connecting to. This will make the HTTPS connection between the apiserver and the backend insecure. This means the apiserver cannot verify the log data it is receiving came from the real kubelet. If the kubelet is configured to verify the apiserver's TLS credentials, it does not mean the connection to the real kubelet is vulnerable to a man in the middle attack (e.g. an attacker could not intercept the actual log data coming from the real kubelet). + name of the Pod -- **limitBytes** (*in query*): integer +- ****: - If set, the number of bytes to read from the server before terminating the log output. This may not display a complete final line of logging, and may return slightly more or slightly less than the specified limit. + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **previous** (*in query*): boolean +- ****: - Return previous terminated container logs. Defaults to false. + -- **sinceSeconds** (*in query*): integer +- ****: - A relative time in seconds before the current time from which to show logs. If this value precedes the time a pod was started, only logs since the pod start will be returned. If this value is in the future, no logs will be returned. Only one of sinceSeconds or sinceTime may be specified. + -- **tailLines** (*in query*): integer +- ****: - If set, the number of lines from the end of the logs to show. If not specified, logs are shown from the creation of the container or sinceSeconds or sinceTime + -- **timestamps** (*in query*): boolean +- ****: - If true, add an RFC3339 or RFC3339Nano timestamp at the beginning of every line of log output. Defaults to false. + @@ -2259,14 +2119,14 @@ GET /api/v1/namespaces/{namespace}/pods/{name}/status name of the Pod -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -2287,64 +2147,64 @@ GET /api/v1/namespaces/{namespace}/pods #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -2365,59 +2225,59 @@ GET /api/v1/pods #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -2438,34 +2298,34 @@ POST /api/v1/namespaces/{namespace}/pods #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Pod, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Pod, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -2495,34 +2355,34 @@ PUT /api/v1/namespaces/{namespace}/pods/{name} name of the Pod -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Pod, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Pod, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -2550,34 +2410,34 @@ PUT /api/v1/namespaces/{namespace}/pods/{name}/ephemeralcontainers name of the Pod -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Pod, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Pod, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -2605,34 +2465,34 @@ PUT /api/v1/namespaces/{namespace}/pods/{name}/status name of the Pod -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Pod, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">Pod, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -2660,39 +2520,39 @@ PATCH /api/v1/namespaces/{namespace}/pods/{name} name of the Pod -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -2720,39 +2580,39 @@ PATCH /api/v1/namespaces/{namespace}/pods/{name}/ephemeralcontainers name of the Pod -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -2780,39 +2640,39 @@ PATCH /api/v1/namespaces/{namespace}/pods/{name}/status name of the Pod -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -2840,34 +2700,39 @@ DELETE /api/v1/namespaces/{namespace}/pods/{name} name of the Pod -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: + + - }}">gracePeriodSeconds +- ****: -- **pretty** (*in query*): string + - }}">pretty +- ****: -- **propagationPolicy** (*in query*): string + + + +- **dryRun** (*in query*): string - }}">propagationPolicy + }}">dryRun @@ -2890,74 +2755,79 @@ DELETE /api/v1/namespaces/{namespace}/pods #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: + + - }}">dryRun +- ****: -- **fieldSelector** (*in query*): string + - }}">fieldSelector +- ****: -- **gracePeriodSeconds** (*in query*): integer + - }}">gracePeriodSeconds +- ****: -- **labelSelector** (*in query*): string + - }}">labelSelector +- ****: -- **limit** (*in query*): integer + - }}">limit + +- ****: + + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- **dryRun** (*in query*): string - }}">timeoutSeconds + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/workload-resources/priority-class-v1.md b/content/en/docs/reference/kubernetes-api/workload-resources/priority-class-v1.md index 5afb617fabaa1..aab950d960614 100644 --- a/content/en/docs/reference/kubernetes-api/workload-resources/priority-class-v1.md +++ b/content/en/docs/reference/kubernetes-api/workload-resources/priority-class-v1.md @@ -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: 13 +weight: 14 auto_generated: true --- @@ -111,9 +111,9 @@ GET /apis/scheduling.k8s.io/v1/priorityclasses/{name} name of the PriorityClass -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -134,59 +134,59 @@ GET /apis/scheduling.k8s.io/v1/priorityclasses #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -207,29 +207,29 @@ POST /apis/scheduling.k8s.io/v1/priorityclasses #### Parameters -- **body**: }}">PriorityClass, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">PriorityClass, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -259,29 +259,29 @@ PUT /apis/scheduling.k8s.io/v1/priorityclasses/{name} name of the PriorityClass -- **body**: }}">PriorityClass, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">PriorityClass, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -309,34 +309,34 @@ PATCH /apis/scheduling.k8s.io/v1/priorityclasses/{name} name of the PriorityClass -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -364,29 +364,34 @@ DELETE /apis/scheduling.k8s.io/v1/priorityclasses/{name} name of the PriorityClass -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: + + - }}">propagationPolicy + +- **dryRun** (*in query*): string + + }}">dryRun @@ -409,69 +414,74 @@ DELETE /apis/scheduling.k8s.io/v1/priorityclasses #### Parameters -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: + + - }}">timeoutSeconds + +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/workload-resources/replica-set-v1.md b/content/en/docs/reference/kubernetes-api/workload-resources/replica-set-v1.md index 5c6040313cd72..878e0f0447ec8 100644 --- a/content/en/docs/reference/kubernetes-api/workload-resources/replica-set-v1.md +++ b/content/en/docs/reference/kubernetes-api/workload-resources/replica-set-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "ReplicaSet ensures that a specified number of pod replicas are running at any given time." title: "ReplicaSet" -weight: 4 +weight: 5 auto_generated: true --- @@ -106,6 +106,8 @@ ReplicaSetStatus represents the current status of a ReplicaSet. *Patch strategy: merge on key `type`* + *Map: unique values on key type will be kept during a merge* + Represents the latest available observations of a replica set's current state. @@ -191,14 +193,14 @@ GET /apis/apps/v1/namespaces/{namespace}/replicasets/{name} name of the ReplicaSet -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -224,14 +226,14 @@ GET /apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status name of the ReplicaSet -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -252,64 +254,64 @@ GET /apis/apps/v1/namespaces/{namespace}/replicasets #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -330,59 +332,59 @@ GET /apis/apps/v1/replicasets #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -403,34 +405,34 @@ POST /apis/apps/v1/namespaces/{namespace}/replicasets #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">ReplicaSet, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ReplicaSet, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -460,34 +462,34 @@ PUT /apis/apps/v1/namespaces/{namespace}/replicasets/{name} name of the ReplicaSet -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">ReplicaSet, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ReplicaSet, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -515,34 +517,34 @@ PUT /apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status name of the ReplicaSet -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">ReplicaSet, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ReplicaSet, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -570,39 +572,39 @@ PATCH /apis/apps/v1/namespaces/{namespace}/replicasets/{name} name of the ReplicaSet -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -630,39 +632,39 @@ PATCH /apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status name of the ReplicaSet -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -690,34 +692,39 @@ DELETE /apis/apps/v1/namespaces/{namespace}/replicasets/{name} name of the ReplicaSet -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: + + - }}">gracePeriodSeconds +- ****: -- **pretty** (*in query*): string + - }}">pretty +- ****: -- **propagationPolicy** (*in query*): string + - }}">propagationPolicy + +- **dryRun** (*in query*): string + + }}">dryRun @@ -740,74 +747,79 @@ DELETE /apis/apps/v1/namespaces/{namespace}/replicasets #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: + + - }}">sendInitialEvents +- ****: + + -- **timeoutSeconds** (*in query*): integer - }}">timeoutSeconds +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/workload-resources/replication-controller-v1.md b/content/en/docs/reference/kubernetes-api/workload-resources/replication-controller-v1.md index b0bb72eaedaa6..41576b6a4efca 100644 --- a/content/en/docs/reference/kubernetes-api/workload-resources/replication-controller-v1.md +++ b/content/en/docs/reference/kubernetes-api/workload-resources/replication-controller-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "ReplicationController represents the configuration of a replication controller." title: "ReplicationController" -weight: 3 +weight: 4 auto_generated: true --- @@ -106,6 +106,8 @@ ReplicationControllerStatus represents the current status of a replication contr *Patch strategy: merge on key `type`* + *Map: unique values on key type will be kept during a merge* + Represents the latest available observations of a replication controller's current state. @@ -191,14 +193,14 @@ GET /api/v1/namespaces/{namespace}/replicationcontrollers/{name} name of the ReplicationController -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -224,14 +226,14 @@ GET /api/v1/namespaces/{namespace}/replicationcontrollers/{name}/status name of the ReplicationController -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -252,64 +254,64 @@ GET /api/v1/namespaces/{namespace}/replicationcontrollers #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -330,59 +332,59 @@ GET /api/v1/replicationcontrollers #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -403,34 +405,34 @@ POST /api/v1/namespaces/{namespace}/replicationcontrollers #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">ReplicationController, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ReplicationController, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -460,34 +462,34 @@ PUT /api/v1/namespaces/{namespace}/replicationcontrollers/{name} name of the ReplicationController -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">ReplicationController, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ReplicationController, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -515,34 +517,34 @@ PUT /api/v1/namespaces/{namespace}/replicationcontrollers/{name}/status name of the ReplicationController -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">ReplicationController, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">ReplicationController, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -570,39 +572,39 @@ PATCH /api/v1/namespaces/{namespace}/replicationcontrollers/{name} name of the ReplicationController -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -630,39 +632,39 @@ PATCH /api/v1/namespaces/{namespace}/replicationcontrollers/{name}/status name of the ReplicationController -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -690,34 +692,39 @@ DELETE /api/v1/namespaces/{namespace}/replicationcontrollers/{name} name of the ReplicationController -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: + + - }}">gracePeriodSeconds +- ****: -- **pretty** (*in query*): string + - }}">pretty +- ****: -- **propagationPolicy** (*in query*): string + - }}">propagationPolicy + +- **dryRun** (*in query*): string + + }}">dryRun @@ -740,74 +747,79 @@ DELETE /api/v1/namespaces/{namespace}/replicationcontrollers #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: + + - }}">sendInitialEvents +- ****: + + -- **timeoutSeconds** (*in query*): integer - }}">timeoutSeconds +- **dryRun** (*in query*): string + + }}">dryRun diff --git a/content/en/docs/reference/kubernetes-api/workload-resources/resource-claim-template-v1alpha2.md b/content/en/docs/reference/kubernetes-api/workload-resources/resource-claim-template-v1alpha2.md deleted file mode 100644 index ed1d6b7104f86..0000000000000 --- a/content/en/docs/reference/kubernetes-api/workload-resources/resource-claim-template-v1alpha2.md +++ /dev/null @@ -1,600 +0,0 @@ ---- -api_metadata: - apiVersion: "resource.k8s.io/v1alpha2" - import: "k8s.io/api/resource/v1alpha2" - kind: "ResourceClaimTemplate" -content_type: "api_reference" -description: "ResourceClaimTemplate is used to produce ResourceClaim objects." -title: "ResourceClaimTemplate v1alpha2" -weight: 16 -auto_generated: true ---- - - - -`apiVersion: resource.k8s.io/v1alpha2` - -`import "k8s.io/api/resource/v1alpha2"` - - -## ResourceClaimTemplate {#ResourceClaimTemplate} - -ResourceClaimTemplate is used to produce ResourceClaim objects. - -
- -- **apiVersion**: resource.k8s.io/v1alpha2 - - -- **kind**: ResourceClaimTemplate - - -- **metadata** (}}">ObjectMeta) - - Standard object metadata - -- **spec** (}}">ResourceClaimTemplateSpec), 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. - -
- -- **spec** (}}">ResourceClaimSpec), 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** (}}">ObjectMeta) - - 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. - -
- -- **apiVersion**: resource.k8s.io/v1alpha2 - - -- **kind**: ResourceClaimTemplateList - - -- **metadata** (}}">ListMeta) - - Standard list metadata - -- **items** ([]}}">ResourceClaimTemplate), required - - Items is the list of resource claim templates. - - - - - -## Operations {#Operations} - - - -
- - - - - - -### `get` read the specified ResourceClaimTemplate - -#### HTTP Request - -GET /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/resourceclaimtemplates/{name} - -#### Parameters - - -- **name** (*in path*): string, required - - name of the ResourceClaimTemplate - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">ResourceClaimTemplate): OK - -401: Unauthorized - - -### `list` list or watch objects of kind ResourceClaimTemplate - -#### HTTP Request - -GET /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/resourceclaimtemplates - -#### Parameters - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **allowWatchBookmarks** (*in query*): boolean - - }}">allowWatchBookmarks - - -- **continue** (*in query*): string - - }}">continue - - -- **fieldSelector** (*in query*): string - - }}">fieldSelector - - -- **labelSelector** (*in query*): string - - }}">labelSelector - - -- **limit** (*in query*): integer - - }}">limit - - -- **pretty** (*in query*): string - - }}">pretty - - -- **resourceVersion** (*in query*): string - - }}">resourceVersion - - -- **resourceVersionMatch** (*in query*): string - - }}">resourceVersionMatch - - -- **sendInitialEvents** (*in query*): boolean - - }}">sendInitialEvents - - -- **timeoutSeconds** (*in query*): integer - - }}">timeoutSeconds - - -- **watch** (*in query*): boolean - - }}">watch - - - -#### Response - - -200 (}}">ResourceClaimTemplateList): OK - -401: Unauthorized - - -### `list` list or watch objects of kind ResourceClaimTemplate - -#### HTTP Request - -GET /apis/resource.k8s.io/v1alpha2/resourceclaimtemplates - -#### Parameters - - -- **allowWatchBookmarks** (*in query*): boolean - - }}">allowWatchBookmarks - - -- **continue** (*in query*): string - - }}">continue - - -- **fieldSelector** (*in query*): string - - }}">fieldSelector - - -- **labelSelector** (*in query*): string - - }}">labelSelector - - -- **limit** (*in query*): integer - - }}">limit - - -- **pretty** (*in query*): string - - }}">pretty - - -- **resourceVersion** (*in query*): string - - }}">resourceVersion - - -- **resourceVersionMatch** (*in query*): string - - }}">resourceVersionMatch - - -- **sendInitialEvents** (*in query*): boolean - - }}">sendInitialEvents - - -- **timeoutSeconds** (*in query*): integer - - }}">timeoutSeconds - - -- **watch** (*in query*): boolean - - }}">watch - - - -#### Response - - -200 (}}">ResourceClaimTemplateList): OK - -401: Unauthorized - - -### `create` create a ResourceClaimTemplate - -#### HTTP Request - -POST /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/resourceclaimtemplates - -#### Parameters - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **body**: }}">ResourceClaimTemplate, required - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldManager** (*in query*): string - - }}">fieldManager - - -- **fieldValidation** (*in query*): string - - }}">fieldValidation - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">ResourceClaimTemplate): OK - -201 (}}">ResourceClaimTemplate): Created - -202 (}}">ResourceClaimTemplate): Accepted - -401: Unauthorized - - -### `update` replace the specified ResourceClaimTemplate - -#### HTTP Request - -PUT /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/resourceclaimtemplates/{name} - -#### Parameters - - -- **name** (*in path*): string, required - - name of the ResourceClaimTemplate - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **body**: }}">ResourceClaimTemplate, required - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldManager** (*in query*): string - - }}">fieldManager - - -- **fieldValidation** (*in query*): string - - }}">fieldValidation - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">ResourceClaimTemplate): OK - -201 (}}">ResourceClaimTemplate): Created - -401: Unauthorized - - -### `patch` partially update the specified ResourceClaimTemplate - -#### HTTP Request - -PATCH /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/resourceclaimtemplates/{name} - -#### Parameters - - -- **name** (*in path*): string, required - - name of the ResourceClaimTemplate - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **body**: }}">Patch, required - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldManager** (*in query*): string - - }}">fieldManager - - -- **fieldValidation** (*in query*): string - - }}">fieldValidation - - -- **force** (*in query*): boolean - - }}">force - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">ResourceClaimTemplate): OK - -201 (}}">ResourceClaimTemplate): Created - -401: Unauthorized - - -### `delete` delete a ResourceClaimTemplate - -#### HTTP Request - -DELETE /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/resourceclaimtemplates/{name} - -#### Parameters - - -- **name** (*in path*): string, required - - name of the ResourceClaimTemplate - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **body**: }}">DeleteOptions - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **gracePeriodSeconds** (*in query*): integer - - }}">gracePeriodSeconds - - -- **pretty** (*in query*): string - - }}">pretty - - -- **propagationPolicy** (*in query*): string - - }}">propagationPolicy - - - -#### Response - - -200 (}}">ResourceClaimTemplate): OK - -202 (}}">ResourceClaimTemplate): Accepted - -401: Unauthorized - - -### `deletecollection` delete collection of ResourceClaimTemplate - -#### HTTP Request - -DELETE /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/resourceclaimtemplates - -#### Parameters - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **body**: }}">DeleteOptions - - - - -- **continue** (*in query*): string - - }}">continue - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldSelector** (*in query*): string - - }}">fieldSelector - - -- **gracePeriodSeconds** (*in query*): integer - - }}">gracePeriodSeconds - - -- **labelSelector** (*in query*): string - - }}">labelSelector - - -- **limit** (*in query*): integer - - }}">limit - - -- **pretty** (*in query*): string - - }}">pretty - - -- **propagationPolicy** (*in query*): string - - }}">propagationPolicy - - -- **resourceVersion** (*in query*): string - - }}">resourceVersion - - -- **resourceVersionMatch** (*in query*): string - - }}">resourceVersionMatch - - -- **sendInitialEvents** (*in query*): boolean - - }}">sendInitialEvents - - -- **timeoutSeconds** (*in query*): integer - - }}">timeoutSeconds - - - -#### Response - - -200 (}}">Status): OK - -401: Unauthorized - diff --git a/content/en/docs/reference/kubernetes-api/workload-resources/resource-claim-template-v1alpha3.md b/content/en/docs/reference/kubernetes-api/workload-resources/resource-claim-template-v1alpha3.md new file mode 100644 index 0000000000000..f55b8fcb89ff2 --- /dev/null +++ b/content/en/docs/reference/kubernetes-api/workload-resources/resource-claim-template-v1alpha3.md @@ -0,0 +1,612 @@ +--- +api_metadata: + apiVersion: "resource.k8s.io/v1alpha3" + import: "k8s.io/api/resource/v1alpha3" + kind: "ResourceClaimTemplate" +content_type: "api_reference" +description: "ResourceClaimTemplate is used to produce ResourceClaim objects." +title: "ResourceClaimTemplate v1alpha3" +weight: 17 +auto_generated: true +--- + + + +`apiVersion: resource.k8s.io/v1alpha3` + +`import "k8s.io/api/resource/v1alpha3"` + + +## ResourceClaimTemplate {#ResourceClaimTemplate} + +ResourceClaimTemplate is used to produce ResourceClaim objects. + +This is an alpha type and requires enabling the DynamicResourceAllocation feature gate. + +
+ +- **apiVersion**: resource.k8s.io/v1alpha3 + + +- **kind**: ResourceClaimTemplate + + +- **metadata** (}}">ObjectMeta) + + Standard object metadata + +- **spec** (}}">ResourceClaimTemplateSpec), 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. + +
+ +- **spec** (}}">ResourceClaimSpec), 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** (}}">ObjectMeta) + + 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. + +
+ +- **apiVersion**: resource.k8s.io/v1alpha3 + + +- **kind**: ResourceClaimTemplateList + + +- **metadata** (}}">ListMeta) + + Standard list metadata + +- **items** ([]}}">ResourceClaimTemplate), required + + Items is the list of resource claim templates. + + + + + +## Operations {#Operations} + + + +
+ + + + + + +### `get` read the specified ResourceClaimTemplate + +#### HTTP Request + +GET /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaimtemplates/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ResourceClaimTemplate + + +- ****: + + + + +- ****: + + + + + +#### Response + + +200 (}}">ResourceClaimTemplate): OK + +401: Unauthorized + + +### `list` list or watch objects of kind ResourceClaimTemplate + +#### HTTP Request + +GET /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaimtemplates + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + + +#### Response + + +200 (}}">ResourceClaimTemplateList): OK + +401: Unauthorized + + +### `list` list or watch objects of kind ResourceClaimTemplate + +#### HTTP Request + +GET /apis/resource.k8s.io/v1alpha3/resourceclaimtemplates + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + + +#### Response + + +200 (}}">ResourceClaimTemplateList): OK + +401: Unauthorized + + +### `create` create a ResourceClaimTemplate + +#### HTTP Request + +POST /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaimtemplates + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **body**: }}">ResourceClaimTemplate, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">ResourceClaimTemplate): OK + +201 (}}">ResourceClaimTemplate): Created + +202 (}}">ResourceClaimTemplate): Accepted + +401: Unauthorized + + +### `update` replace the specified ResourceClaimTemplate + +#### HTTP Request + +PUT /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaimtemplates/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ResourceClaimTemplate + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **body**: }}">ResourceClaimTemplate, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">ResourceClaimTemplate): OK + +201 (}}">ResourceClaimTemplate): Created + +401: Unauthorized + + +### `patch` partially update the specified ResourceClaimTemplate + +#### HTTP Request + +PATCH /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaimtemplates/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ResourceClaimTemplate + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">ResourceClaimTemplate): OK + +201 (}}">ResourceClaimTemplate): Created + +401: Unauthorized + + +### `delete` delete a ResourceClaimTemplate + +#### HTTP Request + +DELETE /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaimtemplates/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ResourceClaimTemplate + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + + +#### Response + + +200 (}}">ResourceClaimTemplate): OK + +202 (}}">ResourceClaimTemplate): Accepted + +401: Unauthorized + + +### `deletecollection` delete collection of ResourceClaimTemplate + +#### HTTP Request + +DELETE /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaimtemplates + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + + +#### Response + + +200 (}}">Status): OK + +401: Unauthorized + diff --git a/content/en/docs/reference/kubernetes-api/workload-resources/resource-claim-v1alpha2.md b/content/en/docs/reference/kubernetes-api/workload-resources/resource-claim-v1alpha2.md deleted file mode 100644 index 24b8419a5ee83..0000000000000 --- a/content/en/docs/reference/kubernetes-api/workload-resources/resource-claim-v1alpha2.md +++ /dev/null @@ -1,878 +0,0 @@ ---- -api_metadata: - apiVersion: "resource.k8s.io/v1alpha2" - import: "k8s.io/api/resource/v1alpha2" - kind: "ResourceClaim" -content_type: "api_reference" -description: "ResourceClaim describes which resources are needed by a resource consumer." -title: "ResourceClaim v1alpha2" -weight: 15 -auto_generated: true ---- - - - -`apiVersion: resource.k8s.io/v1alpha2` - -`import "k8s.io/api/resource/v1alpha2"` - - -## 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. - -
- -- **apiVersion**: resource.k8s.io/v1alpha2 - - -- **kind**: ResourceClaim - - -- **metadata** (}}">ObjectMeta) - - Standard object metadata - -- **spec** (}}">ResourceClaimSpec), 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** (}}">ResourceClaimStatus) - - Status describes whether the resource is available and with which attributes. - - - - - -## ResourceClaimSpec {#ResourceClaimSpec} - -ResourceClaimSpec defines how a resource is to be allocated. - -
- -- **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. - - - *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. - -
- -- **allocation** (AllocationResult) - - Allocation is set by the resource driver once a resource or set of resources has been allocated successfully. If this is not specified, the resources have not been allocated yet. - - - *AllocationResult contains attributes of an allocated resource.* - - - **allocation.availableOnNodes** (NodeSelector) - - This field will get set by the resource driver after it has allocated the resource 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 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 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** ([]}}">NodeSelectorRequirement) - - A list of node selector requirements by node's labels. - - - **allocation.availableOnNodes.nodeSelectorTerms.matchFields** ([]}}">NodeSelectorRequirement) - - A list of node selector requirements by node's fields. - - - **allocation.resourceHandles** ([]ResourceHandle) - - *Atomic: will be replaced during a merge* - - ResourceHandles contain the state associated with an allocation that should be maintained throughout the lifetime of a claim. Each ResourceHandle contains data that should be passed to a specific kubelet plugin once it lands on a node. This data is returned by the driver after a successful allocation and is opaque to Kubernetes. Driver documentation may explain to users how to interpret this data if needed. - - Setting this field is optional. It has a maximum size of 32 entries. If null (or empty), it is assumed this allocation will be processed by a single kubelet plugin with no ResourceHandle data attached. The name of the kubelet plugin invoked will match the DriverName set in the ResourceClaimStatus this AllocationResult is embedded in. - - - *ResourceHandle holds opaque resource data for processing by a specific kubelet plugin.* - - - **allocation.resourceHandles.data** (string) - - Data contains the opaque data associated with this ResourceHandle. It is set by the controller component of the resource driver whose name matches the DriverName set in the ResourceClaimStatus this ResourceHandle is embedded in. It is set at allocation time and is intended for processing by the kubelet plugin whose name matches the DriverName set in this ResourceHandle. - - The maximum size of this field is 16KiB. This may get increased in the future, but not reduced. - - - **allocation.resourceHandles.driverName** (string) - - DriverName specifies the name of the resource driver whose kubelet plugin should be invoked to process this ResourceHandle's data once it lands on a node. This may differ from the DriverName set in ResourceClaimStatus this ResourceHandle is embedded in. - - - **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) - - *Map: unique values on key uid 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. - - - *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. - -
- -- **apiVersion**: resource.k8s.io/v1alpha2 - - -- **kind**: ResourceClaimList - - -- **metadata** (}}">ListMeta) - - Standard list metadata - -- **items** ([]}}">ResourceClaim), required - - Items is the list of resource claims. - - - - - -## Operations {#Operations} - - - -
- - - - - - -### `get` read the specified ResourceClaim - -#### HTTP Request - -GET /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/resourceclaims/{name} - -#### Parameters - - -- **name** (*in path*): string, required - - name of the ResourceClaim - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">ResourceClaim): OK - -401: Unauthorized - - -### `get` read status of the specified ResourceClaim - -#### HTTP Request - -GET /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/resourceclaims/{name}/status - -#### Parameters - - -- **name** (*in path*): string, required - - name of the ResourceClaim - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">ResourceClaim): OK - -401: Unauthorized - - -### `list` list or watch objects of kind ResourceClaim - -#### HTTP Request - -GET /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/resourceclaims - -#### Parameters - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **allowWatchBookmarks** (*in query*): boolean - - }}">allowWatchBookmarks - - -- **continue** (*in query*): string - - }}">continue - - -- **fieldSelector** (*in query*): string - - }}">fieldSelector - - -- **labelSelector** (*in query*): string - - }}">labelSelector - - -- **limit** (*in query*): integer - - }}">limit - - -- **pretty** (*in query*): string - - }}">pretty - - -- **resourceVersion** (*in query*): string - - }}">resourceVersion - - -- **resourceVersionMatch** (*in query*): string - - }}">resourceVersionMatch - - -- **sendInitialEvents** (*in query*): boolean - - }}">sendInitialEvents - - -- **timeoutSeconds** (*in query*): integer - - }}">timeoutSeconds - - -- **watch** (*in query*): boolean - - }}">watch - - - -#### Response - - -200 (}}">ResourceClaimList): OK - -401: Unauthorized - - -### `list` list or watch objects of kind ResourceClaim - -#### HTTP Request - -GET /apis/resource.k8s.io/v1alpha2/resourceclaims - -#### Parameters - - -- **allowWatchBookmarks** (*in query*): boolean - - }}">allowWatchBookmarks - - -- **continue** (*in query*): string - - }}">continue - - -- **fieldSelector** (*in query*): string - - }}">fieldSelector - - -- **labelSelector** (*in query*): string - - }}">labelSelector - - -- **limit** (*in query*): integer - - }}">limit - - -- **pretty** (*in query*): string - - }}">pretty - - -- **resourceVersion** (*in query*): string - - }}">resourceVersion - - -- **resourceVersionMatch** (*in query*): string - - }}">resourceVersionMatch - - -- **sendInitialEvents** (*in query*): boolean - - }}">sendInitialEvents - - -- **timeoutSeconds** (*in query*): integer - - }}">timeoutSeconds - - -- **watch** (*in query*): boolean - - }}">watch - - - -#### Response - - -200 (}}">ResourceClaimList): OK - -401: Unauthorized - - -### `create` create a ResourceClaim - -#### HTTP Request - -POST /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/resourceclaims - -#### Parameters - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **body**: }}">ResourceClaim, required - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldManager** (*in query*): string - - }}">fieldManager - - -- **fieldValidation** (*in query*): string - - }}">fieldValidation - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">ResourceClaim): OK - -201 (}}">ResourceClaim): Created - -202 (}}">ResourceClaim): Accepted - -401: Unauthorized - - -### `update` replace the specified ResourceClaim - -#### HTTP Request - -PUT /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/resourceclaims/{name} - -#### Parameters - - -- **name** (*in path*): string, required - - name of the ResourceClaim - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **body**: }}">ResourceClaim, required - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldManager** (*in query*): string - - }}">fieldManager - - -- **fieldValidation** (*in query*): string - - }}">fieldValidation - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">ResourceClaim): OK - -201 (}}">ResourceClaim): Created - -401: Unauthorized - - -### `update` replace status of the specified ResourceClaim - -#### HTTP Request - -PUT /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/resourceclaims/{name}/status - -#### Parameters - - -- **name** (*in path*): string, required - - name of the ResourceClaim - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **body**: }}">ResourceClaim, required - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldManager** (*in query*): string - - }}">fieldManager - - -- **fieldValidation** (*in query*): string - - }}">fieldValidation - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">ResourceClaim): OK - -201 (}}">ResourceClaim): Created - -401: Unauthorized - - -### `patch` partially update the specified ResourceClaim - -#### HTTP Request - -PATCH /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/resourceclaims/{name} - -#### Parameters - - -- **name** (*in path*): string, required - - name of the ResourceClaim - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **body**: }}">Patch, required - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldManager** (*in query*): string - - }}">fieldManager - - -- **fieldValidation** (*in query*): string - - }}">fieldValidation - - -- **force** (*in query*): boolean - - }}">force - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">ResourceClaim): OK - -201 (}}">ResourceClaim): Created - -401: Unauthorized - - -### `patch` partially update status of the specified ResourceClaim - -#### HTTP Request - -PATCH /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/resourceclaims/{name}/status - -#### Parameters - - -- **name** (*in path*): string, required - - name of the ResourceClaim - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **body**: }}">Patch, required - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldManager** (*in query*): string - - }}">fieldManager - - -- **fieldValidation** (*in query*): string - - }}">fieldValidation - - -- **force** (*in query*): boolean - - }}">force - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">ResourceClaim): OK - -201 (}}">ResourceClaim): Created - -401: Unauthorized - - -### `delete` delete a ResourceClaim - -#### HTTP Request - -DELETE /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/resourceclaims/{name} - -#### Parameters - - -- **name** (*in path*): string, required - - name of the ResourceClaim - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **body**: }}">DeleteOptions - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **gracePeriodSeconds** (*in query*): integer - - }}">gracePeriodSeconds - - -- **pretty** (*in query*): string - - }}">pretty - - -- **propagationPolicy** (*in query*): string - - }}">propagationPolicy - - - -#### Response - - -200 (}}">ResourceClaim): OK - -202 (}}">ResourceClaim): Accepted - -401: Unauthorized - - -### `deletecollection` delete collection of ResourceClaim - -#### HTTP Request - -DELETE /apis/resource.k8s.io/v1alpha2/namespaces/{namespace}/resourceclaims - -#### Parameters - - -- **namespace** (*in path*): string, required - - }}">namespace - - -- **body**: }}">DeleteOptions - - - - -- **continue** (*in query*): string - - }}">continue - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldSelector** (*in query*): string - - }}">fieldSelector - - -- **gracePeriodSeconds** (*in query*): integer - - }}">gracePeriodSeconds - - -- **labelSelector** (*in query*): string - - }}">labelSelector - - -- **limit** (*in query*): integer - - }}">limit - - -- **pretty** (*in query*): string - - }}">pretty - - -- **propagationPolicy** (*in query*): string - - }}">propagationPolicy - - -- **resourceVersion** (*in query*): string - - }}">resourceVersion - - -- **resourceVersionMatch** (*in query*): string - - }}">resourceVersionMatch - - -- **sendInitialEvents** (*in query*): boolean - - }}">sendInitialEvents - - -- **timeoutSeconds** (*in query*): integer - - }}">timeoutSeconds - - - -#### Response - - -200 (}}">Status): OK - -401: Unauthorized - diff --git a/content/en/docs/reference/kubernetes-api/workload-resources/resource-claim-v1alpha3.md b/content/en/docs/reference/kubernetes-api/workload-resources/resource-claim-v1alpha3.md new file mode 100644 index 0000000000000..0d0e8ca1068ea --- /dev/null +++ b/content/en/docs/reference/kubernetes-api/workload-resources/resource-claim-v1alpha3.md @@ -0,0 +1,1171 @@ +--- +api_metadata: + apiVersion: "resource.k8s.io/v1alpha3" + import: "k8s.io/api/resource/v1alpha3" + kind: "ResourceClaim" +content_type: "api_reference" +description: "ResourceClaim describes a request for access to resources in the cluster, for use by workloads." +title: "ResourceClaim v1alpha3" +weight: 16 +auto_generated: true +--- + + + +`apiVersion: resource.k8s.io/v1alpha3` + +`import "k8s.io/api/resource/v1alpha3"` + + +## ResourceClaim {#ResourceClaim} + +ResourceClaim describes a request for access to resources in the cluster, for use by workloads. For example, if a workload needs an accelerator device with specific properties, this is how that request is expressed. The status stanza tracks whether this claim has been satisfied and what specific resources have been allocated. + +This is an alpha type and requires enabling the DynamicResourceAllocation feature gate. + +
+ +- **apiVersion**: resource.k8s.io/v1alpha3 + + +- **kind**: ResourceClaim + + +- **metadata** (}}">ObjectMeta) + + Standard object metadata + +- **spec** (}}">ResourceClaimSpec), required + + Spec describes what is being requested and how to configure it. The spec is immutable. + +- **status** (}}">ResourceClaimStatus) + + Status describes whether the claim is ready to use and what has been allocated. + + + + + +## ResourceClaimSpec {#ResourceClaimSpec} + +ResourceClaimSpec defines what is being requested in a ResourceClaim and how to configure it. + +
+ +- **controller** (string) + + Controller is the name of the DRA driver that is meant to handle allocation of this claim. If empty, allocation is handled by the scheduler while scheduling a pod. + + Must be a DNS subdomain and should end with a DNS domain owned by the vendor of the driver. + + This is an alpha field and requires enabling the DRAControlPlaneController feature gate. + +- **devices** (DeviceClaim) + + Devices defines how to request devices. + + + *DeviceClaim defines how to request devices with a ResourceClaim.* + + - **devices.config** ([]DeviceClaimConfiguration) + + *Atomic: will be replaced during a merge* + + This field holds configuration for multiple potential drivers which could satisfy requests in this claim. It is ignored while allocating the claim. + + + *DeviceClaimConfiguration is used for configuration parameters in DeviceClaim.* + + - **devices.config.opaque** (OpaqueDeviceConfiguration) + + Opaque provides driver-specific configuration parameters. + + + *OpaqueDeviceConfiguration contains configuration parameters for a driver in a format defined by the driver vendor.* + + - **devices.config.opaque.driver** (string), required + + Driver is used to determine which kubelet plugin needs to be passed these configuration parameters. + + An admission policy provided by the driver developer could use this to decide whether it needs to validate them. + + Must be a DNS subdomain and should end with a DNS domain owned by the vendor of the driver. + + - **devices.config.opaque.parameters** (RawExtension), required + + Parameters can contain arbitrary data. It is the responsibility of the driver developer to handle validation and versioning. Typically this includes self-identification and a version ("kind" + "apiVersion" for Kubernetes types), with conversion between different versions. + + + *RawExtension is used to hold extensions in external versions. + + To use this, make a field which has RawExtension as its type in your external, versioned struct, and Object in your internal struct. You also need to register your various plugin types. + + // Internal package: + + type MyAPIObject struct { + runtime.TypeMeta `json:",inline"` + MyPlugin runtime.Object `json:"myPlugin"` + } + + type PluginA struct { + AOption string `json:"aOption"` + } + + // External package: + + type MyAPIObject struct { + runtime.TypeMeta `json:",inline"` + MyPlugin runtime.RawExtension `json:"myPlugin"` + } + + type PluginA struct { + AOption string `json:"aOption"` + } + + // On the wire, the JSON will look something like this: + + { + "kind":"MyAPIObject", + "apiVersion":"v1", + "myPlugin": { + "kind":"PluginA", + "aOption":"foo", + }, + } + + So what happens? Decode first uses json or yaml to unmarshal the serialized data into your external MyAPIObject. That causes the raw JSON to be stored, but not unpacked. The next step is to copy (using pkg/conversion) into the internal struct. The runtime package's DefaultScheme has conversion functions installed which will unpack the JSON stored in RawExtension, turning it into the correct object type, and storing it in the Object. (TODO: In the case where the object is of an unknown type, a runtime.Unknown object will be created and stored.)* + + - **devices.config.requests** ([]string) + + *Atomic: will be replaced during a merge* + + Requests lists the names of requests where the configuration applies. If empty, it applies to all requests. + + - **devices.constraints** ([]DeviceConstraint) + + *Atomic: will be replaced during a merge* + + These constraints must be satisfied by the set of devices that get allocated for the claim. + + + *DeviceConstraint must have exactly one field set besides Requests.* + + - **devices.constraints.matchAttribute** (string) + + MatchAttribute requires that all devices in question have this attribute and that its type and value are the same across those devices. + + For example, if you specified "dra.example.com/numa" (a hypothetical example!), then only devices in the same NUMA node will be chosen. A device which does not have that attribute will not be chosen. All devices should use a value of the same type for this attribute because that is part of its specification, but if one device doesn't, then it also will not be chosen. + + Must include the domain qualifier. + + - **devices.constraints.requests** ([]string) + + *Atomic: will be replaced during a merge* + + Requests is a list of the one or more requests in this claim which must co-satisfy this constraint. If a request is fulfilled by multiple devices, then all of the devices must satisfy the constraint. If this is not specified, this constraint applies to all requests in this claim. + + - **devices.requests** ([]DeviceRequest) + + *Atomic: will be replaced during a merge* + + Requests represent individual requests for distinct devices which must all be satisfied. If empty, nothing needs to be allocated. + + + *DeviceRequest is a request for devices required for a claim. This is typically a request for a single resource like a device, but can also ask for several identical devices. + + A DeviceClassName is currently required. Clients must check that it is indeed set. It's absence indicates that something changed in a way that is not supported by the client yet, in which case it must refuse to handle the request.* + + - **devices.requests.deviceClassName** (string), required + + DeviceClassName references a specific DeviceClass, which can define additional configuration and selectors to be inherited by this request. + + A class is required. Which classes are available depends on the cluster. + + Administrators may use this to restrict which devices may get requested by only installing classes with selectors for permitted devices. If users are free to request anything without restrictions, then administrators can create an empty DeviceClass for users to reference. + + - **devices.requests.name** (string), required + + Name can be used to reference this request in a pod.spec.containers[].resources.claims entry and in a constraint of the claim. + + Must be a DNS label. + + - **devices.requests.adminAccess** (boolean) + + AdminAccess indicates that this is a claim for administrative access to the device(s). Claims with AdminAccess are expected to be used for monitoring or other management services for a device. They ignore all ordinary claims to the device with respect to access modes and any resource allocations. + + - **devices.requests.allocationMode** (string) + + AllocationMode and its related fields define how devices are allocated to satisfy this request. Supported values are: + + - ExactCount: This request is for a specific number of devices. + This is the default. The exact number is provided in the + count field. + + - All: This request is for all of the matching devices in a pool. + Allocation will fail if some devices are already allocated, + unless adminAccess is requested. + + If AlloctionMode is not specified, the default mode is ExactCount. If the mode is ExactCount and count is not specified, the default count is one. Any other requests must specify this field. + + More modes may get added in the future. Clients must refuse to handle requests with unknown modes. + + - **devices.requests.count** (int64) + + Count is used only when the count mode is "ExactCount". Must be greater than zero. If AllocationMode is ExactCount and this field is not specified, the default is one. + + - **devices.requests.selectors** ([]DeviceSelector) + + *Atomic: will be replaced during a merge* + + Selectors define criteria which must be satisfied by a specific device in order for that device to be considered for this request. All selectors must be satisfied for a device to be considered. + + + *DeviceSelector must have exactly one field set.* + + - **devices.requests.selectors.cel** (CELDeviceSelector) + + CEL contains a CEL expression for selecting a device. + + + *CELDeviceSelector contains a CEL expression for selecting a device.* + + - **devices.requests.selectors.cel.expression** (string), required + + Expression is a CEL expression which evaluates a single device. It must evaluate to true when the device under consideration satisfies the desired criteria, and false when it does not. Any other result is an error and causes allocation of devices to abort. + + The expression's input is an object named "device", which carries the following properties: + - driver (string): the name of the driver which defines this device. + - attributes (map[string]object): the device's attributes, grouped by prefix + (e.g. device.attributes["dra.example.com"] evaluates to an object with all + of the attributes which were prefixed by "dra.example.com". + - capacity (map[string]object): the device's capacities, grouped by prefix. + + Example: Consider a device with driver="dra.example.com", which exposes two attributes named "model" and "ext.example.com/family" and which exposes one capacity named "modules". This input to this expression would have the following fields: + + - device.driver + - device.attributes["dra.example.com"].model + - device.attributes["ext.example.com"].family + - device.capacity["dra.example.com"].modules + + The device.driver field can be used to check for a specific driver, either as a high-level precondition (i.e. you only want to consider devices from this driver) or as part of a multi-clause expression that is meant to consider devices from different drivers. + + The value type of each attribute is defined by the device definition, and users who write these expressions must consult the documentation for their specific drivers. The value type of each capacity is Quantity. + + If an unknown prefix is used as a lookup in either device.attributes or device.capacity, an empty map will be returned. Any reference to an unknown field will cause an evaluation error and allocation to abort. + + A robust expression should check for the existence of attributes before referencing them. + + For ease of use, the cel.bind() function is enabled, and can be used to simplify expressions that access multiple attributes with the same domain. For example: + + - cel.bind(dra, device.attributes["dra.example.com"], dra.someBool && dra.anotherBool) + + + + + +## ResourceClaimStatus {#ResourceClaimStatus} + +ResourceClaimStatus tracks whether the resource has been allocated and what the result of that was. + +
+ +- **allocation** (AllocationResult) + + Allocation is set once the claim has been allocated successfully. + + + *AllocationResult contains attributes of an allocated resource.* + + - **allocation.controller** (string) + + Controller is the name of the DRA driver which handled the allocation. That driver is also responsible for deallocating the claim. It is empty when the claim can be deallocated without involving a driver. + + A driver may allocate devices provided by other drivers, so this driver name here can be different from the driver names listed for the results. + + This is an alpha field and requires enabling the DRAControlPlaneController feature gate. + + - **allocation.devices** (DeviceAllocationResult) + + Devices is the result of allocating devices. + + + *DeviceAllocationResult is the result of allocating devices.* + + - **allocation.devices.config** ([]DeviceAllocationConfiguration) + + *Atomic: will be replaced during a merge* + + This field is a combination of all the claim and class configuration parameters. Drivers can distinguish between those based on a flag. + + This includes configuration parameters for drivers which have no allocated devices in the result because it is up to the drivers which configuration parameters they support. They can silently ignore unknown configuration parameters. + + + *DeviceAllocationConfiguration gets embedded in an AllocationResult.* + + - **allocation.devices.config.source** (string), required + + Source records whether the configuration comes from a class and thus is not something that a normal user would have been able to set or from a claim. + + - **allocation.devices.config.opaque** (OpaqueDeviceConfiguration) + + Opaque provides driver-specific configuration parameters. + + + *OpaqueDeviceConfiguration contains configuration parameters for a driver in a format defined by the driver vendor.* + + - **allocation.devices.config.opaque.driver** (string), required + + Driver is used to determine which kubelet plugin needs to be passed these configuration parameters. + + An admission policy provided by the driver developer could use this to decide whether it needs to validate them. + + Must be a DNS subdomain and should end with a DNS domain owned by the vendor of the driver. + + - **allocation.devices.config.opaque.parameters** (RawExtension), required + + Parameters can contain arbitrary data. It is the responsibility of the driver developer to handle validation and versioning. Typically this includes self-identification and a version ("kind" + "apiVersion" for Kubernetes types), with conversion between different versions. + + + *RawExtension is used to hold extensions in external versions. + + To use this, make a field which has RawExtension as its type in your external, versioned struct, and Object in your internal struct. You also need to register your various plugin types. + + // Internal package: + + type MyAPIObject struct { + runtime.TypeMeta `json:",inline"` + MyPlugin runtime.Object `json:"myPlugin"` + } + + type PluginA struct { + AOption string `json:"aOption"` + } + + // External package: + + type MyAPIObject struct { + runtime.TypeMeta `json:",inline"` + MyPlugin runtime.RawExtension `json:"myPlugin"` + } + + type PluginA struct { + AOption string `json:"aOption"` + } + + // On the wire, the JSON will look something like this: + + { + "kind":"MyAPIObject", + "apiVersion":"v1", + "myPlugin": { + "kind":"PluginA", + "aOption":"foo", + }, + } + + So what happens? Decode first uses json or yaml to unmarshal the serialized data into your external MyAPIObject. That causes the raw JSON to be stored, but not unpacked. The next step is to copy (using pkg/conversion) into the internal struct. The runtime package's DefaultScheme has conversion functions installed which will unpack the JSON stored in RawExtension, turning it into the correct object type, and storing it in the Object. (TODO: In the case where the object is of an unknown type, a runtime.Unknown object will be created and stored.)* + + - **allocation.devices.config.requests** ([]string) + + *Atomic: will be replaced during a merge* + + Requests lists the names of requests where the configuration applies. If empty, its applies to all requests. + + - **allocation.devices.results** ([]DeviceRequestAllocationResult) + + *Atomic: will be replaced during a merge* + + Results lists all allocated devices. + + + *DeviceRequestAllocationResult contains the allocation result for one request.* + + - **allocation.devices.results.device** (string), required + + Device references one device instance via its name in the driver's resource pool. It must be a DNS label. + + - **allocation.devices.results.driver** (string), required + + Driver specifies the name of the DRA driver whose kubelet plugin should be invoked to process the allocation once the claim is needed on a node. + + Must be a DNS subdomain and should end with a DNS domain owned by the vendor of the driver. + + - **allocation.devices.results.pool** (string), required + + This name together with the driver name and the device name field identify which device was allocated (`\/\/\`). + + Must not be longer than 253 characters and may contain one or more DNS sub-domains separated by slashes. + + - **allocation.devices.results.request** (string), required + + Request is the name of the request in the claim which caused this device to be allocated. Multiple devices may have been allocated per request. + + - **allocation.nodeSelector** (NodeSelector) + + NodeSelector defines where the allocated resources are available. If unset, they are available everywhere. + + + *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.nodeSelector.nodeSelectorTerms** ([]NodeSelectorTerm), required + + *Atomic: will be replaced during a merge* + + Required. A list of node selector terms. The terms are ORed. + + + *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.nodeSelector.nodeSelectorTerms.matchExpressions** ([]}}">NodeSelectorRequirement) + + *Atomic: will be replaced during a merge* + + A list of node selector requirements by node's labels. + + - **allocation.nodeSelector.nodeSelectorTerms.matchFields** ([]}}">NodeSelectorRequirement) + + *Atomic: will be replaced during a merge* + + A list of node selector requirements by node's fields. + +- **deallocationRequested** (boolean) + + Indicates that a claim is to be deallocated. While this is set, no new consumers may be added to ReservedFor. + + This is only used if the claim needs to be deallocated by a DRA driver. That driver then must deallocate this claim and reset the field together with clearing the Allocation field. + + This is an alpha field and requires enabling the DRAControlPlaneController feature gate. + +- **reservedFor** ([]ResourceClaimConsumerReference) + + *Patch strategy: merge on key `uid`* + + *Map: unique values on key uid 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. A claim that is in use or might be in use because it has been reserved must not get deallocated. + + In a cluster with multiple scheduler instances, two pods might get scheduled concurrently by different schedulers. When they reference the same ResourceClaim which already has reached its maximum number of consumers, only one pod can be scheduled. + + Both schedulers try to add their pod to the claim.status.reservedFor field, but only the update that reaches the API server first gets stored. The other one fails with an error and the scheduler which issued it knows that it must put the pod back into the queue, waiting for the ResourceClaim to become usable again. + + There can be at most 32 such reservations. This may get increased in the future, but not reduced. + + + *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. + +
+ +- **apiVersion**: resource.k8s.io/v1alpha3 + + +- **kind**: ResourceClaimList + + +- **metadata** (}}">ListMeta) + + Standard list metadata + +- **items** ([]}}">ResourceClaim), required + + Items is the list of resource claims. + + + + + +## Operations {#Operations} + + + +
+ + + + + + +### `get` read the specified ResourceClaim + +#### HTTP Request + +GET /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaims/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ResourceClaim + + +- ****: + + + + +- ****: + + + + + +#### Response + + +200 (}}">ResourceClaim): OK + +401: Unauthorized + + +### `get` read status of the specified ResourceClaim + +#### HTTP Request + +GET /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaims/{name}/status + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ResourceClaim + + +- ****: + + + + +- ****: + + + + + +#### Response + + +200 (}}">ResourceClaim): OK + +401: Unauthorized + + +### `list` list or watch objects of kind ResourceClaim + +#### HTTP Request + +GET /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaims + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + + +#### Response + + +200 (}}">ResourceClaimList): OK + +401: Unauthorized + + +### `list` list or watch objects of kind ResourceClaim + +#### HTTP Request + +GET /apis/resource.k8s.io/v1alpha3/resourceclaims + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + + +#### Response + + +200 (}}">ResourceClaimList): OK + +401: Unauthorized + + +### `create` create a ResourceClaim + +#### HTTP Request + +POST /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaims + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **body**: }}">ResourceClaim, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">ResourceClaim): OK + +201 (}}">ResourceClaim): Created + +202 (}}">ResourceClaim): Accepted + +401: Unauthorized + + +### `update` replace the specified ResourceClaim + +#### HTTP Request + +PUT /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaims/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ResourceClaim + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **body**: }}">ResourceClaim, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">ResourceClaim): OK + +201 (}}">ResourceClaim): Created + +401: Unauthorized + + +### `update` replace status of the specified ResourceClaim + +#### HTTP Request + +PUT /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaims/{name}/status + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ResourceClaim + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **body**: }}">ResourceClaim, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">ResourceClaim): OK + +201 (}}">ResourceClaim): Created + +401: Unauthorized + + +### `patch` partially update the specified ResourceClaim + +#### HTTP Request + +PATCH /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaims/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ResourceClaim + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">ResourceClaim): OK + +201 (}}">ResourceClaim): Created + +401: Unauthorized + + +### `patch` partially update status of the specified ResourceClaim + +#### HTTP Request + +PATCH /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaims/{name}/status + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ResourceClaim + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">ResourceClaim): OK + +201 (}}">ResourceClaim): Created + +401: Unauthorized + + +### `delete` delete a ResourceClaim + +#### HTTP Request + +DELETE /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaims/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ResourceClaim + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + + +#### Response + + +200 (}}">ResourceClaim): OK + +202 (}}">ResourceClaim): Accepted + +401: Unauthorized + + +### `deletecollection` delete collection of ResourceClaim + +#### HTTP Request + +DELETE /apis/resource.k8s.io/v1alpha3/namespaces/{namespace}/resourceclaims + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + + +#### Response + + +200 (}}">Status): OK + +401: Unauthorized + diff --git a/content/en/docs/reference/kubernetes-api/workload-resources/resource-class-v1alpha2.md b/content/en/docs/reference/kubernetes-api/workload-resources/resource-class-v1alpha2.md deleted file mode 100644 index 8e3c5a50da5dd..0000000000000 --- a/content/en/docs/reference/kubernetes-api/workload-resources/resource-class-v1alpha2.md +++ /dev/null @@ -1,523 +0,0 @@ ---- -api_metadata: - apiVersion: "resource.k8s.io/v1alpha2" - import: "k8s.io/api/resource/v1alpha2" - kind: "ResourceClass" -content_type: "api_reference" -description: "ResourceClass is used by administrators to influence how resources are allocated." -title: "ResourceClass v1alpha2" -weight: 17 -auto_generated: true ---- - - - -`apiVersion: resource.k8s.io/v1alpha2` - -`import "k8s.io/api/resource/v1alpha2"` - - -## 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. - -
- -- **apiVersion**: resource.k8s.io/v1alpha2 - - -- **kind**: ResourceClass - - -- **metadata** (}}">ObjectMeta) - - 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. - - - *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 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 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** ([]}}">NodeSelectorRequirement) - - A list of node selector requirements by node's labels. - - - **suitableNodes.nodeSelectorTerms.matchFields** ([]}}">NodeSelectorRequirement) - - A list of node selector requirements by node's fields. - - - - - -## ResourceClassList {#ResourceClassList} - -ResourceClassList is a collection of classes. - -
- -- **apiVersion**: resource.k8s.io/v1alpha2 - - -- **kind**: ResourceClassList - - -- **metadata** (}}">ListMeta) - - Standard list metadata - -- **items** ([]}}">ResourceClass), required - - Items is the list of resource classes. - - - - - -## Operations {#Operations} - - - -
- - - - - - -### `get` read the specified ResourceClass - -#### HTTP Request - -GET /apis/resource.k8s.io/v1alpha2/resourceclasses/{name} - -#### Parameters - - -- **name** (*in path*): string, required - - name of the ResourceClass - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">ResourceClass): OK - -401: Unauthorized - - -### `list` list or watch objects of kind ResourceClass - -#### HTTP Request - -GET /apis/resource.k8s.io/v1alpha2/resourceclasses - -#### Parameters - - -- **allowWatchBookmarks** (*in query*): boolean - - }}">allowWatchBookmarks - - -- **continue** (*in query*): string - - }}">continue - - -- **fieldSelector** (*in query*): string - - }}">fieldSelector - - -- **labelSelector** (*in query*): string - - }}">labelSelector - - -- **limit** (*in query*): integer - - }}">limit - - -- **pretty** (*in query*): string - - }}">pretty - - -- **resourceVersion** (*in query*): string - - }}">resourceVersion - - -- **resourceVersionMatch** (*in query*): string - - }}">resourceVersionMatch - - -- **sendInitialEvents** (*in query*): boolean - - }}">sendInitialEvents - - -- **timeoutSeconds** (*in query*): integer - - }}">timeoutSeconds - - -- **watch** (*in query*): boolean - - }}">watch - - - -#### Response - - -200 (}}">ResourceClassList): OK - -401: Unauthorized - - -### `create` create a ResourceClass - -#### HTTP Request - -POST /apis/resource.k8s.io/v1alpha2/resourceclasses - -#### Parameters - - -- **body**: }}">ResourceClass, required - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldManager** (*in query*): string - - }}">fieldManager - - -- **fieldValidation** (*in query*): string - - }}">fieldValidation - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">ResourceClass): OK - -201 (}}">ResourceClass): Created - -202 (}}">ResourceClass): Accepted - -401: Unauthorized - - -### `update` replace the specified ResourceClass - -#### HTTP Request - -PUT /apis/resource.k8s.io/v1alpha2/resourceclasses/{name} - -#### Parameters - - -- **name** (*in path*): string, required - - name of the ResourceClass - - -- **body**: }}">ResourceClass, required - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldManager** (*in query*): string - - }}">fieldManager - - -- **fieldValidation** (*in query*): string - - }}">fieldValidation - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">ResourceClass): OK - -201 (}}">ResourceClass): Created - -401: Unauthorized - - -### `patch` partially update the specified ResourceClass - -#### HTTP Request - -PATCH /apis/resource.k8s.io/v1alpha2/resourceclasses/{name} - -#### Parameters - - -- **name** (*in path*): string, required - - name of the ResourceClass - - -- **body**: }}">Patch, required - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldManager** (*in query*): string - - }}">fieldManager - - -- **fieldValidation** (*in query*): string - - }}">fieldValidation - - -- **force** (*in query*): boolean - - }}">force - - -- **pretty** (*in query*): string - - }}">pretty - - - -#### Response - - -200 (}}">ResourceClass): OK - -201 (}}">ResourceClass): Created - -401: Unauthorized - - -### `delete` delete a ResourceClass - -#### HTTP Request - -DELETE /apis/resource.k8s.io/v1alpha2/resourceclasses/{name} - -#### Parameters - - -- **name** (*in path*): string, required - - name of the ResourceClass - - -- **body**: }}">DeleteOptions - - - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **gracePeriodSeconds** (*in query*): integer - - }}">gracePeriodSeconds - - -- **pretty** (*in query*): string - - }}">pretty - - -- **propagationPolicy** (*in query*): string - - }}">propagationPolicy - - - -#### Response - - -200 (}}">ResourceClass): OK - -202 (}}">ResourceClass): Accepted - -401: Unauthorized - - -### `deletecollection` delete collection of ResourceClass - -#### HTTP Request - -DELETE /apis/resource.k8s.io/v1alpha2/resourceclasses - -#### Parameters - - -- **body**: }}">DeleteOptions - - - - -- **continue** (*in query*): string - - }}">continue - - -- **dryRun** (*in query*): string - - }}">dryRun - - -- **fieldSelector** (*in query*): string - - }}">fieldSelector - - -- **gracePeriodSeconds** (*in query*): integer - - }}">gracePeriodSeconds - - -- **labelSelector** (*in query*): string - - }}">labelSelector - - -- **limit** (*in query*): integer - - }}">limit - - -- **pretty** (*in query*): string - - }}">pretty - - -- **propagationPolicy** (*in query*): string - - }}">propagationPolicy - - -- **resourceVersion** (*in query*): string - - }}">resourceVersion - - -- **resourceVersionMatch** (*in query*): string - - }}">resourceVersionMatch - - -- **sendInitialEvents** (*in query*): boolean - - }}">sendInitialEvents - - -- **timeoutSeconds** (*in query*): integer - - }}">timeoutSeconds - - - -#### Response - - -200 (}}">Status): OK - -401: Unauthorized - diff --git a/content/en/docs/reference/kubernetes-api/workload-resources/resource-slice-v1alpha3.md b/content/en/docs/reference/kubernetes-api/workload-resources/resource-slice-v1alpha3.md new file mode 100644 index 0000000000000..2a96e89495357 --- /dev/null +++ b/content/en/docs/reference/kubernetes-api/workload-resources/resource-slice-v1alpha3.md @@ -0,0 +1,634 @@ +--- +api_metadata: + apiVersion: "resource.k8s.io/v1alpha3" + import: "k8s.io/api/resource/v1alpha3" + kind: "ResourceSlice" +content_type: "api_reference" +description: "ResourceSlice represents one or more resources in a pool of similar resources, managed by a common driver." +title: "ResourceSlice v1alpha3" +weight: 18 +auto_generated: true +--- + + + +`apiVersion: resource.k8s.io/v1alpha3` + +`import "k8s.io/api/resource/v1alpha3"` + + +## ResourceSlice {#ResourceSlice} + +ResourceSlice represents one or more resources in a pool of similar resources, managed by a common driver. A pool may span more than one ResourceSlice, and exactly how many ResourceSlices comprise a pool is determined by the driver. + +At the moment, the only supported resources are devices with attributes and capacities. Each device in a given pool, regardless of how many ResourceSlices, must have a unique name. The ResourceSlice in which a device gets published may change over time. The unique identifier for a device is the tuple \, \, \. + +Whenever a driver needs to update a pool, it increments the pool.Spec.Pool.Generation number and updates all ResourceSlices with that new number and new resource definitions. A consumer must only use ResourceSlices with the highest generation number and ignore all others. + +When allocating all resources in a pool matching certain criteria or when looking for the best solution among several different alternatives, a consumer should check the number of ResourceSlices in a pool (included in each ResourceSlice) to determine whether its view of a pool is complete and if not, should wait until the driver has completed updating the pool. + +For resources that are not local to a node, the node name is not set. Instead, the driver may use a node selector to specify where the devices are available. + +This is an alpha type and requires enabling the DynamicResourceAllocation feature gate. + +
+ +- **apiVersion**: resource.k8s.io/v1alpha3 + + +- **kind**: ResourceSlice + + +- **metadata** (}}">ObjectMeta) + + Standard object metadata + +- **spec** (}}">ResourceSliceSpec), required + + Contains the information published by the driver. + + Changing the spec automatically increments the metadata.generation number. + + + + + +## ResourceSliceSpec {#ResourceSliceSpec} + +ResourceSliceSpec contains the information published by the driver in one ResourceSlice. + +
+ +- **driver** (string), required + + Driver identifies the DRA driver providing the capacity information. A field selector can be used to list only ResourceSlice objects with a certain driver name. + + Must be a DNS subdomain and should end with a DNS domain owned by the vendor of the driver. This field is immutable. + +- **pool** (ResourcePool), required + + Pool describes the pool that this ResourceSlice belongs to. + + + *ResourcePool describes the pool that ResourceSlices belong to.* + + - **pool.generation** (int64), required + + Generation tracks the change in a pool over time. Whenever a driver changes something about one or more of the resources in a pool, it must change the generation in all ResourceSlices which are part of that pool. Consumers of ResourceSlices should only consider resources from the pool with the highest generation number. The generation may be reset by drivers, which should be fine for consumers, assuming that all ResourceSlices in a pool are updated to match or deleted. + + Combined with ResourceSliceCount, this mechanism enables consumers to detect pools which are comprised of multiple ResourceSlices and are in an incomplete state. + + - **pool.name** (string), required + + Name is used to identify the pool. For node-local devices, this is often the node name, but this is not required. + + It must not be longer than 253 characters and must consist of one or more DNS sub-domains separated by slashes. This field is immutable. + + - **pool.resourceSliceCount** (int64), required + + ResourceSliceCount is the total number of ResourceSlices in the pool at this generation number. Must be greater than zero. + + Consumers can use this to check whether they have seen all ResourceSlices belonging to the same pool. + +- **allNodes** (boolean) + + AllNodes indicates that all nodes have access to the resources in the pool. + + Exactly one of NodeName, NodeSelector and AllNodes must be set. + +- **devices** ([]Device) + + *Atomic: will be replaced during a merge* + + Devices lists some or all of the devices in this pool. + + Must not have more than 128 entries. + + + *Device represents one individual hardware instance that can be selected based on its attributes. Besides the name, exactly one field must be set.* + + - **devices.name** (string), required + + Name is unique identifier among all devices managed by the driver in the pool. It must be a DNS label. + + - **devices.basic** (BasicDevice) + + Basic defines one device instance. + + + *BasicDevice defines one device instance.* + + - **devices.basic.attributes** (map[string]DeviceAttribute) + + Attributes defines the set of attributes for this device. The name of each attribute must be unique in that set. + + The maximum number of attributes and capacities combined is 32. + + + *DeviceAttribute must have exactly one field set.* + + - **devices.basic.attributes.bool** (boolean) + + BoolValue is a true/false value. + + - **devices.basic.attributes.int** (int64) + + IntValue is a number. + + - **devices.basic.attributes.string** (string) + + StringValue is a string. Must not be longer than 64 characters. + + - **devices.basic.attributes.version** (string) + + VersionValue is a semantic version according to semver.org spec 2.0.0. Must not be longer than 64 characters. + + - **devices.basic.capacity** (map[string]}}">Quantity) + + Capacity defines the set of capacities for this device. The name of each capacity must be unique in that set. + + The maximum number of attributes and capacities combined is 32. + +- **nodeName** (string) + + NodeName identifies the node which provides the resources in this pool. A field selector can be used to list only ResourceSlice objects belonging to a certain node. + + This field can be used to limit access from nodes to ResourceSlices with the same node name. It also indicates to autoscalers that adding new nodes of the same type as some old node might also make new resources available. + + Exactly one of NodeName, NodeSelector and AllNodes must be set. This field is immutable. + +- **nodeSelector** (NodeSelector) + + NodeSelector defines which nodes have access to the resources in the pool, when that pool is not limited to a single node. + + Must use exactly one term. + + Exactly one of NodeName, NodeSelector and AllNodes must be set. + + + *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.* + + - **nodeSelector.nodeSelectorTerms** ([]NodeSelectorTerm), required + + *Atomic: will be replaced during a merge* + + Required. A list of node selector terms. The terms are ORed. + + + *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.* + + - **nodeSelector.nodeSelectorTerms.matchExpressions** ([]}}">NodeSelectorRequirement) + + *Atomic: will be replaced during a merge* + + A list of node selector requirements by node's labels. + + - **nodeSelector.nodeSelectorTerms.matchFields** ([]}}">NodeSelectorRequirement) + + *Atomic: will be replaced during a merge* + + A list of node selector requirements by node's fields. + + + + + +## ResourceSliceList {#ResourceSliceList} + +ResourceSliceList is a collection of ResourceSlices. + +
+ +- **apiVersion**: resource.k8s.io/v1alpha3 + + +- **kind**: ResourceSliceList + + +- **items** ([]}}">ResourceSlice), required + + Items is the list of resource ResourceSlices. + +- **listMeta** (}}">ListMeta) + + Standard list metadata + + + + + +## Operations {#Operations} + + + +
+ + + + + + +### `get` read the specified ResourceSlice + +#### HTTP Request + +GET /apis/resource.k8s.io/v1alpha3/resourceslices/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ResourceSlice + + +- ****: + + + + + +#### Response + + +200 (}}">ResourceSlice): OK + +401: Unauthorized + + +### `list` list or watch objects of kind ResourceSlice + +#### HTTP Request + +GET /apis/resource.k8s.io/v1alpha3/resourceslices + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + + +#### Response + + +200 (}}">ResourceSliceList): OK + +401: Unauthorized + + +### `create` create a ResourceSlice + +#### HTTP Request + +POST /apis/resource.k8s.io/v1alpha3/resourceslices + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- **body**: }}">ResourceSlice, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">ResourceSlice): OK + +201 (}}">ResourceSlice): Created + +202 (}}">ResourceSlice): Accepted + +401: Unauthorized + + +### `update` replace the specified ResourceSlice + +#### HTTP Request + +PUT /apis/resource.k8s.io/v1alpha3/resourceslices/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ResourceSlice + + +- ****: + + + + +- ****: + + + + +- **body**: }}">ResourceSlice, required + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">ResourceSlice): OK + +201 (}}">ResourceSlice): Created + +401: Unauthorized + + +### `patch` partially update the specified ResourceSlice + +#### HTTP Request + +PATCH /apis/resource.k8s.io/v1alpha3/resourceslices/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ResourceSlice + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + +- **fieldValidation** (*in query*): string + + }}">fieldValidation + + + +#### Response + + +200 (}}">ResourceSlice): OK + +201 (}}">ResourceSlice): Created + +401: Unauthorized + + +### `delete` delete a ResourceSlice + +#### HTTP Request + +DELETE /apis/resource.k8s.io/v1alpha3/resourceslices/{name} + +#### Parameters + + +- **name** (*in path*): string, required + + name of the ResourceSlice + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + + +#### Response + + +200 (}}">ResourceSlice): OK + +202 (}}">ResourceSlice): Accepted + +401: Unauthorized + + +### `deletecollection` delete collection of ResourceSlice + +#### HTTP Request + +DELETE /apis/resource.k8s.io/v1alpha3/resourceslices + +#### Parameters + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- ****: + + + + +- **dryRun** (*in query*): string + + }}">dryRun + + + +#### Response + + +200 (}}">Status): OK + +401: Unauthorized + diff --git a/content/en/docs/reference/kubernetes-api/workload-resources/stateful-set-v1.md b/content/en/docs/reference/kubernetes-api/workload-resources/stateful-set-v1.md index a106d18d27e69..d501dcaef2af1 100644 --- a/content/en/docs/reference/kubernetes-api/workload-resources/stateful-set-v1.md +++ b/content/en/docs/reference/kubernetes-api/workload-resources/stateful-set-v1.md @@ -6,7 +6,7 @@ api_metadata: content_type: "api_reference" description: "StatefulSet represents a set of pods with consistent identities." title: "StatefulSet" -weight: 6 +weight: 7 auto_generated: true --- @@ -119,6 +119,8 @@ A StatefulSetSpec is the specification of a StatefulSet. - **volumeClaimTemplates** ([]}}">PersistentVolumeClaim) + *Atomic: will be replaced during a merge* + volumeClaimTemplates is a list of claims that pods are allowed to reference. The StatefulSet controller is responsible for mapping network identities to claims in a way that maintains the identity of a pod. Every claim in this list must have at least one matching (by name) volumeMount in one container in the template. A claim in this list takes precedence over any volumes in the template, with the same name. - **minReadySeconds** (int32) @@ -127,7 +129,7 @@ A StatefulSetSpec is the specification of a StatefulSet. - **persistentVolumeClaimRetentionPolicy** (StatefulSetPersistentVolumeClaimRetentionPolicy) - persistentVolumeClaimRetentionPolicy describes the lifecycle of persistent volume claims created from volumeClaimTemplates. By default, all persistent volume claims are created as needed and retained until manually deleted. This policy allows the lifecycle to be altered, for example by deleting persistent volume claims when their stateful set is deleted, or when their pod is scaled down. This requires the StatefulSetAutoDeletePVC feature gate to be enabled, which is alpha. +optional + persistentVolumeClaimRetentionPolicy describes the lifecycle of persistent volume claims created from volumeClaimTemplates. By default, all persistent volume claims are created as needed and retained until manually deleted. This policy allows the lifecycle to be altered, for example by deleting persistent volume claims when their stateful set is deleted, or when their pod is scaled down. This requires the StatefulSetAutoDeletePVC feature gate to be enabled, which is beta. *StatefulSetPersistentVolumeClaimRetentionPolicy describes the policy used for PVCs created from the StatefulSet VolumeClaimTemplates.* @@ -142,7 +144,7 @@ A StatefulSetSpec is the specification of a StatefulSet. - **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 beta. + 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. *StatefulSetOrdinals describes the policy used for replica ordinal assignment in this StatefulSet.* @@ -192,6 +194,8 @@ StatefulSetStatus represents the current state of a StatefulSet. *Patch strategy: merge on key `type`* + *Map: unique values on key type will be kept during a merge* + Represents the latest available observations of a statefulset's current state. @@ -285,14 +289,14 @@ GET /apis/apps/v1/namespaces/{namespace}/statefulsets/{name} name of the StatefulSet -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -318,14 +322,14 @@ GET /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status name of the StatefulSet -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **pretty** (*in query*): string +- ****: - }}">pretty + @@ -346,64 +350,64 @@ GET /apis/apps/v1/namespaces/{namespace}/statefulsets #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -424,59 +428,59 @@ GET /apis/apps/v1/statefulsets #### Parameters -- **allowWatchBookmarks** (*in query*): boolean +- ****: - }}">allowWatchBookmarks + -- **continue** (*in query*): string +- ****: - }}">continue + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: - }}">sendInitialEvents + -- **timeoutSeconds** (*in query*): integer +- ****: - }}">timeoutSeconds + -- **watch** (*in query*): boolean +- ****: - }}">watch + @@ -497,34 +501,34 @@ POST /apis/apps/v1/namespaces/{namespace}/statefulsets #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">StatefulSet, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">StatefulSet, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -554,34 +558,34 @@ PUT /apis/apps/v1/namespaces/{namespace}/statefulsets/{name} name of the StatefulSet -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">StatefulSet, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">StatefulSet, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -609,34 +613,34 @@ PUT /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status name of the StatefulSet -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">StatefulSet, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- **body**: }}">StatefulSet, required - }}">fieldManager + -- **fieldValidation** (*in query*): string +- **dryRun** (*in query*): string - }}">fieldValidation + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -664,39 +668,39 @@ PATCH /apis/apps/v1/namespaces/{namespace}/statefulsets/{name} name of the StatefulSet -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -724,39 +728,39 @@ PATCH /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status name of the StatefulSet -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">Patch, required +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldManager** (*in query*): string +- ****: - }}">fieldManager + -- **fieldValidation** (*in query*): string +- ****: - }}">fieldValidation + -- **force** (*in query*): boolean +- **dryRun** (*in query*): string - }}">force + }}">dryRun -- **pretty** (*in query*): string +- **fieldValidation** (*in query*): string - }}">pretty + }}">fieldValidation @@ -784,34 +788,39 @@ DELETE /apis/apps/v1/namespaces/{namespace}/statefulsets/{name} name of the StatefulSet -- **namespace** (*in path*): string, required +- ****: + + + - }}">namespace +- ****: + + -- **body**: }}">DeleteOptions +- ****: -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- **dryRun** (*in query*): string - }}">propagationPolicy + }}">dryRun @@ -834,74 +843,79 @@ DELETE /apis/apps/v1/namespaces/{namespace}/statefulsets #### Parameters -- **namespace** (*in path*): string, required +- ****: - }}">namespace + -- **body**: }}">DeleteOptions +- ****: -- **continue** (*in query*): string +- ****: - }}">continue + -- **dryRun** (*in query*): string +- ****: - }}">dryRun + -- **fieldSelector** (*in query*): string +- ****: - }}">fieldSelector + -- **gracePeriodSeconds** (*in query*): integer +- ****: - }}">gracePeriodSeconds + -- **labelSelector** (*in query*): string +- ****: - }}">labelSelector + -- **limit** (*in query*): integer +- ****: - }}">limit + -- **pretty** (*in query*): string +- ****: - }}">pretty + -- **propagationPolicy** (*in query*): string +- ****: - }}">propagationPolicy + -- **resourceVersion** (*in query*): string +- ****: - }}">resourceVersion + -- **resourceVersionMatch** (*in query*): string +- ****: - }}">resourceVersionMatch + -- **sendInitialEvents** (*in query*): boolean +- ****: + + - }}">sendInitialEvents +- ****: + + -- **timeoutSeconds** (*in query*): integer - }}">timeoutSeconds +- **dryRun** (*in query*): string + + }}">dryRun