-
Notifications
You must be signed in to change notification settings - Fork 479
Copy v1beta1 as v1beta2 #7304
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
Copy v1beta1 as v1beta2 #7304
Conversation
✅ Deploy Preview for kubernetes-sigs-kueue canceled.
|
|
/retest |
8c068ff to
9fe179c
Compare
9fe179c to
842a15e
Compare
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.
Shouldn't we put this on pkg/util/testing/wrappers.go, then use this wrapper everwhere?
And we can add v1beta1 dedicated tests to verify the coversion webhooks behavior.
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.
I thought we discussed this on the previous PR that we split in the transition period Kueue specific wrappers for v1beta1 and v1beta2?
We don't have conversion webhooks yet. I will add them in the following PRs, but this is the only way I can see for me to make the PRs reviewable.
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.
I indicated having API version-specific wrappers only for v1beta1. Then, all current wrapper usages are replaced with v1beta2.
Additionally, we have conversion check tests, while we keep supporting both API versions.
We don't have conversion webhooks yet. I will add them in the following PRs, but this is the only way I can see for me to make the PRs reviewable.
Do you say that using v1beta2 API everwhere requires conversion webhooks? I thouhght that we do not need that.
Could you share the conversion webhook direction?
My thought is the conversion webhook converts v1beta1 API to v1beta2. Is this correct?
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.
I indicated having API version-specific wrappers only for v1beta1. Then, all current wrapper usages are replaced with v1beta2.
Sure, but this PR is not replacing yet fully with v1beta2, we are not ready for that. I listed in the other comment the plan #7304 (comment). This PR is already 165 files or so, so I prefer to move gradually. Also, I want to apply the changes to the API on top of this API, then we will see the diff nicely.
If I tried to apply v1beta2 changes to this PR it will all get scrumbled, so for now this is just a copy.
Do you say that using v1beta2 API everwhere requires conversion webhooks? I thouhght that we do not need that.
Could you share the conversion webhook direction?
IIUC we need conversion only for LocalQueue, ClusterQueue and Workload.
My thought is the conversion webhook converts v1beta1 API to v1beta2. Is this correct?
Yes, they will work both ways actually.
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.
(because this is just a copy for now then conversion webhooks aren't introduced in this PR yet)
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.
IIUC we need conversion only for LocalQueue, ClusterQueue and Workload.
Ah, I see. In that case, we need to work on some more efforts, then it sould be done in another follow-up PR.
I'm fine with this PR.
Thank you.
/lgtm
/approve
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.
As I mentioned in another thread, instead of specializing v1beta2, we should specialize v1beta1.
So, this should be for v1beta1, test/e2e/singlecluster/e2e_v1beta1_test.go
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.
I want to do that in follow up PRs when we conclude the transition. This PR isn't changing the logic, it is still using v1beta1, and is already massive in size.
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.
So, this should be for v1beta1, test/e2e/singlecluster/e2e_v1beta1_test.go
Yes, this is my end goal after a couple more PRs planned for next week:
- conversion webhooks
- API changes
- migration of tests and logic
- clearing up on transition period wrappers, and keeping only a small subset of them for
e2e_v1beta1_test.go
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.
Alright, SGTM
|
LGTM label has been added. Git tree hash: 7e8e74475d9450b8785929ec6dea6c124f5d8db2
|
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: mimowo, tenzen-y 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 |
|
/release-note-edit |
|
/release-note-edit |
|
/release-note-edit |
|
/release-note-edit |
What type of PR is this?
/kind api-change
What this PR does / why we need it:
Which issue(s) this PR fixes:
Part of #7113
Special notes for your reviewer:
For now there is no difference between v1beta1 and v1beta2.
I plan to update the API and add conversion webhooks in follow ups PRs for the ease of reviewing, and working on the changes.
I created the copy with the following commands (note that storageversion marked is removed):
Also:
Does this PR introduce a user-facing change?