kep: Dry-run KEP is now implementable

This commit is contained in:
Antoine Pelisse 2018-07-24 13:43:53 -07:00
parent 3688fefc44
commit 5f99165b26
1 changed files with 10 additions and 8 deletions

View File

@ -15,7 +15,7 @@ approvers:
editor: apelisse
creation-date: 2018-06-21
last-updated: 2018-06-21
status: provisional
status: implementable
---
# Kubernetes Dry-run
@ -114,7 +114,7 @@ type AdmissionRequest struct {
Some values of the object are typically generated before the object is persisted:
- generateName can be used to assign a unique random name to the object,
- creationTimeStamp records the time of creation,
- creationTimestamp/deletionTimestamp records the time of creation/deletion,
- UID uniquely identifies the object and is randomly generated (non-deterministic),
- resourceVersion tracks the persisted version of the object.
@ -123,10 +123,12 @@ some confusion. The UID and the generated name would have a different value in a
dry-run and non-dry-run creation. These values will be left empty when
performing a dry-run.
CreationTimeStamp is also generated on creation, but there are less ways to
abuse it so it will be generated as it would for a regular request.
CreationTimestamp and DeletionTimestamp are also generated on creation/deletion,
but there are less ways to abuse them so they will be generated as they for a
regular request.
ResourceVersion will also be left empty on creation.
ResourceVersion will also be left empty on creation. On updates, the value will
stay unchanged.
## Storage
@ -135,7 +137,7 @@ most likely by looking for the field in the “Options” structure (missing for
some handlers, to be added). If it is, it will NOT store the object, but return
success. That success can be forwarded back to the user.
A dry-run request should behave as close as possible to regular
request. Attempting to dry-run create en existing object will result in an
`AlreadyExists` error to be returned. Similarly, if an dr-run update is
A dry-run request should behave as close as possible to a regular
request. Attempting to dry-run create an existing object will result in an
`AlreadyExists` error to be returned. Similarly, if a dry-run update is
performed on a non-existing object, a `NotFound` error will be returned.