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

[WIP] Ensure deviceID is set when a resource is requested #1311

Conversation

vasrem
Copy link
Contributor

@vasrem vasrem commented Jul 15, 2024

If a NAD has the resourceName annotation set, then it means that the subsequent CNI calls should provide the deviceID for that particular resource.

Previously, we were doing best effort to get the deviceID from kubelet. With this patch, we guarantee the deviceID will be passed in the CNI call and fail if we can't find any deviceID.

@coveralls
Copy link

coveralls commented Jul 15, 2024

Coverage Status

coverage: 63.339% (+0.2%) from 63.116%
when pulling 06f0fd8 on vasrem:bugfix/ensure-resource-is-passed
into 41013e7 on k8snetworkplumbingwg:master.

If a NAD has the resourceName annotation set, then it means that the
subsequent CNI calls should provide the deviceID for that particular
resource.

Previously, we were doing best effort to get the deviceID from kubelet.
With this patch, we guarantee the deviceID will be passed in the CNI
call and fail if we can't find any deviceID.

Signed-off-by: Vasilis Remmas <vremmas@nvidia.com>
@vasrem vasrem force-pushed the bugfix/ensure-resource-is-passed branch from c4f6991 to 06f0fd8 Compare July 15, 2024 08:21
@vasrem vasrem changed the title Ensure deviceID is set when a resource is requested [WIP] Ensure deviceID is set when a resource is requested Jul 15, 2024
Copy link
Member

@dougbtv dougbtv left a comment

Choose a reason for hiding this comment

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

@vasrem
Copy link
Contributor Author

vasrem commented Jul 24, 2024

Closing this PR as this bugfix breaks the DRA integration. To support the DRA integration, we have to switch the e2e test to use Immediate allocation which is not supported by the dra-example https://github.com/kubernetes-sigs/dra-example-driver/blob/classic-dra/cmd/dra-example-controller/driver.go#L108-L110.

On a similar note, DRA API for 1.31 Kubernetes will change, so the plan is to:

  1. Update the current e2e test to target the "classic dra" which is supported until Kubernetes 1.30 Done in Update DRA integration info and fix e2e test #1313
  2. Adjust the multus integration for 1.31 DRA when 1.31 is released
  3. Re-open this PR to ensure the bug is fixed.

@vasrem vasrem closed this Jul 24, 2024
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.

None yet

3 participants