fix(docs,ci): Radeon device IDs in OpenShift NFD rules + drift guard [1.5.1 backport] - #635
Merged
spraveenio merged 1 commit intoAug 24, 2026
Conversation
…OCm#632) Deploying via OLM on OpenShift with Radeon GPUs detected zero GPUs. On an 8x Radeon AI PRO R9700 (0x7551) cluster this failed every test with "No nodes with AMD/GPU found in the cluster". On OpenShift the NodeFeatureRule is created by hand from docs/installation/openshift-olm.md. Both copy-paste YAML blocks in that doc (a NodeFeatureDiscovery CR and a NodeFeatureRule CR) listed Instinct device IDs only, so no node received feature.node.kubernetes.io/amd-gpu and nothing the operator deploys was ever scheduled. Root cause is duplication with nothing enforcing agreement: the commit adding the Radeon AI PRO R9700 updated the two gpu-nfd-default-rule.yaml copies and left the documentation untouched. Fix, and a guard so it cannot recur silently: - docs/installation/openshift-olm.md: add the 16 missing amd-gpu and 2 missing amd-vgpu device IDs to both YAML blocks. - docs/troubleshooting.md: new section for the amd-gpu label being absent, covering both causes -- no rule applied at all, or a rule that omits the device ID. - hack/check-nfd-device-ids.py: compare every copy of the list against the source of truth, hack/k8s-patch/template-patch/gpu-nfd-default-rule.yaml, and report the exact missing/extra IDs per rule. The helm copy is a build output -- make helm-k8s does rm -rf on helm-charts-k8s and repopulates it from template-patch -- so drift there means the wrong file was edited. - make check-nfd-device-ids: thin wrapper so contributors get the identical result locally. - .github/workflows/nfd-device-id-check.yml: calls the make target. No branch or path filter, so it can safely be made a required status check.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Backport of #632 to the
release-v1.5.1branch. Clean cherry-pick of668bec00(no conflicts).Deploying via OLM on OpenShift with Radeon GPUs detected zero GPUs. On an 8x Radeon AI PRO R9700 (
0x7551) cluster this failed every test with "No nodes with AMD/GPU found in the cluster". The NodeFeatureRule doc copy-paste blocks indocs/installation/openshift-olm.mdlisted Instinct device IDs only, so no node receivedfeature.node.kubernetes.io/amd-gpu.Fixes GPUOP-1062.
Changes
Same as #632: doc fixes for the missing Radeon device IDs in both NFD YAML blocks, a troubleshooting section, a drift-checker script/make target, and a CI workflow to keep the doc and source-of-truth list in sync.
Validation
Identical to #632 — see that PR for full validation details. Cherry-pick applied cleanly onto
release-v1.5.1with no conflicts.