Comment 1 for bug 2044020

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to stx-puppet (master)

Reviewed: https://review.opendev.org/c/starlingx/stx-puppet/+/901207
Committed: https://opendev.org/starlingx/stx-puppet/commit/39f1517bc12f6e51c9733b71e4bf1d46e9040822
Submitter: "Zuul (22348)"
Branch: master

commit 39f1517bc12f6e51c9733b71e4bf1d46e9040822
Author: Andre Kantek <email address hidden>
Date: Thu Nov 16 17:45:13 2023 -0300

    Do not set floating address as deprecated during upgrade bootstrap

    During upgrade all floating addresses in /etc/hosts are configured
    in the loopback in the step "Bring up temporary addresses", located
    in
    https://opendev.org/starlingx/ansible-playbooks/src/branch/master/playbookconfig/src/playbooks/roles/optimized-restore/restore-configuration/tasks/restore-networking.yml

    Later the network will be restored at the step
    https://opendev.org/starlingx/ansible-playbooks/src/branch/master/playbookconfig/src/playbooks/roles/optimized-restore/restore-data/tasks/upgrade-networking.yml

    It will call the class "platform::network::runtime" and inside
    execute platform::network::network_address. This class marks the
    floating addresses as deprecated to not be selected as the source
    address in the definitive interfaces. Since it uses "ip addr replace"
    it adds the address even if it is not configured.

    Under certain conditions the presence of the same address in the
    loopback and network interface may result in a dadfailed address
    creating a failed test in puppet, preventing the upgrade to go
    further.

    But during the AIO-SX upgrade the floating addresses just need to be
    configured for internal comms. It can stay in the loopback, after
    the 1st unlock post upgrade all addressing will be corrected to the
    definitive interfaces.

    This change uses the flag /var/run/.network_upgrade_bootstrap, created
    the upgrade bootstrap to control the network configuration to avoid
    execution of this step.

    Test Plan
    [PASS] Upgrade an AIO-SX and validate that the network runtime puppet
           execution will pass the playbook execution.
    [PASS] lock/unlock AIO-SX to execute puppet network class outside the
           upgrade execution

    Closes-Bug: 2044020

    Change-Id: I4735d4bcb130918fad7ebb716ad5be2ba5b7e8fe
    Signed-off-by: Andre Kantek <email address hidden>