Uploaded image for project: 'Red Hat OpenStack Services on OpenShift'
  1. Red Hat OpenStack Services on OpenShift
  2. OSPRH-16858

'Now rotate all ovn_metadata_agents' task assumes ovn_metadata group is always defined

XMLWordPrintable

    • 1
    • False
    • Hide

      None

      Show
      None
    • False
    • ?
    • openstack-tripleo-heat-templates-14.3.1-17.1.20250704160748.e7c7ce3.el9ost openstack-tripleo-heat-templates-14.3.1-17.1.20250704163743.e7c7ce3.el8ost
    • rhos-ops-day1day2-upgrades
    • None
    • Hide
      .Fixed regression with `ovn_metadata_agents`

      Before this update, a minor update from RHOSP 17.1.2 to RHOSP 17.1.6 failed because a coding error introduced a regression for stacks that use Open Virtual Network (OVN) but do not contain the `ovn_metadata_agents` task.

      With this update, the patch is designed to work even if the `ovn_metadata_agent` is not present in the server.
      Show
      .Fixed regression with `ovn_metadata_agents` Before this update, a minor update from RHOSP 17.1.2 to RHOSP 17.1.6 failed because a coding error introduced a regression for stacks that use Open Virtual Network (OVN) but do not contain the `ovn_metadata_agents` task. With this update, the patch is designed to work even if the `ovn_metadata_agent` is not present in the server.
    • Bug Fix
    • Done
    • Neutron Sprint 14, RHOS Upgrades 2025 Sprint 6, RHOS Upgrades 2025 Sprint 7, Pending Compose
    • 4
    • Critical

      To Reproduce Steps to reproduce the behavior:

      1. Create a multi stack deployment in RHOSO17.1.2.
      2. Do the minor update to the latest OSP17.1.6.
      3. openstack overcloud external-update run --tags ovn failed with the following error.
        2025-05-20 19:14:42.761642 | <UUID> |       TASK | Now rotate all ovn_metadata_agents
        2025-05-20 19:14:42.810753 | <UUID> |      FATAL | Now rotate all ovn_metadata_agents | undercloud | error={"msg": "'dict object' has no attribute 'ovn_metadata'. 'dict object' has no attribute 'ovn_metadata'"}
        

      Expected behavior

      • The command doesn't fail.

      Bug impact

      • By this issue, a user cannot do a minor update to the latest one.

      Known workaround

      • Not available.
        The task should check the existence of group['ovn_metadata'] like below(I'm not good at ansible though)
                        - name: Now rotate all ovn_metadata_agents
                          delegate_to: "{{ item }}"
                          become: true
                          tripleo_container_manage:
                            config_dir: "/var/lib/tripleo-config/container-startup-config/step_4"
                            config_id:
                              - 'ovn_metadata_agent'
                            config_patterns: "*ovn_metadata_agent.json"
                            config_overrides:
                              ".*ovn_metadata_agent":
                                image: {get_param: ContainerOvnMetadataImage}
                                name: "ovn_metadata_agent"
                          loop: "{{groups['ovn_metadata'] | difference(groups['excluded_overcloud']) }}"
                          # pause for 1 second to give time to dbs and clients to recover between restarts
                          loop_control:
                            pause: 1
                          when:
                            - groups['ovn_metadata']
        

              rhn-engineering-lbezdick Lukas Bezdicka
              rhn-support-knoha Keigo Noha
              rhos-dfg-upgrades
              Votes:
              0 Vote for this issue
              Watchers:
              8 Start watching this issue

                Created:
                Updated:
                Resolved: