Skip to content
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

promote CRD to v1 #79604

Merged
merged 13 commits into from Aug 17, 2019

Conversation

@liggitt
Copy link
Member

commented Jul 1, 2019

What type of PR is this?
/kind api-change
/kind feature

What this PR does / why we need it:
Promotes CRD types to v1. See the release note for changes

Does this PR introduce a user-facing change?:

The `CustomResourceDefinition` API type is promoted to `apiextensions.k8s.io/v1` with the following changes:
* Use of the new `default` feature in validation schemas is limited to v1
* `spec.scope` is no longer defaulted to `Namespaced` and must be explicitly specified
* `spec.version` is removed; use `spec.versions` instead
* `spec.validation` is removed; use `spec.versions[*].schema` instead
* `spec.subresources` is removed; use `spec.versions[*].subresources` instead
* `spec.additionalPrinterColumns` is removed; use `spec.versions[*].additionalPrinterColumns` instead
* `spec.conversion.webhookClientConfig` is moved to `spec.conversion.webhook.clientConfig`
* `spec.conversion.conversionReviewVersions` is moved to `spec.conversion.webhook.conversionReviewVersions`
* `spec.versions[*].schema.openAPIV3Schema` is now required when creating v1 CustomResourceDefinitions
* `spec.preserveUnknownFields: true` is disallowed when creating v1 CustomResourceDefinitions; it must be specified within schema definitions as `x-kubernetes-preserve-unknown-fields: true`
* In `additionalPrinterColumns` items, the `JSONPath` field was renamed to `jsonPath` (fixes https://github.com/kubernetes/kubernetes/issues/66531)
The `apiextensions.k8s.io/v1beta1` version of `CustomResourceDefinition` is deprecated and will no longer be served in v1.19.

/sig api-machinery
/priority important-soon
/cc @jpbetz @sttts @roycaihw

@k8s-ci-robot

This comment has been minimized.

Copy link
Contributor

commented Jul 1, 2019

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: liggitt

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 /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@liggitt liggitt force-pushed the liggitt:crd-v1 branch 2 times, most recently from 1a4465d to fa5e8b1 Jul 1, 2019

@liggitt liggitt added this to the v1.16 milestone Jul 2, 2019

@liggitt liggitt added this to Required for GA, in progress in Custom Resource Definitions Jul 3, 2019

@liggitt liggitt force-pushed the liggitt:crd-v1 branch from fa5e8b1 to 2243d70 Jul 27, 2019

@liggitt liggitt force-pushed the liggitt:crd-v1 branch from 2243d70 to 9356c2c Jul 27, 2019

@liggitt

This comment has been minimized.

Copy link
Member Author

commented Aug 15, 2019

rebased on #79587

@liggitt

This comment has been minimized.

Copy link
Member Author

commented Aug 15, 2019

/retest

@liggitt liggitt force-pushed the liggitt:crd-v1 branch from 463505f to 143e225 Aug 15, 2019

@liggitt

This comment has been minimized.

Copy link
Member Author

commented Aug 15, 2019

as discussed, made the require<ValidationAspect>() helper functions take both the request version and any old persisted data, to make it clear that compatibility with existing data was being preserved. will squash fixup commits after review

@smarterclayton

This comment has been minimized.

Copy link
Contributor

commented Aug 16, 2019

I think I follow everything non-mechanical, I'm sure I missed something but the tests make me feel comfortable that at least the individual pieces compose.

LGTM, squash your review commits and let's drop it.

@liggitt liggitt force-pushed the liggitt:crd-v1 branch from 143e225 to aa05715 Aug 16, 2019

@liggitt liggitt referenced this pull request Aug 16, 2019

@liggitt liggitt moved this from Assigned to API review completed, 1.16 in API Reviews Aug 16, 2019

@liggitt

This comment has been minimized.

Copy link
Member Author

commented Aug 16, 2019

squashed/tagged per #79604 (comment)

@liggitt liggitt added the lgtm label Aug 16, 2019

@liggitt

This comment has been minimized.

Copy link
Member Author

commented Aug 16, 2019

/hold cancel

@liggitt

This comment has been minimized.

Copy link
Member Author

commented Aug 17, 2019

/retest

@k8s-ci-robot k8s-ci-robot merged commit ef397e5 into kubernetes:master Aug 17, 2019

23 checks passed

cla/linuxfoundation liggitt authorized
Details
pull-kubernetes-bazel-build Job succeeded.
Details
pull-kubernetes-bazel-test Job succeeded.
Details
pull-kubernetes-conformance-image-test Skipped.
pull-kubernetes-cross Job succeeded.
Details
pull-kubernetes-dependencies Job succeeded.
Details
pull-kubernetes-e2e-gce Job succeeded.
Details
pull-kubernetes-e2e-gce-100-performance Job succeeded.
Details
pull-kubernetes-e2e-gce-csi-serial Skipped.
pull-kubernetes-e2e-gce-device-plugin-gpu Job succeeded.
Details
pull-kubernetes-e2e-gce-iscsi Skipped.
pull-kubernetes-e2e-gce-iscsi-serial Skipped.
pull-kubernetes-e2e-gce-storage-slow Skipped.
pull-kubernetes-godeps Skipped.
pull-kubernetes-integration Job succeeded.
Details
pull-kubernetes-kubemark-e2e-gce-big Job succeeded.
Details
pull-kubernetes-local-e2e Skipped.
pull-kubernetes-node-e2e Job succeeded.
Details
pull-kubernetes-node-e2e-containerd Job succeeded.
Details
pull-kubernetes-typecheck Job succeeded.
Details
pull-kubernetes-verify Job succeeded.
Details
pull-publishing-bot-validate Skipped.
tide In merge pool.
Details

@liggitt liggitt deleted the liggitt:crd-v1 branch Aug 17, 2019

@liggitt liggitt moved this from Required for GA, in progress to Complete in Custom Resource Definitions Aug 17, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.