Skip to content

inventory: add neutron 2025.2 service groups#599

Merged
berendt merged 1 commit into
mainfrom
neutron-2025.2-inventory-groups
Jun 24, 2026
Merged

inventory: add neutron 2025.2 service groups#599
berendt merged 1 commit into
mainfrom
neutron-2025.2-inventory-groups

Conversation

@ideaship

Copy link
Copy Markdown
Contributor

What

Add three kolla inventory groups to inventory/51-kolla, all mapping to control (mirroring neutron-server):

  • [neutron-rpc-server:children]
  • [neutron-periodic-worker:children]
  • [neutron-ovn-maintenance-worker:children]

Why

kolla-ansible stable/2025.2 split three new, default-enabled services out of neutron-server, each carrying host_in_groups: "{{ inventory_hostname in groups['<name>'] }}". Building the haproxy-config with_dict loop templates the whole neutron_services dict, so every entry's host_in_groups is evaluated; a lookup on a group absent from this inventory aborts templating with 'dict object' has no attribute 'neutron-rpc-server' (the "dict object" is the groups var, not neutron_services).

This inventory shipped neutron-server but never gained the three new groups, so testbed-upgrade-stable-next-ubuntu-24.04 fails during "Run upgrade" once the 2025.2 neutron role is in play. The failure surfaces on neutron-rpc-server first only because templating stops at the first missing key — the other two groups are the same gap and would surface next.

stable/2025.2 ansible/inventory/multinode places all three under control, which this change matches.

Context

This is one wall in a 2025.2-upgrade "gauntlet" of new-service wiring deficits: each cleared blocker exposes the next. The immediately preceding wall was the keystone-httpd image ('docker_image_url' is undefined). Image overrides for these neutron services already exist in osism/defaults; this closes the remaining inventory-group side.

Timeline (observed)

Date Failure point
06-19 / 06-20 keystone-httpd image (docker_image_url undefined) — before neutron
06-21 this gap (neutron-rpc-server group) — first reached
06-22 / 06-23 masked by earlier pre-neutron failures (SSH timeout, bootstrap)
06-24 this gap again

Caveat

Won't go quiet until merged and the nightly manager picks up the new osism.generics tag via gilt. Clearing neutron may expose whatever is immediately downstream — but the static wiring gap is closed here.

kolla-ansible stable/2025.2 split three new, default-enabled services
out of neutron-server: neutron-rpc-server, neutron-periodic-worker and
neutron-ovn-maintenance-worker. Each carries
host_in_groups: "{{ inventory_hostname in groups['<name>'] }}" in its
neutron_services entry. Building the haproxy-config with_dict loop
templates the entire neutron_services dict, so every entry's
host_in_groups is evaluated regardless of whether the service is
enabled. When the referenced inventory group is absent, Ansible aborts
templating with "'dict object' has no attribute 'neutron-rpc-server'"
(the "dict object" is the groups var, not neutron_services).

This inventory shipped neutron-server but never gained the three new
groups.

Add all three groups mapping to control, mirroring neutron-server and
matching kolla-ansible stable/2025.2 ansible/inventory/multinode, which
also places them under control.

Assisted-by: Claude:claude-opus-4-8
Signed-off-by: Roger Luethi <luethi@osism.tech>
@ideaship ideaship marked this pull request as ready for review June 24, 2026 05:53
@ideaship ideaship requested a review from berendt June 24, 2026 05:54
@ideaship ideaship moved this from Ready to In review in Human Board Jun 24, 2026
@berendt berendt merged commit 62b6274 into main Jun 24, 2026
3 checks passed
@berendt berendt deleted the neutron-2025.2-inventory-groups branch June 24, 2026 05:58
@github-project-automation github-project-automation Bot moved this from In review to Done in Human Board Jun 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

3 participants