Skip to content

Pass status along ipam#1050

Closed
maiqueb wants to merge 7 commits intocontainernetworking:mainfrom
maiqueb:pass-status-along-ipam
Closed

Pass status along ipam#1050
maiqueb wants to merge 7 commits intocontainernetworking:mainfrom
maiqueb:pass-status-along-ipam

Conversation

@maiqueb
Copy link
Contributor

@maiqueb maiqueb commented May 27, 2024

This PR bumps the plugins to use CNI 1.2.0 and allows delegating the STATUS verb to IPAM plugins.

This way, other CNI plugins implementing STATUS can delegate the STATUS calls to IPAM CNIs.

@maiqueb maiqueb requested a review from squeed May 27, 2024 16:14
maiqueb added a commit to maiqueb/devconf2024 that referenced this pull request May 29, 2024
We must manually adapt the containernetworking IPAM invoking functions,
since as of today, the PRs adding that support are not merged.

Status is being added in [0], which was extracted from [1], where GC is
added.

[0] - containernetworking/plugins#1050
[1] - containernetworking/plugins#1021

Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>
Copy link
Member

@LionelJouin LionelJouin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I looked at the Bandwidth tests. Since containernetworking/cni#1039, the behavior of json.Marshall seems to have changed for struct that embeds types.NetConf.

With CNI v1.2.0: https://go.dev/play/p/L4feVRtl5S4
With CNI v1.1.2: https://go.dev/play/p/4RrrgKJUEN3

So, here in bandwidth tests, all parameters are missing when calling ADD.

@squeed
Copy link
Member

squeed commented Jun 3, 2024

@LionelJouin very good point. Do you think this affects more than just tests? I'm not sure if there's anything that embeds types.NetConf that also marshal to disk. But, we probably need to revert containernetworking/cni#1039

@LionelJouin
Copy link
Member

Could be. I created a ticket for it: containernetworking/cni#1096
SBR (flaking) and tuning plugins are also failing, but I haven't checked the reason yet.

maiqueb added 7 commits July 10, 2024 10:20
Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>
Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>
The `skel.PluginMain` functions were deprecated in CNI v1.2.0.

Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>
Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>
Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>
Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>
Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>
@maiqueb maiqueb force-pushed the pass-status-along-ipam branch from 32d76ea to a06671a Compare July 10, 2024 08:21
session, err := gexec.Start(command, GinkgoWriter, GinkgoWriter)
Expect(err).NotTo(HaveOccurred())

Eventually(session).Should(gbytes.Say(`{.*}`))
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

was this working before?

@squeed
Copy link
Member

squeed commented Jul 15, 2024

Is this ready to merge, or will you be implementing STATUS passthrough in this PR?

@maiqueb
Copy link
Contributor Author

maiqueb commented Jul 15, 2024

Is this ready to merge, or will you be implementing STATUS passthrough in this PR?

@squeed did you mean GC ? This PR does just that (i.e. status passthrough).

I'd rather defer GC to another PR.

@squeed
Copy link
Member

squeed commented Jul 15, 2024

I don't see anything providing an implementation of Status, so this PR lays the groundwork but doesn't, AFAICT, pass STATUS to a delegated plugin.

@maiqueb
Copy link
Contributor Author

maiqueb commented Jul 15, 2024

I don't see anything providing an implementation of Status, so this PR lays the groundwork but doesn't, AFAICT, pass STATUS to a delegated plugin.

I see !

Yeah, let's defer that as well :)

@squeed
Copy link
Member

squeed commented Jul 21, 2025

This was done in #1082

@squeed squeed closed this Jul 21, 2025
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 this pull request may close these issues.

4 participants