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

Move CRD to v1 #1100

Closed
ukclivecox opened this issue Nov 12, 2019 · 2 comments · Fixed by #1229
Closed

Move CRD to v1 #1100

ukclivecox opened this issue Nov 12, 2019 · 2 comments · Fixed by #1229
Assignees
Milestone

Comments

@ukclivecox
Copy link
Contributor

  • Will need to investigate Kubebuilder multi-version support.
@ukclivecox ukclivecox added this to the 1.0 milestone Nov 12, 2019
@ukclivecox ukclivecox self-assigned this Nov 12, 2019
@ukclivecox ukclivecox assigned adriangonz and unassigned ukclivecox Nov 28, 2019
@adriangonz
Copy link
Contributor

Ideally, we want to to rename the current operator/pkg/apis/v1alpha2 package to operator/pkg/apis/v1. On top of this, we also want to list versions v1alpha2 and v1alpha3 (see #890).

@adriangonz
Copy link
Contributor

It seems that the recommended way by kubebuilder to expose multiple versions is to have multiple packages, one per version. This is the approach taken by a few projects, including knative (https://github.com/knative/serving/tree/master/pkg/apis/serving).

In our case, to follow this pattern we would need to duplicate the apis/v1alpha2 folder into apis/v1alpha3 and apis/v1.

Note that these versions refer only to the SeldonDeployment CRD. Therefore, as new versions of Seldon Core come out, we could phase these deprecated packages/versions out. For example,

  • v1.0 would have the three folders: v1alpha2, v1alpha3 and v1 (marking v1 for storage).
  • v1.1 would phase out v1alpha2 and v1alpha3. Everyone on v1.0 would get encouraged to update to update their SeldonDeployment resources to v1 before upgrading to Seldon Core v1.1..

This seems to be the most straightforward solution, even though it involves duplicating code temporarily.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants