Skip to content

Commit 1479cd9

Browse files
committed
Add server side field validation section
1 parent 81ac1cb commit 1479cd9

File tree

1 file changed

+16
-0
lines changed
  • content/en/docs/concepts/overview/working-with-objects

1 file changed

+16
-0
lines changed

content/en/docs/concepts/overview/working-with-objects/_index.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,6 +120,22 @@ satisfy the StatefulSet specification.
120120
Different kinds of object can also have different `.status`; again, the API reference pages
121121
detail the structure of that `.status` field, and its content for each different type of object.
122122

123+
### Server Side Field Validation
124+
125+
Starting with Kubernetes v1.25, the API server offers server side
126+
[field validation](https://github.com/kubernetes/website/blob/main/content/en/docs/reference/using-api/api-concepts.md#field-validation)
127+
that detects unrecognized or duplicate fields in an object. It provides all the functionality of `kubectl --validate` on the server side.
128+
129+
The `kubectl` tool uses the `--validate` flag to set the level of field validation. It accepts the values `ignore`, `warn`, and `strict` while also
130+
accepting the values `true` (equivalent to `strict`) and `false` (equivalent to `ignore`). The default validation setting for kubectl is `--validate=true`,
131+
which means strict server-side field validation.
132+
133+
- Strict: Strict field validation, errors on validation failure
134+
- Warn: Field validation is performed, but errors are exposed as warnings rather than failing the request
135+
- Ignore: No server side field validation is performed
136+
137+
When `kubectl` cannot connect to an API server with field validation (API servers prior to Kubernetes 1.27), it will fall back to using client-side validation. Client-side validation will be removed entirely in a future version of `kubectl`.
138+
123139
## {{% heading "whatsnext" %}}
124140

125141
If you're new to Kubernetes, read more about the following:

0 commit comments

Comments
 (0)