[CP 1267] DCM: mount default ConfigMap when spec.configManager.config is omitted and it's E2Es#508
Open
ci-penbot-01 wants to merge 1 commit intoROCm:mainfrom
Conversation
…d and it's E2Es (#1267) * DCM: mount default ConfigMap when spec.configManager.config is omitted When DeviceConfig.spec.configManager.config is nil or has an empty name, the DCM DaemonSet now always mounts a ConfigMap volume named default-dcm-config (configurable by setting spec.configManager.config.name). Add E2E coverage (TestDCMDefaultConfigMapWhenConfigOmitted), cluster_test helpers, SIM skips for GPU-only partition tests, and align E2E_DCM_IMAGE in dev.env with v1.4.1. * Helm default CM + operator EnsureDefaultDCMConfigMap + E2E/docs * changes * address comments * comments * dcm changes (cherry picked from commit e9c1e916751b822d24998c7e7763ce4c12de534b)
Contributor
Author
AI-Assisted Cherry-PickSource PR: #1267 The cherry-pick operation encountered merge conflicts which were resolved automatically using AI assistance. Files with conflicts (resolved by AI):
Original conflict in bundle/manifests/amd-gpu-operator.clusterserviceversion.yaml<<<<<<< HEAD
containerImage: docker.io/rocm/amd-gpu-operator:dev
createdAt: "2026-04-02T12:26:30Z"
=======
containerImage: registry.test.pensando.io:5000/amd-gpu-operator:dev
createdAt: "2026-04-06T08:31:30Z"
>>>>>>> e9c1e916... DCM: mount default ConfigMap when spec.configManager.config is omitted and it's E2Es (#1267)Cherry-pick triggered by: ACP-Automation |
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.
cp of pensando/gpu-operator#1267
Source PR Description (pensando/gpu-operator#1267):
Summary
When Device Config Manager is enabled on a
DeviceConfig:spec.configManager.configis unset or the referenced name is empty, the DCM DaemonSet mounts ConfigMapdefault-dcm-configin the DeviceConfig namespace and exposes it at/etc/config-manager/(typicallyconfig.json).spec.configManager.config.nameis set, the DaemonSet mounts that ConfigMap instead; the operator does not create or manage that object—the cluster admin must supply it.New behavior (default ConfigMap lifecycle)
default-dcm-configexists when the default mount is in use. If the ConfigMap is missing, it is created with a built-in defaultconfig.json(embedded in the operator binary frominternal/configmanager/default_dcm_config.json). If it already exists (e.g. from Helm or a prior run), it is not overwritten.default-dcm-configin the release namespace by default (defaultDCMConfigMapinvalues.yaml, new template). Operators can turn this off or overridedatafor site-specific profiles. Chartconfig.jsoncontent should stay aligned with the embedded JSON used by the operator.API / docs
ConfigManagerSpec.Configdoc updated to describe default vs explicit ConfigMap behavior.docs/dcm/device-config-manager-configmap.md(behavior without internal function/file callouts where appropriate).E2E
ensureDefaultDCMConfigMap: ifdefault-dcm-configalready has non-emptyconfig.json(e.g. Helm), tests do not delete/recreate it; otherwise the test fixture is applied.verifyDCMConfigMapVolumeRef: asserts the DCM DaemonSet uses the expected ConfigMap on the config-manager volume.TestDCMDefaultConfigMapWhenConfigOmitted: SIM-friendly check that DCM comes up with nospec.configManager.configand the default ConfigMap name is mounted.skipDCMTestIfSIMRequiresGPUand related skips adjusted so partition / GPU-only tests skip under SIM while K8s-only checks can run.dev.env:E2E_DCM_IMAGEbumped todevice-config-manager:v1.4.1for tests that pull DCM.Test results
Cherrypick triggered by: ACP-Automation