network/module_utils/network_lsr
Gris Ge c98c17a236 Fix problem when switch provider from initscript to nm
Problem:

After `tests_bridge_initscripts.yml` passed, the `tests_bridge_nm.yml`
will fail with NetworkManager 1.18.

Root cause:

 1. The `absent` and `down` action of initscript provider will not
    remove the bridge interface which fail the assertion in
    `tests_bridge_nm.yml`.
 2. In initscript mode, network role will create ifcfg file with
    `NM_CONTROLLED=no` instructing NetworkManager to mark the bridge as
    unmanaged. The follow up `down` and `absent` action of initscript
    provider will not change the NetworkManager's understanding on
    unmanaged state of this interface.

Fixes:
 1. We cannot change existing behaviour of initscript on not deleting
    interface in `down` and `absent` action. So we change the test
    function `tests/playbooks/down_profile.yml` to delete the interface
    manually via `ip link del <ifname>` command.

 2. Use `NM.Client.reload_connections_async()` to reload the
    configuration for nm provider on NetworkManager 1.18.

Previous test infrastructure is running each test file in a brand new VM
or container which cause this problem not been found before.

Dedicate test case `tests/tests_switch_provider.yml` included.

Signed-off-by: Gris Ge <fge@redhat.com>
2022-01-28 17:47:13 +01:00
..
nm Fix problem when switch provider from initscript to nm 2022-01-28 17:47:13 +01:00
__init__.py fix most ansible-test issues, suppress the rest 2021-04-09 19:57:55 +02:00
argument_validator.py Support routing tables in static routes 2022-01-27 18:18:47 +01:00
ethtool.py fix most ansible-test issues, suppress the rest 2021-04-09 19:57:55 +02:00
myerror.py fix most ansible-test issues, suppress the rest 2021-04-09 19:57:55 +02:00
nm_provider.py Add support for ETHTOOL Ring option 2021-05-11 18:19:16 +02:00
utils.py support ansible-core 2.12; ansible-plugin-scan; fix pylint errors; py39 2021-11-08 20:01:01 +01:00