-
Notifications
You must be signed in to change notification settings - Fork 14.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update CRD defaulting docs for GA #17450
Update CRD defaulting docs for GA #17450
Conversation
Deploy preview for kubernetes-io-vnext-staging processing. Building with commit 371e615 https://app.netlify.com/sites/kubernetes-io-vnext-staging/deploys/5dd01232e8399600081b8f75 |
/milestone 1.17 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Feedback, and also a question about the mutating webhook form of defaulting.
@@ -628,7 +628,7 @@ Additionally, the following restrictions are applied to the schema: | |||
|
|||
These fields can only be set with specific features enabled: | |||
|
|||
- `default`: can be set for `apiextensions.k8s.io/v1` CustomResourceDefinitions. Defaulting is in beta since 1.16 and requires the `CustomResourceDefaulting` feature gate to be enabled (which is the case automatically for many clusters for beta features). Compare [Validation Schema Defaulting](/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/#defaulting). | |||
- `default`: can be set for `apiextensions.k8s.io/v1` CustomResourceDefinitions. Defaulting is in GA since 1.17 (beta since 1.16 with the `CustomResourceDefaulting` feature gate to be enabled, which is the case automatically for many clusters for beta features). Compare [Validation Schema Defaulting](/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/#defaulting). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you prefer this wording:
- `default`: can be set for `apiextensions.k8s.io/v1` CustomResourceDefinitions. Defaulting is in GA since 1.17 (beta since 1.16 with the `CustomResourceDefaulting` feature gate to be enabled, which is the case automatically for many clusters for beta features). Compare [Validation Schema Defaulting](/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/#defaulting). | |
- `default`: can be set for `apiextensions.k8s.io/v1` CustomResourceDefinitions. Defaulting relies on the `CustomResourceDefaulting` [feature gate](/docs/reference/command-line-tools-reference/feature-gates/), enabled by default since v1.16. Compare [Validation Schema Defaulting](/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/#defaulting). |
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No, the suggested sentence is wrong. In GA and in beta it is enabled by default. In GA you cannot disable it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hello @sttts, line 631 is a bit difficult to parse.
Question:
How does Defaulting
compare to Validation Schema Defaulting
found in the section named Defaulting below?
Suggested rewording:
default
: can be set forapiextensions.k8s.io/v1
CustomResourceDefinitions. Defaulting is in GA since v1.17. TheCustomResourceDefaulting
feature gate is enabled automatically (which is the default case for many clusters for beta features) starting with beta v1.16. Compare to [Validation ...
content/en/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions.md
Outdated
Show resolved
Hide resolved
@@ -174,7 +174,7 @@ Aggregated APIs offer more advanced API features and customization of other feat | |||
| Feature | Description | CRDs | Aggregated API | | |||
| ------- | ----------- | ---- | -------------- | | |||
| Validation | Help users prevent errors and allow you to evolve your API independently of your clients. These features are most useful when there are many clients who can't all update at the same time. | Yes. Most validation can be specified in the CRD using [OpenAPI v3.0 validation](/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/#validation). Any other validations supported by addition of a [Validating Webhook](/docs/reference/access-authn-authz/admission-controllers/#validatingadmissionwebhook-alpha-in-1-8-beta-in-1-9). | Yes, arbitrary validation checks | | |||
| Defaulting | See above | Yes, either via [OpenAPI v3.0 validation](/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/#defaulting) `default` keyword (beta in 1.16), or via a [Mutating Webhook](/docs/reference/access-authn-authz/admission-controllers/#mutatingadmissionwebhook-beta-in-1-9) | Yes | | |||
| Defaulting | See above | Yes, either via [OpenAPI v3.0 validation](/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/#defaulting) `default` keyword (GA in 1.17), or via a [Mutating Webhook](/docs/reference/access-authn-authz/admission-controllers/#mutatingadmissionwebhook-beta-in-1-9) | Yes | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What's the story with Mutating Webhook defaulting? Is that still supported and available?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes. nit: The link was out of date though. Perhaps s/mutatingadmissionwebhook-beta-in-1-9/mutatingadmissionwebhook
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed link. Clarified that mutatingadmissionwebhooks are limited because they are not run when reading from storage.
Technically LGTM |
faaf1f8
to
371e615
Compare
Addressed comments. |
@@ -781,10 +781,10 @@ crontab "my-new-cron-object" created | |||
|
|||
### Defaulting | |||
|
|||
{{< feature-state state="beta" for_kubernetes_version="1.16" >}} | |||
{{< feature-state state="stable" for_kubernetes_version="1.17" >}} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The preview shows the version at 1.16 -- seems odd. Perhaps a problem with netlify.
@sttts Just a reminder about the last Docs deadline - 22nd Nov, by which this PR needs to be merged! |
@kbarnard10 Is this PR good to go? |
@daminisatya , Changes seem OK. |
/approve |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: daminisatya The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
* feat: graduate TaintNodesByCondition to GA (#17073) * Promote StartupProbe to beta (enabled by default). (#17164) * Watch bookmarks to GA (#17026) * feat: graduate ScheduleDaemonSetPods to GA (#17350) * Update Docker installation instructions (#17405) * Use exact version numbers for installing Docker in Ubuntu (#17428) * Move CSIMigration and CSIMigrationGCE to Beta in Kubernetes v1.17 (#17478) * Promote NodeLease feature to GA (#17189) * Update docs for csi topology ga (#17408) * Update RunAsUsername to beta (#17460) * doc:Update RunAsUsername to beta * doc: update samples - kubernetes.io/os is no longer beta * Updating based on review feedback * Promote Node-specific volume limits to GA (#17432) * Promote PodShareProcessNamespace to stable (#17192) * Promote PodShareProcessNamespace to stable * Add for_k8s_version to feature-state label Co-Authored-By: Tim Bannister <[email protected]> * Readd version-check to shareProcessNamespace task * Update service load balancer finalizer doc for GA (#17438) * Update Topology Manager docs (#17451) * Added information on how device plugins can take advantage of Topology Manager * Updated the Topology Manager documentation to include additionalinformation and update some out of date sections * Fix broken Topology Manager link (#17746) Part of What's Next Device Plugin section * Update CRD defaulting docs for GA (#17450) * Add documentation for VolumeSnapshot Beta (#17233) * Updating EndpointSlice documentation for beta release in 1.17 (#17411) * (docs/dualstack): v1.17 updates (#17457) * Add placehold doc updates for dualstack in 1.17 Signed-off-by: Lachlan Evenson <[email protected]> * Add Downward API and /etc/hosts Pod IP validation Signed-off-by: Lachlan Evenson <[email protected]> * remove addressed known issue via k/k pr 85246 Signed-off-by: Lachlan Evenson <[email protected]> * Remove known issue and add flag as part of k/k 79993 Signed-off-by: Lachlan Evenson <[email protected]> * remove follow up placeholders Signed-off-by: Lachlan Evenson <[email protected]> * Update verbiage Signed-off-by: Lachlan Evenson <[email protected]> * Make IP addressing consistent throughout the task Signed-off-by: Lachlan Evenson <[email protected]> * Update to status.podIPs Signed-off-by: Lachlan Evenson <[email protected]> * Update content/en/docs/tasks/network/validate-dual-stack.md Use set instead of env Co-Authored-By: Khaled Henidak (Kal) <[email protected]> * add topology.kubernetes.io/zone, topology.kubernetes.io/region and node.kubernetes.io/instance-type labels to docs (#17498) Signed-off-by: Andrew Sy Kim <[email protected]> * Service topology alpha documentation (#17459) * Update list of feature flags for in-tree plugins migrated to CSI (#17533) Signed-off-by: Deep Debroy <[email protected]> * Update Node concept for TaintNodesByCondition going GA (#17577) * feat: graduate ResourceQuotaScopeSelectors to GA in 1.17 (#17554) * kubeadm: update the upgrade documentation for 1.17 (#17587) * doc: Simplify Windows deployments with RuntimeClass (#16697) * doc: Simplify Windows deployments with RuntimeClass * Updating on review feedback * doc: Adding windows-build label from enhancement 1301 * update doc for kubelet option --reserved-cpus (#17648) * feat: update TaintNodesByCondition in feature gates table (#17377) * Update docs for v1 resource quota configuration (#17547) * AdmissionConfiguration v1 (#17548) * Update WebhookAdmissionConfiguration examples (#17549) * Update AWS EBS Migration Feature state (#16126) * Add resource version section to api-concepts documentation (#16910) * Add Resource Version semantics section to api concepts * Clarify risks of going back in time, add details about compaction and watch cache sizes * Apply suggestions from liggitt Co-Authored-By: Jordan Liggitt <[email protected]> * remove pesudocode, apply feedback * Fix typo * Clarify equality rules * Cleanup kubectl generators docs (#17609) * Write ReplicationController without a space * Drop mentioning unsupported cluster versions * Fix capitalization for “API group” * Tweak wording * Avoid using deprecated generator in example * add Antrea description in dev-1.17 (#17919) * Promote VolumeSubpathEnvExpansion to GA * Reference Documentation for the Kubernetes API for 1.17 (#18019) * Update feature-gates.md (#18033) * Reference Documentation for kubectl Commands for 1.17 (#18017) * Update for v1.17 (#18034) * Update config.toml(release-1.17) for 1.17 (#18031)
No description provided.