-
Notifications
You must be signed in to change notification settings - Fork 24
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
NETOBSERV-788: adding conversion webhook for flowcollector obj #258
Conversation
Hey @msherif1234 , |
cert mgr is needed to extend &authenticate api server to talk to webhook to do admission control this has nothing to do with OLM based operator I did install for kind env for testing the cert mgr service should be on by default on OCP cluster. |
5b80565
to
1b22132
Compare
cc5d2d6
to
df3f2d9
Compare
@msherif1234: This pull request references NETOBSERV-788 which is a valid jira issue. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
@msherif1234: This pull request references NETOBSERV-788 which is a valid jira issue. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
@msherif1234: This pull request references NETOBSERV-788 which is a valid jira issue. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
5a6edc8
to
24907ed
Compare
60655e6
to
e4ebe3a
Compare
31f3922
to
635b6c5
Compare
@msherif1234: This pull request references NETOBSERV-788 which is a valid jira issue. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
Signed-off-by: msherif1234 <mmahmoud@redhat.com>
Signed-off-by: msherif1234 <mmahmoud@redhat.com>
Signed-off-by: msherif1234 <mmahmoud@redhat.com>
Signed-off-by: msherif1234 <mmahmoud@redhat.com>
// Manually restore data. | ||
restored := &FlowCollector{} | ||
if ok, err := utilconversion.UnmarshalData(r, restored); err != nil || !ok { | ||
return err | ||
} |
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.
Ok this looks good now, so, what fields are present in v1beta1 that aren't present in v1alpha1? Those will need to be manually restored here
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.
none atm
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'll add two fields in this PR: #252
Should I add these in both versions of the api or only in v1beta1
?
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.
This really depends on what you're trying to achieve
Looking at 252, if both of those fields are optional (which they are because they have defaults assigned) then you can add them to v1alpha1 without that being a breaking change. Which brings me back to the question, what are we trying to achieve with a new version of the API, is it to say yes, this API is more mature, or is there some change you want to make that isn't compatible with the current API? (eg renaming or restructuring a field)
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.
For now I would say it's just a matter of API maturity. We restructured a lot before GA and I don't see breaking changes coming for now.
But it's definetly good to have this conversion code in place for the time we will bring breaking changes !
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.
@JoelSpeed holding means not introducing betav1 at all or just not mark it the new storage API till we have the loki changes in or both ? I remember u said beta version need to get released then after that it will can be the new storage so is the plan to get it out in 4.13 and then make it the new storage with the breaking change in 4.14 ? or get it out in 4.14 with the breaking change then make it the new storage in 4.15 ?
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.
My suggestion would be to hold of introducing v1beta1 as a supported version until you've made those breaking changes. So the first time it gets released would be with the breaking changes you're planning for loki. So, you can merge this all now, but I'd probably remove the CRD schema generation part for v1beta1 until you're ready to start installing that on clusters (ie you have those extra changes in you've talked about)
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.
can we keep all but just let controller and packages refer back to v1alpha1 so that makes the v1beta version noop
and once we ready change them to point to v1beta1 ?
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.
You can, but if you expose the v1beta1 API into a running cluster (ie a customer cluster via a release), then you have to support the shape it is at that point, you can't then make breaking changes to it from there
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.
ok then better to hold the entire PR so I at least I can keep the whole context together instead of piece meal and regress it
/hold
@msherif1234: This pull request references NETOBSERV-788 which is a valid jira issue. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
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.
LGTM. Deployed on cluster bot and flows.netobserv.io/v1alpha1
is correctly translated to flows.netobserv.io/v1beta1
/ok-to-test |
New image: ["quay.io/netobserv/network-observability-operator:815b810"]. It will expire after two weeks. |
/rm-ok-to-test |
/hold cancel |
Fix e2e tests with podman
/qe-approved |
thanks! |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: jotak 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 |
…serv#258) * Implementing conversion webhook and add make target for auto conversion Signed-off-by: msherif1234 <mmahmoud@redhat.com> * refactor config to allow deployment on OCP or KinD platforms Signed-off-by: msherif1234 <mmahmoud@redhat.com> * update bundle Signed-off-by: msherif1234 <mmahmoud@redhat.com> * update controllers and pkg to use new api version Signed-off-by: msherif1234 <mmahmoud@redhat.com> --------- Signed-off-by: msherif1234 <mmahmoud@redhat.com>
HUB
andv1alpha1
as the spoke, till we have a new release withv1beta1
then we can makev1beta1
as the storage version.KinD
andOpenShift
installs since different deployment needs different certifications, to deploy on kind there is new make file optionmake deploy-kind/undeploy-kind
Signed-off-by: msherif1234 mmahmoud@redhat.com