Skip to content

[BUGFIX] Remove redundant ExtraConfig virt_type from config_download#1292

Open
imatza-rh wants to merge 1 commit intoopenstack-k8s-operators:downstreamfrom
imatza-rh:remove-extraconfig-virt-type-downstream
Open

[BUGFIX] Remove redundant ExtraConfig virt_type from config_download#1292
imatza-rh wants to merge 1 commit intoopenstack-k8s-operators:downstreamfrom
imatza-rh:remove-extraconfig-virt-type-downstream

Conversation

@imatza-rh
Copy link
Copy Markdown

@imatza-rh imatza-rh commented Mar 7, 2026

These ExtraConfig entries duplicate what --libvirt-type qemu already
sets via stack_args in every scenario (example: uni01alpha.yaml L42).
The duplication is harmless for the default qemu case, but it blocks
overrides due to TripleO's hiera priority chain.

The mechanism: TripleO's hieradata_files hierarchy
(from overcloud.j2.yaml in tripleo-heat-templates) resolves entries
top-down, first match wins:

L684:  - role_extraconfig    ← ComputeExtraConfig (position 7)
       ...
L688:  - service_configs     ← --libvirt-type CLI arg (position 11)

Both sources set the same Puppet keys (nova::compute::libvirt::virt_type),
so the ExtraConfig at position 7 silently wins over the CLI arg at
position 11. Any --libvirt-type kvm override via stack_args gets
ignored.

What's removed:

  • 8 standard scenarios - entire ComputeExtraConfig and ControllerExtraConfig blocks
  • 3 cell scenarios (uni05epsilon) - ComputeExtraConfig blocks
  • 3 DCN scenarios - virt_type lines only, nova::availability_zone preserved in ControllerExtraConfig

No other consumer of these entries exists in
ci-framework/adoption_osp_deploy
or DPA adoption roles.

Tested - full adoption pipeline (7/7 stages, ~10h):
deploy-infra → deploy-osp → deploy-ocp → install-operators →
install-shiftstack → run-adoption → run-shiftstack-after

Related-Issue: #OSPRH-27919

@imatza-rh imatza-rh marked this pull request as draft March 7, 2026 20:11
@imatza-rh imatza-rh force-pushed the remove-extraconfig-virt-type-downstream branch 2 times, most recently from f521b76 to 96fe581 Compare March 17, 2026 14:49
@imatza-rh imatza-rh force-pushed the remove-extraconfig-virt-type-downstream branch 2 times, most recently from 5db8d34 to 177252b Compare March 21, 2026 11:04
@imatza-rh imatza-rh marked this pull request as ready for review March 30, 2026 10:57
@imatza-rh imatza-rh changed the title Remove redundant ExtraConfig virt_type from config_download [BUGFIX] Remove redundant ExtraConfig virt_type from config_download Mar 30, 2026
@imatza-rh imatza-rh requested review from arxcruz and jirimacku March 30, 2026 12:06
@bogdando
Copy link
Copy Markdown
Contributor

LGTM if it passes the downstream multi-cell adoption jobs, @auniyal61 @ashu-011 FYI

@jistr
Copy link
Copy Markdown
Contributor

jistr commented Mar 31, 2026

/lgtm

@github-actions
Copy link
Copy Markdown

This PR is stale because it has been for over 15 days with no activity.
Remove stale label or comment or this PR will be closed in 7 days.

@github-actions github-actions bot added the Stale label Apr 16, 2026
@rebtoor
Copy link
Copy Markdown
Contributor

rebtoor commented Apr 16, 2026

@openstack-k8s-operators/adoption-core-reviewers hey folks, since there's already a lgtm from @jistr , care to review and approve this PR as well? :)

@bogdando
Copy link
Copy Markdown
Contributor

I recommend not modify this unless we restore the downstream multi-cell adoption CI job

@jistr jistr removed the Stale label Apr 16, 2026
The ComputeExtraConfig and ControllerExtraConfig entries for
nova::compute::libvirt::virt_type and libvirt_virt_type in
config_download.yaml files map to TripleO's role_extraconfig
hiera (priority 7), which overrides the --libvirt-type CLI
arg's service_configs hiera (priority 11). This makes it
impossible to switch libvirt type via CLI arg overrides.

Remove the redundant virt_type entries from all 14
config_download files, letting the --libvirt-type CLI arg
be the sole source of truth. Scenarios that need qemu
(the default) are unaffected since qemu is the default.
Scenarios on baremetal (KVM-capable) hardware can now use
stack_args overrides to set --libvirt-type kvm without
the ExtraConfig silently reverting it.

DCN scenarios preserve non-virt_type entries in
ControllerExtraConfig (nova::availability_zone).

Signed-off-by: Itay Matza <imatza@redhat.com>
@imatza-rh imatza-rh force-pushed the remove-extraconfig-virt-type-downstream branch from 177252b to b5a5a44 Compare April 18, 2026 20:44
@openshift-ci openshift-ci bot removed the lgtm label Apr 18, 2026
@openshift-ci
Copy link
Copy Markdown

openshift-ci bot commented Apr 18, 2026

New changes are detected. LGTM label has been removed.

@openshift-ci
Copy link
Copy Markdown

openshift-ci bot commented Apr 18, 2026

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please ask for approval from jistr. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

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