[DEPRECATION WARNING]: ANSIBLE_COLLECTIONS_PATHS option, does not fit var naming standard, use the singular form ANSIBLE_COLLECTIONS_PATH instead. This feature will be removed from ansible-core in version 2.19. Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg. ansible-playbook [core 2.17.2] config file = None configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules'] ansible python module location = /usr/local/lib/python3.12/site-packages/ansible ansible collection location = /tmp/tmp.WlspkZzDER executable location = /usr/local/bin/ansible-playbook python version = 3.12.4 (main, Jun 7 2024, 00:00:00) [GCC 13.3.1 20240522 (Red Hat 13.3.1-1)] (/usr/bin/python3.12) jinja version = 3.1.4 libyaml = True No config file found; using defaults running playbook inside collection fedora.linux_system_roles redirecting (type: callback) ansible.builtin.debug to ansible.posix.debug redirecting (type: callback) ansible.builtin.debug to ansible.posix.debug redirecting (type: callback) ansible.builtin.profile_tasks to ansible.posix.profile_tasks Skipping callback 'default', as we already have a stdout callback. Skipping callback 'minimal', as we already have a stdout callback. Skipping callback 'oneline', as we already have a stdout callback. PLAYBOOK: tests_unit.yml ******************************************************* 2 plays in /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml PLAY [Setup for test running] ************************************************** TASK [Gathering Facts] ********************************************************* task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:3 Wednesday 31 July 2024 06:26:09 -0400 (0:00:00.019) 0:00:00.019 ******** [WARNING]: Platform linux on host managed_node1 is using the discovered Python interpreter at /usr/bin/python3.12, but future installation of another Python interpreter could change the meaning of that path. See https://docs.ansible.com/ansible- core/2.17/reference_appendices/interpreter_discovery.html for more information. ok: [managed_node1] TASK [Include the task 'el_repo_setup.yml'] ************************************ task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:6 Wednesday 31 July 2024 06:26:10 -0400 (0:00:01.373) 0:00:01.392 ******** included: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tasks/el_repo_setup.yml for managed_node1 TASK [Gather the minimum subset of ansible_facts required by the network role test] *** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tasks/el_repo_setup.yml:3 Wednesday 31 July 2024 06:26:10 -0400 (0:00:00.025) 0:00:01.417 ******** skipping: [managed_node1] => { "changed": false, "false_condition": "not ansible_facts.keys() | list | intersect(network_test_required_facts) == network_test_required_facts", "skip_reason": "Conditional result was False" } TASK [Check if system is ostree] *********************************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tasks/el_repo_setup.yml:17 Wednesday 31 July 2024 06:26:10 -0400 (0:00:00.026) 0:00:01.444 ******** ok: [managed_node1] => { "changed": false, "stat": { "exists": false } } TASK [Set flag to indicate system is ostree] *********************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tasks/el_repo_setup.yml:22 Wednesday 31 July 2024 06:26:11 -0400 (0:00:00.532) 0:00:01.977 ******** ok: [managed_node1] => { "ansible_facts": { "__network_is_ostree": false }, "changed": false } TASK [Fix CentOS6 Base repo] *************************************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tasks/el_repo_setup.yml:26 Wednesday 31 July 2024 06:26:11 -0400 (0:00:00.028) 0:00:02.006 ******** skipping: [managed_node1] => { "changed": false, "false_condition": "ansible_distribution == 'CentOS'", "skip_reason": "Conditional result was False" } TASK [Include the task 'enable_epel.yml'] ************************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tasks/el_repo_setup.yml:51 Wednesday 31 July 2024 06:26:11 -0400 (0:00:00.017) 0:00:02.023 ******** included: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tasks/enable_epel.yml for managed_node1 TASK [Create EPEL 39] ********************************************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tasks/enable_epel.yml:8 Wednesday 31 July 2024 06:26:11 -0400 (0:00:00.038) 0:00:02.062 ******** skipping: [managed_node1] => { "changed": false, "false_condition": "ansible_distribution in ['RedHat', 'CentOS']", "skip_reason": "Conditional result was False" } TASK [Install yum-utils package] *********************************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tasks/enable_epel.yml:24 Wednesday 31 July 2024 06:26:11 -0400 (0:00:00.017) 0:00:02.079 ******** skipping: [managed_node1] => { "changed": false, "false_condition": "ansible_distribution in ['RedHat', 'CentOS']", "skip_reason": "Conditional result was False" } TASK [Enable EPEL 7] *********************************************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tasks/enable_epel.yml:30 Wednesday 31 July 2024 06:26:11 -0400 (0:00:00.016) 0:00:02.095 ******** skipping: [managed_node1] => { "changed": false, "false_condition": "ansible_distribution in ['RedHat', 'CentOS']", "skip_reason": "Conditional result was False" } TASK [Enable EPEL 8] *********************************************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tasks/enable_epel.yml:35 Wednesday 31 July 2024 06:26:11 -0400 (0:00:00.016) 0:00:02.112 ******** skipping: [managed_node1] => { "changed": false, "false_condition": "ansible_distribution in ['RedHat', 'CentOS']", "skip_reason": "Conditional result was False" } TASK [Enable EPEL 6] *********************************************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tasks/enable_epel.yml:40 Wednesday 31 July 2024 06:26:11 -0400 (0:00:00.016) 0:00:02.128 ******** skipping: [managed_node1] => { "changed": false, "false_condition": "ansible_distribution in ['RedHat', 'CentOS']", "skip_reason": "Conditional result was False" } TASK [Install dependencies] **************************************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:9 Wednesday 31 July 2024 06:26:11 -0400 (0:00:00.016) 0:00:02.145 ******** ok: [managed_node1] => (item=NetworkManager-libnm) => { "ansible_loop_var": "item", "changed": false, "item": "NetworkManager-libnm", "rc": 0, "results": [] } MSG: Nothing to do failed: [managed_node1] (item=python2-gobject-base) => { "ansible_loop_var": "item", "changed": false, "failures": [ "No package python2-gobject-base available." ], "item": "python2-gobject-base", "rc": 1, "results": [] } MSG: Failed to install some of the specified packages ok: [managed_node1] => (item=python3-gobject-base) => { "ansible_loop_var": "item", "changed": false, "item": "python3-gobject-base", "rc": 0, "results": [] } MSG: Nothing to do ok: [managed_node1] => (item=python-gobject-base) => { "ansible_loop_var": "item", "changed": false, "item": "python-gobject-base", "rc": 0, "results": [] } MSG: Nothing to do failed: [managed_node1] (item=python2-mock) => { "ansible_loop_var": "item", "changed": false, "failures": [ "No package python2-mock available." ], "item": "python2-mock", "rc": 1, "results": [] } MSG: Failed to install some of the specified packages ...ignoring PLAY [Execute python unit tests] *********************************************** TASK [Gathering Facts] ********************************************************* task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:23 Wednesday 31 July 2024 06:26:21 -0400 (0:00:09.730) 0:00:11.876 ******** ok: [managed_node1] TASK [Create tempdir for code to test] ***************************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:28 Wednesday 31 July 2024 06:26:22 -0400 (0:00:00.982) 0:00:12.859 ******** changed: [managed_node1] => { "changed": true, "gid": 0, "group": "root", "mode": "0700", "owner": "root", "path": "/tmp/lsrtest_udbi3nxg", "secontext": "unconfined_u:object_r:user_tmp_t:s0", "size": 40, "state": "directory", "uid": 0 } TASK [Get tempfile for tar] **************************************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:34 Wednesday 31 July 2024 06:26:22 -0400 (0:00:00.509) 0:00:13.369 ******** changed: [managed_node1 -> localhost] => { "changed": true, "gid": 0, "group": "root", "mode": "0600", "owner": "root", "path": "/tmp/lsrtest_yzcw5dh_.tar", "secontext": "unconfined_u:object_r:user_tmp_t:s0", "size": 0, "state": "file", "uid": 0 } TASK [Include the task 'get_modules_and_utils_paths.yml'] ********************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:41 Wednesday 31 July 2024 06:26:22 -0400 (0:00:00.378) 0:00:13.748 ******** included: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tasks/get_modules_and_utils_paths.yml for managed_node1 TASK [Set collection paths] **************************************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tasks/get_modules_and_utils_paths.yml:3 Wednesday 31 July 2024 06:26:22 -0400 (0:00:00.028) 0:00:13.777 ******** ok: [managed_node1] => { "ansible_facts": { "collection_paths": [ "/tmp/tmp.WlspkZzDER", "/tmp/tmp.WlspkZzDER" ] }, "changed": false } TASK [Set search paths] ******************************************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tasks/get_modules_and_utils_paths.yml:13 Wednesday 31 July 2024 06:26:23 -0400 (0:00:00.035) 0:00:13.812 ******** ok: [managed_node1] => { "ansible_facts": { "module_utils_search_path": [ "../../module_utils", "../module_utils", "/root/.ansible/plugins/module_utils", "/usr/share/ansible/plugins/module_utils" ], "modules_search_path": [ "../../library", "../library", "/root/.ansible/plugins/modules", "/usr/share/ansible/plugins/modules" ] }, "changed": false } TASK [Find parent directory and path of modules] ******************************* task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tasks/get_modules_and_utils_paths.yml:42 Wednesday 31 July 2024 06:26:23 -0400 (0:00:00.037) 0:00:13.850 ******** ok: [managed_node1 -> localhost] => { "changed": false, "cmd": "set -euxo pipefail\nfor dir in ../../library ../library /root/.ansible/plugins/modules /usr/share/ansible/plugins/modules; do\n if [ -f \"$dir/network_connections.py\" ]; then\n readlink -f \"$(dirname \"$dir\")\"\n basename \"$dir\"\n exit 0\n fi\ndone\nfor dir in /tmp/tmp.WlspkZzDER /tmp/tmp.WlspkZzDER; do\n if [ ! -d \"$dir\" ]; then continue; fi\n cd \"$dir\"\n for subdir in ansible_collections/*/*/plugins/modules; do\n if [ -f \"$subdir/network_connections.py\" ]; then\n echo \"$dir\"\n echo \"$subdir\"\n exit 0\n fi\n done\ndone\necho network_connections.py not found\nexit 1\n", "delta": "0:00:00.004687", "end": "2024-07-31 06:26:23.403742", "rc": 0, "start": "2024-07-31 06:26:23.399055" } STDOUT: /tmp/tmp.WlspkZzDER ansible_collections/fedora/linux_system_roles/plugins/modules STDERR: + for dir in ../../library ../library /root/.ansible/plugins/modules /usr/share/ansible/plugins/modules + '[' -f ../../library/network_connections.py ']' + for dir in ../../library ../library /root/.ansible/plugins/modules /usr/share/ansible/plugins/modules + '[' -f ../library/network_connections.py ']' + for dir in ../../library ../library /root/.ansible/plugins/modules /usr/share/ansible/plugins/modules + '[' -f /root/.ansible/plugins/modules/network_connections.py ']' + for dir in ../../library ../library /root/.ansible/plugins/modules /usr/share/ansible/plugins/modules + '[' -f /usr/share/ansible/plugins/modules/network_connections.py ']' + for dir in /tmp/tmp.WlspkZzDER /tmp/tmp.WlspkZzDER + '[' '!' -d /tmp/tmp.WlspkZzDER ']' + cd /tmp/tmp.WlspkZzDER + for subdir in ansible_collections/*/*/plugins/modules + '[' -f ansible_collections/ansible/posix/plugins/modules/network_connections.py ']' + for subdir in ansible_collections/*/*/plugins/modules + '[' -f ansible_collections/fedora/linux_system_roles/plugins/modules/network_connections.py ']' + echo /tmp/tmp.WlspkZzDER + echo ansible_collections/fedora/linux_system_roles/plugins/modules + exit 0 TASK [Find parent directory and path of module_utils] ************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tasks/get_modules_and_utils_paths.yml:69 Wednesday 31 July 2024 06:26:23 -0400 (0:00:00.378) 0:00:14.228 ******** ok: [managed_node1 -> localhost] => { "changed": false, "cmd": "set -euxo pipefail\nfor dir in ../../module_utils ../module_utils /root/.ansible/plugins/module_utils /usr/share/ansible/plugins/module_utils; do\n if [ -d \"$dir/network_lsr\" ]; then\n readlink -f \"$(dirname \"$dir\")\"\n basename \"$dir\"\n exit 0\n fi\ndone\nfor dir in /tmp/tmp.WlspkZzDER /tmp/tmp.WlspkZzDER; do\n if [ ! -d \"$dir\" ]; then continue; fi\n cd \"$dir\"\n for subdir in ansible_collections/*/*/plugins/module_utils; do\n if [ -d \"$subdir/network_lsr\" ]; then\n echo \"$dir\"\n echo \"$subdir\"\n exit 0\n fi\n done\ndone\necho network_lsr not found\nexit 1\n", "delta": "0:00:00.004684", "end": "2024-07-31 06:26:23.663689", "rc": 0, "start": "2024-07-31 06:26:23.659005" } STDOUT: /tmp/tmp.WlspkZzDER ansible_collections/fedora/linux_system_roles/plugins/module_utils STDERR: + for dir in ../../module_utils ../module_utils /root/.ansible/plugins/module_utils /usr/share/ansible/plugins/module_utils + '[' -d ../../module_utils/network_lsr ']' + for dir in ../../module_utils ../module_utils /root/.ansible/plugins/module_utils /usr/share/ansible/plugins/module_utils + '[' -d ../module_utils/network_lsr ']' + for dir in ../../module_utils ../module_utils /root/.ansible/plugins/module_utils /usr/share/ansible/plugins/module_utils + '[' -d /root/.ansible/plugins/module_utils/network_lsr ']' + for dir in ../../module_utils ../module_utils /root/.ansible/plugins/module_utils /usr/share/ansible/plugins/module_utils + '[' -d /usr/share/ansible/plugins/module_utils/network_lsr ']' + for dir in /tmp/tmp.WlspkZzDER /tmp/tmp.WlspkZzDER + '[' '!' -d /tmp/tmp.WlspkZzDER ']' + cd /tmp/tmp.WlspkZzDER + for subdir in ansible_collections/*/*/plugins/module_utils + '[' -d ansible_collections/ansible/posix/plugins/module_utils/network_lsr ']' + for subdir in ansible_collections/*/*/plugins/module_utils + '[' -d ansible_collections/fedora/linux_system_roles/plugins/module_utils/network_lsr ']' + echo /tmp/tmp.WlspkZzDER + echo ansible_collections/fedora/linux_system_roles/plugins/module_utils + exit 0 TASK [Create Tar file] ********************************************************* task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:48 Wednesday 31 July 2024 06:26:23 -0400 (0:00:00.259) 0:00:14.487 ******** ok: [managed_node1 -> localhost] => { "changed": false, "cmd": [ "tar", "-cvf", "/tmp/lsrtest_yzcw5dh_.tar", "--exclude", "*.pyc", "--exclude", "__pycache__", "-C", "/tmp/tmp.WlspkZzDER", "ansible_collections/fedora/linux_system_roles/plugins/modules", "-C", "/tmp/tmp.WlspkZzDER", "ansible_collections/fedora/linux_system_roles/plugins/module_utils" ], "delta": "0:00:00.114516", "end": "2024-07-31 06:26:24.027845", "rc": 0, "start": "2024-07-31 06:26:23.913329" } STDOUT: ansible_collections/fedora/linux_system_roles/plugins/modules/ ansible_collections/fedora/linux_system_roles/plugins/modules/network_state.py ansible_collections/fedora/linux_system_roles/plugins/modules/network_connections.py ansible_collections/fedora/linux_system_roles/plugins/modules/__init__.py ansible_collections/fedora/linux_system_roles/plugins/module_utils/ ansible_collections/fedora/linux_system_roles/plugins/module_utils/network_lsr/ ansible_collections/fedora/linux_system_roles/plugins/module_utils/network_lsr/nm_provider.py ansible_collections/fedora/linux_system_roles/plugins/module_utils/network_lsr/nm/ ansible_collections/fedora/linux_system_roles/plugins/module_utils/network_lsr/nm/connection.py ansible_collections/fedora/linux_system_roles/plugins/module_utils/network_lsr/nm/active_connection.py ansible_collections/fedora/linux_system_roles/plugins/module_utils/network_lsr/nm/error.py ansible_collections/fedora/linux_system_roles/plugins/module_utils/network_lsr/nm/client.py ansible_collections/fedora/linux_system_roles/plugins/module_utils/network_lsr/nm/__init__.py ansible_collections/fedora/linux_system_roles/plugins/module_utils/network_lsr/nm/provider.py ansible_collections/fedora/linux_system_roles/plugins/module_utils/network_lsr/myerror.py ansible_collections/fedora/linux_system_roles/plugins/module_utils/network_lsr/argument_validator.py ansible_collections/fedora/linux_system_roles/plugins/module_utils/network_lsr/ethtool.py ansible_collections/fedora/linux_system_roles/plugins/module_utils/network_lsr/__init__.py ansible_collections/fedora/linux_system_roles/plugins/module_utils/network_lsr/utils.py TASK [Copy testrepo.tar to the remote system] ********************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:60 Wednesday 31 July 2024 06:26:24 -0400 (0:00:00.364) 0:00:14.852 ******** changed: [managed_node1] => { "changed": true, "checksum": "7fe2a05316e3bcbd7d46419dc4a153f5aabc1d12", "dest": "/tmp/lsrtest_udbi3nxg/lsrtest_yzcw5dh_.tar", "gid": 0, "group": "root", "md5sum": "c3556d8a1c74635ed0fc40beb24a964a", "mode": "0600", "owner": "root", "secontext": "unconfined_u:object_r:user_tmp_t:s0", "size": 266240, "src": "/root/.ansible/tmp/ansible-tmp-1722421584.1033857-19254-199867585880604/.source.tar", "state": "file", "uid": 0 } TASK [Untar testrepo.tar] ****************************************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:66 Wednesday 31 July 2024 06:26:25 -0400 (0:00:01.195) 0:00:16.048 ******** changed: [managed_node1] => { "changed": true, "dest": "/tmp/lsrtest_udbi3nxg", "extract_results": { "cmd": [ "/usr/bin/gtar", "--extract", "-C", "/tmp/lsrtest_udbi3nxg", "-f", "/tmp/lsrtest_udbi3nxg/lsrtest_yzcw5dh_.tar" ], "err": "", "out": "", "rc": 0 }, "gid": 0, "group": "root", "handler": "TarArchive", "mode": "0700", "owner": "root", "secontext": "unconfined_u:object_r:user_tmp_t:s0", "size": 80, "src": "/tmp/lsrtest_udbi3nxg/lsrtest_yzcw5dh_.tar", "state": "directory", "uid": 0 } TASK [Create subdirectory '/ansible/module_utils' under '/tmp/lsrtest_udbi3nxg'] *** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:72 Wednesday 31 July 2024 06:26:27 -0400 (0:00:02.121) 0:00:18.169 ******** changed: [managed_node1] => (item=/tmp/lsrtest_udbi3nxg/ansible) => { "ansible_loop_var": "item", "changed": true, "gid": 0, "group": "root", "item": "/tmp/lsrtest_udbi3nxg/ansible", "mode": "0755", "owner": "root", "path": "/tmp/lsrtest_udbi3nxg/ansible", "secontext": "unconfined_u:object_r:user_tmp_t:s0", "size": 40, "state": "directory", "uid": 0 } changed: [managed_node1] => (item=/tmp/lsrtest_udbi3nxg/ansible/module_utils) => { "ansible_loop_var": "item", "changed": true, "gid": 0, "group": "root", "item": "/tmp/lsrtest_udbi3nxg/ansible/module_utils", "mode": "0755", "owner": "root", "path": "/tmp/lsrtest_udbi3nxg/ansible/module_utils", "secontext": "unconfined_u:object_r:user_tmp_t:s0", "size": 40, "state": "directory", "uid": 0 } TASK [Move module_utils to ansible directory] ********************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:81 Wednesday 31 July 2024 06:26:28 -0400 (0:00:00.937) 0:00:19.106 ******** ok: [managed_node1] => { "changed": false, "cmd": "if [ -d /tmp/lsrtest_udbi3nxg/module_utils ]; then\n mv /tmp/lsrtest_udbi3nxg/module_utils /tmp/lsrtest_udbi3nxg/ansible\nfi\n", "delta": "0:00:00.003792", "end": "2024-07-31 06:26:28.665871", "rc": 0, "start": "2024-07-31 06:26:28.662079" } TASK [Fake out python module directories, primarily for python2] *************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:88 Wednesday 31 July 2024 06:26:28 -0400 (0:00:00.410) 0:00:19.516 ******** ok: [managed_node1] => { "changed": false, "cmd": "for dir in $(find /tmp/lsrtest_udbi3nxg -type d -print); do\n if [ ! -f \"$dir/__init__.py\" ]; then\n touch \"$dir/__init__.py\"\n fi\ndone\n", "delta": "0:00:00.013785", "end": "2024-07-31 06:26:29.085786", "rc": 0, "start": "2024-07-31 06:26:29.072001" } TASK [Copy unit test to remote system] ***************************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:97 Wednesday 31 July 2024 06:26:29 -0400 (0:00:00.419) 0:00:19.936 ******** changed: [managed_node1] => { "changed": true, "checksum": "731e04a20e90141c80715b622e055b365c2b5151", "dest": "/tmp/lsrtest_udbi3nxg/test_network_connections.py", "gid": 0, "group": "root", "md5sum": "8a6ae7dadde400c56681e04fb5e742d5", "mode": "0644", "owner": "root", "secontext": "unconfined_u:object_r:user_tmp_t:s0", "size": 206326, "src": "/root/.ansible/tmp/ansible-tmp-1722421589.1856585-19316-191884550300254/.source.py", "state": "file", "uid": 0 } TASK [Set _lsr_python_path] **************************************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:103 Wednesday 31 July 2024 06:26:30 -0400 (0:00:01.073) 0:00:21.010 ******** ok: [managed_node1] => { "ansible_facts": { "_lsr_python_path": "/tmp/lsrtest_udbi3nxg/ansible_collections/fedora/linux_system_roles/plugins/modules:/tmp/lsrtest_udbi3nxg/ansible/ansible_collections/fedora/linux_system_roles/plugins/module_utils:/tmp/lsrtest_udbi3nxg/ansible_collections/fedora/linux_system_roles/plugins/module_utils:/tmp/lsrtest_udbi3nxg" }, "changed": false } TASK [List the files in /tmp/lsrtest_udbi3nxg] ********************************* task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:107 Wednesday 31 July 2024 06:26:30 -0400 (0:00:00.024) 0:00:21.034 ******** ok: [managed_node1] => { "changed": false, "cmd": [ "ls", "-alrtFR", "/tmp/lsrtest_udbi3nxg" ], "delta": "0:00:00.004485", "end": "2024-07-31 06:26:30.596126", "rc": 0, "start": "2024-07-31 06:26:30.591641" } STDOUT: /tmp/lsrtest_udbi3nxg: total 464 -rw-------. 1 root root 266240 Jul 31 06:26 lsrtest_yzcw5dh_.tar -rw-r--r--. 1 root root 0 Jul 31 06:26 __init__.py drwxr-xr-x. 3 root root 80 Jul 31 06:26 ansible_collections/ drwxr-xr-x. 3 root root 80 Jul 31 06:26 ansible/ -rw-r--r--. 1 root root 206326 Jul 31 06:26 test_network_connections.py drwx------. 4 root root 140 Jul 31 06:26 ./ drwxrwxrwt. 13 root root 260 Jul 31 06:26 ../ /tmp/lsrtest_udbi3nxg/ansible_collections: total 0 -rw-r--r--. 1 root root 0 Jul 31 06:26 __init__.py drwxr-xr-x. 3 root root 80 Jul 31 06:26 ./ drwxr-xr-x. 3 root root 80 Jul 31 06:26 fedora/ drwx------. 4 root root 140 Jul 31 06:26 ../ /tmp/lsrtest_udbi3nxg/ansible_collections/fedora: total 0 drwxr-xr-x. 3 root root 80 Jul 31 06:26 ../ -rw-r--r--. 1 root root 0 Jul 31 06:26 __init__.py drwxr-xr-x. 3 root root 80 Jul 31 06:26 ./ drwxr-xr-x. 3 root root 80 Jul 31 06:26 linux_system_roles/ /tmp/lsrtest_udbi3nxg/ansible_collections/fedora/linux_system_roles: total 0 drwxr-xr-x. 3 root root 80 Jul 31 06:26 ../ -rw-r--r--. 1 root root 0 Jul 31 06:26 __init__.py drwxr-xr-x. 3 root root 80 Jul 31 06:26 ./ drwxr-xr-x. 4 root root 100 Jul 31 06:26 plugins/ /tmp/lsrtest_udbi3nxg/ansible_collections/fedora/linux_system_roles/plugins: total 0 drwxr-xr-x. 2 root root 100 Jul 31 05:59 modules/ drwxr-xr-x. 3 root root 80 Jul 31 06:26 ../ -rw-r--r--. 1 root root 0 Jul 31 06:26 __init__.py drwxr-xr-x. 4 root root 100 Jul 31 06:26 ./ drwxr-xr-x. 3 root root 80 Jul 31 06:26 module_utils/ /tmp/lsrtest_udbi3nxg/ansible_collections/fedora/linux_system_roles/plugins/modules: total 112 -rw-r--r--. 1 root root 2736 Jul 31 05:59 network_state.py -rw-r--r--. 1 root root 0 Jul 31 05:59 __init__.py drwxr-xr-x. 2 root root 100 Jul 31 05:59 ./ -rw-r--r--. 1 root root 107368 Jul 31 05:59 network_connections.py drwxr-xr-x. 4 root root 100 Jul 31 06:26 ../ /tmp/lsrtest_udbi3nxg/ansible_collections/fedora/linux_system_roles/plugins/module_utils: total 0 drwxr-xr-x. 3 root root 180 Jul 31 05:59 network_lsr/ drwxr-xr-x. 4 root root 100 Jul 31 06:26 ../ -rw-r--r--. 1 root root 0 Jul 31 06:26 __init__.py drwxr-xr-x. 3 root root 80 Jul 31 06:26 ./ /tmp/lsrtest_udbi3nxg/ansible_collections/fedora/linux_system_roles/plugins/module_utils/network_lsr: total 132 drwxr-xr-x. 2 root root 160 Jul 31 05:59 nm/ -rw-r--r--. 1 root root 190 Jul 31 05:59 myerror.py -rw-r--r--. 1 root root 0 Jul 31 05:59 __init__.py -rw-r--r--. 1 root root 1839 Jul 31 05:59 ethtool.py drwxr-xr-x. 3 root root 180 Jul 31 05:59 ./ -rw-r--r--. 1 root root 11433 Jul 31 05:59 utils.py -rw-r--r--. 1 root root 1640 Jul 31 05:59 nm_provider.py -rw-r--r--. 1 root root 110266 Jul 31 05:59 argument_validator.py drwxr-xr-x. 3 root root 80 Jul 31 06:26 ../ /tmp/lsrtest_udbi3nxg/ansible_collections/fedora/linux_system_roles/plugins/module_utils/network_lsr/nm: total 24 -rw-r--r--. 1 root root 0 Jul 31 05:59 __init__.py -rw-r--r--. 1 root root 175 Jul 31 05:59 error.py drwxr-xr-x. 3 root root 180 Jul 31 05:59 ../ drwxr-xr-x. 2 root root 160 Jul 31 05:59 ./ -rw-r--r--. 1 root root 3292 Jul 31 05:59 provider.py -rw-r--r--. 1 root root 3638 Jul 31 05:59 connection.py -rw-r--r--. 1 root root 3071 Jul 31 05:59 client.py -rw-r--r--. 1 root root 4104 Jul 31 05:59 active_connection.py /tmp/lsrtest_udbi3nxg/ansible: total 0 -rw-r--r--. 1 root root 0 Jul 31 06:26 __init__.py drwxr-xr-x. 3 root root 80 Jul 31 06:26 ./ drwxr-xr-x. 2 root root 60 Jul 31 06:26 module_utils/ drwx------. 4 root root 140 Jul 31 06:26 ../ /tmp/lsrtest_udbi3nxg/ansible/module_utils: total 0 drwxr-xr-x. 3 root root 80 Jul 31 06:26 ../ -rw-r--r--. 1 root root 0 Jul 31 06:26 __init__.py drwxr-xr-x. 2 root root 60 Jul 31 06:26 ./ TASK [Debug the lsr Python path] *********************************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:110 Wednesday 31 July 2024 06:26:30 -0400 (0:00:00.412) 0:00:21.447 ******** ok: [managed_node1] => {} MSG: path /tmp/lsrtest_udbi3nxg/ansible_collections/fedora/linux_system_roles/plugins/modules:/tmp/lsrtest_udbi3nxg/ansible/ansible_collections/fedora/linux_system_roles/plugins/module_utils:/tmp/lsrtest_udbi3nxg/ansible_collections/fedora/linux_system_roles/plugins/module_utils:/tmp/lsrtest_udbi3nxg TASK [Check if python2 is available] ******************************************* task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:114 Wednesday 31 July 2024 06:26:30 -0400 (0:00:00.021) 0:00:21.469 ******** fatal: [managed_node1]: FAILED! => { "changed": false, "cmd": "python2 --version", "rc": 2 } MSG: [Errno 2] No such file or directory: b'python2' ...ignoring TASK [Run python2 unit tests] ************************************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:121 Wednesday 31 July 2024 06:26:31 -0400 (0:00:00.413) 0:00:21.883 ******** skipping: [managed_node1] => { "changed": false, "false_condition": "python2_available is succeeded and ansible_distribution != 'Fedora'\n", "skip_reason": "Conditional result was False" } TASK [Check if python3 is available] ******************************************* task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:131 Wednesday 31 July 2024 06:26:31 -0400 (0:00:00.022) 0:00:21.905 ******** ok: [managed_node1] => { "changed": false, "cmd": [ "python3", "--version" ], "delta": "0:00:00.004651", "end": "2024-07-31 06:26:31.462337", "rc": 0, "start": "2024-07-31 06:26:31.457686" } STDOUT: Python 3.12.4 TASK [Run python3 unit tests] ************************************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:138 Wednesday 31 July 2024 06:26:31 -0400 (0:00:00.406) 0:00:22.312 ******** ok: [managed_node1] => { "changed": false, "cmd": [ "python3", "/tmp/lsrtest_udbi3nxg/test_network_connections.py", "--verbose" ], "delta": "0:00:01.634867", "end": "2024-07-31 06:26:33.506161", "rc": 0, "start": "2024-07-31 06:26:31.871294" } STDERR: test_connection_ensure_setting (__main__.TestNM.test_connection_ensure_setting) ... ok test_connection_list (__main__.TestNM.test_connection_list) ... ok test_path_to_glib_bytes (__main__.TestNM.test_path_to_glib_bytes) ... ok test_link_read_permaddress (__main__.TestSysUtils.test_link_read_permaddress) ... ok test_convert_passwd_flags_nm (__main__.TestUtils.test_convert_passwd_flags_nm) ... ok test_mac_ntoa (__main__.TestUtils.test_mac_ntoa) ... ok test_802_1x_1 (__main__.TestValidator.test_802_1x_1) Test private key with password ... ok test_802_1x_2 (__main__.TestValidator.test_802_1x_2) Test 802.1x profile with unencrypted private key, ... ok test_802_1x_3 (__main__.TestValidator.test_802_1x_3) Test 802.1x profile with unencrypted private key and ca_path ... ok test_802_1x_ca_path_and_system_ca_certs (__main__.TestValidator.test_802_1x_ca_path_and_system_ca_certs) should fail if ca_path and system_ca_certs are used together ... ok test_802_1x_initscripts (__main__.TestValidator.test_802_1x_initscripts) should fail to create ieee802_1x connection with initscripts ... ok test_802_1x_unsupported_type (__main__.TestValidator.test_802_1x_unsupported_type) should fail if a non ethernet/wireless connection has 802.1x settings defined ... ok test_absent (__main__.TestValidator.test_absent) ... ok test_auto6_enabled_ipv6_disabled (__main__.TestValidator.test_auto6_enabled_ipv6_disabled) Test that enabling `auto6` and disabling IPv6 are mutually exclusive. ... ok test_auto_gateway_false (__main__.TestValidator.test_auto_gateway_false) ... ok test_auto_gateway_no_gateway (__main__.TestValidator.test_auto_gateway_no_gateway) ... ok test_auto_gateway_true (__main__.TestValidator.test_auto_gateway_true) ... ok test_bond (__main__.TestValidator.test_bond) ... ok test_bond_active_backup (__main__.TestValidator.test_bond_active_backup) ... ok test_bridge2 (__main__.TestValidator.test_bridge2) ... ok test_bridge_no_dhcp4_auto6 (__main__.TestValidator.test_bridge_no_dhcp4_auto6) ... ok test_default_states (__main__.TestValidator.test_default_states) ... ok test_default_states_type (__main__.TestValidator.test_default_states_type) ... ok test_deprecated_ethtool_names (__main__.TestValidator.test_deprecated_ethtool_names) Test that for each validator in ... ok test_dns_options_argvalidator (__main__.TestValidator.test_dns_options_argvalidator) Test that argvalidator for validating dns_options value is correctly defined. ... ok test_dns_search_without_ipv4_and_ipv6_configuration (__main__.TestValidator.test_dns_search_without_ipv4_and_ipv6_configuration) Test that configuring DNS search setting is not allowed when both IPv4 and ... ok test_empty (__main__.TestValidator.test_empty) ... ok test_ethernet_mac_address (__main__.TestValidator.test_ethernet_mac_address) ... ok test_ethernet_speed_settings (__main__.TestValidator.test_ethernet_speed_settings) ... ok test_ethernet_two_defaults (__main__.TestValidator.test_ethernet_two_defaults) ... ok test_full_state_absent_defaults (__main__.TestValidator.test_full_state_absent_defaults) ... ok test_full_state_absent_no_type (__main__.TestValidator.test_full_state_absent_no_type) ... ok test_full_state_present_no_type (__main__.TestValidator.test_full_state_present_no_type) ... ok test_full_state_present_type_defaults (__main__.TestValidator.test_full_state_present_type_defaults) ... ok test_gateway6_configured_ipv6_disabled (__main__.TestValidator.test_gateway6_configured_ipv6_disabled) Test that configuring `gateway6` and disabling IPv6 are mutually exclusive. ... ok test_infiniband (__main__.TestValidator.test_infiniband) ... ok test_infiniband2 (__main__.TestValidator.test_infiniband2) ... ok test_infiniband3 (__main__.TestValidator.test_infiniband3) ... ok test_interface_name_bond_empty_interface_name (__main__.TestValidator.test_interface_name_bond_empty_interface_name) ... ok test_interface_name_bond_profile_as_interface_name (__main__.TestValidator.test_interface_name_bond_profile_as_interface_name) ... ok test_interface_name_ethernet_None (__main__.TestValidator.test_interface_name_ethernet_None) Check that interface_name cannot be None ... ok test_interface_name_ethernet_default (__main__.TestValidator.test_interface_name_ethernet_default) Use the profile name as interface_name for ethernet profiles ... ok test_interface_name_ethernet_empty (__main__.TestValidator.test_interface_name_ethernet_empty) Allow not to restrict the profile to an interface ... ok test_interface_name_ethernet_explicit (__main__.TestValidator.test_interface_name_ethernet_explicit) Use the explicitly provided interface name ... ok test_interface_name_ethernet_invalid_interface_name (__main__.TestValidator.test_interface_name_ethernet_invalid_interface_name) ... ok test_interface_name_ethernet_invalid_profile (__main__.TestValidator.test_interface_name_ethernet_invalid_profile) Require explicit interface_name when the profile name is not a ... ok test_interface_name_ethernet_mac (__main__.TestValidator.test_interface_name_ethernet_mac) Do not set interface_name when mac is specified ... ok test_invalid_autoconnect (__main__.TestValidator.test_invalid_autoconnect) ... ok test_invalid_cert_path (__main__.TestValidator.test_invalid_cert_path) should fail if a relative path is used for 802.1x certs/keys ... ok test_invalid_ethtool_settings (__main__.TestValidator.test_invalid_ethtool_settings) When both the deprecated and current version of a feature are stated, ... ok test_invalid_mac (__main__.TestValidator.test_invalid_mac) ... ok test_invalid_password_flag (__main__.TestValidator.test_invalid_password_flag) should fail if an invalid private key password flag is set ... ok test_invalid_persistent_state_down (__main__.TestValidator.test_invalid_persistent_state_down) ... ok test_invalid_persistent_state_up (__main__.TestValidator.test_invalid_persistent_state_up) ... ok test_invalid_state_test (__main__.TestValidator.test_invalid_state_test) ... ok test_invalid_values (__main__.TestValidator.test_invalid_values) ... ok test_ipv4_dns_without_ipv4_config (__main__.TestValidator.test_ipv4_dns_without_ipv4_config) Test that configuring IPv4 DNS is not allowed when IPv4 is disabled. ... ok test_ipv6_dns_options_without_ipv6_config (__main__.TestValidator.test_ipv6_dns_options_without_ipv6_config) Test that configuring IPv6 DNS options is not allowed when IPv6 is disabled. ... ok test_ipv6_dns_with_ipv6_disabled (__main__.TestValidator.test_ipv6_dns_with_ipv6_disabled) Test that configuring IPv6 DNS is not allowed when IPv6 is disabled. ... ok test_ipv6_dns_with_static_ipv6_configuration (__main__.TestValidator.test_ipv6_dns_with_static_ipv6_configuration) Test that configuring IPv6 DNS is allowed when static IPv6 is configured. ... ok test_ipv6_dns_without_ipv6_configuration (__main__.TestValidator.test_ipv6_dns_without_ipv6_configuration) Test that configuring IPv6 DNS is not allowed when IPv6 is not configured. ... ok test_ipv6_static (__main__.TestValidator.test_ipv6_static) ... ok test_macvlan (__main__.TestValidator.test_macvlan) ... ok test_persistent_state_absent (__main__.TestValidator.test_persistent_state_absent) ... ok test_persistent_state_present (__main__.TestValidator.test_persistent_state_present) ... ok test_route_metric6_configured_ipv6_disabled (__main__.TestValidator.test_route_metric6_configured_ipv6_disabled) Test that configuring `route_metric6` and disabling IPv6 are mutually ... ok test_route_metric_prefix (__main__.TestValidator.test_route_metric_prefix) ... ok test_route_v6 (__main__.TestValidator.test_route_v6) ... ok test_route_without_interface_name (__main__.TestValidator.test_route_without_interface_name) ... ok test_routes (__main__.TestValidator.test_routes) ... ok test_set_deprecated_ethtool_feature (__main__.TestValidator.test_set_deprecated_ethtool_feature) When passing a deprecated name, their current version is updated. ... ok test_set_deprecated_master (__main__.TestValidator.test_set_deprecated_master) wokeignore:rule=master ... ok test_set_deprecated_slave_type (__main__.TestValidator.test_set_deprecated_slave_type) wokeignore:rule=slave ... ok test_set_ethtool_feature (__main__.TestValidator.test_set_ethtool_feature) When passing the name of an non-deprecated ethtool feature, their ... ok test_state_absent (__main__.TestValidator.test_state_absent) ... ok test_state_absent_down (__main__.TestValidator.test_state_absent_down) ... ok test_state_absent_up_no_type (__main__.TestValidator.test_state_absent_up_no_type) ... ok test_state_absent_up_type (__main__.TestValidator.test_state_absent_up_type) ... ok test_state_down_no_type (__main__.TestValidator.test_state_down_no_type) ... ok test_state_present (__main__.TestValidator.test_state_present) ... ok test_state_present_down (__main__.TestValidator.test_state_present_down) ... ok test_state_present_up (__main__.TestValidator.test_state_present_up) ... ok test_state_up_no_type (__main__.TestValidator.test_state_up_no_type) ... ok test_state_up_type (__main__.TestValidator.test_state_up_type) ... ok test_static_ipv6_configured_ipv6_disabled (__main__.TestValidator.test_static_ipv6_configured_ipv6_disabled) Test that configuring static IPv6 and disabling IPv6 are mutually exclusive. ... ok test_up_ethernet (__main__.TestValidator.test_up_ethernet) ... ok test_up_ethernet_mac_mtu_static_ip (__main__.TestValidator.test_up_ethernet_mac_mtu_static_ip) ... ok test_up_ethernet_no_autoconnect (__main__.TestValidator.test_up_ethernet_no_autoconnect) ... ok test_up_single_v4_dns (__main__.TestValidator.test_up_single_v4_dns) ... ok test_valid_persistent_state (__main__.TestValidator.test_valid_persistent_state) Test that when persistent_state is present and state is set to present ... ok test_validate_allow_empty_string_in_list (__main__.TestValidator.test_validate_allow_empty_string_in_list) Test that when ArgValidatorStr.allow_empty is True, empty string is allowed in ... ok test_validate_bool (__main__.TestValidator.test_validate_bool) ... ok test_validate_dict (__main__.TestValidator.test_validate_dict) ... ok test_validate_disallow_none_in_list (__main__.TestValidator.test_validate_disallow_none_in_list) Test that None is not allowed in ArgValidatorList ... ok test_validate_ignore_auto_dns (__main__.TestValidator.test_validate_ignore_auto_dns) Test and validate a connection profile with ipv4_ignore_auto_dns and ... ok test_validate_int (__main__.TestValidator.test_validate_int) ... ok test_validate_list (__main__.TestValidator.test_validate_list) ... ok test_validate_list_remove_none_or_empty (__main__.TestValidator.test_validate_list_remove_none_or_empty) Test that when ArgValidatorStr.remove_none_or_empty is True, None or empty ... ok test_validate_range (__main__.TestValidator.test_validate_range) ... ok test_validate_str (__main__.TestValidator.test_validate_str) ... ok test_vlan (__main__.TestValidator.test_vlan) ... ok test_wireless_eap (__main__.TestValidator.test_wireless_eap) Test wireless connection with wpa-eap ... ok test_wireless_initscripts (__main__.TestValidator.test_wireless_initscripts) should fail to create wireless connection with initscripts ... ok test_wireless_no_802_1x_for_wpa_eap (__main__.TestValidator.test_wireless_no_802_1x_for_wpa_eap) should fail if no 802.1x parameters are defined for a wireless ... ok test_wireless_no_options_defined (__main__.TestValidator.test_wireless_no_options_defined) should fail if a connection of type='wireless' does not ... ok test_wireless_no_password (__main__.TestValidator.test_wireless_no_password) should fail if wpa-psk is selected and no password provided ... ok test_wireless_password_too_long (__main__.TestValidator.test_wireless_password_too_long) should fail if wpa-psk is selected and no password provided ... ok test_wireless_psk (__main__.TestValidator.test_wireless_psk) Test wireless connection with wpa-psk auth ... ok test_wireless_ssid_too_long (__main__.TestValidator.test_wireless_ssid_too_long) should fail if ssid longer than 32 bytes ... ok test_wireless_unsupported_type (__main__.TestValidator.test_wireless_unsupported_type) should fail if a non wireless connection has wireless settings defined ... ok test_invalid_bond_option_ad (__main__.TestValidatorDictBond.test_invalid_bond_option_ad) Test the ad bond option restrictions ... ok test_invalid_bond_option_arp (__main__.TestValidatorDictBond.test_invalid_bond_option_arp) Test the arp bond option restrictions ... ok test_invalid_bond_option_downdelay_updelay (__main__.TestValidatorDictBond.test_invalid_bond_option_downdelay_updelay) Test the downdelay or updelay bond option restrictions ... ok test_invalid_bond_option_infiniband_port (__main__.TestValidatorDictBond.test_invalid_bond_option_infiniband_port) Test that bond only supports infiniband ports in active-backup mode ... ok test_invalid_bond_option_packets_per_port (__main__.TestValidatorDictBond.test_invalid_bond_option_packets_per_port) Test the packets_per_port bond option restrictions ... ok test_invalid_bond_option_peer_arp_ip_target_arp_interval (__main__.TestValidatorDictBond.test_invalid_bond_option_peer_arp_ip_target_arp_interval) Test the arp_ip_target or arp_interval bond option restrictions ... ok test_invalid_bond_option_peer_notif_delay (__main__.TestValidatorDictBond.test_invalid_bond_option_peer_notif_delay) Test the peer_notif_delay bond option restrictions ... ok test_invalid_bond_option_primary (__main__.TestValidatorDictBond.test_invalid_bond_option_primary) Test the primary bond option restrictions ... ok test_invalid_bond_option_tlb_dynamic_lb (__main__.TestValidatorDictBond.test_invalid_bond_option_tlb_dynamic_lb) Test the tlb_dynamic_lb bond option restrictions ... ok test_invalid_pkey_values (__main__.TestValidatorDictInfiniband.test_invalid_pkey_values) ... ok test_interface_name_and_match_when_match_is_None (__main__.TestValidatorMatch.test_interface_name_and_match_when_match_is_None) Test that when 'match' setting is None, interface name should be profile name ... ok test_interface_name_when_match_not_specified (__main__.TestValidatorMatch.test_interface_name_when_match_not_specified) Test that when 'match' setting is not specified, interface name should be ... ok test_interface_name_when_match_path_is_empty_list (__main__.TestValidatorMatch.test_interface_name_when_match_path_is_empty_list) Test that when 'match.path' setting is empty list, interface name should be ... ok test_interface_name_when_match_path_is_valid (__main__.TestValidatorMatch.test_interface_name_when_match_path_is_valid) Test that when 'match.path' setting contains interface path, interface name ... ok test_match_path_empty_list (__main__.TestValidatorMatch.test_match_path_empty_list) Test that 'match.path' setting can be defined as None, [], [""], [None] or "" ... ok test_match_path_invalid_connection_type (__main__.TestValidatorMatch.test_match_path_invalid_connection_type) Test that when 'match.path' setting is correctly defined but the connection ... ok test_match_path_invalid_setting (__main__.TestValidatorMatch.test_match_path_invalid_setting) Test that values like ["&"] and ["|"] are invalid values for 'match.path' ... ok test_match_path_setting_normalization (__main__.TestValidatorMatch.test_match_path_setting_normalization) Test that 'match.path' setting ["", "usb123", None] will be normalized into ... ok test_match_path_valid_setting (__main__.TestValidatorMatch.test_match_path_valid_setting) Test that values like ["pci-0000:00:03.0"] and ["&!pci-0000:00:0[1-3].0"] are ... ok test_empty_route_table_name (__main__.TestValidatorRouteTable.test_empty_route_table_name) Test that empty string is invalid value for route table name ... ok test_invalid_numeric_route_tables (__main__.TestValidatorRouteTable.test_invalid_numeric_route_tables) Test that the value less than 1 or greater than 4294967295 are the invalid ... ok test_invalid_route_table_names (__main__.TestValidatorRouteTable.test_invalid_route_table_names) Test that the route table names should not be composed from the characters ... ok test_invalid_value_types_for_route_tables (__main__.TestValidatorRouteTable.test_invalid_value_types_for_route_tables) Test that the value types apart from string type and integer type are all ... ok test_parse_rt_tables (__main__.TestValidatorRouteTable.test_parse_rt_tables) Test that the `IPRouteUtils._parse_route_tables_mapping()` will create the ... ok test_table_found_when_validate_route_tables (__main__.TestValidatorRouteTable.test_table_found_when_validate_route_tables) Test that the `validate_route_tables()` will find the table id mapping from ... ok test_table_not_found_when_validate_route_tables (__main__.TestValidatorRouteTable.test_table_not_found_when_validate_route_tables) Test that the validation error is raised when the `validate_route_tables()` cannot ... ok test_type_route_with_gateway (__main__.TestValidatorRouteTable.test_type_route_with_gateway) Test that the route type route can not have a gateway ... ok test_valid_numeric_route_tables (__main__.TestValidatorRouteTable.test_valid_numeric_route_tables) Test that the value between 1 and 4294967295 are the valid value for numeric ... ok test_routing_rule_invalid_from_prefix_length (__main__.TestValidatorRoutingRules.test_routing_rule_invalid_from_prefix_length) Test that the prefix length for from/src cannot be zero when from/src is ... ok test_routing_rule_invalid_incoming_interface_name (__main__.TestValidatorRoutingRules.test_routing_rule_invalid_incoming_interface_name) Test the invalid incoming interface name specified in the routing rule ... ok test_routing_rule_invalid_outgoing_interface_name (__main__.TestValidatorRoutingRules.test_routing_rule_invalid_outgoing_interface_name) Test the invalid outgoing interface name specified in the routing rule ... ok test_routing_rule_invalid_to_prefix_length (__main__.TestValidatorRoutingRules.test_routing_rule_invalid_to_prefix_length) Test that the prefix length for to/dst cannot be zero when to/dst is specified ... ok test_routing_rule_missing_address_family (__main__.TestValidatorRoutingRules.test_routing_rule_missing_address_family) Test that the address family has to be specified if cannot be derived from src ... ok test_routing_rule_missing_table (__main__.TestValidatorRoutingRules.test_routing_rule_missing_table) Test that table has to be defined when the action of the routing rule is ... ok test_routing_rule_validate_address_family (__main__.TestValidatorRoutingRules.test_routing_rule_validate_address_family) Test that the derived address family and the specified address family should be ... ok test_routing_rule_validate_fwmark (__main__.TestValidatorRoutingRules.test_routing_rule_validate_fwmark) Test that fwmark requires fwmask to be specified ... ok test_routing_rule_validate_fwmask (__main__.TestValidatorRoutingRules.test_routing_rule_validate_fwmask) Test that fwmask requires fwmark to be specified ... ok test_routing_rule_validate_suppress_prefixlength (__main__.TestValidatorRoutingRules.test_routing_rule_validate_suppress_prefixlength) Test the invalid suppress_prefixlength setting ... ok test_routing_rule_validate_uid (__main__.TestValidatorRoutingRules.test_routing_rule_validate_uid) Test the invalid uid specified in the routing rule ... ok test_table_found_when_lookup_named_table (__main__.TestValidatorRoutingRules.test_table_found_when_lookup_named_table) Test that the `validate_route_tables()` will find the table id mapping from ... ok ---------------------------------------------------------------------- Ran 150 tests in 0.091s OK TASK [Show python2 unit test results] ****************************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:147 Wednesday 31 July 2024 06:26:33 -0400 (0:00:02.052) 0:00:24.364 ******** ok: [managed_node1] => { "python2_result.stderr_lines": "VARIABLE IS NOT DEFINED!: 'dict object' has no attribute 'stderr_lines'" } TASK [Show python3 unit test results] ****************************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:152 Wednesday 31 July 2024 06:26:33 -0400 (0:00:00.027) 0:00:24.391 ******** ok: [managed_node1] => { "python3_result.stderr_lines": [ "test_connection_ensure_setting (__main__.TestNM.test_connection_ensure_setting) ... ok", "test_connection_list (__main__.TestNM.test_connection_list) ... ok", "test_path_to_glib_bytes (__main__.TestNM.test_path_to_glib_bytes) ... ok", "test_link_read_permaddress (__main__.TestSysUtils.test_link_read_permaddress) ... ok", "test_convert_passwd_flags_nm (__main__.TestUtils.test_convert_passwd_flags_nm) ... ok", "test_mac_ntoa (__main__.TestUtils.test_mac_ntoa) ... ok", "test_802_1x_1 (__main__.TestValidator.test_802_1x_1)", "Test private key with password ... ok", "test_802_1x_2 (__main__.TestValidator.test_802_1x_2)", "Test 802.1x profile with unencrypted private key, ... ok", "test_802_1x_3 (__main__.TestValidator.test_802_1x_3)", "Test 802.1x profile with unencrypted private key and ca_path ... ok", "test_802_1x_ca_path_and_system_ca_certs (__main__.TestValidator.test_802_1x_ca_path_and_system_ca_certs)", "should fail if ca_path and system_ca_certs are used together ... ok", "test_802_1x_initscripts (__main__.TestValidator.test_802_1x_initscripts)", "should fail to create ieee802_1x connection with initscripts ... ok", "test_802_1x_unsupported_type (__main__.TestValidator.test_802_1x_unsupported_type)", "should fail if a non ethernet/wireless connection has 802.1x settings defined ... ok", "test_absent (__main__.TestValidator.test_absent) ... ok", "test_auto6_enabled_ipv6_disabled (__main__.TestValidator.test_auto6_enabled_ipv6_disabled)", "Test that enabling `auto6` and disabling IPv6 are mutually exclusive. ... ok", "test_auto_gateway_false (__main__.TestValidator.test_auto_gateway_false) ... ok", "test_auto_gateway_no_gateway (__main__.TestValidator.test_auto_gateway_no_gateway) ... ok", "test_auto_gateway_true (__main__.TestValidator.test_auto_gateway_true) ... ok", "test_bond (__main__.TestValidator.test_bond) ... ok", "test_bond_active_backup (__main__.TestValidator.test_bond_active_backup) ... ok", "test_bridge2 (__main__.TestValidator.test_bridge2) ... ok", "test_bridge_no_dhcp4_auto6 (__main__.TestValidator.test_bridge_no_dhcp4_auto6) ... ok", "test_default_states (__main__.TestValidator.test_default_states) ... ok", "test_default_states_type (__main__.TestValidator.test_default_states_type) ... ok", "test_deprecated_ethtool_names (__main__.TestValidator.test_deprecated_ethtool_names)", "Test that for each validator in ... ok", "test_dns_options_argvalidator (__main__.TestValidator.test_dns_options_argvalidator)", "Test that argvalidator for validating dns_options value is correctly defined. ... ok", "test_dns_search_without_ipv4_and_ipv6_configuration (__main__.TestValidator.test_dns_search_without_ipv4_and_ipv6_configuration)", "Test that configuring DNS search setting is not allowed when both IPv4 and ... ok", "test_empty (__main__.TestValidator.test_empty) ... ok", "test_ethernet_mac_address (__main__.TestValidator.test_ethernet_mac_address) ... ok", "test_ethernet_speed_settings (__main__.TestValidator.test_ethernet_speed_settings) ... ok", "test_ethernet_two_defaults (__main__.TestValidator.test_ethernet_two_defaults) ... ok", "test_full_state_absent_defaults (__main__.TestValidator.test_full_state_absent_defaults) ... ok", "test_full_state_absent_no_type (__main__.TestValidator.test_full_state_absent_no_type) ... ok", "test_full_state_present_no_type (__main__.TestValidator.test_full_state_present_no_type) ... ok", "test_full_state_present_type_defaults (__main__.TestValidator.test_full_state_present_type_defaults) ... ok", "test_gateway6_configured_ipv6_disabled (__main__.TestValidator.test_gateway6_configured_ipv6_disabled)", "Test that configuring `gateway6` and disabling IPv6 are mutually exclusive. ... ok", "test_infiniband (__main__.TestValidator.test_infiniband) ... ok", "test_infiniband2 (__main__.TestValidator.test_infiniband2) ... ok", "test_infiniband3 (__main__.TestValidator.test_infiniband3) ... ok", "test_interface_name_bond_empty_interface_name (__main__.TestValidator.test_interface_name_bond_empty_interface_name) ... ok", "test_interface_name_bond_profile_as_interface_name (__main__.TestValidator.test_interface_name_bond_profile_as_interface_name) ... ok", "test_interface_name_ethernet_None (__main__.TestValidator.test_interface_name_ethernet_None)", "Check that interface_name cannot be None ... ok", "test_interface_name_ethernet_default (__main__.TestValidator.test_interface_name_ethernet_default)", "Use the profile name as interface_name for ethernet profiles ... ok", "test_interface_name_ethernet_empty (__main__.TestValidator.test_interface_name_ethernet_empty)", "Allow not to restrict the profile to an interface ... ok", "test_interface_name_ethernet_explicit (__main__.TestValidator.test_interface_name_ethernet_explicit)", "Use the explicitly provided interface name ... ok", "test_interface_name_ethernet_invalid_interface_name (__main__.TestValidator.test_interface_name_ethernet_invalid_interface_name) ... ok", "test_interface_name_ethernet_invalid_profile (__main__.TestValidator.test_interface_name_ethernet_invalid_profile)", "Require explicit interface_name when the profile name is not a ... ok", "test_interface_name_ethernet_mac (__main__.TestValidator.test_interface_name_ethernet_mac)", "Do not set interface_name when mac is specified ... ok", "test_invalid_autoconnect (__main__.TestValidator.test_invalid_autoconnect) ... ok", "test_invalid_cert_path (__main__.TestValidator.test_invalid_cert_path)", "should fail if a relative path is used for 802.1x certs/keys ... ok", "test_invalid_ethtool_settings (__main__.TestValidator.test_invalid_ethtool_settings)", "When both the deprecated and current version of a feature are stated, ... ok", "test_invalid_mac (__main__.TestValidator.test_invalid_mac) ... ok", "test_invalid_password_flag (__main__.TestValidator.test_invalid_password_flag)", "should fail if an invalid private key password flag is set ... ok", "test_invalid_persistent_state_down (__main__.TestValidator.test_invalid_persistent_state_down) ... ok", "test_invalid_persistent_state_up (__main__.TestValidator.test_invalid_persistent_state_up) ... ok", "test_invalid_state_test (__main__.TestValidator.test_invalid_state_test) ... ok", "test_invalid_values (__main__.TestValidator.test_invalid_values) ... ok", "test_ipv4_dns_without_ipv4_config (__main__.TestValidator.test_ipv4_dns_without_ipv4_config)", "Test that configuring IPv4 DNS is not allowed when IPv4 is disabled. ... ok", "test_ipv6_dns_options_without_ipv6_config (__main__.TestValidator.test_ipv6_dns_options_without_ipv6_config)", "Test that configuring IPv6 DNS options is not allowed when IPv6 is disabled. ... ok", "test_ipv6_dns_with_ipv6_disabled (__main__.TestValidator.test_ipv6_dns_with_ipv6_disabled)", "Test that configuring IPv6 DNS is not allowed when IPv6 is disabled. ... ok", "test_ipv6_dns_with_static_ipv6_configuration (__main__.TestValidator.test_ipv6_dns_with_static_ipv6_configuration)", "Test that configuring IPv6 DNS is allowed when static IPv6 is configured. ... ok", "test_ipv6_dns_without_ipv6_configuration (__main__.TestValidator.test_ipv6_dns_without_ipv6_configuration)", "Test that configuring IPv6 DNS is not allowed when IPv6 is not configured. ... ok", "test_ipv6_static (__main__.TestValidator.test_ipv6_static) ... ok", "test_macvlan (__main__.TestValidator.test_macvlan) ... ok", "test_persistent_state_absent (__main__.TestValidator.test_persistent_state_absent) ... ok", "test_persistent_state_present (__main__.TestValidator.test_persistent_state_present) ... ok", "test_route_metric6_configured_ipv6_disabled (__main__.TestValidator.test_route_metric6_configured_ipv6_disabled)", "Test that configuring `route_metric6` and disabling IPv6 are mutually ... ok", "test_route_metric_prefix (__main__.TestValidator.test_route_metric_prefix) ... ok", "test_route_v6 (__main__.TestValidator.test_route_v6) ... ok", "test_route_without_interface_name (__main__.TestValidator.test_route_without_interface_name) ... ok", "test_routes (__main__.TestValidator.test_routes) ... ok", "test_set_deprecated_ethtool_feature (__main__.TestValidator.test_set_deprecated_ethtool_feature)", "When passing a deprecated name, their current version is updated. ... ok", "test_set_deprecated_master (__main__.TestValidator.test_set_deprecated_master)", "wokeignore:rule=master ... ok", "test_set_deprecated_slave_type (__main__.TestValidator.test_set_deprecated_slave_type)", "wokeignore:rule=slave ... ok", "test_set_ethtool_feature (__main__.TestValidator.test_set_ethtool_feature)", "When passing the name of an non-deprecated ethtool feature, their ... ok", "test_state_absent (__main__.TestValidator.test_state_absent) ... ok", "test_state_absent_down (__main__.TestValidator.test_state_absent_down) ... ok", "test_state_absent_up_no_type (__main__.TestValidator.test_state_absent_up_no_type) ... ok", "test_state_absent_up_type (__main__.TestValidator.test_state_absent_up_type) ... ok", "test_state_down_no_type (__main__.TestValidator.test_state_down_no_type) ... ok", "test_state_present (__main__.TestValidator.test_state_present) ... ok", "test_state_present_down (__main__.TestValidator.test_state_present_down) ... ok", "test_state_present_up (__main__.TestValidator.test_state_present_up) ... ok", "test_state_up_no_type (__main__.TestValidator.test_state_up_no_type) ... ok", "test_state_up_type (__main__.TestValidator.test_state_up_type) ... ok", "test_static_ipv6_configured_ipv6_disabled (__main__.TestValidator.test_static_ipv6_configured_ipv6_disabled)", "Test that configuring static IPv6 and disabling IPv6 are mutually exclusive. ... ok", "test_up_ethernet (__main__.TestValidator.test_up_ethernet) ... ok", "test_up_ethernet_mac_mtu_static_ip (__main__.TestValidator.test_up_ethernet_mac_mtu_static_ip) ... ok", "test_up_ethernet_no_autoconnect (__main__.TestValidator.test_up_ethernet_no_autoconnect) ... ok", "test_up_single_v4_dns (__main__.TestValidator.test_up_single_v4_dns) ... ok", "test_valid_persistent_state (__main__.TestValidator.test_valid_persistent_state)", "Test that when persistent_state is present and state is set to present ... ok", "test_validate_allow_empty_string_in_list (__main__.TestValidator.test_validate_allow_empty_string_in_list)", "Test that when ArgValidatorStr.allow_empty is True, empty string is allowed in ... ok", "test_validate_bool (__main__.TestValidator.test_validate_bool) ... ok", "test_validate_dict (__main__.TestValidator.test_validate_dict) ... ok", "test_validate_disallow_none_in_list (__main__.TestValidator.test_validate_disallow_none_in_list)", "Test that None is not allowed in ArgValidatorList ... ok", "test_validate_ignore_auto_dns (__main__.TestValidator.test_validate_ignore_auto_dns)", "Test and validate a connection profile with ipv4_ignore_auto_dns and ... ok", "test_validate_int (__main__.TestValidator.test_validate_int) ... ok", "test_validate_list (__main__.TestValidator.test_validate_list) ... ok", "test_validate_list_remove_none_or_empty (__main__.TestValidator.test_validate_list_remove_none_or_empty)", "Test that when ArgValidatorStr.remove_none_or_empty is True, None or empty ... ok", "test_validate_range (__main__.TestValidator.test_validate_range) ... ok", "test_validate_str (__main__.TestValidator.test_validate_str) ... ok", "test_vlan (__main__.TestValidator.test_vlan) ... ok", "test_wireless_eap (__main__.TestValidator.test_wireless_eap)", "Test wireless connection with wpa-eap ... ok", "test_wireless_initscripts (__main__.TestValidator.test_wireless_initscripts)", "should fail to create wireless connection with initscripts ... ok", "test_wireless_no_802_1x_for_wpa_eap (__main__.TestValidator.test_wireless_no_802_1x_for_wpa_eap)", "should fail if no 802.1x parameters are defined for a wireless ... ok", "test_wireless_no_options_defined (__main__.TestValidator.test_wireless_no_options_defined)", "should fail if a connection of type='wireless' does not ... ok", "test_wireless_no_password (__main__.TestValidator.test_wireless_no_password)", "should fail if wpa-psk is selected and no password provided ... ok", "test_wireless_password_too_long (__main__.TestValidator.test_wireless_password_too_long)", "should fail if wpa-psk is selected and no password provided ... ok", "test_wireless_psk (__main__.TestValidator.test_wireless_psk)", "Test wireless connection with wpa-psk auth ... ok", "test_wireless_ssid_too_long (__main__.TestValidator.test_wireless_ssid_too_long)", "should fail if ssid longer than 32 bytes ... ok", "test_wireless_unsupported_type (__main__.TestValidator.test_wireless_unsupported_type)", "should fail if a non wireless connection has wireless settings defined ... ok", "test_invalid_bond_option_ad (__main__.TestValidatorDictBond.test_invalid_bond_option_ad)", "Test the ad bond option restrictions ... ok", "test_invalid_bond_option_arp (__main__.TestValidatorDictBond.test_invalid_bond_option_arp)", "Test the arp bond option restrictions ... ok", "test_invalid_bond_option_downdelay_updelay (__main__.TestValidatorDictBond.test_invalid_bond_option_downdelay_updelay)", "Test the downdelay or updelay bond option restrictions ... ok", "test_invalid_bond_option_infiniband_port (__main__.TestValidatorDictBond.test_invalid_bond_option_infiniband_port)", "Test that bond only supports infiniband ports in active-backup mode ... ok", "test_invalid_bond_option_packets_per_port (__main__.TestValidatorDictBond.test_invalid_bond_option_packets_per_port)", "Test the packets_per_port bond option restrictions ... ok", "test_invalid_bond_option_peer_arp_ip_target_arp_interval (__main__.TestValidatorDictBond.test_invalid_bond_option_peer_arp_ip_target_arp_interval)", "Test the arp_ip_target or arp_interval bond option restrictions ... ok", "test_invalid_bond_option_peer_notif_delay (__main__.TestValidatorDictBond.test_invalid_bond_option_peer_notif_delay)", "Test the peer_notif_delay bond option restrictions ... ok", "test_invalid_bond_option_primary (__main__.TestValidatorDictBond.test_invalid_bond_option_primary)", "Test the primary bond option restrictions ... ok", "test_invalid_bond_option_tlb_dynamic_lb (__main__.TestValidatorDictBond.test_invalid_bond_option_tlb_dynamic_lb)", "Test the tlb_dynamic_lb bond option restrictions ... ok", "test_invalid_pkey_values (__main__.TestValidatorDictInfiniband.test_invalid_pkey_values) ... ok", "test_interface_name_and_match_when_match_is_None (__main__.TestValidatorMatch.test_interface_name_and_match_when_match_is_None)", "Test that when 'match' setting is None, interface name should be profile name ... ok", "test_interface_name_when_match_not_specified (__main__.TestValidatorMatch.test_interface_name_when_match_not_specified)", "Test that when 'match' setting is not specified, interface name should be ... ok", "test_interface_name_when_match_path_is_empty_list (__main__.TestValidatorMatch.test_interface_name_when_match_path_is_empty_list)", "Test that when 'match.path' setting is empty list, interface name should be ... ok", "test_interface_name_when_match_path_is_valid (__main__.TestValidatorMatch.test_interface_name_when_match_path_is_valid)", "Test that when 'match.path' setting contains interface path, interface name ... ok", "test_match_path_empty_list (__main__.TestValidatorMatch.test_match_path_empty_list)", "Test that 'match.path' setting can be defined as None, [], [\"\"], [None] or \"\" ... ok", "test_match_path_invalid_connection_type (__main__.TestValidatorMatch.test_match_path_invalid_connection_type)", "Test that when 'match.path' setting is correctly defined but the connection ... ok", "test_match_path_invalid_setting (__main__.TestValidatorMatch.test_match_path_invalid_setting)", "Test that values like [\"&\"] and [\"|\"] are invalid values for 'match.path' ... ok", "test_match_path_setting_normalization (__main__.TestValidatorMatch.test_match_path_setting_normalization)", "Test that 'match.path' setting [\"\", \"usb123\", None] will be normalized into ... ok", "test_match_path_valid_setting (__main__.TestValidatorMatch.test_match_path_valid_setting)", "Test that values like [\"pci-0000:00:03.0\"] and [\"&!pci-0000:00:0[1-3].0\"] are ... ok", "test_empty_route_table_name (__main__.TestValidatorRouteTable.test_empty_route_table_name)", "Test that empty string is invalid value for route table name ... ok", "test_invalid_numeric_route_tables (__main__.TestValidatorRouteTable.test_invalid_numeric_route_tables)", "Test that the value less than 1 or greater than 4294967295 are the invalid ... ok", "test_invalid_route_table_names (__main__.TestValidatorRouteTable.test_invalid_route_table_names)", "Test that the route table names should not be composed from the characters ... ok", "test_invalid_value_types_for_route_tables (__main__.TestValidatorRouteTable.test_invalid_value_types_for_route_tables)", "Test that the value types apart from string type and integer type are all ... ok", "test_parse_rt_tables (__main__.TestValidatorRouteTable.test_parse_rt_tables)", "Test that the `IPRouteUtils._parse_route_tables_mapping()` will create the ... ok", "test_table_found_when_validate_route_tables (__main__.TestValidatorRouteTable.test_table_found_when_validate_route_tables)", "Test that the `validate_route_tables()` will find the table id mapping from ... ok", "test_table_not_found_when_validate_route_tables (__main__.TestValidatorRouteTable.test_table_not_found_when_validate_route_tables)", "Test that the validation error is raised when the `validate_route_tables()` cannot ... ok", "test_type_route_with_gateway (__main__.TestValidatorRouteTable.test_type_route_with_gateway)", "Test that the route type route can not have a gateway ... ok", "test_valid_numeric_route_tables (__main__.TestValidatorRouteTable.test_valid_numeric_route_tables)", "Test that the value between 1 and 4294967295 are the valid value for numeric ... ok", "test_routing_rule_invalid_from_prefix_length (__main__.TestValidatorRoutingRules.test_routing_rule_invalid_from_prefix_length)", "Test that the prefix length for from/src cannot be zero when from/src is ... ok", "test_routing_rule_invalid_incoming_interface_name (__main__.TestValidatorRoutingRules.test_routing_rule_invalid_incoming_interface_name)", "Test the invalid incoming interface name specified in the routing rule ... ok", "test_routing_rule_invalid_outgoing_interface_name (__main__.TestValidatorRoutingRules.test_routing_rule_invalid_outgoing_interface_name)", "Test the invalid outgoing interface name specified in the routing rule ... ok", "test_routing_rule_invalid_to_prefix_length (__main__.TestValidatorRoutingRules.test_routing_rule_invalid_to_prefix_length)", "Test that the prefix length for to/dst cannot be zero when to/dst is specified ... ok", "test_routing_rule_missing_address_family (__main__.TestValidatorRoutingRules.test_routing_rule_missing_address_family)", "Test that the address family has to be specified if cannot be derived from src ... ok", "test_routing_rule_missing_table (__main__.TestValidatorRoutingRules.test_routing_rule_missing_table)", "Test that table has to be defined when the action of the routing rule is ... ok", "test_routing_rule_validate_address_family (__main__.TestValidatorRoutingRules.test_routing_rule_validate_address_family)", "Test that the derived address family and the specified address family should be ... ok", "test_routing_rule_validate_fwmark (__main__.TestValidatorRoutingRules.test_routing_rule_validate_fwmark)", "Test that fwmark requires fwmask to be specified ... ok", "test_routing_rule_validate_fwmask (__main__.TestValidatorRoutingRules.test_routing_rule_validate_fwmask)", "Test that fwmask requires fwmark to be specified ... ok", "test_routing_rule_validate_suppress_prefixlength (__main__.TestValidatorRoutingRules.test_routing_rule_validate_suppress_prefixlength)", "Test the invalid suppress_prefixlength setting ... ok", "test_routing_rule_validate_uid (__main__.TestValidatorRoutingRules.test_routing_rule_validate_uid)", "Test the invalid uid specified in the routing rule ... ok", "test_table_found_when_lookup_named_table (__main__.TestValidatorRoutingRules.test_table_found_when_lookup_named_table)", "Test that the `validate_route_tables()` will find the table id mapping from ... ok", "", "----------------------------------------------------------------------", "Ran 150 tests in 0.091s", "", "OK" ] } TASK [Remove local tar file] *************************************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:158 Wednesday 31 July 2024 06:26:33 -0400 (0:00:00.033) 0:00:24.425 ******** changed: [managed_node1 -> localhost] => { "changed": true, "path": "/tmp/lsrtest_yzcw5dh_.tar", "state": "absent" } TASK [Remove tempdir] ********************************************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:164 Wednesday 31 July 2024 06:26:33 -0400 (0:00:00.259) 0:00:24.685 ******** changed: [managed_node1] => { "changed": true, "path": "/tmp/lsrtest_udbi3nxg", "state": "absent" } TASK [Verify network state restored to default] ******************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:169 Wednesday 31 July 2024 06:26:34 -0400 (0:00:00.411) 0:00:25.097 ******** included: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tasks/check_network_dns.yml for managed_node1 TASK [Check routes and DNS] **************************************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tasks/check_network_dns.yml:6 Wednesday 31 July 2024 06:26:34 -0400 (0:00:00.026) 0:00:25.124 ******** ok: [managed_node1] => { "changed": false, "cmd": "set -euo pipefail\necho IP\nip a\necho IP ROUTE\nip route\necho IP -6 ROUTE\nip -6 route\necho RESOLV\nif [ -f /etc/resolv.conf ]; then\n cat /etc/resolv.conf\nelse\n echo NO /etc/resolv.conf\n ls -alrtF /etc/resolv.* || :\nfi\n", "delta": "0:00:00.009194", "end": "2024-07-31 06:26:34.686499", "rc": 0, "start": "2024-07-31 06:26:34.677305" } STDOUT: IP 1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host noprefixroute valid_lft forever preferred_lft forever 2: eth0: mtu 9001 qdisc mq state UP group default qlen 1000 link/ether 0e:b8:dd:28:57:e1 brd ff:ff:ff:ff:ff:ff altname enX0 inet 10.31.42.191/22 brd 10.31.43.255 scope global dynamic noprefixroute eth0 valid_lft 3416sec preferred_lft 3416sec inet6 fe80::a687:c269:b07:abda/64 scope link noprefixroute valid_lft forever preferred_lft forever IP ROUTE default via 10.31.40.1 dev eth0 proto dhcp src 10.31.42.191 metric 100 10.31.40.0/22 dev eth0 proto kernel scope link src 10.31.42.191 metric 100 IP -6 ROUTE fe80::/64 dev eth0 proto kernel metric 1024 pref medium RESOLV # This is /run/systemd/resolve/stub-resolv.conf managed by man:systemd-resolved(8). # Do not edit. # # This file might be symlinked as /etc/resolv.conf. If you're looking at # /etc/resolv.conf and seeing this text, you have followed the symlink. # # This is a dynamic resolv.conf file for connecting local clients to the # internal DNS stub resolver of systemd-resolved. This file lists all # configured search domains. # # Run "resolvectl status" to see details about the uplink DNS servers # currently in use. # # Third party programs should typically not access this file directly, but only # through the symlink at /etc/resolv.conf. To manage man:resolv.conf(5) in a # different way, replace this symlink by a static file or a different symlink. # # See man:systemd-resolved.service(8) for details about the supported modes of # operation for /etc/resolv.conf. nameserver 127.0.0.53 options edns0 trust-ad search us-east-1.aws.redhat.com TASK [Verify DNS and network connectivity] ************************************* task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tasks/check_network_dns.yml:24 Wednesday 31 July 2024 06:26:34 -0400 (0:00:00.413) 0:00:25.537 ******** skipping: [managed_node1] => { "changed": false, "false_condition": "ansible_facts[\"distribution\"] == \"CentOS\"", "skip_reason": "Conditional result was False" } TASK [Ensure that at least one python unit test ran] *************************** task path: /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:172 Wednesday 31 July 2024 06:26:34 -0400 (0:00:00.018) 0:00:25.556 ******** skipping: [managed_node1] => { "changed": false, "false_condition": "not python2_available is succeeded and not python3_available is succeeded", "skip_reason": "Conditional result was False" } PLAY RECAP ********************************************************************* managed_node1 : ok=33 changed=8 unreachable=0 failed=0 skipped=10 rescued=0 ignored=2 Wednesday 31 July 2024 06:26:34 -0400 (0:00:00.033) 0:00:25.589 ******** =============================================================================== Install dependencies ---------------------------------------------------- 9.73s /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:9 Untar testrepo.tar ------------------------------------------------------ 2.12s /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:66 Run python3 unit tests -------------------------------------------------- 2.05s /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:138 Gathering Facts --------------------------------------------------------- 1.37s /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:3 Copy testrepo.tar to the remote system ---------------------------------- 1.20s /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:60 Copy unit test to remote system ----------------------------------------- 1.07s /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:97 Gathering Facts --------------------------------------------------------- 0.98s /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:23 Create subdirectory '/ansible/module_utils' under '/tmp/lsrtest_udbi3nxg' --- 0.94s /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:72 Check if system is ostree ----------------------------------------------- 0.53s /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tasks/el_repo_setup.yml:17 Create tempdir for code to test ----------------------------------------- 0.51s /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:28 Fake out python module directories, primarily for python2 --------------- 0.42s /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:88 Check if python2 is available ------------------------------------------- 0.41s /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:114 Check routes and DNS ---------------------------------------------------- 0.41s /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tasks/check_network_dns.yml:6 List the files in /tmp/lsrtest_udbi3nxg --------------------------------- 0.41s /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:107 Remove tempdir ---------------------------------------------------------- 0.41s /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:164 Move module_utils to ansible directory ---------------------------------- 0.41s /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:81 Check if python3 is available ------------------------------------------- 0.41s /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:131 Get tempfile for tar ---------------------------------------------------- 0.38s /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:34 Find parent directory and path of modules ------------------------------- 0.38s /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tasks/get_modules_and_utils_paths.yml:42 Create Tar file --------------------------------------------------------- 0.36s /tmp/tmp.WlspkZzDER/ansible_collections/fedora/linux_system_roles/tests/network/tests_unit.yml:48