0s autopkgtest [04:43:33]: starting date and time: 2025-05-03 04:43:33+0000 0s autopkgtest [04:43:33]: git checkout: 9986aa8c Merge branch 'skia/fix_network_interface' into 'ubuntu/production' 0s autopkgtest [04:43:33]: host juju-7f2275-prod-proposed-migration-environment-9; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.stsf3u3y/out --timeout-copy=6000 --setup-commands 'ln -s /dev/null /etc/systemd/system/bluetooth.service; printf "http_proxy=http://squid.internal:3128\nhttps_proxy=http://squid.internal:3128\nno_proxy=127.0.0.1,127.0.1.1,localhost,localdomain,internal,login.ubuntu.com,archive.ubuntu.com,ports.ubuntu.com,security.ubuntu.com,ddebs.ubuntu.com,changelogs.ubuntu.com,keyserver.ubuntu.com,launchpadlibrarian.net,launchpadcontent.net,launchpad.net,keystone.ps5.canonical.com,objectstorage.prodstack5.canonical.com,radosgw.ps5.canonical.com\n" >> /etc/environment' --apt-pocket=proposed=src:python-redis --apt-upgrade ansible --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=python-redis/5.2.1-1 -- lxd -r lxd-armhf-10.145.243.229 lxd-armhf-10.145.243.229:autopkgtest/ubuntu/questing/armhf 19s autopkgtest [04:43:52]: testbed dpkg architecture: armhf 21s autopkgtest [04:43:54]: testbed apt version: 3.0.0 25s autopkgtest [04:43:58]: @@@@@@@@@@@@@@@@@@@@ test bed setup 27s autopkgtest [04:44:00]: testbed release detected to be: None 34s autopkgtest [04:44:07]: updating testbed package index (apt update) 36s Get:1 http://ftpmaster.internal/ubuntu questing-proposed InRelease [110 kB] 36s Get:2 http://ftpmaster.internal/ubuntu questing InRelease [110 kB] 36s Get:3 http://ftpmaster.internal/ubuntu questing-updates InRelease [110 kB] 36s Get:4 http://ftpmaster.internal/ubuntu questing-security InRelease [110 kB] 36s Get:5 http://ftpmaster.internal/ubuntu questing-proposed/main Sources [162 kB] 36s Get:6 http://ftpmaster.internal/ubuntu questing-proposed/multiverse Sources [43.3 kB] 36s Get:7 http://ftpmaster.internal/ubuntu questing-proposed/universe Sources [1839 kB] 36s Get:8 http://ftpmaster.internal/ubuntu questing-proposed/main armhf Packages [197 kB] 36s Get:9 http://ftpmaster.internal/ubuntu questing-proposed/universe armhf Packages [1341 kB] 37s Get:10 http://ftpmaster.internal/ubuntu questing-proposed/multiverse armhf Packages [12.2 kB] 37s Get:11 http://ftpmaster.internal/ubuntu questing/universe Sources [21.1 MB] 37s Get:12 http://ftpmaster.internal/ubuntu questing/multiverse Sources [299 kB] 37s Get:13 http://ftpmaster.internal/ubuntu questing/main Sources [1395 kB] 37s Get:14 http://ftpmaster.internal/ubuntu questing/main armhf Packages [1358 kB] 37s Get:15 http://ftpmaster.internal/ubuntu questing/universe armhf Packages [15.4 MB] 38s Get:16 http://ftpmaster.internal/ubuntu questing/multiverse armhf Packages [173 kB] 41s Fetched 43.7 MB in 5s (8153 kB/s) 42s Reading package lists... 48s autopkgtest [04:44:21]: upgrading testbed (apt dist-upgrade and autopurge) 49s Reading package lists... 49s Building dependency tree... 49s Reading state information... 50s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 50s Starting 2 pkgProblemResolver with broken count: 0 50s Done 51s Entering ResolveByKeep 51s 51s Calculating upgrade... 52s The following packages will be upgraded: 52s base-files distro-info-data dpkg dpkg-dev ed fwupd htop libdpkg-perl 52s libftdi1-2 libfwupd3 libnpth0t64 libnvme1t64 libsensors-config libsensors5 52s liburcu8t64 motd-news-config nano ubuntu-pro-client ubuntu-pro-client-l10n 52s usb.ids 52s 20 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 52s Need to get 5431 kB of archives. 52s After this operation, 3722 kB disk space will be freed. 52s Get:1 http://ftpmaster.internal/ubuntu questing/main armhf motd-news-config all 13.7ubuntu1 [5260 B] 52s Get:2 http://ftpmaster.internal/ubuntu questing/main armhf base-files armhf 13.7ubuntu1 [75.4 kB] 52s Get:3 http://ftpmaster.internal/ubuntu questing/main armhf dpkg armhf 1.22.18ubuntu3 [1254 kB] 52s Get:4 http://ftpmaster.internal/ubuntu questing/main armhf libnpth0t64 armhf 1.8-3 [7716 B] 52s Get:5 http://ftpmaster.internal/ubuntu questing/main armhf distro-info-data all 0.64 [6664 B] 52s Get:6 http://ftpmaster.internal/ubuntu questing/main armhf ubuntu-pro-client-l10n armhf 35.1ubuntu0 [19.7 kB] 52s Get:7 http://ftpmaster.internal/ubuntu questing/main armhf ubuntu-pro-client armhf 35.1ubuntu0 [258 kB] 52s Get:8 http://ftpmaster.internal/ubuntu questing/main armhf ed armhf 1.21.1-1 [53.0 kB] 52s Get:9 http://ftpmaster.internal/ubuntu questing/main armhf libsensors-config all 1:3.6.2-2 [6756 B] 52s Get:10 http://ftpmaster.internal/ubuntu questing/main armhf libsensors5 armhf 1:3.6.2-2 [26.8 kB] 52s Get:11 http://ftpmaster.internal/ubuntu questing/main armhf liburcu8t64 armhf 0.15.2-2 [57.3 kB] 53s Get:12 http://ftpmaster.internal/ubuntu questing/main armhf nano armhf 8.4-1 [278 kB] 53s Get:13 http://ftpmaster.internal/ubuntu questing/main armhf usb.ids all 2025.04.01-1 [223 kB] 53s Get:14 http://ftpmaster.internal/ubuntu questing/main armhf dpkg-dev all 1.22.18ubuntu3 [1089 kB] 53s Get:15 http://ftpmaster.internal/ubuntu questing/main armhf libdpkg-perl all 1.22.18ubuntu3 [281 kB] 53s Get:16 http://ftpmaster.internal/ubuntu questing/main armhf fwupd armhf 2.0.8-3 [1414 kB] 53s Get:17 http://ftpmaster.internal/ubuntu questing/main armhf libfwupd3 armhf 2.0.8-3 [126 kB] 53s Get:18 http://ftpmaster.internal/ubuntu questing/main armhf htop armhf 3.4.1-4 [147 kB] 53s Get:19 http://ftpmaster.internal/ubuntu questing/main armhf libftdi1-2 armhf 1.5-10 [27.8 kB] 53s Get:20 http://ftpmaster.internal/ubuntu questing/main armhf libnvme1t64 armhf 1.13-2 [74.3 kB] 53s Fetched 5431 kB in 1s (7161 kB/s) 53s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 63953 files and directories currently installed.) 53s Preparing to unpack .../motd-news-config_13.7ubuntu1_all.deb ... 53s Unpacking motd-news-config (13.7ubuntu1) over (13.6ubuntu2) ... 53s Preparing to unpack .../base-files_13.7ubuntu1_armhf.deb ... 53s Unpacking base-files (13.7ubuntu1) over (13.6ubuntu2) ... 53s Setting up base-files (13.7ubuntu1) ... 53s Installing new version of config file /etc/issue ... 53s Installing new version of config file /etc/issue.net ... 53s Installing new version of config file /etc/lsb-release ... 54s motd-news.service is a disabled or a static unit not running, not starting it. 54s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 63953 files and directories currently installed.) 54s Preparing to unpack .../dpkg_1.22.18ubuntu3_armhf.deb ... 54s Unpacking dpkg (1.22.18ubuntu3) over (1.22.18ubuntu2) ... 54s Setting up dpkg (1.22.18ubuntu3) ... 55s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 63953 files and directories currently installed.) 55s Preparing to unpack .../libnpth0t64_1.8-3_armhf.deb ... 55s Unpacking libnpth0t64:armhf (1.8-3) over (1.8-2) ... 55s Setting up libnpth0t64:armhf (1.8-3) ... 55s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 63953 files and directories currently installed.) 55s Preparing to unpack .../00-distro-info-data_0.64_all.deb ... 55s Unpacking distro-info-data (0.64) over (0.63) ... 55s Preparing to unpack .../01-ubuntu-pro-client-l10n_35.1ubuntu0_armhf.deb ... 55s Unpacking ubuntu-pro-client-l10n (35.1ubuntu0) over (35) ... 55s Preparing to unpack .../02-ubuntu-pro-client_35.1ubuntu0_armhf.deb ... 55s Unpacking ubuntu-pro-client (35.1ubuntu0) over (35) ... 55s Preparing to unpack .../03-ed_1.21.1-1_armhf.deb ... 55s Unpacking ed (1.21.1-1) over (1.21-1) ... 55s Preparing to unpack .../04-libsensors-config_1%3a3.6.2-2_all.deb ... 55s Unpacking libsensors-config (1:3.6.2-2) over (1:3.6.0-10) ... 55s Preparing to unpack .../05-libsensors5_1%3a3.6.2-2_armhf.deb ... 55s Unpacking libsensors5:armhf (1:3.6.2-2) over (1:3.6.0-10) ... 55s Preparing to unpack .../06-liburcu8t64_0.15.2-2_armhf.deb ... 55s Unpacking liburcu8t64:armhf (0.15.2-2) over (0.15.1-1) ... 55s Preparing to unpack .../07-nano_8.4-1_armhf.deb ... 55s Unpacking nano (8.4-1) over (8.3-1) ... 55s Preparing to unpack .../08-usb.ids_2025.04.01-1_all.deb ... 55s Unpacking usb.ids (2025.04.01-1) over (2025.01.14-1) ... 55s Preparing to unpack .../09-dpkg-dev_1.22.18ubuntu3_all.deb ... 55s Unpacking dpkg-dev (1.22.18ubuntu3) over (1.22.18ubuntu2) ... 55s Preparing to unpack .../10-libdpkg-perl_1.22.18ubuntu3_all.deb ... 55s Unpacking libdpkg-perl (1.22.18ubuntu3) over (1.22.18ubuntu2) ... 55s Preparing to unpack .../11-fwupd_2.0.8-3_armhf.deb ... 56s Unpacking fwupd (2.0.8-3) over (2.0.7-1) ... 56s dpkg: warning: unable to delete old directory '/etc/grub.d': Directory not empty 56s Preparing to unpack .../12-libfwupd3_2.0.8-3_armhf.deb ... 56s Unpacking libfwupd3:armhf (2.0.8-3) over (2.0.7-1) ... 56s Preparing to unpack .../13-htop_3.4.1-4_armhf.deb ... 56s Unpacking htop (3.4.1-4) over (3.4.0-2) ... 56s Preparing to unpack .../14-libftdi1-2_1.5-10_armhf.deb ... 56s Unpacking libftdi1-2:armhf (1.5-10) over (1.5-8build1) ... 56s Preparing to unpack .../15-libnvme1t64_1.13-2_armhf.deb ... 56s Unpacking libnvme1t64 (1.13-2) over (1.11.1-2) ... 56s Setting up motd-news-config (13.7ubuntu1) ... 56s Setting up liburcu8t64:armhf (0.15.2-2) ... 56s Setting up distro-info-data (0.64) ... 56s Setting up htop (3.4.1-4) ... 56s Setting up libsensors-config (1:3.6.2-2) ... 56s Installing new version of config file /etc/sensors3.conf ... 56s Setting up libfwupd3:armhf (2.0.8-3) ... 56s Setting up libftdi1-2:armhf (1.5-10) ... 56s Setting up libnvme1t64 (1.13-2) ... 56s Setting up ed (1.21.1-1) ... 56s Setting up usb.ids (2025.04.01-1) ... 56s Setting up libsensors5:armhf (1:3.6.2-2) ... 56s Setting up libdpkg-perl (1.22.18ubuntu3) ... 56s Setting up nano (8.4-1) ... 56s Installing new version of config file /etc/nanorc ... 56s Setting up ubuntu-pro-client (35.1ubuntu0) ... 56s apparmor_parser: Unable to replace "ubuntu_pro_apt_news". apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 56s 56s apparmor_parser: Unable to replace "apt_methods". apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 56s 56s apparmor_parser: Unable to replace "ubuntu_pro_esm_cache". apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 56s 58s Setting up fwupd (2.0.8-3) ... 58s fwupd-refresh.service is a disabled or a static unit not running, not starting it. 58s fwupd.service is a disabled or a static unit not running, not starting it. 58s Setting up ubuntu-pro-client-l10n (35.1ubuntu0) ... 58s Setting up dpkg-dev (1.22.18ubuntu3) ... 58s Processing triggers for dbus (1.16.2-2ubuntu1) ... 58s Processing triggers for install-info (7.1.1-1) ... 58s Processing triggers for libc-bin (2.41-6ubuntu1) ... 59s Processing triggers for man-db (2.13.0-1) ... 60s Processing triggers for plymouth-theme-ubuntu-text (24.004.60-2ubuntu7) ... 60s Processing triggers for initramfs-tools (0.147ubuntu1) ... 62s Reading package lists... 63s Building dependency tree... 63s Reading state information... 64s Starting pkgProblemResolver with broken count: 0 64s Starting 2 pkgProblemResolver with broken count: 0 64s Done 65s Solving dependencies... 66s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 67s autopkgtest [04:44:40]: rebooting testbed after setup commands that affected boot 106s autopkgtest [04:45:19]: testbed running kernel: Linux 6.8.0-58-generic #60~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Fri Mar 28 14:48:37 UTC 2 130s autopkgtest [04:45:43]: @@@@@@@@@@@@@@@@@@@@ apt-source ansible 141s Get:1 http://ftpmaster.internal/ubuntu questing/universe ansible 11.2.0+dfsg-1 (dsc) [3353 B] 141s Get:2 http://ftpmaster.internal/ubuntu questing/universe ansible 11.2.0+dfsg-1 (tar) [26.7 MB] 141s Get:3 http://ftpmaster.internal/ubuntu questing/universe ansible 11.2.0+dfsg-1 (diff) [32.9 kB] 141s gpgv: Signature made Thu Feb 27 17:38:46 2025 UTC 141s gpgv: using RSA key D847C62510A9C2FF242CE02CD604A1C4823EE0F8 141s gpgv: Can't check signature: No public key 141s dpkg-source: warning: cannot verify inline signature for ./ansible_11.2.0+dfsg-1.dsc: no acceptable signature found 146s autopkgtest [04:45:59]: testing package ansible version 11.2.0+dfsg-1 148s autopkgtest [04:46:01]: build not needed 159s autopkgtest [04:46:12]: test unit-tests-stable.py: preparing testbed 161s Reading package lists... 161s Building dependency tree... 162s Reading state information... 162s Starting pkgProblemResolver with broken count: 0 162s Starting 2 pkgProblemResolver with broken count: 0 162s Done 163s The following NEW packages will be installed: 163s ansible ansible-core fontconfig-config fonts-dejavu-core fonts-dejavu-mono 163s gir1.2-secret-1 git git-man ieee-data libcairo-gobject2 libcairo2 163s liberror-perl libfontconfig1 libfreetype6 libpixman-1-0 libsecret-1-0 163s libsecret-common libsodium23 libxcb-render0 libxcb-shm0 libxrender1 163s libxslt1.1 python3-adal python3-aiohappyeyeballs python3-aiohttp 163s python3-aiosignal python3-async-timeout python3-avro python3-azure 163s python3-azure-storage python3-cachetools python3-cairo python3-click 163s python3-colorama python3-dnspython python3-execnet python3-flake8 163s python3-freezegun python3-frozenlist python3-gi-cairo python3-gitlab 163s python3-google-auth python3-httmock python3-hvac python3-iniconfig 163s python3-isodate python3-joblib python3-kubernetes python3-lxml 163s python3-marshmallow python3-mccabe python3-mock python3-msal 163s python3-msal-extensions python3-msrest python3-msrestazure python3-multidict 163s python3-nacl python3-netaddr python3-nltk python3-paramiko python3-pathspec 163s python3-pluggy python3-portalocker python3-proxmoxer python3-psutil 163s python3-py python3-pyasn1 python3-pyasn1-modules python3-pycodestyle 163s python3-pydash python3-pyflakes python3-pyhcl python3-pytest 163s python3-pytest-forked python3-pytest-mock python3-pytest-xdist python3-pyu2f 163s python3-pyvmomi python3-redis python3-regex python3-requests-oauthlib 163s python3-requests-toolbelt python3-resolvelib python3-responses python3-rsa 163s python3-ruamel.yaml python3-ruamel.yaml.clib python3-strictyaml 163s python3-textfsm python3-tqdm python3-websocket python3-xmltodict 163s python3-yarl yamllint 163s 0 upgraded, 95 newly installed, 0 to remove and 0 not upgraded. 163s Need to get 54.6 MB of archives. 163s After this operation, 903 MB of additional disk space will be used. 163s Get:1 http://ftpmaster.internal/ubuntu questing/universe armhf python3-resolvelib all 1.1.0-1 [25.8 kB] 163s Get:2 http://ftpmaster.internal/ubuntu questing/main armhf libsodium23 armhf 1.0.18-1build3 [139 kB] 163s Get:3 http://ftpmaster.internal/ubuntu questing/main armhf python3-nacl armhf 1.5.0-7 [54.8 kB] 163s Get:4 http://ftpmaster.internal/ubuntu questing/main armhf python3-paramiko all 3.5.1-2ubuntu1 [147 kB] 163s Get:5 http://ftpmaster.internal/ubuntu questing/main armhf python3-dnspython all 2.7.0-1ubuntu1 [167 kB] 163s Get:6 http://ftpmaster.internal/ubuntu questing/main armhf ieee-data all 20240722 [2300 kB] 164s Get:7 http://ftpmaster.internal/ubuntu questing/main armhf python3-netaddr all 1.3.0-1 [363 kB] 164s Get:8 http://ftpmaster.internal/ubuntu questing/universe armhf ansible-core all 2.18.1-4ubuntu1 [1273 kB] 164s Get:9 http://ftpmaster.internal/ubuntu questing/universe armhf ansible all 11.2.0+dfsg-1 [18.1 MB] 165s Get:10 http://ftpmaster.internal/ubuntu questing/main armhf fonts-dejavu-mono all 2.37-8 [502 kB] 165s Get:11 http://ftpmaster.internal/ubuntu questing/main armhf fonts-dejavu-core all 2.37-8 [835 kB] 165s Get:12 http://ftpmaster.internal/ubuntu questing/main armhf fontconfig-config armhf 2.15.0-2.2ubuntu1 [37.9 kB] 165s Get:13 http://ftpmaster.internal/ubuntu questing/main armhf libsecret-common all 0.21.7-1 [5160 B] 165s Get:14 http://ftpmaster.internal/ubuntu questing/main armhf libsecret-1-0 armhf 0.21.7-1 [105 kB] 165s Get:15 http://ftpmaster.internal/ubuntu questing/main armhf gir1.2-secret-1 armhf 0.21.7-1 [9392 B] 165s Get:16 http://ftpmaster.internal/ubuntu questing/main armhf liberror-perl all 0.17030-1 [23.5 kB] 165s Get:17 http://ftpmaster.internal/ubuntu questing/main armhf git-man all 1:2.48.1-0ubuntu1 [1148 kB] 165s Get:18 http://ftpmaster.internal/ubuntu questing/main armhf git armhf 1:2.48.1-0ubuntu1 [4561 kB] 165s Get:19 http://ftpmaster.internal/ubuntu questing/main armhf libfreetype6 armhf 2.13.3+dfsg-1 [330 kB] 165s Get:20 http://ftpmaster.internal/ubuntu questing/main armhf libfontconfig1 armhf 2.15.0-2.2ubuntu1 [114 kB] 165s Get:21 http://ftpmaster.internal/ubuntu questing/main armhf libpixman-1-0 armhf 0.44.0-3 [183 kB] 165s Get:22 http://ftpmaster.internal/ubuntu questing/main armhf libxcb-render0 armhf 1.17.0-2 [15.3 kB] 165s Get:23 http://ftpmaster.internal/ubuntu questing/main armhf libxcb-shm0 armhf 1.17.0-2 [5774 B] 165s Get:24 http://ftpmaster.internal/ubuntu questing/main armhf libxrender1 armhf 1:0.9.10-1.1build1 [16.0 kB] 165s Get:25 http://ftpmaster.internal/ubuntu questing/main armhf libcairo2 armhf 1.18.4-1 [483 kB] 165s Get:26 http://ftpmaster.internal/ubuntu questing/main armhf libcairo-gobject2 armhf 1.18.4-1 [126 kB] 165s Get:27 http://ftpmaster.internal/ubuntu questing/main armhf libxslt1.1 armhf 1.1.39-0exp1ubuntu4 [151 kB] 165s Get:28 http://ftpmaster.internal/ubuntu questing/universe armhf python3-adal all 1.2.7-5 [33.0 kB] 165s Get:29 http://ftpmaster.internal/ubuntu questing/universe armhf python3-aiohappyeyeballs all 2.6.1-1 [11.1 kB] 165s Get:30 http://ftpmaster.internal/ubuntu questing/universe armhf python3-multidict armhf 6.2.0-2 [32.8 kB] 165s Get:31 http://ftpmaster.internal/ubuntu questing/universe armhf python3-yarl armhf 1.13.1-1build2 [91.4 kB] 165s Get:32 http://ftpmaster.internal/ubuntu questing/universe armhf python3-async-timeout all 5.0.1-1 [6830 B] 165s Get:33 http://ftpmaster.internal/ubuntu questing/universe armhf python3-frozenlist armhf 1.5.0-1build2 [47.0 kB] 165s Get:34 http://ftpmaster.internal/ubuntu questing/universe armhf python3-aiosignal all 1.3.2-1 [5182 B] 165s Get:35 http://ftpmaster.internal/ubuntu questing/universe armhf python3-aiohttp armhf 3.10.11-1build1 [289 kB] 165s Get:36 http://ftpmaster.internal/ubuntu questing/universe armhf python3-avro all 1.12.0+dfsg-1 [75.3 kB] 165s Get:37 http://ftpmaster.internal/ubuntu questing/universe armhf python3-isodate all 0.7.0-1 [18.6 kB] 165s Get:38 http://ftpmaster.internal/ubuntu questing/universe armhf python3-requests-oauthlib all 1.3.1-1 [18.8 kB] 165s Get:39 http://ftpmaster.internal/ubuntu questing/universe armhf python3-msrest all 0.6.21-5 [48.7 kB] 165s Get:40 http://ftpmaster.internal/ubuntu questing/universe armhf python3-msrestazure all 0.6.4-4 [27.1 kB] 165s Get:41 http://ftpmaster.internal/ubuntu questing/universe armhf python3-azure-storage all 20250304+git-1 [300 kB] 165s Get:42 http://ftpmaster.internal/ubuntu questing/universe armhf python3-colorama all 0.4.6-4 [32.1 kB] 165s Get:43 http://ftpmaster.internal/ubuntu questing/universe armhf python3-marshmallow all 3.26.1-0.2 [47.5 kB] 165s Get:44 http://ftpmaster.internal/ubuntu questing/universe armhf python3-msal all 1.32.0-1 [100 kB] 165s Get:45 http://ftpmaster.internal/ubuntu questing/main armhf python3-cairo armhf 1.27.0-2 [115 kB] 165s Get:46 http://ftpmaster.internal/ubuntu questing/main armhf python3-gi-cairo armhf 3.50.0-4build1 [7306 B] 165s Get:47 http://ftpmaster.internal/ubuntu questing/universe armhf python3-portalocker all 2.2.1-1 [17.2 kB] 165s Get:48 http://ftpmaster.internal/ubuntu questing/universe armhf python3-msal-extensions all 1.3.1-1 [18.2 kB] 165s Get:49 http://ftpmaster.internal/ubuntu questing/main armhf python3-click all 8.2.0+0.really.8.1.8-1 [80.0 kB] 165s Get:50 http://ftpmaster.internal/ubuntu questing/universe armhf python3-joblib all 1.4.2-3 [205 kB] 165s Get:51 http://ftpmaster.internal/ubuntu questing/universe armhf python3-regex armhf 0.1.20241106-1build1 [270 kB] 165s Get:52 http://ftpmaster.internal/ubuntu questing/universe armhf python3-tqdm all 4.67.1-3 [91.6 kB] 165s Get:53 http://ftpmaster.internal/ubuntu questing/universe armhf python3-nltk all 3.9.1-2 [1006 kB] 165s Get:54 http://ftpmaster.internal/ubuntu questing/main armhf python3-psutil armhf 5.9.8-2build3 [194 kB] 165s Get:55 http://ftpmaster.internal/ubuntu questing/universe armhf python3-pydash all 8.0.3-3 [93.0 kB] 165s Get:56 http://ftpmaster.internal/ubuntu questing/universe armhf python3-ruamel.yaml.clib armhf 0.2.12+ds-1build1 [130 kB] 165s Get:57 http://ftpmaster.internal/ubuntu questing/universe armhf python3-ruamel.yaml all 0.18.10+ds-1 [127 kB] 165s Get:58 http://ftpmaster.internal/ubuntu questing/universe armhf python3-strictyaml all 1.6.1-3 [89.1 kB] 165s Get:59 http://ftpmaster.internal/ubuntu questing/universe armhf python3-websocket all 1.8.0-2 [38.5 kB] 165s Get:60 http://ftpmaster.internal/ubuntu questing/universe armhf python3-azure all 20250304+git-1 [15.9 MB] 166s Get:61 http://ftpmaster.internal/ubuntu questing/main armhf python3-cachetools all 5.3.3-1 [10.3 kB] 166s Get:62 http://ftpmaster.internal/ubuntu questing/universe armhf python3-execnet all 2.1.1-1 [33.4 kB] 166s Get:63 http://ftpmaster.internal/ubuntu questing/universe armhf python3-mccabe all 0.7.0-1 [8678 B] 166s Get:64 http://ftpmaster.internal/ubuntu questing/universe armhf python3-pycodestyle all 2.12.1-2 [30.2 kB] 166s Get:65 http://ftpmaster.internal/ubuntu questing/universe armhf python3-pyflakes all 3.2.0-3 [53.0 kB] 166s Get:66 http://ftpmaster.internal/ubuntu questing/universe armhf python3-flake8 all 7.1.1-3 [44.0 kB] 166s Get:67 http://ftpmaster.internal/ubuntu questing/universe armhf python3-freezegun all 1.5.1-1.2 [15.9 kB] 166s Get:68 http://ftpmaster.internal/ubuntu questing/universe armhf python3-requests-toolbelt all 1.0.0-4 [37.0 kB] 166s Get:69 http://ftpmaster.internal/ubuntu questing/universe armhf python3-gitlab all 1:4.9.0-1 [75.0 kB] 166s Get:70 http://ftpmaster.internal/ubuntu questing/main armhf python3-pyasn1 all 0.6.1-1 [56.4 kB] 166s Get:71 http://ftpmaster.internal/ubuntu questing/main armhf python3-pyasn1-modules all 0.4.1-2 [80.3 kB] 166s Get:72 http://ftpmaster.internal/ubuntu questing/universe armhf python3-pyu2f all 0.1.5-4 [22.9 kB] 166s Get:73 http://ftpmaster.internal/ubuntu questing/universe armhf python3-responses all 0.25.6-1 [40.5 kB] 166s Get:74 http://ftpmaster.internal/ubuntu questing/universe armhf python3-rsa all 4.9-2 [28.2 kB] 166s Get:75 http://ftpmaster.internal/ubuntu questing/universe armhf python3-google-auth all 2.28.2-3 [91.0 kB] 166s Get:76 http://ftpmaster.internal/ubuntu questing/universe armhf python3-httmock all 1.4.0-5 [6544 B] 166s Get:77 http://ftpmaster.internal/ubuntu questing/universe armhf python3-pyhcl all 0.4.4-6 [43.1 kB] 166s Get:78 http://ftpmaster.internal/ubuntu questing/universe armhf python3-hvac all 2.3.0-3 [88.1 kB] 166s Get:79 http://ftpmaster.internal/ubuntu questing/universe armhf python3-iniconfig all 1.1.1-2 [6024 B] 166s Get:80 http://ftpmaster.internal/ubuntu questing/universe armhf python3-kubernetes all 30.1.0-2 [385 kB] 166s Get:81 http://ftpmaster.internal/ubuntu questing/main armhf python3-lxml armhf 5.3.2-1 [1281 kB] 166s Get:82 http://ftpmaster.internal/ubuntu questing/universe armhf python3-pathspec all 0.12.1-1 [24.5 kB] 166s Get:83 http://ftpmaster.internal/ubuntu questing/universe armhf python3-pluggy all 1.5.0-1 [21.0 kB] 166s Get:84 http://ftpmaster.internal/ubuntu questing/universe armhf python3-proxmoxer all 2.2.0-1 [16.2 kB] 166s Get:85 http://ftpmaster.internal/ubuntu questing/universe armhf python3-py all 1.11.0-4 [72.7 kB] 166s Get:86 http://ftpmaster.internal/ubuntu questing/universe armhf python3-pytest all 8.3.5-1 [252 kB] 166s Get:87 http://ftpmaster.internal/ubuntu questing/universe armhf python3-pytest-forked all 1.6.0-3 [7470 B] 166s Get:88 http://ftpmaster.internal/ubuntu questing/universe armhf python3-pytest-mock all 3.14.0-2 [11.7 kB] 166s Get:89 http://ftpmaster.internal/ubuntu questing/universe armhf python3-pytest-xdist all 3.6.1-1 [33.8 kB] 166s Get:90 http://ftpmaster.internal/ubuntu questing/universe armhf python3-pyvmomi all 8.0.3.0.1-1 [532 kB] 166s Get:91 http://ftpmaster.internal/ubuntu questing-proposed/universe armhf python3-redis all 5.2.1-1 [221 kB] 166s Get:92 http://ftpmaster.internal/ubuntu questing/universe armhf python3-textfsm all 1.1.3-3 [29.3 kB] 166s Get:93 http://ftpmaster.internal/ubuntu questing/main armhf python3-xmltodict all 0.13.0-1 [13.4 kB] 166s Get:94 http://ftpmaster.internal/ubuntu questing/universe armhf yamllint all 1.35.1-2 [43.6 kB] 166s Get:95 http://ftpmaster.internal/ubuntu questing/universe armhf python3-mock all 5.1.0-1 [64.1 kB] 167s Fetched 54.6 MB in 3s (17.6 MB/s) 167s Selecting previously unselected package python3-resolvelib. 167s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 63951 files and directories currently installed.) 167s Preparing to unpack .../00-python3-resolvelib_1.1.0-1_all.deb ... 167s Unpacking python3-resolvelib (1.1.0-1) ... 167s Selecting previously unselected package libsodium23:armhf. 167s Preparing to unpack .../01-libsodium23_1.0.18-1build3_armhf.deb ... 167s Unpacking libsodium23:armhf (1.0.18-1build3) ... 167s Selecting previously unselected package python3-nacl. 167s Preparing to unpack .../02-python3-nacl_1.5.0-7_armhf.deb ... 167s Unpacking python3-nacl (1.5.0-7) ... 167s Selecting previously unselected package python3-paramiko. 167s Preparing to unpack .../03-python3-paramiko_3.5.1-2ubuntu1_all.deb ... 167s Unpacking python3-paramiko (3.5.1-2ubuntu1) ... 167s Selecting previously unselected package python3-dnspython. 167s Preparing to unpack .../04-python3-dnspython_2.7.0-1ubuntu1_all.deb ... 167s Unpacking python3-dnspython (2.7.0-1ubuntu1) ... 167s Selecting previously unselected package ieee-data. 167s Preparing to unpack .../05-ieee-data_20240722_all.deb ... 167s Unpacking ieee-data (20240722) ... 167s Selecting previously unselected package python3-netaddr. 167s Preparing to unpack .../06-python3-netaddr_1.3.0-1_all.deb ... 167s Unpacking python3-netaddr (1.3.0-1) ... 167s Selecting previously unselected package ansible-core. 167s Preparing to unpack .../07-ansible-core_2.18.1-4ubuntu1_all.deb ... 167s Unpacking ansible-core (2.18.1-4ubuntu1) ... 167s Selecting previously unselected package ansible. 167s Preparing to unpack .../08-ansible_11.2.0+dfsg-1_all.deb ... 167s Unpacking ansible (11.2.0+dfsg-1) ... 171s Selecting previously unselected package fonts-dejavu-mono. 171s Preparing to unpack .../09-fonts-dejavu-mono_2.37-8_all.deb ... 171s Unpacking fonts-dejavu-mono (2.37-8) ... 171s Selecting previously unselected package fonts-dejavu-core. 171s Preparing to unpack .../10-fonts-dejavu-core_2.37-8_all.deb ... 171s Unpacking fonts-dejavu-core (2.37-8) ... 171s Selecting previously unselected package fontconfig-config. 171s Preparing to unpack .../11-fontconfig-config_2.15.0-2.2ubuntu1_armhf.deb ... 171s Unpacking fontconfig-config (2.15.0-2.2ubuntu1) ... 171s Selecting previously unselected package libsecret-common. 171s Preparing to unpack .../12-libsecret-common_0.21.7-1_all.deb ... 171s Unpacking libsecret-common (0.21.7-1) ... 171s Selecting previously unselected package libsecret-1-0:armhf. 171s Preparing to unpack .../13-libsecret-1-0_0.21.7-1_armhf.deb ... 171s Unpacking libsecret-1-0:armhf (0.21.7-1) ... 171s Selecting previously unselected package gir1.2-secret-1:armhf. 171s Preparing to unpack .../14-gir1.2-secret-1_0.21.7-1_armhf.deb ... 171s Unpacking gir1.2-secret-1:armhf (0.21.7-1) ... 171s Selecting previously unselected package liberror-perl. 171s Preparing to unpack .../15-liberror-perl_0.17030-1_all.deb ... 171s Unpacking liberror-perl (0.17030-1) ... 171s Selecting previously unselected package git-man. 171s Preparing to unpack .../16-git-man_1%3a2.48.1-0ubuntu1_all.deb ... 171s Unpacking git-man (1:2.48.1-0ubuntu1) ... 171s Selecting previously unselected package git. 171s Preparing to unpack .../17-git_1%3a2.48.1-0ubuntu1_armhf.deb ... 171s Unpacking git (1:2.48.1-0ubuntu1) ... 171s Selecting previously unselected package libfreetype6:armhf. 171s Preparing to unpack .../18-libfreetype6_2.13.3+dfsg-1_armhf.deb ... 171s Unpacking libfreetype6:armhf (2.13.3+dfsg-1) ... 171s Selecting previously unselected package libfontconfig1:armhf. 172s Preparing to unpack .../19-libfontconfig1_2.15.0-2.2ubuntu1_armhf.deb ... 172s Unpacking libfontconfig1:armhf (2.15.0-2.2ubuntu1) ... 172s Selecting previously unselected package libpixman-1-0:armhf. 172s Preparing to unpack .../20-libpixman-1-0_0.44.0-3_armhf.deb ... 172s Unpacking libpixman-1-0:armhf (0.44.0-3) ... 172s Selecting previously unselected package libxcb-render0:armhf. 172s Preparing to unpack .../21-libxcb-render0_1.17.0-2_armhf.deb ... 172s Unpacking libxcb-render0:armhf (1.17.0-2) ... 172s Selecting previously unselected package libxcb-shm0:armhf. 172s Preparing to unpack .../22-libxcb-shm0_1.17.0-2_armhf.deb ... 172s Unpacking libxcb-shm0:armhf (1.17.0-2) ... 172s Selecting previously unselected package libxrender1:armhf. 172s Preparing to unpack .../23-libxrender1_1%3a0.9.10-1.1build1_armhf.deb ... 172s Unpacking libxrender1:armhf (1:0.9.10-1.1build1) ... 172s Selecting previously unselected package libcairo2:armhf. 172s Preparing to unpack .../24-libcairo2_1.18.4-1_armhf.deb ... 172s Unpacking libcairo2:armhf (1.18.4-1) ... 172s Selecting previously unselected package libcairo-gobject2:armhf. 172s Preparing to unpack .../25-libcairo-gobject2_1.18.4-1_armhf.deb ... 172s Unpacking libcairo-gobject2:armhf (1.18.4-1) ... 172s Selecting previously unselected package libxslt1.1:armhf. 172s Preparing to unpack .../26-libxslt1.1_1.1.39-0exp1ubuntu4_armhf.deb ... 172s Unpacking libxslt1.1:armhf (1.1.39-0exp1ubuntu4) ... 172s Selecting previously unselected package python3-adal. 172s Preparing to unpack .../27-python3-adal_1.2.7-5_all.deb ... 172s Unpacking python3-adal (1.2.7-5) ... 172s Selecting previously unselected package python3-aiohappyeyeballs. 172s Preparing to unpack .../28-python3-aiohappyeyeballs_2.6.1-1_all.deb ... 172s Unpacking python3-aiohappyeyeballs (2.6.1-1) ... 172s Selecting previously unselected package python3-multidict. 172s Preparing to unpack .../29-python3-multidict_6.2.0-2_armhf.deb ... 172s Unpacking python3-multidict (6.2.0-2) ... 172s Selecting previously unselected package python3-yarl. 172s Preparing to unpack .../30-python3-yarl_1.13.1-1build2_armhf.deb ... 172s Unpacking python3-yarl (1.13.1-1build2) ... 172s Selecting previously unselected package python3-async-timeout. 172s Preparing to unpack .../31-python3-async-timeout_5.0.1-1_all.deb ... 172s Unpacking python3-async-timeout (5.0.1-1) ... 172s Selecting previously unselected package python3-frozenlist. 172s Preparing to unpack .../32-python3-frozenlist_1.5.0-1build2_armhf.deb ... 172s Unpacking python3-frozenlist (1.5.0-1build2) ... 172s Selecting previously unselected package python3-aiosignal. 172s Preparing to unpack .../33-python3-aiosignal_1.3.2-1_all.deb ... 172s Unpacking python3-aiosignal (1.3.2-1) ... 172s Selecting previously unselected package python3-aiohttp. 172s Preparing to unpack .../34-python3-aiohttp_3.10.11-1build1_armhf.deb ... 172s Unpacking python3-aiohttp (3.10.11-1build1) ... 172s Selecting previously unselected package python3-avro. 172s Preparing to unpack .../35-python3-avro_1.12.0+dfsg-1_all.deb ... 172s Unpacking python3-avro (1.12.0+dfsg-1) ... 172s Selecting previously unselected package python3-isodate. 172s Preparing to unpack .../36-python3-isodate_0.7.0-1_all.deb ... 172s Unpacking python3-isodate (0.7.0-1) ... 172s Selecting previously unselected package python3-requests-oauthlib. 172s Preparing to unpack .../37-python3-requests-oauthlib_1.3.1-1_all.deb ... 172s Unpacking python3-requests-oauthlib (1.3.1-1) ... 172s Selecting previously unselected package python3-msrest. 172s Preparing to unpack .../38-python3-msrest_0.6.21-5_all.deb ... 172s Unpacking python3-msrest (0.6.21-5) ... 172s Selecting previously unselected package python3-msrestazure. 172s Preparing to unpack .../39-python3-msrestazure_0.6.4-4_all.deb ... 172s Unpacking python3-msrestazure (0.6.4-4) ... 172s Selecting previously unselected package python3-azure-storage. 172s Preparing to unpack .../40-python3-azure-storage_20250304+git-1_all.deb ... 172s Unpacking python3-azure-storage (20250304+git-1) ... 172s Selecting previously unselected package python3-colorama. 172s Preparing to unpack .../41-python3-colorama_0.4.6-4_all.deb ... 172s Unpacking python3-colorama (0.4.6-4) ... 172s Selecting previously unselected package python3-marshmallow. 173s Preparing to unpack .../42-python3-marshmallow_3.26.1-0.2_all.deb ... 173s Unpacking python3-marshmallow (3.26.1-0.2) ... 173s Selecting previously unselected package python3-msal. 173s Preparing to unpack .../43-python3-msal_1.32.0-1_all.deb ... 173s Unpacking python3-msal (1.32.0-1) ... 173s Selecting previously unselected package python3-cairo. 173s Preparing to unpack .../44-python3-cairo_1.27.0-2_armhf.deb ... 173s Unpacking python3-cairo (1.27.0-2) ... 173s Selecting previously unselected package python3-gi-cairo. 173s Preparing to unpack .../45-python3-gi-cairo_3.50.0-4build1_armhf.deb ... 173s Unpacking python3-gi-cairo (3.50.0-4build1) ... 173s Selecting previously unselected package python3-portalocker. 173s Preparing to unpack .../46-python3-portalocker_2.2.1-1_all.deb ... 173s Unpacking python3-portalocker (2.2.1-1) ... 173s Selecting previously unselected package python3-msal-extensions. 173s Preparing to unpack .../47-python3-msal-extensions_1.3.1-1_all.deb ... 173s Unpacking python3-msal-extensions (1.3.1-1) ... 173s Selecting previously unselected package python3-click. 173s Preparing to unpack .../48-python3-click_8.2.0+0.really.8.1.8-1_all.deb ... 173s Unpacking python3-click (8.2.0+0.really.8.1.8-1) ... 173s Selecting previously unselected package python3-joblib. 173s Preparing to unpack .../49-python3-joblib_1.4.2-3_all.deb ... 173s Unpacking python3-joblib (1.4.2-3) ... 173s Selecting previously unselected package python3-regex. 173s Preparing to unpack .../50-python3-regex_0.1.20241106-1build1_armhf.deb ... 173s Unpacking python3-regex (0.1.20241106-1build1) ... 173s Selecting previously unselected package python3-tqdm. 173s Preparing to unpack .../51-python3-tqdm_4.67.1-3_all.deb ... 173s Unpacking python3-tqdm (4.67.1-3) ... 173s Selecting previously unselected package python3-nltk. 173s Preparing to unpack .../52-python3-nltk_3.9.1-2_all.deb ... 173s Unpacking python3-nltk (3.9.1-2) ... 173s Selecting previously unselected package python3-psutil. 173s Preparing to unpack .../53-python3-psutil_5.9.8-2build3_armhf.deb ... 173s Unpacking python3-psutil (5.9.8-2build3) ... 173s Selecting previously unselected package python3-pydash. 173s Preparing to unpack .../54-python3-pydash_8.0.3-3_all.deb ... 173s Unpacking python3-pydash (8.0.3-3) ... 173s Selecting previously unselected package python3-ruamel.yaml.clib. 173s Preparing to unpack .../55-python3-ruamel.yaml.clib_0.2.12+ds-1build1_armhf.deb ... 173s Unpacking python3-ruamel.yaml.clib (0.2.12+ds-1build1) ... 173s Selecting previously unselected package python3-ruamel.yaml. 173s Preparing to unpack .../56-python3-ruamel.yaml_0.18.10+ds-1_all.deb ... 173s Unpacking python3-ruamel.yaml (0.18.10+ds-1) ... 173s Selecting previously unselected package python3-strictyaml. 173s Preparing to unpack .../57-python3-strictyaml_1.6.1-3_all.deb ... 173s Unpacking python3-strictyaml (1.6.1-3) ... 174s Selecting previously unselected package python3-websocket. 174s Preparing to unpack .../58-python3-websocket_1.8.0-2_all.deb ... 174s Unpacking python3-websocket (1.8.0-2) ... 174s Selecting previously unselected package python3-azure. 174s Preparing to unpack .../59-python3-azure_20250304+git-1_all.deb ... 174s Unpacking python3-azure (20250304+git-1) ... 178s Selecting previously unselected package python3-cachetools. 178s Preparing to unpack .../60-python3-cachetools_5.3.3-1_all.deb ... 178s Unpacking python3-cachetools (5.3.3-1) ... 178s Selecting previously unselected package python3-execnet. 178s Preparing to unpack .../61-python3-execnet_2.1.1-1_all.deb ... 178s Unpacking python3-execnet (2.1.1-1) ... 178s Selecting previously unselected package python3-mccabe. 178s Preparing to unpack .../62-python3-mccabe_0.7.0-1_all.deb ... 178s Unpacking python3-mccabe (0.7.0-1) ... 178s Selecting previously unselected package python3-pycodestyle. 178s Preparing to unpack .../63-python3-pycodestyle_2.12.1-2_all.deb ... 178s Unpacking python3-pycodestyle (2.12.1-2) ... 178s Selecting previously unselected package python3-pyflakes. 178s Preparing to unpack .../64-python3-pyflakes_3.2.0-3_all.deb ... 178s Unpacking python3-pyflakes (3.2.0-3) ... 178s Selecting previously unselected package python3-flake8. 178s Preparing to unpack .../65-python3-flake8_7.1.1-3_all.deb ... 178s Unpacking python3-flake8 (7.1.1-3) ... 178s Selecting previously unselected package python3-freezegun. 179s Preparing to unpack .../66-python3-freezegun_1.5.1-1.2_all.deb ... 179s Unpacking python3-freezegun (1.5.1-1.2) ... 179s Selecting previously unselected package python3-requests-toolbelt. 179s Preparing to unpack .../67-python3-requests-toolbelt_1.0.0-4_all.deb ... 179s Unpacking python3-requests-toolbelt (1.0.0-4) ... 179s Selecting previously unselected package python3-gitlab. 179s Preparing to unpack .../68-python3-gitlab_1%3a4.9.0-1_all.deb ... 179s Unpacking python3-gitlab (1:4.9.0-1) ... 179s Selecting previously unselected package python3-pyasn1. 179s Preparing to unpack .../69-python3-pyasn1_0.6.1-1_all.deb ... 179s Unpacking python3-pyasn1 (0.6.1-1) ... 179s Selecting previously unselected package python3-pyasn1-modules. 179s Preparing to unpack .../70-python3-pyasn1-modules_0.4.1-2_all.deb ... 179s Unpacking python3-pyasn1-modules (0.4.1-2) ... 179s Selecting previously unselected package python3-pyu2f. 179s Preparing to unpack .../71-python3-pyu2f_0.1.5-4_all.deb ... 179s Unpacking python3-pyu2f (0.1.5-4) ... 179s Selecting previously unselected package python3-responses. 179s Preparing to unpack .../72-python3-responses_0.25.6-1_all.deb ... 179s Unpacking python3-responses (0.25.6-1) ... 179s Selecting previously unselected package python3-rsa. 179s Preparing to unpack .../73-python3-rsa_4.9-2_all.deb ... 179s Unpacking python3-rsa (4.9-2) ... 179s Selecting previously unselected package python3-google-auth. 179s Preparing to unpack .../74-python3-google-auth_2.28.2-3_all.deb ... 179s Unpacking python3-google-auth (2.28.2-3) ... 179s Selecting previously unselected package python3-httmock. 179s Preparing to unpack .../75-python3-httmock_1.4.0-5_all.deb ... 179s Unpacking python3-httmock (1.4.0-5) ... 179s Selecting previously unselected package python3-pyhcl. 179s Preparing to unpack .../76-python3-pyhcl_0.4.4-6_all.deb ... 179s Unpacking python3-pyhcl (0.4.4-6) ... 179s Selecting previously unselected package python3-hvac. 179s Preparing to unpack .../77-python3-hvac_2.3.0-3_all.deb ... 179s Unpacking python3-hvac (2.3.0-3) ... 179s Selecting previously unselected package python3-iniconfig. 179s Preparing to unpack .../78-python3-iniconfig_1.1.1-2_all.deb ... 179s Unpacking python3-iniconfig (1.1.1-2) ... 179s Selecting previously unselected package python3-kubernetes. 179s Preparing to unpack .../79-python3-kubernetes_30.1.0-2_all.deb ... 179s Unpacking python3-kubernetes (30.1.0-2) ... 179s Selecting previously unselected package python3-lxml:armhf. 179s Preparing to unpack .../80-python3-lxml_5.3.2-1_armhf.deb ... 179s Unpacking python3-lxml:armhf (5.3.2-1) ... 179s Selecting previously unselected package python3-pathspec. 179s Preparing to unpack .../81-python3-pathspec_0.12.1-1_all.deb ... 179s Unpacking python3-pathspec (0.12.1-1) ... 179s Selecting previously unselected package python3-pluggy. 179s Preparing to unpack .../82-python3-pluggy_1.5.0-1_all.deb ... 179s Unpacking python3-pluggy (1.5.0-1) ... 179s Selecting previously unselected package python3-proxmoxer. 179s Preparing to unpack .../83-python3-proxmoxer_2.2.0-1_all.deb ... 179s Unpacking python3-proxmoxer (2.2.0-1) ... 179s Selecting previously unselected package python3-py. 179s Preparing to unpack .../84-python3-py_1.11.0-4_all.deb ... 179s Unpacking python3-py (1.11.0-4) ... 180s Selecting previously unselected package python3-pytest. 180s Preparing to unpack .../85-python3-pytest_8.3.5-1_all.deb ... 180s Unpacking python3-pytest (8.3.5-1) ... 180s Selecting previously unselected package python3-pytest-forked. 180s Preparing to unpack .../86-python3-pytest-forked_1.6.0-3_all.deb ... 180s Unpacking python3-pytest-forked (1.6.0-3) ... 180s Selecting previously unselected package python3-pytest-mock. 180s Preparing to unpack .../87-python3-pytest-mock_3.14.0-2_all.deb ... 180s Unpacking python3-pytest-mock (3.14.0-2) ... 180s Selecting previously unselected package python3-pytest-xdist. 180s Preparing to unpack .../88-python3-pytest-xdist_3.6.1-1_all.deb ... 180s Unpacking python3-pytest-xdist (3.6.1-1) ... 180s Selecting previously unselected package python3-pyvmomi. 180s Preparing to unpack .../89-python3-pyvmomi_8.0.3.0.1-1_all.deb ... 180s Unpacking python3-pyvmomi (8.0.3.0.1-1) ... 180s Selecting previously unselected package python3-redis. 180s Preparing to unpack .../90-python3-redis_5.2.1-1_all.deb ... 180s Unpacking python3-redis (5.2.1-1) ... 180s Selecting previously unselected package python3-textfsm. 180s Preparing to unpack .../91-python3-textfsm_1.1.3-3_all.deb ... 180s Unpacking python3-textfsm (1.1.3-3) ... 180s Selecting previously unselected package python3-xmltodict. 180s Preparing to unpack .../92-python3-xmltodict_0.13.0-1_all.deb ... 180s Unpacking python3-xmltodict (0.13.0-1) ... 180s Selecting previously unselected package yamllint. 180s Preparing to unpack .../93-yamllint_1.35.1-2_all.deb ... 180s Unpacking yamllint (1.35.1-2) ... 180s Selecting previously unselected package python3-mock. 180s Preparing to unpack .../94-python3-mock_5.1.0-1_all.deb ... 180s Unpacking python3-mock (5.1.0-1) ... 180s Setting up python3-iniconfig (1.1.1-2) ... 180s Setting up libpixman-1-0:armhf (0.44.0-3) ... 180s Setting up libsodium23:armhf (1.0.18-1build3) ... 180s Setting up python3-requests-toolbelt (1.0.0-4) ... 181s Setting up libxrender1:armhf (1:0.9.10-1.1build1) ... 181s Setting up python3-py (1.11.0-4) ... 181s Setting up python3-joblib (1.4.2-3) ... 181s Setting up python3-cachetools (5.3.3-1) ... 181s Setting up python3-colorama (0.4.6-4) ... 181s Setting up libxcb-render0:armhf (1.17.0-2) ... 181s Setting up python3-tqdm (4.67.1-3) ... 181s Setting up python3-pyflakes (3.2.0-3) ... 182s Setting up python3-ruamel.yaml.clib (0.2.12+ds-1build1) ... 182s Setting up python3-resolvelib (1.1.0-1) ... 182s Setting up python3-marshmallow (3.26.1-0.2) ... 182s Setting up python3-msal (1.32.0-1) ... 182s Setting up libxcb-shm0:armhf (1.17.0-2) ... 182s Setting up python3-httmock (1.4.0-5) ... 182s Setting up python3-click (8.2.0+0.really.8.1.8-1) ... 182s Setting up python3-psutil (5.9.8-2build3) ... 183s Setting up python3-multidict (6.2.0-2) ... 183s Setting up python3-frozenlist (1.5.0-1build2) ... 183s Setting up python3-aiosignal (1.3.2-1) ... 183s Setting up python3-mock (5.1.0-1) ... 183s Setting up python3-async-timeout (5.0.1-1) ... 183s Setting up liberror-perl (0.17030-1) ... 183s Setting up python3-responses (0.25.6-1) ... 183s Setting up python3-pyvmomi (8.0.3.0.1-1) ... 184s Setting up python3-isodate (0.7.0-1) ... 184s Setting up python3-pycodestyle (2.12.1-2) ... 184s Setting up python3-xmltodict (0.13.0-1) ... 184s Setting up python3-pyu2f (0.1.5-4) ... 184s Setting up libfreetype6:armhf (2.13.3+dfsg-1) ... 184s Setting up python3-avro (1.12.0+dfsg-1) ... 185s Setting up fonts-dejavu-mono (2.37-8) ... 185s Setting up fonts-dejavu-core (2.37-8) ... 185s Setting up python3-redis (5.2.1-1) ... 185s Setting up python3-aiohappyeyeballs (2.6.1-1) ... 185s Setting up python3-regex (0.1.20241106-1build1) ... 185s Setting up python3-pluggy (1.5.0-1) ... 185s Setting up python3-ruamel.yaml (0.18.10+ds-1) ... 186s Setting up ieee-data (20240722) ... 186s Setting up python3-adal (1.2.7-5) ... 186s Setting up python3-dnspython (2.7.0-1ubuntu1) ... 186s Setting up python3-portalocker (2.2.1-1) ... 186s Setting up libxslt1.1:armhf (1.1.39-0exp1ubuntu4) ... 186s Setting up python3-pyasn1 (0.6.1-1) ... 186s Setting up python3-proxmoxer (2.2.0-1) ... 187s Setting up git-man (1:2.48.1-0ubuntu1) ... 187s Setting up python3-textfsm (1.1.3-3) ... 187s Setting up python3-mccabe (0.7.0-1) ... 187s Setting up python3-execnet (2.1.1-1) ... 187s Setting up python3-pathspec (0.12.1-1) ... 187s Setting up python3-pydash (8.0.3-3) ... 187s Setting up python3-nltk (3.9.1-2) ... 188s Setting up python3-yarl (1.13.1-1build2) ... 188s Setting up python3-pyhcl (0.4.4-6) ... 188s Setting up python3-gitlab (1:4.9.0-1) ... 189s Setting up python3-websocket (1.8.0-2) ... 189s Setting up libsecret-common (0.21.7-1) ... 189s Setting up python3-freezegun (1.5.1-1.2) ... 189s Setting up python3-nacl (1.5.0-7) ... 189s Setting up python3-requests-oauthlib (1.3.1-1) ... 189s Setting up fontconfig-config (2.15.0-2.2ubuntu1) ... 190s Setting up python3-pytest (8.3.5-1) ... 190s Setting up python3-aiohttp (3.10.11-1build1) ... 190s Setting up python3-flake8 (7.1.1-3) ... 190s Setting up python3-msrest (0.6.21-5) ... 191s Setting up python3-pytest-forked (1.6.0-3) ... 191s Setting up python3-strictyaml (1.6.1-3) ... 191s Setting up libsecret-1-0:armhf (0.21.7-1) ... 191s Setting up yamllint (1.35.1-2) ... 191s Setting up gir1.2-secret-1:armhf (0.21.7-1) ... 191s Setting up python3-pyasn1-modules (0.4.1-2) ... 191s Setting up python3-hvac (2.3.0-3) ... 192s Setting up git (1:2.48.1-0ubuntu1) ... 192s Setting up python3-netaddr (1.3.0-1) ... 192s Setting up python3-pytest-mock (3.14.0-2) ... 192s Setting up python3-lxml:armhf (5.3.2-1) ... 192s Setting up python3-rsa (4.9-2) ... 192s Setting up libfontconfig1:armhf (2.15.0-2.2ubuntu1) ... 192s Setting up python3-msrestazure (0.6.4-4) ... 192s Setting up python3-paramiko (3.5.1-2ubuntu1) ... 192s Setting up python3-pytest-xdist (3.6.1-1) ... 193s Setting up ansible-core (2.18.1-4ubuntu1) ... 194s Setting up libcairo2:armhf (1.18.4-1) ... 194s Setting up python3-google-auth (2.28.2-3) ... 194s Setting up libcairo-gobject2:armhf (1.18.4-1) ... 194s Setting up ansible (11.2.0+dfsg-1) ... 217s Setting up python3-cairo (1.27.0-2) ... 217s Setting up python3-kubernetes (30.1.0-2) ... 218s Setting up python3-gi-cairo (3.50.0-4build1) ... 218s Setting up python3-msal-extensions (1.3.1-1) ... 219s Setting up python3-azure-storage (20250304+git-1) ... 220s Setting up python3-azure (20250304+git-1) ... 233s /usr/lib/python3/dist-packages/azure/ai/ml/_vendor/azure_resources/aio/operations/_resources_operations.py:80: SyntaxWarning: invalid escape sequence '\ ' 233s Valid values include ``createdTime``\ , ``changedTime`` and ``provisioningState``. For example, 233s /usr/lib/python3/dist-packages/azure/ai/ml/_vendor/azure_resources/aio/operations/_resources_operations.py:405: SyntaxWarning: invalid escape sequence '\ ' 233s Valid values include ``createdTime``\ , ``changedTime`` and ``provisioningState``. For example, 235s /usr/lib/python3/dist-packages/azure/appconfiguration/_generated/models/_models.py:238: SyntaxWarning: invalid escape sequence '\ ' 235s """An error, available when the status is ``Failed``\ , describing why the operation 236s /usr/lib/python3/dist-packages/azure/batch/models/_models.py:9067: SyntaxWarning: invalid escape sequence '\ ' 236s """The source port ranges to match for the rule. Valid values are '\ *' (for all ports 0 - 65535), 236s /usr/lib/python3/dist-packages/azure/batch/models/_models.py:9235: SyntaxWarning: invalid escape sequence '\ ' 236s using brackets (for example abc[\ *] would match a file named abc*\ ). Note that both and / are 237s /usr/lib/python3/dist-packages/azure/communication/jobrouter/models/_models.py:2326: SyntaxWarning: invalid escape sequence '\ ' 237s payload to scoring rule. If not set, a job's labels (sent in the payload as ``job``\ ) and a 237s /usr/lib/python3/dist-packages/azure/communication/jobrouter/models/_models.py:2346: SyntaxWarning: invalid escape sequence '\ ' 237s If not set, a job's labels (sent in the payload as ``job``\ ) and a job's worker selectors 240s /usr/lib/python3/dist-packages/azure/mgmt/advisor/aio/operations/_recommendations_operations.py:190: SyntaxWarning: invalid escape sequence '\ ' 240s properties ['ResourceId', 'ResourceGroup', 'RecommendationTypeGuid', '\ `Category 240s /usr/lib/python3/dist-packages/azure/mgmt/advisor/operations/_recommendations_operations.py:303: SyntaxWarning: invalid escape sequence '\ ' 240s properties ['ResourceId', 'ResourceGroup', 'RecommendationTypeGuid', '\ `Category 241s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:3917: SyntaxWarning: invalid escape sequence '\ ' 241s Possible Values::code:`
`:code:`
` **Standard**\ :code:`
`:code:`
` 241s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10212: SyntaxWarning: invalid escape sequence '\ ' 241s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 241s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10255: SyntaxWarning: invalid escape sequence '\ ' 241s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 241s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10284: SyntaxWarning: invalid escape sequence '\ ' 241s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 241s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10320: SyntaxWarning: invalid escape sequence '\ ' 241s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 241s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10342: SyntaxWarning: invalid escape sequence '\ ' 241s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 241s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10375: SyntaxWarning: invalid escape sequence '\ ' 241s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 241s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10396: SyntaxWarning: invalid escape sequence '\ ' 241s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 241s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10429: SyntaxWarning: invalid escape sequence '\ ' 241s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 241s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:14746: SyntaxWarning: invalid escape sequence '\ ' 241s :ivar allowed_sources: Allowed sources, e.g. ``*.trusted.com``\ , ``trusted.com``\ , 241s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:14771: SyntaxWarning: invalid escape sequence '\ ' 241s :keyword allowed_sources: Allowed sources, e.g. ``*.trusted.com``\ , ``trusted.com``\ , 245s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models.py:1420: SyntaxWarning: invalid escape sequence '\ ' 245s :param id: Required. The ID for the input directory. The job can use AZ_BATCHAI\ *INPUT*\ 245s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models.py:2310: SyntaxWarning: invalid escape sequence '\ ' 245s :param id: Required. The ID of the output directory. The job can use AZ_BATCHAI\ *OUTPUT*\ 245s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models_py3.py:1547: SyntaxWarning: invalid escape sequence '\ ' 245s :param id: Required. The ID for the input directory. The job can use AZ_BATCHAI\ *INPUT*\ 245s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models_py3.py:2524: SyntaxWarning: invalid escape sequence '\ ' 245s :param id: Required. The ID of the output directory. The job can use AZ_BATCHAI\ *OUTPUT*\ 250s /usr/lib/python3/dist-packages/azure/mgmt/computefleet/models/_models.py:624: SyntaxWarning: invalid escape sequence '\ ' 250s and Screenshot to diagnose VM status. **NOTE**\ : If storageUri is being 250s /usr/lib/python3/dist-packages/azure/mgmt/computefleet/models/_models.py:3707: SyntaxWarning: invalid escape sequence '\W' 250s characters :code:`
` Has a digit :code:`
` Has a special character (Regex match [\W_]) 255s /usr/lib/python3/dist-packages/azure/mgmt/datamigration/models/_models_py3.py:16843: SyntaxWarning: invalid escape sequence '\S' 255s Protocol:MachineName\SQLServerInstanceName,PortNumber. Required. 255s /usr/lib/python3/dist-packages/azure/mgmt/datamigration/models/_models_py3.py:16916: SyntaxWarning: invalid escape sequence '\S' 255s Protocol:MachineName\SQLServerInstanceName,PortNumber. Required. 257s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:63: SyntaxWarning: invalid escape sequence '\w' 257s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 257s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:130: SyntaxWarning: invalid escape sequence '\w' 257s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 257s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:224: SyntaxWarning: invalid escape sequence '\w' 257s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 257s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:312: SyntaxWarning: invalid escape sequence '\w' 257s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 257s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:398: SyntaxWarning: invalid escape sequence '\w' 257s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 257s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:543: SyntaxWarning: invalid escape sequence '\w' 257s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 257s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:612: SyntaxWarning: invalid escape sequence '\w' 257s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 257s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:675: SyntaxWarning: invalid escape sequence '\w' 257s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 257s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:738: SyntaxWarning: invalid escape sequence '\w' 257s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 257s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:807: SyntaxWarning: invalid escape sequence '\w' 257s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 260s /usr/lib/python3/dist-packages/azure/mgmt/hybridnetwork/models/_models_py3.py:6032: SyntaxWarning: invalid escape sequence '\ ' 260s :ivar provisioning_state: The provisioning state of the site resource. **TODO**\ : Confirm if 262s /usr/lib/python3/dist-packages/azure/mgmt/iotoperations/models/_models.py:3866: SyntaxWarning: invalid escape sequence '\ ' 262s pattern set glob-style pattern (e.g., '\ *', 'clients/*\ '). Required.""" 262s /usr/lib/python3/dist-packages/azure/mgmt/iotoperations/models/_models.py:3868: SyntaxWarning: invalid escape sequence '\ ' 262s """Give access for ``Read``\ , ``Write`` and ``ReadWrite`` access level. Required. Known values 265s /usr/lib/python3/dist-packages/azure/mgmt/machinelearningservices/models/_machine_learning_services_mgmt_client_enums.py:169: SyntaxWarning: invalid escape sequence '\ ' 265s #: The "forest"\ it builds, is an ensemble of decision trees, usually trained with the “bagging”\ 265s /usr/lib/python3/dist-packages/azure/mgmt/machinelearningservices/models/_machine_learning_services_mgmt_client_enums.py:1032: SyntaxWarning: invalid escape sequence '\ ' 265s #: The "forest"\ it builds, is an ensemble of decision trees, usually trained with the “bagging”\ 273s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2542: SyntaxWarning: invalid escape sequence '\R' 273s """Execute Reverse Replication\Reprotect. 273s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2583: SyntaxWarning: invalid escape sequence '\R' 273s """Execute Reverse Replication\Reprotect. 273s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2622: SyntaxWarning: invalid escape sequence '\R' 273s """Execute Reverse Replication\Reprotect. 273s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:5397: SyntaxWarning: invalid escape sequence '\L' 273s :ivar lun_id: Ordinal\LunId of the disk for the Azure VM. 273s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:5448: SyntaxWarning: invalid escape sequence '\L' 273s :keyword lun_id: Ordinal\LunId of the disk for the Azure VM. 273s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:8836: SyntaxWarning: invalid escape sequence '\S' 273s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 273s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:8978: SyntaxWarning: invalid escape sequence '\S' 273s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 273s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:9510: SyntaxWarning: invalid escape sequence '\S' 273s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 273s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:9675: SyntaxWarning: invalid escape sequence '\S' 273s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 273s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:11412: SyntaxWarning: invalid escape sequence '\S' 273s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target VM after 273s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:11541: SyntaxWarning: invalid escape sequence '\S' 273s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target VM after 273s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:12193: SyntaxWarning: invalid escape sequence '\S' 273s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 273s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:12516: SyntaxWarning: invalid escape sequence '\S' 273s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 273s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:26323: SyntaxWarning: invalid escape sequence '\S' 273s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 273s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:26382: SyntaxWarning: invalid escape sequence '\S' 273s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 273s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3476: SyntaxWarning: invalid escape sequence '\R' 273s """Execute Reverse Replication\Reprotect. 273s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3517: SyntaxWarning: invalid escape sequence '\R' 273s """Execute Reverse Replication\Reprotect. 273s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3556: SyntaxWarning: invalid escape sequence '\R' 273s """Execute Reverse Replication\Reprotect. 274s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_azure_reservation_api_operations.py:163: SyntaxWarning: invalid escape sequence '\ ' 274s """Get list of applicable ``Reservation``\ s. 274s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:377: SyntaxWarning: invalid escape sequence '\ ' 274s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 274s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:407: SyntaxWarning: invalid escape sequence '\ ' 274s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 274s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:437: SyntaxWarning: invalid escape sequence '\ ' 274s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 274s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:583: SyntaxWarning: invalid escape sequence '\ ' 274s """Merges two ``Reservation``\ s. 274s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:614: SyntaxWarning: invalid escape sequence '\ ' 274s """Merges two ``Reservation``\ s. 274s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:645: SyntaxWarning: invalid escape sequence '\ ' 274s """Merges two ``Reservation``\ s. 274s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:721: SyntaxWarning: invalid escape sequence '\ ' 274s """Get ``Reservation``\ s in a given reservation Order. 274s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_order_operations.py:183: SyntaxWarning: invalid escape sequence '\ ' 274s """Get all ``ReservationOrder``\ s. 274s /usr/lib/python3/dist-packages/azure/mgmt/reservations/models/_models_py3.py:3172: SyntaxWarning: invalid escape sequence '\ ' 274s """List of ``Reservation``\ s. 274s /usr/lib/python3/dist-packages/azure/mgmt/reservations/models/_models_py3.py:3288: SyntaxWarning: invalid escape sequence '\ ' 274s """List of ``ReservationOrder``\ s. 274s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_azure_reservation_api_operations.py:239: SyntaxWarning: invalid escape sequence '\ ' 274s """Get list of applicable ``Reservation``\ s. 274s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:662: SyntaxWarning: invalid escape sequence '\ ' 274s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 274s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:692: SyntaxWarning: invalid escape sequence '\ ' 274s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 274s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:722: SyntaxWarning: invalid escape sequence '\ ' 274s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 274s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:868: SyntaxWarning: invalid escape sequence '\ ' 274s """Merges two ``Reservation``\ s. 274s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:899: SyntaxWarning: invalid escape sequence '\ ' 274s """Merges two ``Reservation``\ s. 274s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:930: SyntaxWarning: invalid escape sequence '\ ' 274s """Merges two ``Reservation``\ s. 274s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:1006: SyntaxWarning: invalid escape sequence '\ ' 274s """Get ``Reservation``\ s in a given reservation Order. 274s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_order_operations.py:299: SyntaxWarning: invalid escape sequence '\ ' 274s """Get all ``ReservationOrder``\ s. 278s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:68: SyntaxWarning: invalid escape sequence '\ ' 278s **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after ``end`` 278s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:90: SyntaxWarning: invalid escape sequence '\ ' 278s ``[``\ **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after 278s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:1141: SyntaxWarning: invalid escape sequence '\ ' 278s **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after ``end`` 278s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:1163: SyntaxWarning: invalid escape sequence '\ ' 278s ``[``\ **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after 282s /usr/lib/python3/dist-packages/azure/mgmt/signalr/models/_models_py3.py:2858: SyntaxWarning: invalid escape sequence '\ ' 282s For example, if the urlTemplate is ``http://example.com/{hub}/api/{event}``\ , with a client 282s /usr/lib/python3/dist-packages/azure/mgmt/signalr/models/_models_py3.py:2925: SyntaxWarning: invalid escape sequence '\ ' 282s For example, if the urlTemplate is ``http://example.com/{hub}/api/{event}``\ , with a client 285s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_functions_operations.py:595: SyntaxWarning: invalid escape sequence '\ ' 285s properties to include in the response, or "\ *" to include all properties. By default, all 285s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_inputs_operations.py:593: SyntaxWarning: invalid escape sequence '\ ' 285s properties to include in the response, or "\ *" to include all properties. By default, all 285s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_outputs_operations.py:593: SyntaxWarning: invalid escape sequence '\ ' 285s properties to include in the response, or "\ *" to include all properties. By default, all 285s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/models/_stream_analytics_management_client_enums.py:14: SyntaxWarning: invalid escape sequence '\ ' 285s """Authentication Mode. Valid modes are ``ConnectionString``\ , ``Msi`` and 'UserToken'.""" 285s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_functions_operations.py:859: SyntaxWarning: invalid escape sequence '\ ' 285s properties to include in the response, or "\ *" to include all properties. By default, all 285s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_inputs_operations.py:821: SyntaxWarning: invalid escape sequence '\ ' 285s properties to include in the response, or "\ *" to include all properties. By default, all 285s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_outputs_operations.py:821: SyntaxWarning: invalid escape sequence '\ ' 285s properties to include in the response, or "\ *" to include all properties. By default, all 285s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_communications_no_subscription_operations.py:193: SyntaxWarning: invalid escape sequence '\ ' 285s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication 285s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_communications_operations.py:194: SyntaxWarning: invalid escape sequence '\ ' 285s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication 285s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:177: SyntaxWarning: invalid escape sequence '\ ' 285s tickets by *Status*\ , *CreatedDate*\ , *ServiceId*\ , and *ProblemClassificationId* using the 285s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:540: SyntaxWarning: invalid escape sequence '\ ' 285s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 285s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:582: SyntaxWarning: invalid escape sequence '\ ' 285s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 285s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:622: SyntaxWarning: invalid escape sequence '\ ' 285s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 285s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_communications_no_subscription_operations.py:308: SyntaxWarning: invalid escape sequence '\ ' 285s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication 285s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_communications_operations.py:326: SyntaxWarning: invalid escape sequence '\ ' 285s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication 285s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:319: SyntaxWarning: invalid escape sequence '\ ' 285s tickets by *Status*\ , *CreatedDate*\ , *ServiceId*\ , and *ProblemClassificationId* using the 285s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:681: SyntaxWarning: invalid escape sequence '\ ' 285s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 285s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:723: SyntaxWarning: invalid escape sequence '\ ' 285s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 285s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:763: SyntaxWarning: invalid escape sequence '\ ' 285s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 285s /usr/lib/python3/dist-packages/azure/mgmt/synapse/models/_models_py3.py:6232: SyntaxWarning: invalid escape sequence '\ ' 285s :ivar maintenance_window_cycles: Available maintenance cycles e.g. {Saturday, 0, 48\ *60}, 285s /usr/lib/python3/dist-packages/azure/mgmt/synapse/models/_models_py3.py:6288: SyntaxWarning: invalid escape sequence '\ ' 285s :keyword maintenance_window_cycles: Available maintenance cycles e.g. {Saturday, 0, 48\ *60}, 291s /usr/lib/python3/dist-packages/azure/mgmt/workloads/models/_models_py3.py:2909: SyntaxWarning: invalid escape sequence '\W' 291s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
` 291s /usr/lib/python3/dist-packages/azure/mgmt/workloads/models/_models_py3.py:2954: SyntaxWarning: invalid escape sequence '\W' 291s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
` 291s /usr/lib/python3/dist-packages/azure/mgmt/workloadssapvirtualinstance/models/_models_py3.py:1980: SyntaxWarning: invalid escape sequence '\W' 291s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
` 291s /usr/lib/python3/dist-packages/azure/mgmt/workloadssapvirtualinstance/models/_models_py3.py:2025: SyntaxWarning: invalid escape sequence '\W' 291s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
` 291s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:2732: SyntaxWarning: invalid escape sequence '\:' 291s attr:\:code:``=:code:``. 291s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:3537: SyntaxWarning: invalid escape sequence '\:' 291s attr:\:code:``=\:code:``. 291s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:4216: SyntaxWarning: invalid escape sequence '\:' 291s typeName=\:code:``&attr_1:\:code:``=\:code:``&attr_2:\:code:``=\:code:``&attr_3:\:code:``=\:code:`` 292s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:6219: SyntaxWarning: invalid escape sequence '\:' 292s attr:\:code:``=:code:``. 292s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:7024: SyntaxWarning: invalid escape sequence '\:' 292s attr:\:code:``=\:code:``. 292s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:7703: SyntaxWarning: invalid escape sequence '\:' 292s typeName=\:code:``&attr_1:\:code:``=\:code:``&attr_2:\:code:``=\:code:``&attr_3:\:code:``=\:code:`` 293s /usr/lib/python3/dist-packages/azure/servicemanagement/schedulermanagementservice.py:59: SyntaxWarning: invalid escape sequence '\m' 293s CURRENT_USER\my\CertificateName format. 293s /usr/lib/python3/dist-packages/azure/servicemanagement/servicebusmanagementservice.py:59: SyntaxWarning: invalid escape sequence '\m' 293s CURRENT_USER\my\CertificateName format. 293s /usr/lib/python3/dist-packages/azure/servicemanagement/servicemanagementservice.py:81: SyntaxWarning: invalid escape sequence '\m' 293s CURRENT_USER\my\CertificateName format. 293s /usr/lib/python3/dist-packages/azure/servicemanagement/sqldatabasemanagementservice.py:55: SyntaxWarning: invalid escape sequence '\m' 293s CURRENT_USER\my\CertificateName format. 293s /usr/lib/python3/dist-packages/azure/servicemanagement/websitemanagementservice.py:55: SyntaxWarning: invalid escape sequence '\m' 293s CURRENT_USER\my\CertificateName format. 293s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:110: SyntaxWarning: invalid escape sequence '\d' 293s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 293s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:1328: SyntaxWarning: invalid escape sequence '\d' 293s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9]))..). 293s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:4218: SyntaxWarning: invalid escape sequence '\d' 293s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 293s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:4280: SyntaxWarning: invalid escape sequence '\d' 293s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 293s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:18198: SyntaxWarning: invalid escape sequence '\d' 293s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 293s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19096: SyntaxWarning: invalid escape sequence '\d' 293s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). Type: string (or Expression with 293s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19185: SyntaxWarning: invalid escape sequence '\d' 293s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 293s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19749: SyntaxWarning: invalid escape sequence '\d' 293s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 294s Processing triggers for libc-bin (2.41-6ubuntu1) ... 294s Processing triggers for man-db (2.13.0-1) ... 302s autopkgtest [04:48:35]: test unit-tests-stable.py: [----------------------- 305s 305s 305s 305s ############################################################ 305s ############################################################ 305s #### Running tests in ansible_collections/amazon/aws 305s ############################################################ 305s ############################################################ 305s Unit test modules with Python 3.13 307s ============================= test session starts ============================== 307s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 307s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/amazon/aws 307s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 307s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 307s created: 8/8 workers 307s 8 workers [348 items] 307s 308s ........................................................................ [ 20%] 308s ........................................................................ [ 41%] 308s ........................................................................ [ 62%] 308s ........................................................................ [ 82%] 309s ............................................................ [100%] 309s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/amazon/aws/tests/output/junit/python3.13-modules-units.xml - 309s =========================== short test summary info ============================ 309s SKIPPED [1] tests/unit/utils/amazon_placebo_fixtures.py:16: could not import 'placebo': No module named 'placebo' 309s ======================== 348 passed, 1 skipped in 3.47s ======================== 309s Unit test controller with Python 3.13 312s ============================= test session starts ============================== 312s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 312s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/amazon/aws 312s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 312s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 312s created: 8/8 workers 312s 8 workers [1252 items] 312s 313s ........................................................................ [ 5%] 313s ........................................................................ [ 11%] 313s ........................................................................ [ 17%] 313s ........................................................................ [ 23%] 313s ........................................................................ [ 28%] 314s ........................................................................ [ 34%] 314s ........................................................................ [ 40%] 314s ........................................................................ [ 46%] 314s ........................................................................ [ 51%] 315s ........................................................................ [ 57%] 315s ........................................................................ [ 63%] 315s ........................................................................ [ 69%] 315s ........................................................................ [ 74%] 316s ........................................................................ [ 80%] 316s ........................................................................ [ 86%] 316s ........................................................................ [ 92%] 331s ........................................................................ [ 97%] 447s ............................ [100%] 447s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/amazon/aws/tests/output/junit/python3.13-controller-units.xml - 447s ======================= 1252 passed in 137.33s (0:02:17) ======================= 447s 447s 447s 447s ############################################################ 447s ############################################################ 447s #### Running tests in ansible_collections/ansible/netcommon 447s ############################################################ 447s ############################################################ 447s Unit test controller with Python 3.13 449s ============================= test session starts ============================== 449s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 449s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ansible/netcommon 449s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 449s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 449s created: 8/8 workers 449s 8 workers [162 items] 449s 449s ........................................................................ [ 44%] 450s ...........................................x.....x...................... [ 88%] 450s ..............x... [100%] 450s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ansible/netcommon/tests/output/junit/python3.13-controller-units.xml - 450s =========================== short test summary info ============================ 450s SKIPPED [1] tests/unit/plugins/cli_parsers/test_pyats_parser.py:21: could not import 'pyats': No module named 'pyats' 450s SKIPPED [1] tests/unit/plugins/connection/test_libssh.py:23: could not import 'pylibsshext': No module named 'pylibsshext' 450s SKIPPED [1] tests/unit/plugins/connection/test_netconf.py:19: could not import 'ncclient': No module named 'ncclient' 450s XFAIL tests/unit/plugins/connection/test_network_cli.py::test_network_cli_send[libssh-response2] 450s XFAIL tests/unit/plugins/connection/test_network_cli.py::test_network_cli_send[paramiko-response2] 450s XFAIL tests/unit/plugins/connection/test_network_cli.py::test_network_cli_send[auto-response2] 450s ================== 159 passed, 3 skipped, 3 xfailed in 2.80s =================== 451s 451s 451s 451s ############################################################ 451s ############################################################ 451s #### Running tests in ansible_collections/ansible/posix 451s ############################################################ 451s ############################################################ 451s Unit test controller with Python 3.13 452s ============================= test session starts ============================== 452s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 452s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ansible/posix 452s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 452s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 452s created: 8/8 workers 452s 8 workers [14 items] 452s 453s .............. [100%] 453s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ansible/posix/tests/output/junit/python3.13-controller-units.xml - 453s ============================== 14 passed in 1.39s ============================== 453s Skipping ansible_collections/ansible/utils 453s 453s 453s 453s ############################################################ 453s ############################################################ 453s #### Running tests in ansible_collections/ansible/windows 453s ############################################################ 453s ############################################################ 453s Unit test controller with Python 3.13 455s ============================= test session starts ============================== 455s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 455s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ansible/windows 455s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 455s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 455s created: 8/8 workers 455s 8 workers [50 items] 455s 455s .................................................. [100%] 455s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ansible/windows/tests/output/junit/python3.13-controller-units.xml - 455s ============================== 50 passed in 1.62s ============================== 455s 455s 455s 455s ############################################################ 455s ############################################################ 455s #### Running tests in ansible_collections/arista/eos 455s ############################################################ 455s ############################################################ 455s Unit test controller with Python 3.13 457s ============================= test session starts ============================== 457s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 457s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/arista/eos 457s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 457s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 457s created: 8/8 workers 457s 8 workers [307 items] 457s 458s ........................................................................ [ 23%] 458s ........................................................................ [ 46%] 459s ........................................................................ [ 70%] 460s ........................................................................ [ 93%] 460s ................... [100%] 460s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/arista/eos/tests/output/junit/python3.13-controller-units.xml - 460s ============================= 307 passed in 4.56s ============================== 461s Skipping ansible_collections/cisco/aci 461s 461s 461s 461s ############################################################ 461s ############################################################ 461s #### Running tests in ansible_collections/cisco/asa 461s ############################################################ 461s ############################################################ 461s Unit test controller with Python 3.13 463s ============================= test session starts ============================== 463s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 463s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/asa 463s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 463s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 463s created: 8/8 workers 463s 8 workers [21 items] 463s 466s ..................... [100%] 466s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/asa/tests/output/junit/python3.13-controller-units.xml - 466s ============================== 21 passed in 4.15s ============================== 466s Skipping ansible_collections/cisco/dnac 466s 466s 466s 466s ############################################################ 466s ############################################################ 466s #### Running tests in ansible_collections/cisco/ios 466s ############################################################ 466s ############################################################ 466s Unit test controller with Python 3.13 469s ============================= test session starts ============================== 469s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 469s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/ios 469s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 469s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 469s created: 8/8 workers 469s 8 workers [425 items] 469s 469s ........................................................................ [ 16%] 470s ........................................................................ [ 33%] 471s ........................................................................ [ 50%] 473s ........................................................................ [ 67%] 473s ........................................................................ [ 84%] 497s ................................................................. [100%] 497s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/ios/tests/output/junit/python3.13-controller-units.xml - 497s ============================= 425 passed in 30.25s ============================= 497s 497s 497s 497s ############################################################ 497s ############################################################ 497s #### Running tests in ansible_collections/cisco/iosxr 497s ############################################################ 497s ############################################################ 497s Unit test controller with Python 3.13 499s ============================= test session starts ============================== 499s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 499s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/iosxr 499s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 499s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 499s created: 8/8 workers 499s 8 workers [310 items] 499s 500s ........................................................................ [ 23%] 500s ........................................................................ [ 46%] 501s ........................................................................ [ 69%] 502s ........................................................................ [ 92%] 502s ...................... [100%] 502s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/iosxr/tests/output/junit/python3.13-controller-units.xml - 502s ============================= 310 passed in 4.68s ============================== 502s 502s 502s 502s ############################################################ 502s ############################################################ 502s #### Running tests in ansible_collections/cisco/nxos 502s ############################################################ 502s ############################################################ 503s Unit test controller with Python 3.13 505s ============================= test session starts ============================== 505s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 505s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/nxos 505s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 505s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 505s created: 8/8 workers 505s 8 workers [773 items] 505s 506s ........................................................................ [ 9%] 506s ........................................................................ [ 18%] 507s ........................................................................ [ 27%] 507s ........................................................................ [ 37%] 508s ........................................................................ [ 46%] 509s ........................................................................ [ 55%] 510s ........................................................................ [ 65%] 511s ........................................................................ [ 74%] 512s ........................................................................ [ 83%] 513s ........................................................................ [ 93%] 515s ..................................................... [100%] 515s =============================== warnings summary =============================== 515s tests/unit/modules/network/nxos/test_nxos_acls.py: 91 warnings 515s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:270: DeprecationWarning: 'count' is passed as positional argument 515s ace = re.sub(seq, "", ace, 1) 515s 515s tests/unit/modules/network/nxos/test_nxos_acls.py: 84 warnings 515s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:279: DeprecationWarning: 'count' is passed as positional argument 515s ace = re.sub(grant, "", ace, 1) 515s 515s tests/unit/modules/network/nxos/test_nxos_acls.py: 84 warnings 515s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:287: DeprecationWarning: 'count' is passed as positional argument 515s ace = re.sub(pro, "", ace, 1) 515s 515s tests/unit/modules/network/nxos/test_nxos_acls.py: 168 warnings 515s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:117: DeprecationWarning: 'count' is passed as positional argument 515s ace = re.sub(option, "", ace, 1) 515s 515s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark 515s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_ranges 515s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_ranges 515s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_ranges 515s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_ranges 515s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_gathered 515s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:142: DeprecationWarning: 'count' is passed as positional argument 515s ace = re.sub(range_substring, "", ace, 1) 515s 515s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark 515s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark 515s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_gathered 515s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:126: DeprecationWarning: 'count' is passed as positional argument 515s ace = re.sub(port_pro.group(1), "", ace, 1) 515s 515s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark 515s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark 515s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_gathered 515s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:127: DeprecationWarning: 'count' is passed as positional argument 515s ace = re.sub(port_pro.group(2), "", ace, 1) 515s 515s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_gathered 515s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:116: DeprecationWarning: 'count' is passed as positional argument 515s ace = re.sub("{0}".format(wb), "", ace, 1) 515s 515s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 515s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/nxos/tests/output/junit/python3.13-controller-units.xml - 515s ====================== 773 passed, 440 warnings in 12.08s ====================== 515s 515s 515s 515s ############################################################ 515s ############################################################ 515s #### Running tests in ansible_collections/cloud/common 515s ############################################################ 515s ############################################################ 515s Unit test module_utils with Python 3.13 517s ============================= test session starts ============================== 517s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 517s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cloud/common 517s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 517s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 517s created: 8/8 workers 517s 8 workers [19 items] 517s 519s ................... [100%] 519s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cloud/common/tests/output/junit/python3.13-module_utils-units.xml - 519s ============================== 19 passed in 2.65s ============================== 519s 519s 519s 519s ############################################################ 519s ############################################################ 519s #### Running tests in ansible_collections/community/aws 519s ############################################################ 519s ############################################################ 519s Unit test modules with Python 3.13 522s ============================= test session starts ============================== 522s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 522s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/aws 522s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 522s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 522s created: 8/8 workers 522s 8 workers [33 items] 522s 522s ................................. [100%] 522s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/aws/tests/output/junit/python3.13-modules-units.xml - 522s =========================== short test summary info ============================ 522s SKIPPED [1] ../../amazon/aws/tests/unit/utils/amazon_placebo_fixtures.py:16: could not import 'placebo': No module named 'placebo' 522s ======================== 33 passed, 1 skipped in 2.69s ========================= 522s Unit test controller with Python 3.13 524s ============================= test session starts ============================== 524s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 524s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/aws 524s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 524s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 524s created: 8/8 workers 524s 8 workers [52 items] 524s 525s .................................................... [100%] 525s =============================== warnings summary =============================== 525s tests/unit/plugins/connection/test_aws_ssm.py::TestConnectionBaseClass::test_plugins_connection_aws_ssm_post_process 525s /usr/lib/python3/dist-packages/_pytest/python.py:163: PytestReturnNotNoneWarning: Expected None, but tests/unit/plugins/connection/test_aws_ssm.py::TestConnectionBaseClass::test_plugins_connection_aws_ssm_post_process returned (0, ), which will be an error in a future version of pytest. Did you mean to use `assert` instead of `return`? 525s warnings.warn( 525s 525s tests/unit/plugins/connection/test_aws_ssm.py::TestConnectionBaseClass::test_plugins_connection_aws_ssm_start_session 525s /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:85: PytestUnraisableExceptionWarning: Exception ignored in: 525s 525s Traceback (most recent call last): 525s File "/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/aws/plugins/connection/aws_ssm.py", line 496, in __del__ 525s self.close() 525s ~~~~~~~~~~^^ 525s File "/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/aws/plugins/connection/aws_ssm.py", line 961, in close 525s self._vvv(f"CLOSING SSM CONNECTION TO: {self.instance_id}") 525s ^^^^^^^^^^^^^^^^ 525s AttributeError: 'Connection' object has no attribute 'instance_id' 525s 525s warnings.warn(pytest.PytestUnraisableExceptionWarning(msg)) 525s 525s tests/unit/plugins/connection/test_aws_ssm.py::TestConnectionBaseClass::test_plugins_connection_aws_ssm_wrap_command 525s /usr/lib/python3/dist-packages/_pytest/python.py:163: PytestReturnNotNoneWarning: Expected None, but tests/unit/plugins/connection/test_aws_ssm.py::TestConnectionBaseClass::test_plugins_connection_aws_ssm_wrap_command returned 'windows1', which will be an error in a future version of pytest. Did you mean to use `assert` instead of `return`? 525s warnings.warn( 525s 525s tests/unit/plugins/connection/test_aws_ssm.py::TestConnectionBaseClass::test_plugins_connection_aws_ssm_exec_command 525s /usr/lib/python3/dist-packages/_pytest/python.py:163: PytestReturnNotNoneWarning: Expected None, but tests/unit/plugins/connection/test_aws_ssm.py::TestConnectionBaseClass::test_plugins_connection_aws_ssm_exec_command returned ('a', 'b', ), which will be an error in a future version of pytest. Did you mean to use `assert` instead of `return`? 525s warnings.warn( 525s 525s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 525s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/aws/tests/output/junit/python3.13-controller-units.xml - 525s ======================== 52 passed, 4 warnings in 2.34s ======================== 525s 525s 525s 525s ############################################################ 525s ############################################################ 525s #### Running tests in ansible_collections/community/ciscosmb 525s ############################################################ 525s ############################################################ 525s Unit test modules with Python 3.13 527s ============================= test session starts ============================== 527s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 527s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/ciscosmb 527s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 527s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 527s created: 8/8 workers 527s 8 workers [56 items] 527s 527s ........................................................ [100%] 527s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/ciscosmb/tests/output/junit/python3.13-modules-units.xml - 527s ============================== 56 passed in 1.33s ============================== 527s 527s 527s 527s ############################################################ 527s ############################################################ 527s #### Running tests in ansible_collections/community/crypto 527s ############################################################ 527s ############################################################ 528s Unit test modules with Python 3.13 529s ============================= test session starts ============================== 529s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 529s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/crypto 529s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 529s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 529s created: 8/8 workers 529s 8 workers [76 items] 529s 529s ........................................................................ [ 94%] 529s .... [100%] 529s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/crypto/tests/output/junit/python3.13-modules-units.xml - 529s ============================== 76 passed in 1.33s ============================== 529s Unit test module_utils with Python 3.13 531s ============================= test session starts ============================== 531s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 531s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/crypto 531s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 531s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 531s created: 8/8 workers 531s 8 workers [520 items] 531s 532s ........................................................................ [ 13%] 532s ........................................................................ [ 27%] 533s .....................................................................s.. [ 41%] 533s ...s..s..s......s....s......s....s...................................... [ 55%] 533s .s....s.s....s...s..s...s............................................... [ 69%] 534s ........................................................................ [ 83%] 536s ........................................................................ [ 96%] 542s ................ [100%] 542s =============================== warnings summary =============================== 542s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_valid_user_key_params[dsa-1024-change_me-comment] 542s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/crypto/tests/unit/plugins/module_utils/openssh/test_cryptography.py:169: CryptographyDeprecationWarning: SSH DSA key support is deprecated and will be removed in a future release 542s pair = OpensshKeypair.generate(keytype=keytype, size=size, passphrase=passphrase, comment=comment) 542s 542s tests/unit/plugins/module_utils/test_time.py: 16 warnings 542s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/crypto/plugins/module_utils/time.py:95: DeprecationWarning: datetime.datetime.utcfromtimestamp() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.fromtimestamp(timestamp, datetime.UTC). 542s return datetime.datetime.utcfromtimestamp(timestamp) 542s 542s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_default_key_params[dsa-None-None-None] 542s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/crypto/tests/unit/plugins/module_utils/openssh/test_cryptography.py:151: CryptographyDeprecationWarning: SSH DSA key support is deprecated and will be removed in a future release 542s pair = OpensshKeypair.generate(keytype=keytype, size=size, passphrase=passphrase, comment=comment) 542s 542s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_default_key_params[dsa-None-None-None] 542s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/crypto/tests/unit/plugins/module_utils/openssh/test_cryptography.py:153: CryptographyDeprecationWarning: SSH DSA key support is deprecated and will be removed in a future release 542s pair = OpensshKeypair.generate(keytype=keytype, size=size, passphrase=passphrase, comment=comment) 542s 542s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison 542s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/crypto/tests/unit/plugins/module_utils/openssh/test_cryptography.py:351: CryptographyDeprecationWarning: SSH DSA key support is deprecated and will be removed in a future release 542s assert OpensshKeypair.generate() != OpensshKeypair.generate(keytype='dsa') 542s 542s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison 542s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/crypto/tests/unit/plugins/module_utils/openssh/test_cryptography.py:363: CryptographyDeprecationWarning: SSH DSA key support is deprecated and will be removed in a future release 542s 'pair': OpensshKeypair.generate(keytype='dsa', passphrase='change_me'.encode('UTF-8')), 542s 542s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison 542s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/crypto/plugins/module_utils/openssh/cryptography.py:560: CryptographyDeprecationWarning: SSH DSA keys are deprecated and will be removed in a future release. 542s privatekey = privatekey_loader( 542s 542s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison 542s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/crypto/plugins/module_utils/openssh/cryptography.py:615: CryptographyDeprecationWarning: SSH DSA keys are deprecated and will be removed in a future release. 542s publickey = publickey_loader( 542s 542s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison 542s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/crypto/tests/unit/plugins/module_utils/openssh/test_cryptography.py:380: CryptographyDeprecationWarning: SSH DSA key support is deprecated and will be removed in a future release 542s loaded_dsa_key = OpensshKeypair.load(path=keys['dsa']['filename'], passphrase='change_me'.encode('UTF-8')) 542s 542s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison 542s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/crypto/tests/unit/plugins/module_utils/openssh/test_cryptography.py:383: CryptographyDeprecationWarning: SSH DSA key support is deprecated and will be removed in a future release 542s loaded_dsa_key.update_passphrase('change_me_again'.encode('UTF-8')) 542s 542s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison 542s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/crypto/tests/unit/plugins/module_utils/openssh/test_cryptography.py:386: CryptographyDeprecationWarning: SSH DSA key support is deprecated and will be removed in a future release 542s loaded_dsa_key.update_passphrase('change_me'.encode('UTF-8')) 542s 542s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 542s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/crypto/tests/output/junit/python3.13-module_utils-units.xml - 542s =========================== short test summary info ============================ 542s SKIPPED [15] tests/unit/plugins/module_utils/crypto/test_asn1.py:78: unconditional skip 542s ================ 505 passed, 15 skipped, 26 warnings in 12.21s ================= 542s 542s 542s 542s ############################################################ 542s ############################################################ 542s #### Running tests in ansible_collections/community/digitalocean 542s ############################################################ 542s ############################################################ 542s Unit test modules with Python 3.13 544s ============================= test session starts ============================== 544s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 544s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/digitalocean 544s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 544s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 544s created: 8/8 workers 544s 8 workers [32 items] 544s 544s ................................ [100%] 544s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/digitalocean/tests/output/junit/python3.13-modules-units.xml - 544s ============================== 32 passed in 1.34s ============================== 544s Unit test controller with Python 3.13 546s ============================= test session starts ============================== 546s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 546s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/digitalocean 546s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 546s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 546s created: 8/8 workers 546s 8 workers [14 items] 546s 546s .............. [100%] 546s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/digitalocean/tests/output/junit/python3.13-controller-units.xml - 546s ============================== 14 passed in 1.37s ============================== 546s Skipping ansible_collections/community/dns 546s 546s 546s 546s ############################################################ 546s ############################################################ 546s #### Running tests in ansible_collections/community/docker 546s ############################################################ 546s ############################################################ 546s Unit test modules with Python 3.13 548s ============================= test session starts ============================== 548s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 548s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/docker 548s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 548s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 548s created: 8/8 workers 548s 8 workers [27 items] 548s 550s ........................... [100%] 550s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/docker/tests/output/junit/python3.13-modules-units.xml - 550s ============================== 27 passed in 3.62s ============================== 550s Unit test module_utils with Python 3.13 552s ============================= test session starts ============================== 552s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 552s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/docker 552s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 552s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 552s created: 8/8 workers 552s 8 workers [551 items] 552s 552s s...................................s.......s....s........s.......s...s. [ 13%] 553s .s.s......s.s....s...s......s.................................s......... [ 26%] 553s ........................................................................ [ 39%] 553s .s....................s................................................. [ 52%] 553s ........................................................................ [ 65%] 553s ........................................................................ [ 78%] 554s ........................................................................ [ 91%] 554s ............................................... [100%] 554s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/docker/tests/output/junit/python3.13-module_utils-units.xml - 554s =========================== short test summary info ============================ 554s SKIPPED [1] tests/unit/plugins/module_utils/_api/utils/test_build.py:254: Backslash patterns only on Windows 554s SKIPPED [8] tests/unit/plugins/module_utils/_api/api/test_client.py: This test requires starting a networking server and tries to access it. This does not work with network separation with Docker-based unit tests, but it does work with podman-based unit tests. 554s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:99: match_hostname is not available 554s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:92: match_hostname is not available 554s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:95: match_hostname is not available 554s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:86: match_hostname is not available 554s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:89: match_hostname is not available 554s SKIPPED [1] tests/unit/plugins/module_utils/_api/utils/test_config.py:76: condition: sys.platform != 'win32' 554s SKIPPED [1] tests/unit/plugins/module_utils/_api/utils/test_build.py:276: Backslash patterns only on Windows 554s SKIPPED [1] tests/unit/plugins/module_utils/_api/utils/test_utils.py:471: shlex doesn't support bytes in py3 554s ======================= 534 passed, 17 skipped in 3.38s ======================== 554s Unit test controller with Python 3.13 556s ============================= test session starts ============================== 556s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 556s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/docker 556s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 556s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 556s created: 8/8 workers 556s 8 workers [16 items] 556s 557s ................ [100%] 557s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/docker/tests/output/junit/python3.13-controller-units.xml - 557s ============================== 16 passed in 2.22s ============================== 557s Skipping ansible_collections/community/general 557s 557s 557s 557s ############################################################ 557s ############################################################ 557s #### Running tests in ansible_collections/community/grafana 557s ############################################################ 557s ############################################################ 557s Unit test controller with Python 3.13 559s ============================= test session starts ============================== 559s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 559s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/grafana 559s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 559s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 559s created: 8/8 workers 559s 8 workers [31 items] 559s 560s ............................... [100%] 560s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/grafana/tests/output/junit/python3.13-controller-units.xml - 560s ============================== 31 passed in 1.54s ============================== 560s 560s 560s 560s ############################################################ 560s ############################################################ 560s #### Running tests in ansible_collections/community/hashi_vault 560s ############################################################ 560s ############################################################ 560s Unit test modules with Python 3.13 562s ============================= test session starts ============================== 562s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 562s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hashi_vault 562s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 562s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 562s created: 8/8 workers 562s 8 workers [281 items] 562s 562s ........................................................................ [ 25%] 562s ........................................................................ [ 51%] 563s ........................................................................ [ 76%] 563s ................................................................. [100%] 563s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hashi_vault/tests/output/junit/python3.13-modules-units.xml - 563s ============================= 281 passed in 2.57s ============================== 563s Unit test module_utils with Python 3.13 565s ============================= test session starts ============================== 565s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 565s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hashi_vault 565s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 565s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 565s created: 8/8 workers 565s 8 workers [1436 items] 565s 565s ........................................................................ [ 5%] 565s ........................................................................ [ 10%] 566s ........................................................................ [ 15%] 566s ........................................................................ [ 20%] 566s ........................................................................ [ 25%] 566s ........................................................................ [ 30%] 566s ........................................................................ [ 35%] 567s ........................................................................ [ 40%] 567s ........................................................................ [ 45%] 567s ........................................................................ [ 50%] 567s ........................................................................ [ 55%] 567s ........................................................................ [ 60%] 568s ........................................................................ [ 65%] 568s ........................................................................ [ 70%] 568s ........................................................................ [ 75%] 568s ........................................................................ [ 80%] 568s ........................................................................ [ 85%] 568s ........................................................................ [ 90%] 569s ........................................................................ [ 95%] 569s .................................................................... [100%] 569s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hashi_vault/tests/output/junit/python3.13-module_utils-units.xml - 569s ============================= 1436 passed in 5.24s ============================= 569s Unit test controller with Python 3.13 571s ============================= test session starts ============================== 571s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 571s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hashi_vault 571s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 571s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 571s created: 8/8 workers 571s 8 workers [619 items] 571s 571s ........................................................................ [ 11%] 572s ........................................................................ [ 23%] 572s ........................................................................ [ 34%] 573s ........................................................................ [ 46%] 573s ........................................................................ [ 58%] 573s ........................................................................ [ 69%] 574s ........................................................................ [ 81%] 574s ........................................................................ [ 93%] 574s ........................................... [100%] 574s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hashi_vault/tests/output/junit/python3.13-controller-units.xml - 574s ============================= 619 passed in 4.44s ============================== 574s Skipping ansible_collections/community/hrobot 574s Skipping ansible_collections/community/library_inventory_filtering_v1 574s 574s 574s 574s ############################################################ 574s ############################################################ 574s #### Running tests in ansible_collections/community/libvirt 574s ############################################################ 574s ############################################################ 575s Unit test controller with Python 3.13 576s ============================= test session starts ============================== 576s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 576s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/libvirt 576s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 576s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 576s created: 8/8 workers 576s 8 workers [4 items] 576s 576s .... [100%] 576s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/libvirt/tests/output/junit/python3.13-controller-units.xml - 576s ============================== 4 passed in 1.02s =============================== 576s 576s 576s 576s ############################################################ 576s ############################################################ 576s #### Running tests in ansible_collections/community/mysql 576s ############################################################ 576s ############################################################ 576s Unit test modules with Python 3.13 578s ============================= test session starts ============================== 578s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 578s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/mysql 578s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 578s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 578s created: 8/8 workers 578s 8 workers [43 items] 578s 578s ........................................... [100%] 578s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/mysql/tests/output/junit/python3.13-modules-units.xml - 578s ============================== 43 passed in 1.11s ============================== 578s Unit test module_utils with Python 3.13 579s ============================= test session starts ============================== 579s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 579s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/mysql 579s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 579s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 579s created: 8/8 workers 579s 8 workers [84 items] 579s 579s ........................................................................ [ 85%] 580s ............ [100%] 580s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/mysql/tests/output/junit/python3.13-module_utils-units.xml - 580s ============================== 84 passed in 1.22s ============================== 580s 580s 580s 580s ############################################################ 580s ############################################################ 580s #### Running tests in ansible_collections/community/network 580s ############################################################ 580s ############################################################ 580s Unit test modules with Python 3.13 585s ============================= test session starts ============================== 585s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 585s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/network 585s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 585s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 585s created: 8/8 workers 585s 8 workers [930 items] 585s 585s ........................................................................ [ 7%] 585s ........................................................................ [ 15%] 585s ........................................................................ [ 23%] 586s ........................................................................ [ 30%] 586s ........................................................................ [ 38%] 586s ........................................................................ [ 46%] 587s ........................................................................ [ 54%] 587s ........................................................................ [ 61%] 588s .......................................................s....s..s.s.s...s [ 69%] 588s .sss...s.sssssss..ss..ssssss...ssss.sss.s.ssss..sss.s.s.ss....ss...s.s.s [ 77%] 588s .....s..s..s..s.s...s.s.....s.....s.....s...s......s.................... [ 85%] 589s ........................................................................ [ 92%] 589s .................................................................. [100%] 589s =============================== warnings summary =============================== 589s tests/unit/plugins/modules/test_ce_is_is_interface.py::TestCloudEngineLacpModule::test_isis_interface_absent 589s tests/unit/plugins/modules/test_ce_is_is_interface.py::TestCloudEngineLacpModule::test_isis_interface_absent 589s tests/unit/plugins/modules/test_ce_is_is_interface.py::TestCloudEngineLacpModule::test_isis_interface_present 589s tests/unit/plugins/modules/test_ce_is_is_interface.py::TestCloudEngineLacpModule::test_isis_interface_present 589s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/network/plugins/modules/ce_is_is_interface.py:513: DeprecationWarning: Testing an element's truth value will always return True in future versions. Use specific 'len(elem)' or 'elem is not None' test instead. 589s if glb: 589s 589s tests/unit/plugins/modules/test_ce_is_is_instance.py::TestCloudEngineLacpModule::test_isis_instance_present 589s tests/unit/plugins/modules/test_ce_is_is_instance.py::TestCloudEngineLacpModule::test_isis_instance_present 589s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/network/plugins/modules/ce_is_is_instance.py:196: DeprecationWarning: Testing an element's truth value will always return True in future versions. Use specific 'len(elem)' or 'elem is not None' test instead. 589s if glb: 589s 589s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 589s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/network/tests/output/junit/python3.13-modules-units.xml - 589s =========================== short test summary info ============================ 589s SKIPPED [61] tests/unit/plugins/modules/test_nuage_vspk.py: Nuage Ansible modules requires Python 2.7 589s ================= 869 passed, 61 skipped, 6 warnings in 8.80s ================== 589s Unit test module_utils with Python 3.13 591s ============================= test session starts ============================== 591s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 591s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/network 591s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 591s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 591s created: 8/8 workers 591s 8 workers [172 items] 591s 591s ........................................................................ [ 41%] 591s ........................................................................ [ 83%] 592s ............................ [100%] 592s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/network/tests/output/junit/python3.13-module_utils-units.xml - 592s ============================= 172 passed in 1.98s ============================== 592s Unit test controller with Python 3.13 593s ============================= test session starts ============================== 593s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 593s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/network 593s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 593s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 593s created: 8/8 workers 593s 8 workers [50 items] 593s 594s .................................................. [100%] 594s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/network/tests/output/junit/python3.13-controller-units.xml - 594s ============================== 50 passed in 1.59s ============================== 594s 594s 594s 594s ############################################################ 594s ############################################################ 594s #### Running tests in ansible_collections/community/okd 594s ############################################################ 594s ############################################################ 594s Unit test modules with Python 3.13 596s ============================= test session starts ============================== 596s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 596s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/okd 596s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 596s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 596s created: 8/8 workers 596s 8 workers [13 items] 596s 596s ............. [100%] 596s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/okd/tests/output/junit/python3.13-modules-units.xml - 596s ============================== 13 passed in 1.68s ============================== 596s Unit test module_utils with Python 3.13 597s ============================= test session starts ============================== 597s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 597s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/okd 597s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 597s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 597s created: 8/8 workers 597s 8 workers [15 items] 597s 598s .s.........s... [100%] 598s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/okd/tests/output/junit/python3.13-module_utils-units.xml - 598s =========================== short test summary info ============================ 598s SKIPPED [2] tests/unit/plugins/module_utils/test_ldap_dn.py: This test requires the python-ldap library 598s ======================== 13 passed, 2 skipped in 1.01s ========================= 598s 598s 598s 598s ############################################################ 598s ############################################################ 598s #### Running tests in ansible_collections/community/postgresql 598s ############################################################ 598s ############################################################ 598s Unit test modules with Python 3.13 599s ============================= test session starts ============================== 599s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 599s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/postgresql 599s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 599s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 599s created: 8/8 workers 599s 8 workers [30 items] 599s 599s .............................. [100%] 599s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/postgresql/tests/output/junit/python3.13-modules-units.xml - 599s ============================== 30 passed in 1.10s ============================== 599s Unit test module_utils with Python 3.13 601s ============================= test session starts ============================== 601s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 601s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/postgresql 601s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 601s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 601s created: 8/8 workers 601s 8 workers [41 items] 601s 601s ......................................... [100%] 601s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/postgresql/tests/output/junit/python3.13-module_utils-units.xml - 601s ============================== 41 passed in 1.12s ============================== 601s 601s 601s 601s ############################################################ 601s ############################################################ 601s #### Running tests in ansible_collections/community/rabbitmq 601s ############################################################ 601s ############################################################ 601s Unit test controller with Python 3.13 603s ============================= test session starts ============================== 603s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 603s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/rabbitmq 603s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 603s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 603s created: 8/8 workers 603s 8 workers [30 items] 603s 603s .............................. [100%] 603s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/rabbitmq/tests/output/junit/python3.13-controller-units.xml - 603s ============================== 30 passed in 1.41s ============================== 603s 603s 603s 603s ############################################################ 603s ############################################################ 603s #### Running tests in ansible_collections/community/routeros 603s ############################################################ 603s ############################################################ 604s Unit test modules with Python 3.13 605s ============================= test session starts ============================== 605s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 605s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/routeros 605s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 605s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 605s created: 8/8 workers 605s 8 workers [115 items] 605s 605s ........................................................................ [ 62%] 606s ........................................... [100%] 606s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/routeros/tests/output/junit/python3.13-modules-units.xml - 606s ============================= 115 passed in 1.85s ============================== 606s Unit test module_utils with Python 3.13 607s ============================= test session starts ============================== 607s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 607s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/routeros 607s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 607s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 607s created: 8/8 workers 607s 8 workers [146 items] 607s 608s ........................................................................ [ 49%] 608s ........................................................................ [ 98%] 608s .. [100%] 608s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/routeros/tests/output/junit/python3.13-module_utils-units.xml - 608s ============================= 146 passed in 1.59s ============================== 608s 608s 608s 608s ############################################################ 608s ############################################################ 608s #### Running tests in ansible_collections/community/sap_libs 608s ############################################################ 608s ############################################################ 608s Unit test modules with Python 3.13 610s ============================= test session starts ============================== 610s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 610s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/sap_libs 610s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 610s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 610s created: 8/8 workers 610s 8 workers [49 items] 610s 611s ................................................. [100%] 611s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/sap_libs/tests/output/junit/python3.13-modules-units.xml - 611s ============================== 49 passed in 1.84s ============================== 611s 611s 611s 611s ############################################################ 611s ############################################################ 611s #### Running tests in ansible_collections/community/vmware 611s ############################################################ 611s ############################################################ 611s Unit test controller with Python 3.13 614s ============================= test session starts ============================== 614s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 614s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/vmware 614s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 614s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 614s created: 8/8 workers 614s 8 workers [32 items] 614s 614s ................................ [100%] 614s =============================== warnings summary =============================== 614s tests/unit/module_utils/test_vmware.py::test_required_params[validate_certs] 614s tests/unit/modules/cloud/vmware/test_vmware_guest.py::test_vmware_guest_with_parameters[patch_ansible_module0-testcase0] 614s tests/unit/modules/cloud/vmware/test_vmware_guest.py::test_vmware_guest_with_parameters[patch_ansible_module7-testcase7] 614s tests/unit/modules/cloud/vmware/test_vmware_guest.py::test_vmware_guest_with_parameters[patch_ansible_module5-testcase5] 614s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/vmware/plugins/module_utils/vmware.py:752: DeprecationWarning: ssl.PROTOCOL_TLS is deprecated 614s ssl_context = ssl.SSLContext(ssl.PROTOCOL_SSLv23) 614s 614s tests/unit/module_utils/test_vmware.py::test_required_params[valid_http_proxy] 614s tests/unit/modules/cloud/vmware/test_vmware_guest.py::test_vmware_guest_with_parameters[patch_ansible_module6-testcase6] 614s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/vmware/plugins/module_utils/vmware.py:757: DeprecationWarning: ssl.PROTOCOL_TLS is deprecated 614s ssl_context = ssl.SSLContext(ssl.PROTOCOL_SSLv23) 614s 614s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 614s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/vmware/tests/output/junit/python3.13-controller-units.xml - 614s ======================== 32 passed, 6 warnings in 1.98s ======================== 614s 614s 614s 614s ############################################################ 614s ############################################################ 614s #### Running tests in ansible_collections/community/windows 614s ############################################################ 614s ############################################################ 614s Unit test controller with Python 3.13 616s ============================= test session starts ============================== 616s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 616s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/windows 616s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 616s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 616s created: 8/8 workers 616s 8 workers [32 items] 616s 616s ................................ [100%] 616s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/windows/tests/output/junit/python3.13-controller-units.xml - 616s ============================== 32 passed in 1.39s ============================== 616s 616s 616s 616s ############################################################ 616s ############################################################ 616s #### Running tests in ansible_collections/containers/podman 616s ############################################################ 616s ############################################################ 616s Unit test modules with Python 3.13 618s ============================= test session starts ============================== 618s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 618s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/containers/podman 618s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 618s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 618s created: 8/8 workers 618s 8 workers [10 items] 618s 618s .......... [100%] 618s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/containers/podman/tests/output/junit/python3.13-modules-units.xml - 618s ============================== 10 passed in 1.02s ============================== 618s 618s 618s 618s ############################################################ 618s ############################################################ 618s #### Running tests in ansible_collections/cyberark/conjur 618s ############################################################ 618s ############################################################ 618s Unit test controller with Python 3.13 620s ============================= test session starts ============================== 620s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 620s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cyberark/conjur 620s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 620s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 620s created: 8/8 workers 620s 8 workers [21 items] 620s 620s ..................... [100%] 620s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cyberark/conjur/tests/output/junit/python3.13-controller-units.xml - 620s ============================== 21 passed in 1.37s ============================== 620s 620s 620s 620s ############################################################ 620s ############################################################ 620s #### Running tests in ansible_collections/dellemc/enterprise_sonic 620s ############################################################ 620s ############################################################ 620s Unit test controller with Python 3.13 624s ============================= test session starts ============================== 624s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 624s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/dellemc/enterprise_sonic 624s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 624s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 624s created: 8/8 workers 624s 8 workers [404 items] 624s 625s ........................................................................ [ 17%] 626s ........................................................................ [ 35%] 627s ........................................................................ [ 53%] 628s ........................................................................ [ 71%] 629s ........................................................................ [ 89%] 630s ............................................ [100%] 630s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/dellemc/enterprise_sonic/tests/output/junit/python3.13-controller-units.xml - 630s ============================= 404 passed in 9.58s ============================== 631s 631s 631s 631s ############################################################ 631s ############################################################ 631s #### Running tests in ansible_collections/dellemc/openmanage 631s ############################################################ 631s ############################################################ 631s Unit test modules with Python 3.13 637s ============================= test session starts ============================== 637s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 637s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/dellemc/openmanage 637s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 637s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 637s created: 8/8 workers 637s 8 workers [2636 items] 637s 637s ........................................................................ [ 2%] 637s ........................................................................ [ 5%] 638s ........................................................................ [ 8%] 638s ........................................................................ [ 10%] 638s ........................................................................ [ 13%] 639s ........................................................................ [ 16%] 639s ........................................................................ [ 19%] 639s ........................................................................ [ 21%] 640s ........................................................................ [ 24%] 640s ........................................................................ [ 27%] 640s ........................................................................ [ 30%] 641s ........................................................................ [ 32%] 641s ........................................................................ [ 35%] 642s ........................................................................ [ 38%] 642s ........................................................................ [ 40%] 642s ........................................................................ [ 43%] 643s ........................................................................ [ 46%] 644s ........................................................................ [ 49%] 644s ........................................................................ [ 51%] 644s ........................................................................ [ 54%] 644s ........................................................................ [ 57%] 645s ........................................................................ [ 60%] 645s ........................................................................ [ 62%] 646s ........................................................................ [ 65%] 646s ........................................................................ [ 68%] 646s ........................................................................ [ 71%] 647s ........................................................................ [ 73%] 647s ........................................................................ [ 76%] 648s ........................................................................ [ 79%] 648s ........................................................................ [ 81%] 648s ........................................................................ [ 84%] 649s ........................................................................ [ 87%] 649s ........................................................................ [ 90%] 650s ........................................................................ [ 92%] 654s ........................................................................ [ 95%] 688s ........................................................................ [ 98%] 689s ............................................ [100%] 689s =============================== warnings summary =============================== 689s tests/unit/plugins/modules/test_idrac_diagnostics.py: 19 warnings 689s tests/unit/plugins/modules/test_idrac_firmware_info.py: 6 warnings 689s tests/unit/plugins/modules/test_idrac_support_assist.py: 30 warnings 689s tests/unit/plugins/modules/test_idrac_system_erase.py: 6 warnings 689s tests/unit/plugins/modules/test_ome_application_network_proxy.py: 1 warning 689s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/dellemc/openmanage/plugins/module_utils/utils.py:117: DeprecationWarning: 'count' is passed as positional argument 689s ipv6_short = re.sub(r'(:0)+', ':', tempstr, 1) 689s 689s tests/unit/plugins/modules/test_idrac_server_config_profile.py::TestServerConfigProfile::test_compare_custom_default_configs[params0] 689s tests/unit/plugins/modules/test_idrac_server_config_profile.py::TestServerConfigProfile::test_compare_custom_default_configs[params0] 689s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/dellemc/openmanage/plugins/modules/idrac_server_config_profile.py:861: DeprecationWarning: Testing an element's truth value will always return True in future versions. Use specific 'len(elem)' or 'elem is not None' test instead. 689s if component: 689s 689s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 689s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/dellemc/openmanage/tests/output/junit/python3.13-modules-units.xml - 689s =========================== short test summary info ============================ 689s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_configure_idrac_eventing.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 689s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_configure_idrac_services.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 689s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_idrac_lc_attributes.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 689s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_idrac_storage_volume.py:22: could not import 'omsdk.sdkfile': No module named 'omsdk' 689s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_system_lockdown_mode.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 689s SKIPPED [1] tests/unit/plugins/modules/test_idrac_firmware.py:27: could not import 'omsdk.sdkfile': No module named 'omsdk' 689s SKIPPED [1] tests/unit/plugins/modules/test_idrac_lifecycle_controller_job_status_info.py:25: could not import 'omsdk.sdkfile': No module named 'omsdk' 689s SKIPPED [1] tests/unit/plugins/modules/test_idrac_lifecycle_controller_jobs.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 689s SKIPPED [1] tests/unit/plugins/modules/test_idrac_lifecycle_controller_logs.py:25: could not import 'omsdk.sdkfile': No module named 'omsdk' 689s SKIPPED [1] tests/unit/plugins/modules/test_idrac_lifecycle_controller_status_info.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 689s SKIPPED [1] tests/unit/plugins/modules/test_idrac_network.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 689s SKIPPED [1] tests/unit/plugins/modules/test_idrac_os_deployment.py:22: could not import 'omsdk.sdkfile': No module named 'omsdk' 689s SKIPPED [1] tests/unit/plugins/modules/test_idrac_syslog.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 689s SKIPPED [1] tests/unit/plugins/modules/test_idrac_system_info.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 689s SKIPPED [1] tests/unit/plugins/modules/test_idrac_timezone_ntp.py:25: could not import 'omsdk.sdkfile': No module named 'omsdk' 689s ================ 2636 passed, 15 skipped, 64 warnings in 58.13s ================ 690s Unit test module_utils with Python 3.13 691s ============================= test session starts ============================== 691s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 691s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/dellemc/openmanage 691s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 691s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 691s created: 8/8 workers 691s 8 workers [121 items] 691s 691s ........................................................................ [ 59%] 692s ................................................. [100%] 692s =============================== warnings summary =============================== 692s tests/unit/plugins/module_utils/test_idrac_redfish.py::TestIdracRedfishRest::test_invoke_request_without_session 692s tests/unit/plugins/module_utils/test_ome.py::TestOMERest::test_invoke_request_with_session 692s tests/unit/plugins/module_utils/test_redfish.py::TestRedfishRest::test_invoke_request_without_session 692s tests/unit/plugins/module_utils/test_rest_api.py::TestRestAPI::test_invoke_request_with_session 692s tests/unit/plugins/module_utils/test_session_utils.py::TestSessionRest::test_invoke_request_without_session 692s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/dellemc/openmanage/plugins/module_utils/utils.py:117: DeprecationWarning: 'count' is passed as positional argument 692s ipv6_short = re.sub(r'(:0)+', ':', tempstr, 1) 692s 692s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 692s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/dellemc/openmanage/tests/output/junit/python3.13-module_utils-units.xml - 692s ======================= 121 passed, 5 warnings in 1.76s ======================== 692s 692s 692s 692s ############################################################ 692s ############################################################ 692s #### Running tests in ansible_collections/dellemc/powerflex 692s ############################################################ 692s ############################################################ 692s Unit test modules with Python 3.13 694s ============================= test session starts ============================== 694s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 694s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/dellemc/powerflex 694s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 694s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 694s created: 8/8 workers 694s 8 workers [405 items] 694s 694s ........................................................................ [ 17%] 695s ........................................................................ [ 35%] 695s ........................................................................ [ 53%] 695s ........................................................................ [ 71%] 696s ........................................................................ [ 88%] 696s ............................................. [100%] 696s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/dellemc/powerflex/tests/output/junit/python3.13-modules-units.xml - 696s ============================= 405 passed in 3.35s ============================== 696s 696s 696s 696s ############################################################ 696s ############################################################ 696s #### Running tests in ansible_collections/dellemc/unity 696s ############################################################ 696s ############################################################ 696s Unit test modules with Python 3.13 698s ============================= test session starts ============================== 698s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 698s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/dellemc/unity 698s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 698s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 698s created: 8/8 workers 698s 8 workers [92 items] 698s 698s ........................................................................ [ 78%] 699s .................... [100%] 699s =============================== warnings summary =============================== 699s plugins/module_utils/storage/dell/utils.py:72 699s plugins/module_utils/storage/dell/utils.py:72 699s plugins/module_utils/storage/dell/utils.py:72 699s plugins/module_utils/storage/dell/utils.py:72 699s plugins/module_utils/storage/dell/utils.py:72 699s plugins/module_utils/storage/dell/utils.py:72 699s plugins/module_utils/storage/dell/utils.py:72 699s plugins/module_utils/storage/dell/utils.py:72 699s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/dellemc/unity/plugins/module_utils/storage/dell/utils.py:72: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html 699s from pkg_resources import parse_version 699s 699s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 699s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/dellemc/unity/tests/output/junit/python3.13-modules-units.xml - 699s ======================== 92 passed, 8 warnings in 1.90s ======================== 699s 699s 699s 699s ############################################################ 699s ############################################################ 699s #### Running tests in ansible_collections/google/cloud 699s ############################################################ 699s ############################################################ 699s Unit test controller with Python 3.13 700s ============================= test session starts ============================== 700s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 700s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/google/cloud 700s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 700s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 700s created: 8/8 workers 700s 8 workers [17 items] 700s 701s ................. [100%] 701s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/google/cloud/tests/output/junit/python3.13-controller-units.xml - 701s ============================== 17 passed in 1.27s ============================== 701s 701s 701s 701s ############################################################ 701s ############################################################ 701s #### Running tests in ansible_collections/hetzner/hcloud 701s ############################################################ 701s ############################################################ 701s Unit test controller with Python 3.13 703s ============================= test session starts ============================== 703s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 703s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/hetzner/hcloud 703s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 703s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 703s created: 8/8 workers 703s 8 workers [30 items] 703s 703s .............................. [100%] 703s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/hetzner/hcloud/tests/output/junit/python3.13-controller-units.xml - 703s ============================== 30 passed in 1.71s ============================== 703s 703s 703s 703s ############################################################ 703s ############################################################ 703s #### Running tests in ansible_collections/ibm/qradar 703s ############################################################ 703s ############################################################ 703s Unit test controller with Python 3.13 705s ============================= test session starts ============================== 705s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 705s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ibm/qradar 705s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 705s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 705s created: 8/8 workers 705s 8 workers [5 items] 705s 705s ..... [100%] 705s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ibm/qradar/tests/output/junit/python3.13-controller-units.xml - 705s ============================== 5 passed in 1.40s =============================== 705s 705s 705s 705s ############################################################ 705s ############################################################ 705s #### Running tests in ansible_collections/ibm/spectrum_virtualize 705s ############################################################ 705s ############################################################ 705s Unit test modules with Python 3.13 708s ============================= test session starts ============================== 708s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 708s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ibm/spectrum_virtualize 708s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 708s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 708s created: 8/8 workers 708s 8 workers [613 items] 708s 708s ........................................................................ [ 11%] 708s ........................................................................ [ 23%] 708s ........................................................................ [ 35%] 709s ........................................................................ [ 46%] 709s ........................................................................ [ 58%] 709s ........................................................................ [ 70%] 710s ........................................................................ [ 82%] 710s ........................................................................ [ 93%] 710s ..................................... [100%] 710s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ibm/spectrum_virtualize/tests/output/junit/python3.13-modules-units.xml - 710s ============================= 613 passed in 4.55s ============================== 711s Unit test module_utils with Python 3.13 712s ============================= test session starts ============================== 712s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 712s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ibm/spectrum_virtualize 712s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 712s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 712s created: 8/8 workers 712s 8 workers [9 items] 712s 712s ......... [100%] 712s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ibm/spectrum_virtualize/tests/output/junit/python3.13-module_utils-units.xml - 712s ============================== 9 passed in 1.23s =============================== 712s 712s 712s 712s ############################################################ 712s ############################################################ 712s #### Running tests in ansible_collections/ibm/storage_virtualize 712s ############################################################ 712s ############################################################ 712s Unit test modules with Python 3.13 715s ============================= test session starts ============================== 715s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 715s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ibm/storage_virtualize 715s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 715s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 715s created: 8/8 workers 715s 8 workers [762 items] 715s 715s ........................................................................ [ 9%] 715s ........................................................................ [ 18%] 716s ........................................................................ [ 28%] 716s ........................................................................ [ 37%] 716s ........................................................................ [ 47%] 716s ........................................................................ [ 56%] 717s ........................................................................ [ 66%] 717s ........................................................................ [ 75%] 717s ........................................................................ [ 85%] 718s ........................................................................ [ 94%] 721s .......................................... [100%] 721s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ibm/storage_virtualize/tests/output/junit/python3.13-modules-units.xml - 721s ============================= 762 passed in 8.18s ============================== 721s Unit test module_utils with Python 3.13 723s ============================= test session starts ============================== 723s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 723s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ibm/storage_virtualize 723s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 723s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 723s created: 8/8 workers 723s 8 workers [12 items] 723s 723s ............ [100%] 723s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ibm/storage_virtualize/tests/output/junit/python3.13-module_utils-units.xml - 723s ============================== 12 passed in 1.34s ============================== 723s Skipping ansible_collections/infoblox/nios_modules 723s Skipping ansible_collections/junipernetworks/junos 723s 723s 723s 723s ############################################################ 723s ############################################################ 723s #### Running tests in ansible_collections/kubernetes/core 723s ############################################################ 723s ############################################################ 723s Unit test controller with Python 3.13 726s ============================= test session starts ============================== 726s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 726s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/kubernetes/core 726s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 726s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 726s created: 8/8 workers 726s 8 workers [172 items] 726s 726s ........................................................................ [ 41%] 726s ........................................................................ [ 83%] 731s ............................ [100%] 731s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/kubernetes/core/tests/output/junit/python3.13-controller-units.xml - 731s ============================= 172 passed in 7.71s ============================== 732s 732s 732s 732s ############################################################ 732s ############################################################ 732s #### Running tests in ansible_collections/kubevirt/core 732s ############################################################ 732s ############################################################ 732s Unit test controller with Python 3.13 735s ============================= test session starts ============================== 735s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 735s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/kubevirt/core 735s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 735s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 735s created: 8/8 workers 735s 8 workers [190 items] 735s 735s ........................................................................ [ 37%] 735s ........................................................................ [ 75%] 736s .............................................. [100%] 736s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/kubevirt/core/tests/output/junit/python3.13-controller-units.xml - 736s ============================= 190 passed in 2.80s ============================== 736s 736s 736s 736s ############################################################ 736s ############################################################ 736s #### Running tests in ansible_collections/microsoft/ad 736s ############################################################ 736s ############################################################ 736s Unit test controller with Python 3.13 738s ============================= test session starts ============================== 738s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 738s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/microsoft/ad 738s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 738s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 738s created: 8/8 workers 738s 8 workers [118 items] 738s 738s ........................................................................ [ 61%] 742s .................s....s....................... [100%] 742s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/microsoft/ad/tests/output/junit/python3.13-controller-units.xml - 742s =========================== short test summary info ============================ 742s SKIPPED [1] tests/unit/plugins/plugin_utils/_ldap/test_laps.py:9: could not import 'dpapi_ng': No module named 'dpapi_ng' 742s SKIPPED [1] tests/unit/plugins/plugin_utils/_ldap/test_schema.py:8: could not import 'sansldap': No module named 'sansldap' 742s SKIPPED [1] tests/unit/plugins/plugin_utils/_ldap/test_certificate.py:179: Hash algorithm is unavailable: Hash algorithm "sha1" not supported for signatures 742s SKIPPED [1] tests/unit/plugins/plugin_utils/_ldap/test_certificate.py:179: Hash algorithm is unavailable: Hash algorithm "md5" not supported for signatures 742s ======================== 116 passed, 4 skipped in 5.59s ======================== 742s 742s 742s 742s ############################################################ 742s ############################################################ 742s #### Running tests in ansible_collections/netapp/cloudmanager 742s ############################################################ 742s ############################################################ 743s Unit test modules with Python 3.13 745s ============================= test session starts ============================== 745s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 745s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp/cloudmanager 745s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 745s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 745s created: 8/8 workers 745s 8 workers [106 items] 745s 745s ........................................................................ [ 67%] 763s .................................. [100%] 763s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp/cloudmanager/tests/output/junit/python3.13-modules-units.xml - 763s ============================= 106 passed in 19.97s ============================= 763s Unit test module_utils with Python 3.13 765s ============================= test session starts ============================== 765s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 765s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp/cloudmanager 765s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 765s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 765s created: 8/8 workers 765s 8 workers [52 items] 765s 765s .................................................... [100%] 765s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp/cloudmanager/tests/output/junit/python3.13-module_utils-units.xml - 765s ============================== 52 passed in 1.77s ============================== 765s Skipping ansible_collections/netapp/ontap 765s 765s 765s 765s ############################################################ 765s ############################################################ 765s #### Running tests in ansible_collections/netapp/storagegrid 765s ############################################################ 765s ############################################################ 766s Unit test modules with Python 3.13 768s ============================= test session starts ============================== 768s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 768s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp/storagegrid 768s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 768s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 768s created: 8/8 workers 768s 8 workers [154 items] 768s 768s ........................................................................ [ 46%] 768s ........................................................................ [ 93%] 769s .......... [100%] 769s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp/storagegrid/tests/output/junit/python3.13-modules-units.xml - 769s ============================= 154 passed in 2.45s ============================== 769s Skipping ansible_collections/netapp_eseries/santricity 769s 769s 769s 769s ############################################################ 769s ############################################################ 769s #### Running tests in ansible_collections/netbox/netbox 769s ############################################################ 769s ############################################################ 769s Unit test controller with Python 3.13 771s ============================= test session starts ============================== 771s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 771s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netbox/netbox 771s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 771s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 771s created: 8/8 workers 771s 8 workers [208 items] 771s 771s ........................................................................ [ 34%] 771s ........................................................................ [ 69%] 772s ................................................................ [100%] 772s =============================== warnings summary =============================== 772s tests/unit/inventory/test_nb_inventory.py::test_refresh_lookups 772s /usr/lib/python3/dist-packages/_pytest/threadexception.py:82: PytestUnhandledThreadExceptionWarning: Exception in thread Thread-2 (wrapper) 772s 772s Traceback (most recent call last): 772s File "/usr/lib/python3.13/threading.py", line 1041, in _bootstrap_inner 772s self.run() 772s ~~~~~~~~^^ 772s File "/usr/lib/python3.13/threading.py", line 992, in run 772s self._target(*self._args, **self._kwargs) 772s ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 772s File "/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netbox/netbox/plugins/inventory/nb_inventory.py", line 1569, in wrapper 772s raise e 772s File "/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netbox/netbox/plugins/inventory/nb_inventory.py", line 1564, in wrapper 772s lookup() 772s ~~~~~~^^ 772s File "/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netbox/netbox/tests/unit/inventory/test_nb_inventory.py", line 154, in raises_exception 772s raise Exception("Error from within a thread") 772s Exception: Error from within a thread 772s 772s warnings.warn(pytest.PytestUnhandledThreadExceptionWarning(msg)) 772s 772s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 772s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netbox/netbox/tests/output/junit/python3.13-controller-units.xml - 772s ======================== 208 passed, 1 warning in 2.02s ======================== 772s Skipping ansible_collections/ngine_io/cloudstack 772s Skipping ansible_collections/sensu/sensu_go 772s Skipping ansible_collections/splunk/es 772s Skipping ansible_collections/vmware/vmware 772s 772s 772s 772s ############################################################ 772s ############################################################ 772s #### Running tests in ansible_collections/vultr/cloud 772s ############################################################ 772s ############################################################ 772s Unit test controller with Python 3.13 773s ============================= test session starts ============================== 773s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 773s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/vultr/cloud 773s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 773s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 773s created: 8/8 workers 773s 8 workers [15 items] 773s 774s ............... [100%] 774s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/vultr/cloud/tests/output/junit/python3.13-controller-units.xml - 774s ============================== 15 passed in 1.33s ============================== 774s 774s 774s 774s ############################################################ 774s ############################################################ 774s #### Running tests in ansible_collections/vyos/vyos 774s ############################################################ 774s ############################################################ 774s Unit test controller with Python 3.13 776s ============================= test session starts ============================== 776s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 776s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/vyos/vyos 776s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 776s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 776s created: 8/8 workers 776s 8 workers [212 items] 776s 776s ........................................................................ [ 33%] 777s ........................................................................ [ 67%] 778s .................................................................... [100%] 778s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/vyos/vyos/tests/output/junit/python3.13-controller-units.xml - 778s ============================= 212 passed in 3.17s ============================== 778s 778s 778s 778s ############################################################ 778s ############################################################ 778s #### Running tests in ansible_collections/wti/remote 778s ############################################################ 778s ############################################################ 778s Unit test controller with Python 3.13 779s ============================= test session starts ============================== 779s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 779s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/wti/remote 779s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 779s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 779s created: 8/8 workers 779s 8 workers [1 item] 779s 779s . [100%] 779s =============================== warnings summary =============================== 779s tests/unit/test_example.py::test_example 779s /usr/lib/python3/dist-packages/_pytest/python.py:163: PytestReturnNotNoneWarning: Expected None, but tests/unit/test_example.py::test_example returned 1, which will be an error in a future version of pytest. Did you mean to use `assert` instead of `return`? 779s warnings.warn( 779s 779s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 779s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/wti/remote/tests/output/junit/python3.13-controller-units.xml - 779s ========================= 1 passed, 1 warning in 0.83s ========================= 780s autopkgtest [04:56:33]: test unit-tests-stable.py: -----------------------] 783s autopkgtest [04:56:36]: test unit-tests-stable.py: - - - - - - - - - - results - - - - - - - - - - 783s unit-tests-stable.py PASS 787s autopkgtest [04:56:40]: test unit-tests-flaky.py: preparing testbed 811s autopkgtest [04:57:04]: testbed dpkg architecture: armhf 813s autopkgtest [04:57:06]: testbed apt version: 3.0.0 816s autopkgtest [04:57:09]: @@@@@@@@@@@@@@@@@@@@ test bed setup 820s autopkgtest [04:57:11]: testbed release detected to be: questing 826s autopkgtest [04:57:19]: updating testbed package index (apt update) 828s Get:1 http://ftpmaster.internal/ubuntu questing-proposed InRelease [110 kB] 828s Get:2 http://ftpmaster.internal/ubuntu questing InRelease [110 kB] 828s Get:3 http://ftpmaster.internal/ubuntu questing-updates InRelease [110 kB] 828s Get:4 http://ftpmaster.internal/ubuntu questing-security InRelease [110 kB] 828s Get:5 http://ftpmaster.internal/ubuntu questing-proposed/main Sources [162 kB] 828s Get:6 http://ftpmaster.internal/ubuntu questing-proposed/multiverse Sources [43.3 kB] 828s Get:7 http://ftpmaster.internal/ubuntu questing-proposed/universe Sources [1839 kB] 828s Get:8 http://ftpmaster.internal/ubuntu questing-proposed/main armhf Packages [197 kB] 828s Get:9 http://ftpmaster.internal/ubuntu questing-proposed/universe armhf Packages [1341 kB] 828s Get:10 http://ftpmaster.internal/ubuntu questing-proposed/multiverse armhf Packages [12.2 kB] 828s Get:11 http://ftpmaster.internal/ubuntu questing/main Sources [1395 kB] 828s Get:12 http://ftpmaster.internal/ubuntu questing/universe Sources [21.1 MB] 829s Get:13 http://ftpmaster.internal/ubuntu questing/multiverse Sources [299 kB] 829s Get:14 http://ftpmaster.internal/ubuntu questing/main armhf Packages [1358 kB] 829s Get:15 http://ftpmaster.internal/ubuntu questing/universe armhf Packages [15.4 MB] 829s Get:16 http://ftpmaster.internal/ubuntu questing/multiverse armhf Packages [173 kB] 833s Fetched 43.7 MB in 5s (8619 kB/s) 834s Reading package lists... 839s autopkgtest [04:57:32]: upgrading testbed (apt dist-upgrade and autopurge) 841s Reading package lists... 841s Building dependency tree... 841s Reading state information... 842s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 842s Starting 2 pkgProblemResolver with broken count: 0 842s Done 842s Entering ResolveByKeep 843s 843s Calculating upgrade... 843s The following packages will be upgraded: 843s base-files distro-info-data dpkg dpkg-dev ed fwupd htop libdpkg-perl 843s libftdi1-2 libfwupd3 libnpth0t64 libnvme1t64 libsensors-config libsensors5 843s liburcu8t64 motd-news-config nano ubuntu-pro-client ubuntu-pro-client-l10n 843s usb.ids 843s 20 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 843s Need to get 5431 kB of archives. 843s After this operation, 3722 kB disk space will be freed. 843s Get:1 http://ftpmaster.internal/ubuntu questing/main armhf motd-news-config all 13.7ubuntu1 [5260 B] 843s Get:2 http://ftpmaster.internal/ubuntu questing/main armhf base-files armhf 13.7ubuntu1 [75.4 kB] 844s Get:3 http://ftpmaster.internal/ubuntu questing/main armhf dpkg armhf 1.22.18ubuntu3 [1254 kB] 844s Get:4 http://ftpmaster.internal/ubuntu questing/main armhf libnpth0t64 armhf 1.8-3 [7716 B] 844s Get:5 http://ftpmaster.internal/ubuntu questing/main armhf distro-info-data all 0.64 [6664 B] 844s Get:6 http://ftpmaster.internal/ubuntu questing/main armhf ubuntu-pro-client-l10n armhf 35.1ubuntu0 [19.7 kB] 844s Get:7 http://ftpmaster.internal/ubuntu questing/main armhf ubuntu-pro-client armhf 35.1ubuntu0 [258 kB] 844s Get:8 http://ftpmaster.internal/ubuntu questing/main armhf ed armhf 1.21.1-1 [53.0 kB] 844s Get:9 http://ftpmaster.internal/ubuntu questing/main armhf libsensors-config all 1:3.6.2-2 [6756 B] 844s Get:10 http://ftpmaster.internal/ubuntu questing/main armhf libsensors5 armhf 1:3.6.2-2 [26.8 kB] 844s Get:11 http://ftpmaster.internal/ubuntu questing/main armhf liburcu8t64 armhf 0.15.2-2 [57.3 kB] 844s Get:12 http://ftpmaster.internal/ubuntu questing/main armhf nano armhf 8.4-1 [278 kB] 844s Get:13 http://ftpmaster.internal/ubuntu questing/main armhf usb.ids all 2025.04.01-1 [223 kB] 844s Get:14 http://ftpmaster.internal/ubuntu questing/main armhf dpkg-dev all 1.22.18ubuntu3 [1089 kB] 844s Get:15 http://ftpmaster.internal/ubuntu questing/main armhf libdpkg-perl all 1.22.18ubuntu3 [281 kB] 844s Get:16 http://ftpmaster.internal/ubuntu questing/main armhf fwupd armhf 2.0.8-3 [1414 kB] 844s Get:17 http://ftpmaster.internal/ubuntu questing/main armhf libfwupd3 armhf 2.0.8-3 [126 kB] 844s Get:18 http://ftpmaster.internal/ubuntu questing/main armhf htop armhf 3.4.1-4 [147 kB] 844s Get:19 http://ftpmaster.internal/ubuntu questing/main armhf libftdi1-2 armhf 1.5-10 [27.8 kB] 844s Get:20 http://ftpmaster.internal/ubuntu questing/main armhf libnvme1t64 armhf 1.13-2 [74.3 kB] 844s Fetched 5431 kB in 1s (7159 kB/s) 845s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 63953 files and directories currently installed.) 845s Preparing to unpack .../motd-news-config_13.7ubuntu1_all.deb ... 845s Unpacking motd-news-config (13.7ubuntu1) over (13.6ubuntu2) ... 845s Preparing to unpack .../base-files_13.7ubuntu1_armhf.deb ... 845s Unpacking base-files (13.7ubuntu1) over (13.6ubuntu2) ... 845s Setting up base-files (13.7ubuntu1) ... 845s Installing new version of config file /etc/issue ... 845s Installing new version of config file /etc/issue.net ... 845s Installing new version of config file /etc/lsb-release ... 845s motd-news.service is a disabled or a static unit not running, not starting it. 845s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 63953 files and directories currently installed.) 845s Preparing to unpack .../dpkg_1.22.18ubuntu3_armhf.deb ... 845s Unpacking dpkg (1.22.18ubuntu3) over (1.22.18ubuntu2) ... 846s Setting up dpkg (1.22.18ubuntu3) ... 846s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 63953 files and directories currently installed.) 846s Preparing to unpack .../libnpth0t64_1.8-3_armhf.deb ... 846s Unpacking libnpth0t64:armhf (1.8-3) over (1.8-2) ... 846s Setting up libnpth0t64:armhf (1.8-3) ... 846s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 63953 files and directories currently installed.) 846s Preparing to unpack .../00-distro-info-data_0.64_all.deb ... 846s Unpacking distro-info-data (0.64) over (0.63) ... 846s Preparing to unpack .../01-ubuntu-pro-client-l10n_35.1ubuntu0_armhf.deb ... 846s Unpacking ubuntu-pro-client-l10n (35.1ubuntu0) over (35) ... 846s Preparing to unpack .../02-ubuntu-pro-client_35.1ubuntu0_armhf.deb ... 846s Unpacking ubuntu-pro-client (35.1ubuntu0) over (35) ... 846s Preparing to unpack .../03-ed_1.21.1-1_armhf.deb ... 846s Unpacking ed (1.21.1-1) over (1.21-1) ... 846s Preparing to unpack .../04-libsensors-config_1%3a3.6.2-2_all.deb ... 846s Unpacking libsensors-config (1:3.6.2-2) over (1:3.6.0-10) ... 846s Preparing to unpack .../05-libsensors5_1%3a3.6.2-2_armhf.deb ... 846s Unpacking libsensors5:armhf (1:3.6.2-2) over (1:3.6.0-10) ... 846s Preparing to unpack .../06-liburcu8t64_0.15.2-2_armhf.deb ... 846s Unpacking liburcu8t64:armhf (0.15.2-2) over (0.15.1-1) ... 846s Preparing to unpack .../07-nano_8.4-1_armhf.deb ... 846s Unpacking nano (8.4-1) over (8.3-1) ... 847s Preparing to unpack .../08-usb.ids_2025.04.01-1_all.deb ... 847s Unpacking usb.ids (2025.04.01-1) over (2025.01.14-1) ... 847s Preparing to unpack .../09-dpkg-dev_1.22.18ubuntu3_all.deb ... 847s Unpacking dpkg-dev (1.22.18ubuntu3) over (1.22.18ubuntu2) ... 847s Preparing to unpack .../10-libdpkg-perl_1.22.18ubuntu3_all.deb ... 847s Unpacking libdpkg-perl (1.22.18ubuntu3) over (1.22.18ubuntu2) ... 847s Preparing to unpack .../11-fwupd_2.0.8-3_armhf.deb ... 847s Unpacking fwupd (2.0.8-3) over (2.0.7-1) ... 847s dpkg: warning: unable to delete old directory '/etc/grub.d': Directory not empty 847s Preparing to unpack .../12-libfwupd3_2.0.8-3_armhf.deb ... 847s Unpacking libfwupd3:armhf (2.0.8-3) over (2.0.7-1) ... 847s Preparing to unpack .../13-htop_3.4.1-4_armhf.deb ... 847s Unpacking htop (3.4.1-4) over (3.4.0-2) ... 847s Preparing to unpack .../14-libftdi1-2_1.5-10_armhf.deb ... 847s Unpacking libftdi1-2:armhf (1.5-10) over (1.5-8build1) ... 847s Preparing to unpack .../15-libnvme1t64_1.13-2_armhf.deb ... 847s Unpacking libnvme1t64 (1.13-2) over (1.11.1-2) ... 847s Setting up motd-news-config (13.7ubuntu1) ... 847s Setting up liburcu8t64:armhf (0.15.2-2) ... 847s Setting up distro-info-data (0.64) ... 847s Setting up htop (3.4.1-4) ... 847s Setting up libsensors-config (1:3.6.2-2) ... 847s Installing new version of config file /etc/sensors3.conf ... 847s Setting up libfwupd3:armhf (2.0.8-3) ... 847s Setting up libftdi1-2:armhf (1.5-10) ... 847s Setting up libnvme1t64 (1.13-2) ... 847s Setting up ed (1.21.1-1) ... 847s Setting up usb.ids (2025.04.01-1) ... 847s Setting up libsensors5:armhf (1:3.6.2-2) ... 847s Setting up libdpkg-perl (1.22.18ubuntu3) ... 847s Setting up nano (8.4-1) ... 847s Installing new version of config file /etc/nanorc ... 847s Setting up ubuntu-pro-client (35.1ubuntu0) ... 847s apparmor_parser: Unable to replace "ubuntu_pro_apt_news". apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 847s 848s apparmor_parser: Unable to replace "apt_methods". apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 848s 848s apparmor_parser: Unable to replace "ubuntu_pro_esm_cache". apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 848s 849s Setting up fwupd (2.0.8-3) ... 849s fwupd-refresh.service is a disabled or a static unit not running, not starting it. 849s fwupd.service is a disabled or a static unit not running, not starting it. 849s Setting up ubuntu-pro-client-l10n (35.1ubuntu0) ... 849s Setting up dpkg-dev (1.22.18ubuntu3) ... 849s Processing triggers for dbus (1.16.2-2ubuntu1) ... 849s Processing triggers for install-info (7.1.1-1) ... 850s Processing triggers for libc-bin (2.41-6ubuntu1) ... 850s Processing triggers for man-db (2.13.0-1) ... 851s Processing triggers for plymouth-theme-ubuntu-text (24.004.60-2ubuntu7) ... 851s Processing triggers for initramfs-tools (0.147ubuntu1) ... 853s Reading package lists... 854s Building dependency tree... 854s Reading state information... 854s Starting pkgProblemResolver with broken count: 0 854s Starting 2 pkgProblemResolver with broken count: 0 854s Done 854s Solving dependencies... 855s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 857s autopkgtest [04:57:50]: rebooting testbed after setup commands that affected boot 921s Reading package lists... 921s Building dependency tree... 921s Reading state information... 921s Starting pkgProblemResolver with broken count: 0 921s Starting 2 pkgProblemResolver with broken count: 0 921s Done 922s The following NEW packages will be installed: 922s ansible ansible-core fontconfig-config fonts-dejavu-core fonts-dejavu-mono 922s gir1.2-secret-1 git git-man ieee-data libcairo-gobject2 libcairo2 922s liberror-perl libfontconfig1 libfreetype6 libpixman-1-0 libsecret-1-0 922s libsecret-common libsodium23 libxcb-render0 libxcb-shm0 libxrender1 922s libxslt1.1 python3-adal python3-aiohappyeyeballs python3-aiohttp 922s python3-aiosignal python3-async-timeout python3-avro python3-azure 922s python3-azure-storage python3-cachetools python3-cairo python3-click 922s python3-colorama python3-dnspython python3-execnet python3-flake8 922s python3-freezegun python3-frozenlist python3-gi-cairo python3-gitlab 922s python3-google-auth python3-httmock python3-hvac python3-iniconfig 922s python3-isodate python3-joblib python3-kubernetes python3-lxml 922s python3-marshmallow python3-mccabe python3-mock python3-msal 922s python3-msal-extensions python3-msrest python3-msrestazure python3-multidict 922s python3-nacl python3-netaddr python3-nltk python3-paramiko python3-pathspec 922s python3-pluggy python3-portalocker python3-proxmoxer python3-psutil 922s python3-py python3-pyasn1 python3-pyasn1-modules python3-pycodestyle 922s python3-pydash python3-pyflakes python3-pyhcl python3-pytest 922s python3-pytest-forked python3-pytest-mock python3-pytest-xdist python3-pyu2f 922s python3-pyvmomi python3-redis python3-regex python3-requests-oauthlib 922s python3-requests-toolbelt python3-resolvelib python3-responses python3-rsa 922s python3-ruamel.yaml python3-ruamel.yaml.clib python3-strictyaml 922s python3-textfsm python3-tqdm python3-websocket python3-xmltodict 922s python3-yarl yamllint 922s 0 upgraded, 95 newly installed, 0 to remove and 0 not upgraded. 922s Need to get 54.6 MB of archives. 922s After this operation, 903 MB of additional disk space will be used. 922s Get:1 http://ftpmaster.internal/ubuntu questing/universe armhf python3-resolvelib all 1.1.0-1 [25.8 kB] 922s Get:2 http://ftpmaster.internal/ubuntu questing/main armhf libsodium23 armhf 1.0.18-1build3 [139 kB] 923s Get:3 http://ftpmaster.internal/ubuntu questing/main armhf python3-nacl armhf 1.5.0-7 [54.8 kB] 923s Get:4 http://ftpmaster.internal/ubuntu questing/main armhf python3-paramiko all 3.5.1-2ubuntu1 [147 kB] 923s Get:5 http://ftpmaster.internal/ubuntu questing/main armhf python3-dnspython all 2.7.0-1ubuntu1 [167 kB] 923s Get:6 http://ftpmaster.internal/ubuntu questing/main armhf ieee-data all 20240722 [2300 kB] 923s Get:7 http://ftpmaster.internal/ubuntu questing/main armhf python3-netaddr all 1.3.0-1 [363 kB] 923s Get:8 http://ftpmaster.internal/ubuntu questing/universe armhf ansible-core all 2.18.1-4ubuntu1 [1273 kB] 923s Get:9 http://ftpmaster.internal/ubuntu questing/universe armhf ansible all 11.2.0+dfsg-1 [18.1 MB] 924s Get:10 http://ftpmaster.internal/ubuntu questing/main armhf fonts-dejavu-mono all 2.37-8 [502 kB] 924s Get:11 http://ftpmaster.internal/ubuntu questing/main armhf fonts-dejavu-core all 2.37-8 [835 kB] 924s Get:12 http://ftpmaster.internal/ubuntu questing/main armhf fontconfig-config armhf 2.15.0-2.2ubuntu1 [37.9 kB] 924s Get:13 http://ftpmaster.internal/ubuntu questing/main armhf libsecret-common all 0.21.7-1 [5160 B] 924s Get:14 http://ftpmaster.internal/ubuntu questing/main armhf libsecret-1-0 armhf 0.21.7-1 [105 kB] 924s Get:15 http://ftpmaster.internal/ubuntu questing/main armhf gir1.2-secret-1 armhf 0.21.7-1 [9392 B] 924s Get:16 http://ftpmaster.internal/ubuntu questing/main armhf liberror-perl all 0.17030-1 [23.5 kB] 924s Get:17 http://ftpmaster.internal/ubuntu questing/main armhf git-man all 1:2.48.1-0ubuntu1 [1148 kB] 924s Get:18 http://ftpmaster.internal/ubuntu questing/main armhf git armhf 1:2.48.1-0ubuntu1 [4561 kB] 924s Get:19 http://ftpmaster.internal/ubuntu questing/main armhf libfreetype6 armhf 2.13.3+dfsg-1 [330 kB] 924s Get:20 http://ftpmaster.internal/ubuntu questing/main armhf libfontconfig1 armhf 2.15.0-2.2ubuntu1 [114 kB] 924s Get:21 http://ftpmaster.internal/ubuntu questing/main armhf libpixman-1-0 armhf 0.44.0-3 [183 kB] 924s Get:22 http://ftpmaster.internal/ubuntu questing/main armhf libxcb-render0 armhf 1.17.0-2 [15.3 kB] 924s Get:23 http://ftpmaster.internal/ubuntu questing/main armhf libxcb-shm0 armhf 1.17.0-2 [5774 B] 924s Get:24 http://ftpmaster.internal/ubuntu questing/main armhf libxrender1 armhf 1:0.9.10-1.1build1 [16.0 kB] 924s Get:25 http://ftpmaster.internal/ubuntu questing/main armhf libcairo2 armhf 1.18.4-1 [483 kB] 924s Get:26 http://ftpmaster.internal/ubuntu questing/main armhf libcairo-gobject2 armhf 1.18.4-1 [126 kB] 924s Get:27 http://ftpmaster.internal/ubuntu questing/main armhf libxslt1.1 armhf 1.1.39-0exp1ubuntu4 [151 kB] 924s Get:28 http://ftpmaster.internal/ubuntu questing/universe armhf python3-adal all 1.2.7-5 [33.0 kB] 924s Get:29 http://ftpmaster.internal/ubuntu questing/universe armhf python3-aiohappyeyeballs all 2.6.1-1 [11.1 kB] 924s Get:30 http://ftpmaster.internal/ubuntu questing/universe armhf python3-multidict armhf 6.2.0-2 [32.8 kB] 924s Get:31 http://ftpmaster.internal/ubuntu questing/universe armhf python3-yarl armhf 1.13.1-1build2 [91.4 kB] 924s Get:32 http://ftpmaster.internal/ubuntu questing/universe armhf python3-async-timeout all 5.0.1-1 [6830 B] 924s Get:33 http://ftpmaster.internal/ubuntu questing/universe armhf python3-frozenlist armhf 1.5.0-1build2 [47.0 kB] 924s Get:34 http://ftpmaster.internal/ubuntu questing/universe armhf python3-aiosignal all 1.3.2-1 [5182 B] 924s Get:35 http://ftpmaster.internal/ubuntu questing/universe armhf python3-aiohttp armhf 3.10.11-1build1 [289 kB] 924s Get:36 http://ftpmaster.internal/ubuntu questing/universe armhf python3-avro all 1.12.0+dfsg-1 [75.3 kB] 924s Get:37 http://ftpmaster.internal/ubuntu questing/universe armhf python3-isodate all 0.7.0-1 [18.6 kB] 924s Get:38 http://ftpmaster.internal/ubuntu questing/universe armhf python3-requests-oauthlib all 1.3.1-1 [18.8 kB] 924s Get:39 http://ftpmaster.internal/ubuntu questing/universe armhf python3-msrest all 0.6.21-5 [48.7 kB] 924s Get:40 http://ftpmaster.internal/ubuntu questing/universe armhf python3-msrestazure all 0.6.4-4 [27.1 kB] 924s Get:41 http://ftpmaster.internal/ubuntu questing/universe armhf python3-azure-storage all 20250304+git-1 [300 kB] 924s Get:42 http://ftpmaster.internal/ubuntu questing/universe armhf python3-colorama all 0.4.6-4 [32.1 kB] 924s Get:43 http://ftpmaster.internal/ubuntu questing/universe armhf python3-marshmallow all 3.26.1-0.2 [47.5 kB] 924s Get:44 http://ftpmaster.internal/ubuntu questing/universe armhf python3-msal all 1.32.0-1 [100 kB] 924s Get:45 http://ftpmaster.internal/ubuntu questing/main armhf python3-cairo armhf 1.27.0-2 [115 kB] 924s Get:46 http://ftpmaster.internal/ubuntu questing/main armhf python3-gi-cairo armhf 3.50.0-4build1 [7306 B] 924s Get:47 http://ftpmaster.internal/ubuntu questing/universe armhf python3-portalocker all 2.2.1-1 [17.2 kB] 924s Get:48 http://ftpmaster.internal/ubuntu questing/universe armhf python3-msal-extensions all 1.3.1-1 [18.2 kB] 924s Get:49 http://ftpmaster.internal/ubuntu questing/main armhf python3-click all 8.2.0+0.really.8.1.8-1 [80.0 kB] 924s Get:50 http://ftpmaster.internal/ubuntu questing/universe armhf python3-joblib all 1.4.2-3 [205 kB] 924s Get:51 http://ftpmaster.internal/ubuntu questing/universe armhf python3-regex armhf 0.1.20241106-1build1 [270 kB] 924s Get:52 http://ftpmaster.internal/ubuntu questing/universe armhf python3-tqdm all 4.67.1-3 [91.6 kB] 924s Get:53 http://ftpmaster.internal/ubuntu questing/universe armhf python3-nltk all 3.9.1-2 [1006 kB] 924s Get:54 http://ftpmaster.internal/ubuntu questing/main armhf python3-psutil armhf 5.9.8-2build3 [194 kB] 924s Get:55 http://ftpmaster.internal/ubuntu questing/universe armhf python3-pydash all 8.0.3-3 [93.0 kB] 924s Get:56 http://ftpmaster.internal/ubuntu questing/universe armhf python3-ruamel.yaml.clib armhf 0.2.12+ds-1build1 [130 kB] 924s Get:57 http://ftpmaster.internal/ubuntu questing/universe armhf python3-ruamel.yaml all 0.18.10+ds-1 [127 kB] 924s Get:58 http://ftpmaster.internal/ubuntu questing/universe armhf python3-strictyaml all 1.6.1-3 [89.1 kB] 924s Get:59 http://ftpmaster.internal/ubuntu questing/universe armhf python3-websocket all 1.8.0-2 [38.5 kB] 924s Get:60 http://ftpmaster.internal/ubuntu questing/universe armhf python3-azure all 20250304+git-1 [15.9 MB] 925s Get:61 http://ftpmaster.internal/ubuntu questing/main armhf python3-cachetools all 5.3.3-1 [10.3 kB] 925s Get:62 http://ftpmaster.internal/ubuntu questing/universe armhf python3-execnet all 2.1.1-1 [33.4 kB] 925s Get:63 http://ftpmaster.internal/ubuntu questing/universe armhf python3-mccabe all 0.7.0-1 [8678 B] 925s Get:64 http://ftpmaster.internal/ubuntu questing/universe armhf python3-pycodestyle all 2.12.1-2 [30.2 kB] 925s Get:65 http://ftpmaster.internal/ubuntu questing/universe armhf python3-pyflakes all 3.2.0-3 [53.0 kB] 925s Get:66 http://ftpmaster.internal/ubuntu questing/universe armhf python3-flake8 all 7.1.1-3 [44.0 kB] 925s Get:67 http://ftpmaster.internal/ubuntu questing/universe armhf python3-freezegun all 1.5.1-1.2 [15.9 kB] 925s Get:68 http://ftpmaster.internal/ubuntu questing/universe armhf python3-requests-toolbelt all 1.0.0-4 [37.0 kB] 925s Get:69 http://ftpmaster.internal/ubuntu questing/universe armhf python3-gitlab all 1:4.9.0-1 [75.0 kB] 925s Get:70 http://ftpmaster.internal/ubuntu questing/main armhf python3-pyasn1 all 0.6.1-1 [56.4 kB] 925s Get:71 http://ftpmaster.internal/ubuntu questing/main armhf python3-pyasn1-modules all 0.4.1-2 [80.3 kB] 925s Get:72 http://ftpmaster.internal/ubuntu questing/universe armhf python3-pyu2f all 0.1.5-4 [22.9 kB] 925s Get:73 http://ftpmaster.internal/ubuntu questing/universe armhf python3-responses all 0.25.6-1 [40.5 kB] 925s Get:74 http://ftpmaster.internal/ubuntu questing/universe armhf python3-rsa all 4.9-2 [28.2 kB] 925s Get:75 http://ftpmaster.internal/ubuntu questing/universe armhf python3-google-auth all 2.28.2-3 [91.0 kB] 925s Get:76 http://ftpmaster.internal/ubuntu questing/universe armhf python3-httmock all 1.4.0-5 [6544 B] 925s Get:77 http://ftpmaster.internal/ubuntu questing/universe armhf python3-pyhcl all 0.4.4-6 [43.1 kB] 925s Get:78 http://ftpmaster.internal/ubuntu questing/universe armhf python3-hvac all 2.3.0-3 [88.1 kB] 925s Get:79 http://ftpmaster.internal/ubuntu questing/universe armhf python3-iniconfig all 1.1.1-2 [6024 B] 925s Get:80 http://ftpmaster.internal/ubuntu questing/universe armhf python3-kubernetes all 30.1.0-2 [385 kB] 925s Get:81 http://ftpmaster.internal/ubuntu questing/main armhf python3-lxml armhf 5.3.2-1 [1281 kB] 925s Get:82 http://ftpmaster.internal/ubuntu questing/universe armhf python3-pathspec all 0.12.1-1 [24.5 kB] 925s Get:83 http://ftpmaster.internal/ubuntu questing/universe armhf python3-pluggy all 1.5.0-1 [21.0 kB] 925s Get:84 http://ftpmaster.internal/ubuntu questing/universe armhf python3-proxmoxer all 2.2.0-1 [16.2 kB] 925s Get:85 http://ftpmaster.internal/ubuntu questing/universe armhf python3-py all 1.11.0-4 [72.7 kB] 925s Get:86 http://ftpmaster.internal/ubuntu questing/universe armhf python3-pytest all 8.3.5-1 [252 kB] 925s Get:87 http://ftpmaster.internal/ubuntu questing/universe armhf python3-pytest-forked all 1.6.0-3 [7470 B] 925s Get:88 http://ftpmaster.internal/ubuntu questing/universe armhf python3-pytest-mock all 3.14.0-2 [11.7 kB] 925s Get:89 http://ftpmaster.internal/ubuntu questing/universe armhf python3-pytest-xdist all 3.6.1-1 [33.8 kB] 925s Get:90 http://ftpmaster.internal/ubuntu questing/universe armhf python3-pyvmomi all 8.0.3.0.1-1 [532 kB] 925s Get:91 http://ftpmaster.internal/ubuntu questing-proposed/universe armhf python3-redis all 5.2.1-1 [221 kB] 925s Get:92 http://ftpmaster.internal/ubuntu questing/universe armhf python3-textfsm all 1.1.3-3 [29.3 kB] 925s Get:93 http://ftpmaster.internal/ubuntu questing/main armhf python3-xmltodict all 0.13.0-1 [13.4 kB] 925s Get:94 http://ftpmaster.internal/ubuntu questing/universe armhf yamllint all 1.35.1-2 [43.6 kB] 925s Get:95 http://ftpmaster.internal/ubuntu questing/universe armhf python3-mock all 5.1.0-1 [64.1 kB] 926s Fetched 54.6 MB in 3s (18.4 MB/s) 926s Selecting previously unselected package python3-resolvelib. 926s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 63951 files and directories currently installed.) 926s Preparing to unpack .../00-python3-resolvelib_1.1.0-1_all.deb ... 926s Unpacking python3-resolvelib (1.1.0-1) ... 926s Selecting previously unselected package libsodium23:armhf. 926s Preparing to unpack .../01-libsodium23_1.0.18-1build3_armhf.deb ... 926s Unpacking libsodium23:armhf (1.0.18-1build3) ... 926s Selecting previously unselected package python3-nacl. 926s Preparing to unpack .../02-python3-nacl_1.5.0-7_armhf.deb ... 926s Unpacking python3-nacl (1.5.0-7) ... 926s Selecting previously unselected package python3-paramiko. 926s Preparing to unpack .../03-python3-paramiko_3.5.1-2ubuntu1_all.deb ... 926s Unpacking python3-paramiko (3.5.1-2ubuntu1) ... 926s Selecting previously unselected package python3-dnspython. 926s Preparing to unpack .../04-python3-dnspython_2.7.0-1ubuntu1_all.deb ... 926s Unpacking python3-dnspython (2.7.0-1ubuntu1) ... 926s Selecting previously unselected package ieee-data. 926s Preparing to unpack .../05-ieee-data_20240722_all.deb ... 926s Unpacking ieee-data (20240722) ... 926s Selecting previously unselected package python3-netaddr. 926s Preparing to unpack .../06-python3-netaddr_1.3.0-1_all.deb ... 926s Unpacking python3-netaddr (1.3.0-1) ... 926s Selecting previously unselected package ansible-core. 926s Preparing to unpack .../07-ansible-core_2.18.1-4ubuntu1_all.deb ... 926s Unpacking ansible-core (2.18.1-4ubuntu1) ... 927s Selecting previously unselected package ansible. 927s Preparing to unpack .../08-ansible_11.2.0+dfsg-1_all.deb ... 927s Unpacking ansible (11.2.0+dfsg-1) ... 930s Selecting previously unselected package fonts-dejavu-mono. 930s Preparing to unpack .../09-fonts-dejavu-mono_2.37-8_all.deb ... 930s Unpacking fonts-dejavu-mono (2.37-8) ... 930s Selecting previously unselected package fonts-dejavu-core. 930s Preparing to unpack .../10-fonts-dejavu-core_2.37-8_all.deb ... 930s Unpacking fonts-dejavu-core (2.37-8) ... 930s Selecting previously unselected package fontconfig-config. 930s Preparing to unpack .../11-fontconfig-config_2.15.0-2.2ubuntu1_armhf.deb ... 930s Unpacking fontconfig-config (2.15.0-2.2ubuntu1) ... 930s Selecting previously unselected package libsecret-common. 930s Preparing to unpack .../12-libsecret-common_0.21.7-1_all.deb ... 930s Unpacking libsecret-common (0.21.7-1) ... 930s Selecting previously unselected package libsecret-1-0:armhf. 930s Preparing to unpack .../13-libsecret-1-0_0.21.7-1_armhf.deb ... 930s Unpacking libsecret-1-0:armhf (0.21.7-1) ... 930s Selecting previously unselected package gir1.2-secret-1:armhf. 930s Preparing to unpack .../14-gir1.2-secret-1_0.21.7-1_armhf.deb ... 930s Unpacking gir1.2-secret-1:armhf (0.21.7-1) ... 930s Selecting previously unselected package liberror-perl. 930s Preparing to unpack .../15-liberror-perl_0.17030-1_all.deb ... 930s Unpacking liberror-perl (0.17030-1) ... 930s Selecting previously unselected package git-man. 931s Preparing to unpack .../16-git-man_1%3a2.48.1-0ubuntu1_all.deb ... 931s Unpacking git-man (1:2.48.1-0ubuntu1) ... 931s Selecting previously unselected package git. 931s Preparing to unpack .../17-git_1%3a2.48.1-0ubuntu1_armhf.deb ... 931s Unpacking git (1:2.48.1-0ubuntu1) ... 931s Selecting previously unselected package libfreetype6:armhf. 931s Preparing to unpack .../18-libfreetype6_2.13.3+dfsg-1_armhf.deb ... 931s Unpacking libfreetype6:armhf (2.13.3+dfsg-1) ... 931s Selecting previously unselected package libfontconfig1:armhf. 931s Preparing to unpack .../19-libfontconfig1_2.15.0-2.2ubuntu1_armhf.deb ... 931s Unpacking libfontconfig1:armhf (2.15.0-2.2ubuntu1) ... 931s Selecting previously unselected package libpixman-1-0:armhf. 931s Preparing to unpack .../20-libpixman-1-0_0.44.0-3_armhf.deb ... 931s Unpacking libpixman-1-0:armhf (0.44.0-3) ... 931s Selecting previously unselected package libxcb-render0:armhf. 931s Preparing to unpack .../21-libxcb-render0_1.17.0-2_armhf.deb ... 931s Unpacking libxcb-render0:armhf (1.17.0-2) ... 931s Selecting previously unselected package libxcb-shm0:armhf. 931s Preparing to unpack .../22-libxcb-shm0_1.17.0-2_armhf.deb ... 931s Unpacking libxcb-shm0:armhf (1.17.0-2) ... 931s Selecting previously unselected package libxrender1:armhf. 931s Preparing to unpack .../23-libxrender1_1%3a0.9.10-1.1build1_armhf.deb ... 931s Unpacking libxrender1:armhf (1:0.9.10-1.1build1) ... 931s Selecting previously unselected package libcairo2:armhf. 931s Preparing to unpack .../24-libcairo2_1.18.4-1_armhf.deb ... 931s Unpacking libcairo2:armhf (1.18.4-1) ... 931s Selecting previously unselected package libcairo-gobject2:armhf. 931s Preparing to unpack .../25-libcairo-gobject2_1.18.4-1_armhf.deb ... 931s Unpacking libcairo-gobject2:armhf (1.18.4-1) ... 931s Selecting previously unselected package libxslt1.1:armhf. 931s Preparing to unpack .../26-libxslt1.1_1.1.39-0exp1ubuntu4_armhf.deb ... 931s Unpacking libxslt1.1:armhf (1.1.39-0exp1ubuntu4) ... 931s Selecting previously unselected package python3-adal. 931s Preparing to unpack .../27-python3-adal_1.2.7-5_all.deb ... 931s Unpacking python3-adal (1.2.7-5) ... 931s Selecting previously unselected package python3-aiohappyeyeballs. 931s Preparing to unpack .../28-python3-aiohappyeyeballs_2.6.1-1_all.deb ... 931s Unpacking python3-aiohappyeyeballs (2.6.1-1) ... 931s Selecting previously unselected package python3-multidict. 931s Preparing to unpack .../29-python3-multidict_6.2.0-2_armhf.deb ... 931s Unpacking python3-multidict (6.2.0-2) ... 931s Selecting previously unselected package python3-yarl. 931s Preparing to unpack .../30-python3-yarl_1.13.1-1build2_armhf.deb ... 931s Unpacking python3-yarl (1.13.1-1build2) ... 931s Selecting previously unselected package python3-async-timeout. 931s Preparing to unpack .../31-python3-async-timeout_5.0.1-1_all.deb ... 931s Unpacking python3-async-timeout (5.0.1-1) ... 931s Selecting previously unselected package python3-frozenlist. 931s Preparing to unpack .../32-python3-frozenlist_1.5.0-1build2_armhf.deb ... 931s Unpacking python3-frozenlist (1.5.0-1build2) ... 931s Selecting previously unselected package python3-aiosignal. 931s Preparing to unpack .../33-python3-aiosignal_1.3.2-1_all.deb ... 931s Unpacking python3-aiosignal (1.3.2-1) ... 931s Selecting previously unselected package python3-aiohttp. 932s Preparing to unpack .../34-python3-aiohttp_3.10.11-1build1_armhf.deb ... 932s Unpacking python3-aiohttp (3.10.11-1build1) ... 932s Selecting previously unselected package python3-avro. 932s Preparing to unpack .../35-python3-avro_1.12.0+dfsg-1_all.deb ... 932s Unpacking python3-avro (1.12.0+dfsg-1) ... 932s Selecting previously unselected package python3-isodate. 932s Preparing to unpack .../36-python3-isodate_0.7.0-1_all.deb ... 932s Unpacking python3-isodate (0.7.0-1) ... 932s Selecting previously unselected package python3-requests-oauthlib. 932s Preparing to unpack .../37-python3-requests-oauthlib_1.3.1-1_all.deb ... 932s Unpacking python3-requests-oauthlib (1.3.1-1) ... 932s Selecting previously unselected package python3-msrest. 932s Preparing to unpack .../38-python3-msrest_0.6.21-5_all.deb ... 932s Unpacking python3-msrest (0.6.21-5) ... 932s Selecting previously unselected package python3-msrestazure. 932s Preparing to unpack .../39-python3-msrestazure_0.6.4-4_all.deb ... 932s Unpacking python3-msrestazure (0.6.4-4) ... 932s Selecting previously unselected package python3-azure-storage. 932s Preparing to unpack .../40-python3-azure-storage_20250304+git-1_all.deb ... 932s Unpacking python3-azure-storage (20250304+git-1) ... 932s Selecting previously unselected package python3-colorama. 932s Preparing to unpack .../41-python3-colorama_0.4.6-4_all.deb ... 932s Unpacking python3-colorama (0.4.6-4) ... 932s Selecting previously unselected package python3-marshmallow. 932s Preparing to unpack .../42-python3-marshmallow_3.26.1-0.2_all.deb ... 932s Unpacking python3-marshmallow (3.26.1-0.2) ... 932s Selecting previously unselected package python3-msal. 932s Preparing to unpack .../43-python3-msal_1.32.0-1_all.deb ... 932s Unpacking python3-msal (1.32.0-1) ... 932s Selecting previously unselected package python3-cairo. 932s Preparing to unpack .../44-python3-cairo_1.27.0-2_armhf.deb ... 932s Unpacking python3-cairo (1.27.0-2) ... 932s Selecting previously unselected package python3-gi-cairo. 932s Preparing to unpack .../45-python3-gi-cairo_3.50.0-4build1_armhf.deb ... 932s Unpacking python3-gi-cairo (3.50.0-4build1) ... 932s Selecting previously unselected package python3-portalocker. 932s Preparing to unpack .../46-python3-portalocker_2.2.1-1_all.deb ... 932s Unpacking python3-portalocker (2.2.1-1) ... 932s Selecting previously unselected package python3-msal-extensions. 932s Preparing to unpack .../47-python3-msal-extensions_1.3.1-1_all.deb ... 932s Unpacking python3-msal-extensions (1.3.1-1) ... 932s Selecting previously unselected package python3-click. 932s Preparing to unpack .../48-python3-click_8.2.0+0.really.8.1.8-1_all.deb ... 932s Unpacking python3-click (8.2.0+0.really.8.1.8-1) ... 932s Selecting previously unselected package python3-joblib. 932s Preparing to unpack .../49-python3-joblib_1.4.2-3_all.deb ... 932s Unpacking python3-joblib (1.4.2-3) ... 932s Selecting previously unselected package python3-regex. 932s Preparing to unpack .../50-python3-regex_0.1.20241106-1build1_armhf.deb ... 932s Unpacking python3-regex (0.1.20241106-1build1) ... 932s Selecting previously unselected package python3-tqdm. 932s Preparing to unpack .../51-python3-tqdm_4.67.1-3_all.deb ... 932s Unpacking python3-tqdm (4.67.1-3) ... 932s Selecting previously unselected package python3-nltk. 932s Preparing to unpack .../52-python3-nltk_3.9.1-2_all.deb ... 932s Unpacking python3-nltk (3.9.1-2) ... 932s Selecting previously unselected package python3-psutil. 932s Preparing to unpack .../53-python3-psutil_5.9.8-2build3_armhf.deb ... 932s Unpacking python3-psutil (5.9.8-2build3) ... 932s Selecting previously unselected package python3-pydash. 933s Preparing to unpack .../54-python3-pydash_8.0.3-3_all.deb ... 933s Unpacking python3-pydash (8.0.3-3) ... 933s Selecting previously unselected package python3-ruamel.yaml.clib. 933s Preparing to unpack .../55-python3-ruamel.yaml.clib_0.2.12+ds-1build1_armhf.deb ... 933s Unpacking python3-ruamel.yaml.clib (0.2.12+ds-1build1) ... 933s Selecting previously unselected package python3-ruamel.yaml. 933s Preparing to unpack .../56-python3-ruamel.yaml_0.18.10+ds-1_all.deb ... 933s Unpacking python3-ruamel.yaml (0.18.10+ds-1) ... 933s Selecting previously unselected package python3-strictyaml. 933s Preparing to unpack .../57-python3-strictyaml_1.6.1-3_all.deb ... 933s Unpacking python3-strictyaml (1.6.1-3) ... 933s Selecting previously unselected package python3-websocket. 933s Preparing to unpack .../58-python3-websocket_1.8.0-2_all.deb ... 933s Unpacking python3-websocket (1.8.0-2) ... 933s Selecting previously unselected package python3-azure. 933s Preparing to unpack .../59-python3-azure_20250304+git-1_all.deb ... 933s Unpacking python3-azure (20250304+git-1) ... 937s Selecting previously unselected package python3-cachetools. 937s Preparing to unpack .../60-python3-cachetools_5.3.3-1_all.deb ... 937s Unpacking python3-cachetools (5.3.3-1) ... 937s Selecting previously unselected package python3-execnet. 937s Preparing to unpack .../61-python3-execnet_2.1.1-1_all.deb ... 937s Unpacking python3-execnet (2.1.1-1) ... 938s Selecting previously unselected package python3-mccabe. 938s Preparing to unpack .../62-python3-mccabe_0.7.0-1_all.deb ... 938s Unpacking python3-mccabe (0.7.0-1) ... 938s Selecting previously unselected package python3-pycodestyle. 938s Preparing to unpack .../63-python3-pycodestyle_2.12.1-2_all.deb ... 938s Unpacking python3-pycodestyle (2.12.1-2) ... 938s Selecting previously unselected package python3-pyflakes. 938s Preparing to unpack .../64-python3-pyflakes_3.2.0-3_all.deb ... 938s Unpacking python3-pyflakes (3.2.0-3) ... 938s Selecting previously unselected package python3-flake8. 938s Preparing to unpack .../65-python3-flake8_7.1.1-3_all.deb ... 938s Unpacking python3-flake8 (7.1.1-3) ... 938s Selecting previously unselected package python3-freezegun. 938s Preparing to unpack .../66-python3-freezegun_1.5.1-1.2_all.deb ... 938s Unpacking python3-freezegun (1.5.1-1.2) ... 938s Selecting previously unselected package python3-requests-toolbelt. 938s Preparing to unpack .../67-python3-requests-toolbelt_1.0.0-4_all.deb ... 938s Unpacking python3-requests-toolbelt (1.0.0-4) ... 938s Selecting previously unselected package python3-gitlab. 938s Preparing to unpack .../68-python3-gitlab_1%3a4.9.0-1_all.deb ... 938s Unpacking python3-gitlab (1:4.9.0-1) ... 938s Selecting previously unselected package python3-pyasn1. 938s Preparing to unpack .../69-python3-pyasn1_0.6.1-1_all.deb ... 938s Unpacking python3-pyasn1 (0.6.1-1) ... 938s Selecting previously unselected package python3-pyasn1-modules. 938s Preparing to unpack .../70-python3-pyasn1-modules_0.4.1-2_all.deb ... 938s Unpacking python3-pyasn1-modules (0.4.1-2) ... 938s Selecting previously unselected package python3-pyu2f. 938s Preparing to unpack .../71-python3-pyu2f_0.1.5-4_all.deb ... 938s Unpacking python3-pyu2f (0.1.5-4) ... 938s Selecting previously unselected package python3-responses. 938s Preparing to unpack .../72-python3-responses_0.25.6-1_all.deb ... 938s Unpacking python3-responses (0.25.6-1) ... 938s Selecting previously unselected package python3-rsa. 938s Preparing to unpack .../73-python3-rsa_4.9-2_all.deb ... 938s Unpacking python3-rsa (4.9-2) ... 938s Selecting previously unselected package python3-google-auth. 938s Preparing to unpack .../74-python3-google-auth_2.28.2-3_all.deb ... 938s Unpacking python3-google-auth (2.28.2-3) ... 938s Selecting previously unselected package python3-httmock. 938s Preparing to unpack .../75-python3-httmock_1.4.0-5_all.deb ... 938s Unpacking python3-httmock (1.4.0-5) ... 938s Selecting previously unselected package python3-pyhcl. 938s Preparing to unpack .../76-python3-pyhcl_0.4.4-6_all.deb ... 938s Unpacking python3-pyhcl (0.4.4-6) ... 938s Selecting previously unselected package python3-hvac. 938s Preparing to unpack .../77-python3-hvac_2.3.0-3_all.deb ... 938s Unpacking python3-hvac (2.3.0-3) ... 938s Selecting previously unselected package python3-iniconfig. 938s Preparing to unpack .../78-python3-iniconfig_1.1.1-2_all.deb ... 938s Unpacking python3-iniconfig (1.1.1-2) ... 938s Selecting previously unselected package python3-kubernetes. 938s Preparing to unpack .../79-python3-kubernetes_30.1.0-2_all.deb ... 938s Unpacking python3-kubernetes (30.1.0-2) ... 939s Selecting previously unselected package python3-lxml:armhf. 939s Preparing to unpack .../80-python3-lxml_5.3.2-1_armhf.deb ... 939s Unpacking python3-lxml:armhf (5.3.2-1) ... 939s Selecting previously unselected package python3-pathspec. 939s Preparing to unpack .../81-python3-pathspec_0.12.1-1_all.deb ... 939s Unpacking python3-pathspec (0.12.1-1) ... 939s Selecting previously unselected package python3-pluggy. 939s Preparing to unpack .../82-python3-pluggy_1.5.0-1_all.deb ... 939s Unpacking python3-pluggy (1.5.0-1) ... 939s Selecting previously unselected package python3-proxmoxer. 939s Preparing to unpack .../83-python3-proxmoxer_2.2.0-1_all.deb ... 939s Unpacking python3-proxmoxer (2.2.0-1) ... 939s Selecting previously unselected package python3-py. 939s Preparing to unpack .../84-python3-py_1.11.0-4_all.deb ... 939s Unpacking python3-py (1.11.0-4) ... 939s Selecting previously unselected package python3-pytest. 939s Preparing to unpack .../85-python3-pytest_8.3.5-1_all.deb ... 939s Unpacking python3-pytest (8.3.5-1) ... 939s Selecting previously unselected package python3-pytest-forked. 939s Preparing to unpack .../86-python3-pytest-forked_1.6.0-3_all.deb ... 939s Unpacking python3-pytest-forked (1.6.0-3) ... 939s Selecting previously unselected package python3-pytest-mock. 939s Preparing to unpack .../87-python3-pytest-mock_3.14.0-2_all.deb ... 939s Unpacking python3-pytest-mock (3.14.0-2) ... 939s Selecting previously unselected package python3-pytest-xdist. 939s Preparing to unpack .../88-python3-pytest-xdist_3.6.1-1_all.deb ... 939s Unpacking python3-pytest-xdist (3.6.1-1) ... 939s Selecting previously unselected package python3-pyvmomi. 939s Preparing to unpack .../89-python3-pyvmomi_8.0.3.0.1-1_all.deb ... 939s Unpacking python3-pyvmomi (8.0.3.0.1-1) ... 940s Selecting previously unselected package python3-redis. 940s Preparing to unpack .../90-python3-redis_5.2.1-1_all.deb ... 940s Unpacking python3-redis (5.2.1-1) ... 940s Selecting previously unselected package python3-textfsm. 940s Preparing to unpack .../91-python3-textfsm_1.1.3-3_all.deb ... 940s Unpacking python3-textfsm (1.1.3-3) ... 940s Selecting previously unselected package python3-xmltodict. 940s Preparing to unpack .../92-python3-xmltodict_0.13.0-1_all.deb ... 940s Unpacking python3-xmltodict (0.13.0-1) ... 940s Selecting previously unselected package yamllint. 940s Preparing to unpack .../93-yamllint_1.35.1-2_all.deb ... 940s Unpacking yamllint (1.35.1-2) ... 940s Selecting previously unselected package python3-mock. 940s Preparing to unpack .../94-python3-mock_5.1.0-1_all.deb ... 940s Unpacking python3-mock (5.1.0-1) ... 940s Setting up python3-iniconfig (1.1.1-2) ... 940s Setting up libpixman-1-0:armhf (0.44.0-3) ... 940s Setting up libsodium23:armhf (1.0.18-1build3) ... 940s Setting up python3-requests-toolbelt (1.0.0-4) ... 940s Setting up libxrender1:armhf (1:0.9.10-1.1build1) ... 940s Setting up python3-py (1.11.0-4) ... 940s Setting up python3-joblib (1.4.2-3) ... 941s Setting up python3-cachetools (5.3.3-1) ... 941s Setting up python3-colorama (0.4.6-4) ... 941s Setting up libxcb-render0:armhf (1.17.0-2) ... 941s Setting up python3-tqdm (4.67.1-3) ... 941s Setting up python3-pyflakes (3.2.0-3) ... 941s Setting up python3-ruamel.yaml.clib (0.2.12+ds-1build1) ... 941s Setting up python3-resolvelib (1.1.0-1) ... 941s Setting up python3-marshmallow (3.26.1-0.2) ... 941s Setting up python3-msal (1.32.0-1) ... 942s Setting up libxcb-shm0:armhf (1.17.0-2) ... 942s Setting up python3-httmock (1.4.0-5) ... 942s Setting up python3-click (8.2.0+0.really.8.1.8-1) ... 942s Setting up python3-psutil (5.9.8-2build3) ... 942s Setting up python3-multidict (6.2.0-2) ... 942s Setting up python3-frozenlist (1.5.0-1build2) ... 942s Setting up python3-aiosignal (1.3.2-1) ... 943s Setting up python3-mock (5.1.0-1) ... 943s Setting up python3-async-timeout (5.0.1-1) ... 943s Setting up liberror-perl (0.17030-1) ... 943s Setting up python3-responses (0.25.6-1) ... 943s Setting up python3-pyvmomi (8.0.3.0.1-1) ... 943s Setting up python3-isodate (0.7.0-1) ... 944s Setting up python3-pycodestyle (2.12.1-2) ... 944s Setting up python3-xmltodict (0.13.0-1) ... 944s Setting up python3-pyu2f (0.1.5-4) ... 944s Setting up libfreetype6:armhf (2.13.3+dfsg-1) ... 944s Setting up python3-avro (1.12.0+dfsg-1) ... 944s Setting up fonts-dejavu-mono (2.37-8) ... 944s Setting up fonts-dejavu-core (2.37-8) ... 944s Setting up python3-redis (5.2.1-1) ... 945s Setting up python3-aiohappyeyeballs (2.6.1-1) ... 945s Setting up python3-regex (0.1.20241106-1build1) ... 945s Setting up python3-pluggy (1.5.0-1) ... 945s Setting up python3-ruamel.yaml (0.18.10+ds-1) ... 945s Setting up ieee-data (20240722) ... 945s Setting up python3-adal (1.2.7-5) ... 945s Setting up python3-dnspython (2.7.0-1ubuntu1) ... 946s Setting up python3-portalocker (2.2.1-1) ... 946s Setting up libxslt1.1:armhf (1.1.39-0exp1ubuntu4) ... 946s Setting up python3-pyasn1 (0.6.1-1) ... 946s Setting up python3-proxmoxer (2.2.0-1) ... 946s Setting up git-man (1:2.48.1-0ubuntu1) ... 946s Setting up python3-textfsm (1.1.3-3) ... 946s Setting up python3-mccabe (0.7.0-1) ... 946s Setting up python3-execnet (2.1.1-1) ... 947s Setting up python3-pathspec (0.12.1-1) ... 947s Setting up python3-pydash (8.0.3-3) ... 947s Setting up python3-nltk (3.9.1-2) ... 948s Setting up python3-yarl (1.13.1-1build2) ... 948s Setting up python3-pyhcl (0.4.4-6) ... 948s Setting up python3-gitlab (1:4.9.0-1) ... 949s Setting up python3-websocket (1.8.0-2) ... 949s Setting up libsecret-common (0.21.7-1) ... 949s Setting up python3-freezegun (1.5.1-1.2) ... 949s Setting up python3-nacl (1.5.0-7) ... 949s Setting up python3-requests-oauthlib (1.3.1-1) ... 949s Setting up fontconfig-config (2.15.0-2.2ubuntu1) ... 949s Setting up python3-pytest (8.3.5-1) ... 950s Setting up python3-aiohttp (3.10.11-1build1) ... 950s Setting up python3-flake8 (7.1.1-3) ... 950s Setting up python3-msrest (0.6.21-5) ... 950s Setting up python3-pytest-forked (1.6.0-3) ... 951s Setting up python3-strictyaml (1.6.1-3) ... 951s Setting up libsecret-1-0:armhf (0.21.7-1) ... 951s Setting up yamllint (1.35.1-2) ... 951s Setting up gir1.2-secret-1:armhf (0.21.7-1) ... 951s Setting up python3-pyasn1-modules (0.4.1-2) ... 951s Setting up python3-hvac (2.3.0-3) ... 951s Setting up git (1:2.48.1-0ubuntu1) ... 951s Setting up python3-netaddr (1.3.0-1) ... 952s Setting up python3-pytest-mock (3.14.0-2) ... 952s Setting up python3-lxml:armhf (5.3.2-1) ... 952s Setting up python3-rsa (4.9-2) ... 952s Setting up libfontconfig1:armhf (2.15.0-2.2ubuntu1) ... 952s Setting up python3-msrestazure (0.6.4-4) ... 952s Setting up python3-paramiko (3.5.1-2ubuntu1) ... 952s Setting up python3-pytest-xdist (3.6.1-1) ... 953s Setting up ansible-core (2.18.1-4ubuntu1) ... 954s Setting up libcairo2:armhf (1.18.4-1) ... 954s Setting up python3-google-auth (2.28.2-3) ... 954s Setting up libcairo-gobject2:armhf (1.18.4-1) ... 954s Setting up ansible (11.2.0+dfsg-1) ... 979s Setting up python3-cairo (1.27.0-2) ... 979s Setting up python3-kubernetes (30.1.0-2) ... 981s Setting up python3-gi-cairo (3.50.0-4build1) ... 981s Setting up python3-msal-extensions (1.3.1-1) ... 981s Setting up python3-azure-storage (20250304+git-1) ... 982s Setting up python3-azure (20250304+git-1) ... 996s /usr/lib/python3/dist-packages/azure/ai/ml/_vendor/azure_resources/aio/operations/_resources_operations.py:80: SyntaxWarning: invalid escape sequence '\ ' 996s Valid values include ``createdTime``\ , ``changedTime`` and ``provisioningState``. For example, 996s /usr/lib/python3/dist-packages/azure/ai/ml/_vendor/azure_resources/aio/operations/_resources_operations.py:405: SyntaxWarning: invalid escape sequence '\ ' 996s Valid values include ``createdTime``\ , ``changedTime`` and ``provisioningState``. For example, 998s /usr/lib/python3/dist-packages/azure/appconfiguration/_generated/models/_models.py:238: SyntaxWarning: invalid escape sequence '\ ' 998s """An error, available when the status is ``Failed``\ , describing why the operation 999s /usr/lib/python3/dist-packages/azure/batch/models/_models.py:9067: SyntaxWarning: invalid escape sequence '\ ' 999s """The source port ranges to match for the rule. Valid values are '\ *' (for all ports 0 - 65535), 999s /usr/lib/python3/dist-packages/azure/batch/models/_models.py:9235: SyntaxWarning: invalid escape sequence '\ ' 999s using brackets (for example abc[\ *] would match a file named abc*\ ). Note that both and / are 1000s /usr/lib/python3/dist-packages/azure/communication/jobrouter/models/_models.py:2326: SyntaxWarning: invalid escape sequence '\ ' 1000s payload to scoring rule. If not set, a job's labels (sent in the payload as ``job``\ ) and a 1000s /usr/lib/python3/dist-packages/azure/communication/jobrouter/models/_models.py:2346: SyntaxWarning: invalid escape sequence '\ ' 1000s If not set, a job's labels (sent in the payload as ``job``\ ) and a job's worker selectors 1003s /usr/lib/python3/dist-packages/azure/mgmt/advisor/aio/operations/_recommendations_operations.py:190: SyntaxWarning: invalid escape sequence '\ ' 1003s properties ['ResourceId', 'ResourceGroup', 'RecommendationTypeGuid', '\ `Category 1003s /usr/lib/python3/dist-packages/azure/mgmt/advisor/operations/_recommendations_operations.py:303: SyntaxWarning: invalid escape sequence '\ ' 1003s properties ['ResourceId', 'ResourceGroup', 'RecommendationTypeGuid', '\ `Category 1004s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:3917: SyntaxWarning: invalid escape sequence '\ ' 1004s Possible Values::code:`
`:code:`
` **Standard**\ :code:`
`:code:`
` 1004s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10212: SyntaxWarning: invalid escape sequence '\ ' 1004s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 1004s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10255: SyntaxWarning: invalid escape sequence '\ ' 1004s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 1004s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10284: SyntaxWarning: invalid escape sequence '\ ' 1004s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 1004s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10320: SyntaxWarning: invalid escape sequence '\ ' 1004s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 1004s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10342: SyntaxWarning: invalid escape sequence '\ ' 1004s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 1004s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10375: SyntaxWarning: invalid escape sequence '\ ' 1004s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 1004s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10396: SyntaxWarning: invalid escape sequence '\ ' 1004s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 1004s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10429: SyntaxWarning: invalid escape sequence '\ ' 1004s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 1004s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:14746: SyntaxWarning: invalid escape sequence '\ ' 1004s :ivar allowed_sources: Allowed sources, e.g. ``*.trusted.com``\ , ``trusted.com``\ , 1004s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:14771: SyntaxWarning: invalid escape sequence '\ ' 1004s :keyword allowed_sources: Allowed sources, e.g. ``*.trusted.com``\ , ``trusted.com``\ , 1008s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models.py:1420: SyntaxWarning: invalid escape sequence '\ ' 1008s :param id: Required. The ID for the input directory. The job can use AZ_BATCHAI\ *INPUT*\ 1008s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models.py:2310: SyntaxWarning: invalid escape sequence '\ ' 1008s :param id: Required. The ID of the output directory. The job can use AZ_BATCHAI\ *OUTPUT*\ 1008s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models_py3.py:1547: SyntaxWarning: invalid escape sequence '\ ' 1008s :param id: Required. The ID for the input directory. The job can use AZ_BATCHAI\ *INPUT*\ 1008s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models_py3.py:2524: SyntaxWarning: invalid escape sequence '\ ' 1008s :param id: Required. The ID of the output directory. The job can use AZ_BATCHAI\ *OUTPUT*\ 1013s /usr/lib/python3/dist-packages/azure/mgmt/computefleet/models/_models.py:624: SyntaxWarning: invalid escape sequence '\ ' 1013s and Screenshot to diagnose VM status. **NOTE**\ : If storageUri is being 1013s /usr/lib/python3/dist-packages/azure/mgmt/computefleet/models/_models.py:3707: SyntaxWarning: invalid escape sequence '\W' 1013s characters :code:`
` Has a digit :code:`
` Has a special character (Regex match [\W_]) 1017s /usr/lib/python3/dist-packages/azure/mgmt/datamigration/models/_models_py3.py:16843: SyntaxWarning: invalid escape sequence '\S' 1017s Protocol:MachineName\SQLServerInstanceName,PortNumber. Required. 1017s /usr/lib/python3/dist-packages/azure/mgmt/datamigration/models/_models_py3.py:16916: SyntaxWarning: invalid escape sequence '\S' 1017s Protocol:MachineName\SQLServerInstanceName,PortNumber. Required. 1019s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:63: SyntaxWarning: invalid escape sequence '\w' 1019s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 1019s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:130: SyntaxWarning: invalid escape sequence '\w' 1019s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 1019s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:224: SyntaxWarning: invalid escape sequence '\w' 1019s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 1019s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:312: SyntaxWarning: invalid escape sequence '\w' 1019s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 1019s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:398: SyntaxWarning: invalid escape sequence '\w' 1019s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 1019s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:543: SyntaxWarning: invalid escape sequence '\w' 1019s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 1019s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:612: SyntaxWarning: invalid escape sequence '\w' 1019s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 1019s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:675: SyntaxWarning: invalid escape sequence '\w' 1019s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 1019s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:738: SyntaxWarning: invalid escape sequence '\w' 1019s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 1019s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:807: SyntaxWarning: invalid escape sequence '\w' 1019s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 1023s /usr/lib/python3/dist-packages/azure/mgmt/hybridnetwork/models/_models_py3.py:6032: SyntaxWarning: invalid escape sequence '\ ' 1023s :ivar provisioning_state: The provisioning state of the site resource. **TODO**\ : Confirm if 1025s /usr/lib/python3/dist-packages/azure/mgmt/iotoperations/models/_models.py:3866: SyntaxWarning: invalid escape sequence '\ ' 1025s pattern set glob-style pattern (e.g., '\ *', 'clients/*\ '). Required.""" 1025s /usr/lib/python3/dist-packages/azure/mgmt/iotoperations/models/_models.py:3868: SyntaxWarning: invalid escape sequence '\ ' 1025s """Give access for ``Read``\ , ``Write`` and ``ReadWrite`` access level. Required. Known values 1028s /usr/lib/python3/dist-packages/azure/mgmt/machinelearningservices/models/_machine_learning_services_mgmt_client_enums.py:169: SyntaxWarning: invalid escape sequence '\ ' 1028s #: The "forest"\ it builds, is an ensemble of decision trees, usually trained with the “bagging”\ 1028s /usr/lib/python3/dist-packages/azure/mgmt/machinelearningservices/models/_machine_learning_services_mgmt_client_enums.py:1032: SyntaxWarning: invalid escape sequence '\ ' 1028s #: The "forest"\ it builds, is an ensemble of decision trees, usually trained with the “bagging”\ 1036s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2542: SyntaxWarning: invalid escape sequence '\R' 1036s """Execute Reverse Replication\Reprotect. 1036s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2583: SyntaxWarning: invalid escape sequence '\R' 1036s """Execute Reverse Replication\Reprotect. 1036s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2622: SyntaxWarning: invalid escape sequence '\R' 1036s """Execute Reverse Replication\Reprotect. 1036s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:5397: SyntaxWarning: invalid escape sequence '\L' 1036s :ivar lun_id: Ordinal\LunId of the disk for the Azure VM. 1036s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:5448: SyntaxWarning: invalid escape sequence '\L' 1036s :keyword lun_id: Ordinal\LunId of the disk for the Azure VM. 1036s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:8836: SyntaxWarning: invalid escape sequence '\S' 1036s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 1036s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:8978: SyntaxWarning: invalid escape sequence '\S' 1036s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 1036s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:9510: SyntaxWarning: invalid escape sequence '\S' 1036s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 1036s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:9675: SyntaxWarning: invalid escape sequence '\S' 1036s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 1036s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:11412: SyntaxWarning: invalid escape sequence '\S' 1036s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target VM after 1036s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:11541: SyntaxWarning: invalid escape sequence '\S' 1036s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target VM after 1036s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:12193: SyntaxWarning: invalid escape sequence '\S' 1036s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 1036s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:12516: SyntaxWarning: invalid escape sequence '\S' 1036s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 1036s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:26323: SyntaxWarning: invalid escape sequence '\S' 1036s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 1036s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:26382: SyntaxWarning: invalid escape sequence '\S' 1036s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 1036s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3476: SyntaxWarning: invalid escape sequence '\R' 1036s """Execute Reverse Replication\Reprotect. 1036s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3517: SyntaxWarning: invalid escape sequence '\R' 1036s """Execute Reverse Replication\Reprotect. 1036s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3556: SyntaxWarning: invalid escape sequence '\R' 1036s """Execute Reverse Replication\Reprotect. 1037s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_azure_reservation_api_operations.py:163: SyntaxWarning: invalid escape sequence '\ ' 1037s """Get list of applicable ``Reservation``\ s. 1037s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:377: SyntaxWarning: invalid escape sequence '\ ' 1037s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 1037s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:407: SyntaxWarning: invalid escape sequence '\ ' 1037s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 1037s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:437: SyntaxWarning: invalid escape sequence '\ ' 1037s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 1037s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:583: SyntaxWarning: invalid escape sequence '\ ' 1037s """Merges two ``Reservation``\ s. 1037s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:614: SyntaxWarning: invalid escape sequence '\ ' 1037s """Merges two ``Reservation``\ s. 1037s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:645: SyntaxWarning: invalid escape sequence '\ ' 1037s """Merges two ``Reservation``\ s. 1037s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:721: SyntaxWarning: invalid escape sequence '\ ' 1037s """Get ``Reservation``\ s in a given reservation Order. 1037s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_order_operations.py:183: SyntaxWarning: invalid escape sequence '\ ' 1037s """Get all ``ReservationOrder``\ s. 1037s /usr/lib/python3/dist-packages/azure/mgmt/reservations/models/_models_py3.py:3172: SyntaxWarning: invalid escape sequence '\ ' 1037s """List of ``Reservation``\ s. 1037s /usr/lib/python3/dist-packages/azure/mgmt/reservations/models/_models_py3.py:3288: SyntaxWarning: invalid escape sequence '\ ' 1037s """List of ``ReservationOrder``\ s. 1037s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_azure_reservation_api_operations.py:239: SyntaxWarning: invalid escape sequence '\ ' 1037s """Get list of applicable ``Reservation``\ s. 1037s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:662: SyntaxWarning: invalid escape sequence '\ ' 1037s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 1037s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:692: SyntaxWarning: invalid escape sequence '\ ' 1037s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 1037s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:722: SyntaxWarning: invalid escape sequence '\ ' 1037s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 1037s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:868: SyntaxWarning: invalid escape sequence '\ ' 1037s """Merges two ``Reservation``\ s. 1037s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:899: SyntaxWarning: invalid escape sequence '\ ' 1037s """Merges two ``Reservation``\ s. 1037s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:930: SyntaxWarning: invalid escape sequence '\ ' 1037s """Merges two ``Reservation``\ s. 1037s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:1006: SyntaxWarning: invalid escape sequence '\ ' 1037s """Get ``Reservation``\ s in a given reservation Order. 1037s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_order_operations.py:299: SyntaxWarning: invalid escape sequence '\ ' 1037s """Get all ``ReservationOrder``\ s. 1041s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:68: SyntaxWarning: invalid escape sequence '\ ' 1041s **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after ``end`` 1041s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:90: SyntaxWarning: invalid escape sequence '\ ' 1041s ``[``\ **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after 1041s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:1141: SyntaxWarning: invalid escape sequence '\ ' 1041s **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after ``end`` 1041s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:1163: SyntaxWarning: invalid escape sequence '\ ' 1041s ``[``\ **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after 1044s /usr/lib/python3/dist-packages/azure/mgmt/signalr/models/_models_py3.py:2858: SyntaxWarning: invalid escape sequence '\ ' 1044s For example, if the urlTemplate is ``http://example.com/{hub}/api/{event}``\ , with a client 1044s /usr/lib/python3/dist-packages/azure/mgmt/signalr/models/_models_py3.py:2925: SyntaxWarning: invalid escape sequence '\ ' 1044s For example, if the urlTemplate is ``http://example.com/{hub}/api/{event}``\ , with a client 1047s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_functions_operations.py:595: SyntaxWarning: invalid escape sequence '\ ' 1047s properties to include in the response, or "\ *" to include all properties. By default, all 1047s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_inputs_operations.py:593: SyntaxWarning: invalid escape sequence '\ ' 1047s properties to include in the response, or "\ *" to include all properties. By default, all 1047s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_outputs_operations.py:593: SyntaxWarning: invalid escape sequence '\ ' 1047s properties to include in the response, or "\ *" to include all properties. By default, all 1047s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/models/_stream_analytics_management_client_enums.py:14: SyntaxWarning: invalid escape sequence '\ ' 1047s """Authentication Mode. Valid modes are ``ConnectionString``\ , ``Msi`` and 'UserToken'.""" 1047s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_functions_operations.py:859: SyntaxWarning: invalid escape sequence '\ ' 1047s properties to include in the response, or "\ *" to include all properties. By default, all 1047s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_inputs_operations.py:821: SyntaxWarning: invalid escape sequence '\ ' 1047s properties to include in the response, or "\ *" to include all properties. By default, all 1047s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_outputs_operations.py:821: SyntaxWarning: invalid escape sequence '\ ' 1047s properties to include in the response, or "\ *" to include all properties. By default, all 1047s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_communications_no_subscription_operations.py:193: SyntaxWarning: invalid escape sequence '\ ' 1047s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication 1047s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_communications_operations.py:194: SyntaxWarning: invalid escape sequence '\ ' 1047s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication 1047s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:177: SyntaxWarning: invalid escape sequence '\ ' 1047s tickets by *Status*\ , *CreatedDate*\ , *ServiceId*\ , and *ProblemClassificationId* using the 1047s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:540: SyntaxWarning: invalid escape sequence '\ ' 1047s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 1047s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:582: SyntaxWarning: invalid escape sequence '\ ' 1047s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 1047s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:622: SyntaxWarning: invalid escape sequence '\ ' 1047s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 1047s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_communications_no_subscription_operations.py:308: SyntaxWarning: invalid escape sequence '\ ' 1047s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication 1047s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_communications_operations.py:326: SyntaxWarning: invalid escape sequence '\ ' 1047s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication 1047s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:319: SyntaxWarning: invalid escape sequence '\ ' 1047s tickets by *Status*\ , *CreatedDate*\ , *ServiceId*\ , and *ProblemClassificationId* using the 1047s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:681: SyntaxWarning: invalid escape sequence '\ ' 1047s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 1047s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:723: SyntaxWarning: invalid escape sequence '\ ' 1047s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 1047s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:763: SyntaxWarning: invalid escape sequence '\ ' 1047s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 1048s /usr/lib/python3/dist-packages/azure/mgmt/synapse/models/_models_py3.py:6232: SyntaxWarning: invalid escape sequence '\ ' 1048s :ivar maintenance_window_cycles: Available maintenance cycles e.g. {Saturday, 0, 48\ *60}, 1048s /usr/lib/python3/dist-packages/azure/mgmt/synapse/models/_models_py3.py:6288: SyntaxWarning: invalid escape sequence '\ ' 1048s :keyword maintenance_window_cycles: Available maintenance cycles e.g. {Saturday, 0, 48\ *60}, 1053s /usr/lib/python3/dist-packages/azure/mgmt/workloads/models/_models_py3.py:2909: SyntaxWarning: invalid escape sequence '\W' 1053s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
` 1053s /usr/lib/python3/dist-packages/azure/mgmt/workloads/models/_models_py3.py:2954: SyntaxWarning: invalid escape sequence '\W' 1053s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
` 1054s /usr/lib/python3/dist-packages/azure/mgmt/workloadssapvirtualinstance/models/_models_py3.py:1980: SyntaxWarning: invalid escape sequence '\W' 1054s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
` 1054s /usr/lib/python3/dist-packages/azure/mgmt/workloadssapvirtualinstance/models/_models_py3.py:2025: SyntaxWarning: invalid escape sequence '\W' 1054s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
` 1054s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:2732: SyntaxWarning: invalid escape sequence '\:' 1054s attr:\:code:``=:code:``. 1054s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:3537: SyntaxWarning: invalid escape sequence '\:' 1054s attr:\:code:``=\:code:``. 1054s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:4216: SyntaxWarning: invalid escape sequence '\:' 1054s typeName=\:code:``&attr_1:\:code:``=\:code:``&attr_2:\:code:``=\:code:``&attr_3:\:code:``=\:code:`` 1054s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:6219: SyntaxWarning: invalid escape sequence '\:' 1054s attr:\:code:``=:code:``. 1054s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:7024: SyntaxWarning: invalid escape sequence '\:' 1054s attr:\:code:``=\:code:``. 1054s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:7703: SyntaxWarning: invalid escape sequence '\:' 1054s typeName=\:code:``&attr_1:\:code:``=\:code:``&attr_2:\:code:``=\:code:``&attr_3:\:code:``=\:code:`` 1055s /usr/lib/python3/dist-packages/azure/servicemanagement/schedulermanagementservice.py:59: SyntaxWarning: invalid escape sequence '\m' 1055s CURRENT_USER\my\CertificateName format. 1055s /usr/lib/python3/dist-packages/azure/servicemanagement/servicebusmanagementservice.py:59: SyntaxWarning: invalid escape sequence '\m' 1055s CURRENT_USER\my\CertificateName format. 1055s /usr/lib/python3/dist-packages/azure/servicemanagement/servicemanagementservice.py:81: SyntaxWarning: invalid escape sequence '\m' 1055s CURRENT_USER\my\CertificateName format. 1055s /usr/lib/python3/dist-packages/azure/servicemanagement/sqldatabasemanagementservice.py:55: SyntaxWarning: invalid escape sequence '\m' 1055s CURRENT_USER\my\CertificateName format. 1055s /usr/lib/python3/dist-packages/azure/servicemanagement/websitemanagementservice.py:55: SyntaxWarning: invalid escape sequence '\m' 1055s CURRENT_USER\my\CertificateName format. 1056s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:110: SyntaxWarning: invalid escape sequence '\d' 1056s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 1056s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:1328: SyntaxWarning: invalid escape sequence '\d' 1056s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9]))..). 1056s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:4218: SyntaxWarning: invalid escape sequence '\d' 1056s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 1056s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:4280: SyntaxWarning: invalid escape sequence '\d' 1056s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 1056s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:18198: SyntaxWarning: invalid escape sequence '\d' 1056s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 1056s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19096: SyntaxWarning: invalid escape sequence '\d' 1056s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). Type: string (or Expression with 1056s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19185: SyntaxWarning: invalid escape sequence '\d' 1056s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 1056s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19749: SyntaxWarning: invalid escape sequence '\d' 1056s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 1056s Processing triggers for libc-bin (2.41-6ubuntu1) ... 1056s Processing triggers for man-db (2.13.0-1) ... 1233s autopkgtest [05:04:06]: test unit-tests-flaky.py: [----------------------- 1235s 1235s 1235s 1235s ############################################################ 1235s ############################################################ 1235s #### Running FLAKY tests in ansible_collections/ansible/utils 1235s ############################################################ 1235s ############################################################ 1236s Unit test controller with Python 3.13 1238s ============================= test session starts ============================== 1238s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1238s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ansible/utils 1238s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1238s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 1238s created: 8/8 workers 1238s 8 workers [383 items] 1238s 1238s ........................................................................ [ 18%] 1238s ........................................................................ [ 37%] 1239s .......................F................................................ [ 56%] 1239s ...............F...F.......F............................................ [ 75%] 1239s ........................................................................ [ 93%] 1254s ....................... [100%] 1254s =================================== FAILURES =================================== 1254s ___________________ TestIpFilter.test_ipaddr_undefined_value ___________________ 1254s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1254s 1254s self = 1254s 1254s def test_ipaddr_undefined_value(self): 1254s """Check ipaddr filter undefined value""" 1254s args = ["", AnsibleUndefined(name="my_ip"), ""] 1254s with pytest.raises( 1254s AnsibleFilterError, 1254s match="Unrecognized type <> for ipaddr filter ", 1254s ): 1254s > _ipaddr(*args) 1254s 1254s tests/unit/plugins/filter/test_ipaddr.py:75: 1254s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1254s 1254s args = ('', AnsibleUndefined(hint=None, obj=missing, name='my_ip'), '') 1254s kwargs = {}, keys = ['value', 'query', 'version', 'alias'] 1254s data = {'query': '', 'value': AnsibleUndefined(hint=None, obj=missing, name='my_ip')} 1254s 1254s @pass_environment 1254s def _ipaddr(*args, **kwargs): 1254s """This filter is designed to return the input value if a query is True, and False if a query is False""" 1254s keys = ["value", "query", "version", "alias"] 1254s data = dict(zip(keys, args[1:])) 1254s data.update(kwargs) 1254s try: 1254s if isinstance(data["value"], str): 1254s pass 1254s elif isinstance(data["value"], list): 1254s pass 1254s elif isinstance(data["value"], int): 1254s pass 1254s else: 1254s > raise AnsibleFilterError( 1254s "Unrecognized type <{0}> for ipaddr filter <{1}>".format( 1254s type(data["value"]), 1254s "value", 1254s ), 1254s ) 1254s E ansible.errors.AnsibleFilterError: Unrecognized type <> for ipaddr filter 1254s 1254s plugins/filter/ipaddr.py:268: AnsibleFilterError 1254s 1254s During handling of the above exception, another exception occurred: 1254s 1254s self = 1254s 1254s def test_ipaddr_undefined_value(self): 1254s """Check ipaddr filter undefined value""" 1254s args = ["", AnsibleUndefined(name="my_ip"), ""] 1254s > with pytest.raises( 1254s AnsibleFilterError, 1254s match="Unrecognized type <> for ipaddr filter ", 1254s ): 1254s E AssertionError: Regex pattern did not match. 1254s E Regex: "Unrecognized type <> for ipaddr filter " 1254s E Input: "Unrecognized type <> for ipaddr filter " 1254s 1254s tests/unit/plugins/filter/test_ipaddr.py:71: AssertionError 1254s ______________________ TestIp6.test_ipv6_undefined_value _______________________ 1254s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1254s 1254s self = 1254s 1254s def test_ipv6_undefined_value(self): 1254s """Check ipv6 filter undefined value""" 1254s args = ["", AnsibleUndefined(name="my_ip"), ""] 1254s with pytest.raises( 1254s AnsibleFilterError, 1254s match="Unrecognized type <> for ipv6 filter ", 1254s ): 1254s > _ipv6(*args) 1254s 1254s tests/unit/plugins/filter/test_ipv6.py:58: 1254s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1254s 1254s args = ('', AnsibleUndefined(hint=None, obj=missing, name='my_ip'), '') 1254s kwargs = {}, keys = ['value', 'query'] 1254s data = {'query': '', 'value': AnsibleUndefined(hint=None, obj=missing, name='my_ip')} 1254s 1254s @pass_environment 1254s def _ipv6(*args, **kwargs): 1254s """This filter is designed to return the input value if a query is True, and False if a query is False""" 1254s keys = ["value", "query"] 1254s data = dict(zip(keys, args[1:])) 1254s data.update(kwargs) 1254s try: 1254s if isinstance(data["value"], str): 1254s pass 1254s elif isinstance(data["value"], list): 1254s pass 1254s elif isinstance(data["value"], int): 1254s pass 1254s else: 1254s > raise AnsibleFilterError( 1254s "Unrecognized type <{0}> for ipv6 filter <{1}>".format( 1254s type(data["value"]), 1254s "value", 1254s ), 1254s ) 1254s E ansible.errors.AnsibleFilterError: Unrecognized type <> for ipv6 filter 1254s 1254s plugins/filter/ipv6.py:161: AnsibleFilterError 1254s 1254s During handling of the above exception, another exception occurred: 1254s 1254s self = 1254s 1254s def test_ipv6_undefined_value(self): 1254s """Check ipv6 filter undefined value""" 1254s args = ["", AnsibleUndefined(name="my_ip"), ""] 1254s > with pytest.raises( 1254s AnsibleFilterError, 1254s match="Unrecognized type <> for ipv6 filter ", 1254s ): 1254s E AssertionError: Regex pattern did not match. 1254s E Regex: "Unrecognized type <> for ipv6 filter " 1254s E Input: "Unrecognized type <> for ipv6 filter " 1254s 1254s tests/unit/plugins/filter/test_ipv6.py:54: AssertionError 1254s ____________________ TestIpWrap.test_ipwrap_undefined_value ____________________ 1254s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1254s 1254s self = 1254s 1254s def test_ipwrap_undefined_value(self): 1254s """Check ipwrap filter undefined value""" 1254s args = ["", AnsibleUndefined(name="my_ip"), ""] 1254s with pytest.raises( 1254s AnsibleFilterError, 1254s match="Unrecognized type <> for ipwrap filter ", 1254s ): 1254s > _ipwrap(*args) 1254s 1254s tests/unit/plugins/filter/test_ipwrap.py:60: 1254s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1254s 1254s args = ('', AnsibleUndefined(hint=None, obj=missing, name='my_ip'), '') 1254s kwargs = {}, keys = ['value'] 1254s data = {'value': AnsibleUndefined(hint=None, obj=missing, name='my_ip')} 1254s 1254s @pass_environment 1254s def _ipwrap(*args, **kwargs): 1254s """This filter is designed to Wrap IPv6 addresses in [ ] brackets.""" 1254s keys = ["value"] 1254s data = dict(zip(keys, args[1:])) 1254s data.update(kwargs) 1254s try: 1254s if isinstance(data["value"], str): 1254s pass 1254s elif isinstance(data["value"], list): 1254s pass 1254s elif isinstance(data["value"], bool): 1254s pass 1254s else: 1254s > raise AnsibleFilterError( 1254s "Unrecognized type <{0}> for ipwrap filter <{1}>".format( 1254s type(data["value"]), 1254s "value", 1254s ), 1254s ) 1254s E ansible.errors.AnsibleFilterError: Unrecognized type <> for ipwrap filter 1254s 1254s plugins/filter/ipwrap.py:162: AnsibleFilterError 1254s 1254s During handling of the above exception, another exception occurred: 1254s 1254s self = 1254s 1254s def test_ipwrap_undefined_value(self): 1254s """Check ipwrap filter undefined value""" 1254s args = ["", AnsibleUndefined(name="my_ip"), ""] 1254s > with pytest.raises( 1254s AnsibleFilterError, 1254s match="Unrecognized type <> for ipwrap filter ", 1254s ): 1254s E AssertionError: Regex pattern did not match. 1254s E Regex: "Unrecognized type <> for ipwrap filter " 1254s E Input: "Unrecognized type <> for ipwrap filter " 1254s 1254s tests/unit/plugins/filter/test_ipwrap.py:56: AssertionError 1254s ______________________ TestIp4.test_ipv4_undefined_value _______________________ 1254s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1254s 1254s self = 1254s 1254s def test_ipv4_undefined_value(self): 1254s """Check ipv4 filter undefined value""" 1254s args = ["", AnsibleUndefined(name="my_ip"), ""] 1254s with pytest.raises( 1254s AnsibleFilterError, 1254s match="Unrecognized type <> for ipv4 filter ", 1254s ): 1254s > _ipv4(*args) 1254s 1254s tests/unit/plugins/filter/test_ipv4.py:55: 1254s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1254s 1254s args = ('', AnsibleUndefined(hint=None, obj=missing, name='my_ip'), '') 1254s kwargs = {}, keys = ['value', 'query'] 1254s data = {'query': '', 'value': AnsibleUndefined(hint=None, obj=missing, name='my_ip')} 1254s 1254s @pass_environment 1254s def _ipv4(*args, **kwargs): 1254s """This filter is designed to return the input value if a query is True, and False if a query is False""" 1254s keys = ["value", "query"] 1254s data = dict(zip(keys, args[1:])) 1254s data.update(kwargs) 1254s try: 1254s if isinstance(data["value"], str): 1254s pass 1254s elif isinstance(data["value"], list): 1254s pass 1254s elif isinstance(data["value"], int): 1254s pass 1254s else: 1254s > raise AnsibleFilterError( 1254s "Unrecognized type <{0}> for ipv4 filter <{1}>".format( 1254s type(data["value"]), 1254s "value", 1254s ), 1254s ) 1254s E ansible.errors.AnsibleFilterError: Unrecognized type <> for ipv4 filter 1254s 1254s plugins/filter/ipv4.py:143: AnsibleFilterError 1254s 1254s During handling of the above exception, another exception occurred: 1254s 1254s self = 1254s 1254s def test_ipv4_undefined_value(self): 1254s """Check ipv4 filter undefined value""" 1254s args = ["", AnsibleUndefined(name="my_ip"), ""] 1254s > with pytest.raises( 1254s AnsibleFilterError, 1254s match="Unrecognized type <> for ipv4 filter ", 1254s ): 1254s E AssertionError: Regex pattern did not match. 1254s E Regex: "Unrecognized type <> for ipv4 filter " 1254s E Input: "Unrecognized type <> for ipv4 filter " 1254s 1254s tests/unit/plugins/filter/test_ipv4.py:51: AssertionError 1254s =============================== warnings summary =============================== 1254s tests/unit/plugins/action/test_validate.py::TestValidate::test_support_for_format_with_invalid_data 1254s tests/unit/plugins/action/test_validate.py::TestValidate::test_support_for_disabled_format_with_invalid_data 1254s tests/unit/plugins/action/test_validate.py::TestValidate::test_support_for_format 1254s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ansible/utils/plugins/sub_plugins/validate/jsonschema.py:241: DeprecationWarning: The metaschema specified by $schema was not found. Using the latest draft to validate, but this will raise an error in the future. 1254s validator_class = jsonschema.validators.validator_for(criteria) 1254s 1254s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 1254s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ansible/utils/tests/output/junit/python3.13-controller-units.xml - 1254s =========================== short test summary info ============================ 1254s SKIPPED [1] tests/unit/plugins/sub_plugins/cli_parsers/test_ttp_parser.py:18: could not import 'ttp': No module named 'ttp' 1254s FAILED tests/unit/plugins/filter/test_ipaddr.py::TestIpFilter::test_ipaddr_undefined_value 1254s FAILED tests/unit/plugins/filter/test_ipv6.py::TestIp6::test_ipv6_undefined_value 1254s FAILED tests/unit/plugins/filter/test_ipwrap.py::TestIpWrap::test_ipwrap_undefined_value 1254s FAILED tests/unit/plugins/filter/test_ipv4.py::TestIp4::test_ipv4_undefined_value 1254s ============ 4 failed, 379 passed, 1 skipped, 3 warnings in 17.95s ============= 1254s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ansible/utils/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ansible/utils --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ansible/utils tests/unit/module_utils/test_argspec_validate.py tests/unit/module_utils/test_dict_merge.py tests/unit/module_utils/test_get_path.py tests/unit/module_utils/test_sort_list.py tests/unit/module_utils/test_to_paths.py tests/unit/plugins/action/test_cli_parse.py tests/unit/plugins/action/test_fact_diff.py tests/unit/plugins/action/test_update_fact.py tests/unit/plugins/action/test_validate.py tests/unit/plugins/filter/test_cidr_merge.py tests/unit/plugins/filter/test_consolidate.py tests/unit/plugins/filter/test_fact_diff.py tests/unit/plugins/filter/test_from_xml.py tests/unit/plugins/filter/test_hwaddr.py tests/unit/plugins/filter/test_ip4_hex.py tests/unit/plugins/filter/test_ipaddr.py tests/unit/plugins/filter/test_ipcut.py tests/unit/plugins/filter/test_ipmath.py tests/unit/plugins/filter/test_ipsubnet.py tests/unit/plugins/filter/test_ipv4.py tests/unit/plugins/filter/test_ipv6.py tests/unit/plugins/filter/test_ipv6form.py tests/unit/plugins/filter/test_ipwrap.py tests/unit/plugins/filter/test_keep_keys.py tests/unit/plugins/filter/test_macaddr.py tests/unit/plugins/filter/test_network_in_network.py tests/unit/plugins/filter/test_network_in_usable.py tests/unit/plugins/filter/test_next_nth_usable.py tests/unit/plugins/filter/test_nthhost.py tests/unit/plugins/filter/test_param_list_compare.py tests/unit/plugins/filter/test_previous_nth_usable.py tests/unit/plugins/filter/test_reduce_on_network.py tests/unit/plugins/filter/test_remove_keys.py tests/unit/plugins/filter/test_replace_keys.py tests/unit/plugins/filter/test_slaac.py tests/unit/plugins/filter/test_to_xml.py tests/unit/plugins/filter/test_usable_range.py tests/unit/plugins/filter/test_validate.py tests/unit/plugins/lookup/test_validate.py tests/unit/plugins/plugin_utils/test_index_of.py tests/unit/plugins/sub_plugins/cli_parsers/test_json_parser.py tests/unit/plugins/sub_plugins/cli_parsers/test_textfsm_parser.py tests/unit/plugins/sub_plugins/cli_parsers/test_ttp_parser.py tests/unit/plugins/sub_plugins/cli_parsers/test_xml_parser.py tests/unit/plugins/sub_plugins/validate/test_config.py tests/unit/plugins/test/test_in_any_network.py tests/unit/plugins/test/test_in_network.py tests/unit/plugins/test/test_in_one_network.py tests/unit/plugins/test/test_ip.py tests/unit/plugins/test/test_ip_address.py tests/unit/plugins/test/test_ipv4.py tests/unit/plugins/test/test_ipv4_address.py tests/unit/plugins/test/test_ipv4_hostmask.py tests/unit/plugins/test/test_ipv4_netmask.py tests/unit/plugins/test/test_ipv6.py tests/unit/plugins/test/test_ipv6_address.py tests/unit/plugins/test/test_ipv6_ipv4_mapped.py tests/unit/plugins/test/test_ipv6_sixtofour.py tests/unit/plugins/test/test_ipv6_teredo.py tests/unit/plugins/test/test_loopback.py tests/unit/plugins/test/test_mac.py tests/unit/plugins/test/test_multicast.py tests/unit/plugins/test/test_private.py tests/unit/plugins/test/test_public.py tests/unit/plugins/test/test_reserved.py tests/unit/plugins/test/test_resolvable.py tests/unit/plugins/test/test_subnet_of.py tests/unit/plugins/test/test_supernet_of.py tests/unit/plugins/test/test_unspecified.py tests/unit/plugins/test/test_validate.py" returned exit status 1. 1254s ## return code is 1 1254s 1254s 1254s 1254s ############################################################ 1254s ############################################################ 1254s #### Running FLAKY tests in ansible_collections/cisco/aci 1254s ############################################################ 1254s ############################################################ 1254s Unit test controller with Python 3.13 1256s ============================= test session starts ============================== 1256s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1256s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/aci 1256s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1256s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 1256s created: 8/8 workers 1256s 8 workers [5 items] 1256s 1256s ...FF [100%] 1256s =================================== FAILURES =================================== 1256s __________________________ AciRest.test_invalid_input __________________________ 1256s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1256s 1256s self = 1256s 1256s def test_invalid_input(self): 1256s self.maxDiff = None 1256s 1256s error = dict( 1256s code="401", 1256s text=("Username or password is incorrect - " "FAILED local authentication"), 1256s ) 1256s 1256s imdata = [ 1256s { 1256s "error": { 1256s "attributes": { 1256s "code": "401", 1256s "text": ("Username or password is incorrect - " "FAILED local authentication"), 1256s }, 1256s }, 1256s } 1256s ] 1256s 1256s totalCount = 1 1256s 1256s json_response = '{"totalCount":"1","imdata":[{"error":{"attributes":{"code":"401","text":"Username or password is incorrect - FAILED local authentication"}}}]}' # NOQA 1256s aci.response_json(json_response) 1256s self.assertEqual(aci.error, error) 1256s self.assertEqual(aci.imdata, imdata) 1256s self.assertEqual(aci.totalCount, totalCount) 1256s 1256s # Python 2.7+ is needed for xmljson 1256s if sys.version_info < (2, 7): 1256s return 1256s 1256s xml_response = """ 1256s 1256s 1256s """ 1256s aci.response_xml(xml_response) 1256s > self.assertEqual(aci.error, error) 1256s E AssertionError: {'code': -1, 'text': "Unable to parse output as XM[45 chars]ned"} != {'code': '401', 'text': 'Username or password is i[35 chars]ion'} 1256s E - {'code': -1, 1256s E ? ^ 1256s E 1256s E + {'code': '401', 1256s E ? ^^^ + 1256s E 1256s E + 'text': 'Username or password is incorrect - FAILED local authentication'} 1256s E - 'text': "Unable to parse output as XML, see 'raw' output. name 'cobra' is not " 1256s E - 'defined'} 1256s 1256s tests/unit/module_utils/test_aci.py:237: AssertionError 1256s ________________________ AciRest.test_invalid_aci_login ________________________ 1256s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1256s 1256s self = 1256s 1256s def test_invalid_aci_login(self): 1256s self.maxDiff = None 1256s 1256s error = dict( 1256s code="401", 1256s text=("Username or password is incorrect - " "FAILED local authentication"), 1256s ) 1256s 1256s imdata = [ 1256s { 1256s "error": { 1256s "attributes": { 1256s "code": "401", 1256s "text": ("Username or password is incorrect - " "FAILED local authentication"), 1256s }, 1256s }, 1256s } 1256s ] 1256s 1256s totalCount = 1 1256s 1256s json_response = '{"totalCount":"1","imdata":[{"error":{"attributes":{"code":"401","text":"Username or password is incorrect - FAILED local authentication"}}}]}' # NOQA 1256s aci.response_json(json_response) 1256s self.assertEqual(aci.error, error) 1256s self.assertEqual(aci.imdata, imdata) 1256s self.assertEqual(aci.totalCount, totalCount) 1256s 1256s # Python 2.7+ is needed for xmljson 1256s if sys.version_info < (2, 7): 1256s return 1256s 1256s xml_response = """ 1256s 1256s 1256s 1256s """ 1256s aci.response_xml(xml_response) 1256s > self.assertEqual(aci.error, error) 1256s E AssertionError: {'code': -1, 'text': "Unable to parse output as XM[45 chars]ned"} != {'code': '401', 'text': 'Username or password is i[35 chars]ion'} 1256s E - {'code': -1, 1256s E ? ^ 1256s E 1256s E + {'code': '401', 1256s E ? ^^^ + 1256s E 1256s E + 'text': 'Username or password is incorrect - FAILED local authentication'} 1256s E - 'text': "Unable to parse output as XML, see 'raw' output. name 'cobra' is not " 1256s E - 'defined'} 1256s 1256s tests/unit/module_utils/test_aci.py:89: AssertionError 1256s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/aci/tests/output/junit/python3.13-controller-units.xml - 1256s =========================== short test summary info ============================ 1256s FAILED tests/unit/module_utils/test_aci.py::AciRest::test_invalid_input - Ass... 1256s FAILED tests/unit/module_utils/test_aci.py::AciRest::test_invalid_aci_login 1256s ========================= 2 failed, 3 passed in 1.20s ========================== 1256s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/aci/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/aci --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/aci tests/unit/module_utils/test_aci.py" returned exit status 1. 1256s ## return code is 1 1256s 1256s 1256s 1256s ############################################################ 1256s ############################################################ 1256s #### Running FLAKY tests in ansible_collections/cisco/dnac 1256s ############################################################ 1256s ############################################################ 1257s Unit test controller with Python 3.13 1259s ============================= test session starts ============================== 1259s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1259s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/dnac 1259s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1259s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 1259s created: 8/8 workers 1259s 8 workers [167 items] 1259s 1261s ...FFFFF.FFF.FFFFFFFF.FFFFFFFFFF.FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF.F.F. [ 43%] 1264s FFF.FFFF.F.F..F.FFFF.F..FFFFFFFFF.FF..FFFF..FFFF.F.F.F....FFF.FFFFFFFFFF [ 86%] 1264s FFF.FFFFFFFFFFFFFFFFFFF [100%] 1264s ==================================== ERRORS ==================================== 1264s ______ ERROR collecting tests/unit/modules/dnac/test_discovery_intent.py _______ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacDiscoveryIntent.__init__() takes 1 positional argument but 2 were given 1264s ______ ERROR collecting tests/unit/modules/dnac/test_discovery_intent.py _______ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacDiscoveryIntent.__init__() takes 1 positional argument but 2 were given 1264s ______ ERROR collecting tests/unit/modules/dnac/test_discovery_intent.py _______ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacDiscoveryIntent.__init__() takes 1 positional argument but 2 were given 1264s ______ ERROR collecting tests/unit/modules/dnac/test_discovery_intent.py _______ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacDiscoveryIntent.__init__() takes 1 positional argument but 2 were given 1264s _________ ERROR collecting tests/unit/modules/dnac/test_pnp_intent.py __________ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacPnPIntent.__init__() takes 1 positional argument but 2 were given 1264s _________ ERROR collecting tests/unit/modules/dnac/test_pnp_intent.py __________ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacPnPIntent.__init__() takes 1 positional argument but 2 were given 1264s _________ ERROR collecting tests/unit/modules/dnac/test_site_intent.py _________ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacSiteIntent.__init__() takes 1 positional argument but 2 were given 1264s _________ ERROR collecting tests/unit/modules/dnac/test_site_intent.py _________ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacSiteIntent.__init__() takes 1 positional argument but 2 were given 1264s _________ ERROR collecting tests/unit/modules/dnac/test_pnp_intent.py __________ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacPnPIntent.__init__() takes 1 positional argument but 2 were given 1264s _________ ERROR collecting tests/unit/modules/dnac/test_pnp_intent.py __________ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacPnPIntent.__init__() takes 1 positional argument but 2 were given 1264s ______ ERROR collecting tests/unit/modules/dnac/test_discovery_intent.py _______ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacDiscoveryIntent.__init__() takes 1 positional argument but 2 were given 1264s _________ ERROR collecting tests/unit/modules/dnac/test_swim_intent.py _________ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacSwimIntent.__init__() takes 1 positional argument but 2 were given 1264s _________ ERROR collecting tests/unit/modules/dnac/test_swim_intent.py _________ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacSwimIntent.__init__() takes 1 positional argument but 2 were given 1264s _________ ERROR collecting tests/unit/modules/dnac/test_site_intent.py _________ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacSiteIntent.__init__() takes 1 positional argument but 2 were given 1264s ______ ERROR collecting tests/unit/modules/dnac/test_discovery_intent.py _______ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacDiscoveryIntent.__init__() takes 1 positional argument but 2 were given 1264s _________ ERROR collecting tests/unit/modules/dnac/test_site_intent.py _________ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacSiteIntent.__init__() takes 1 positional argument but 2 were given 1264s _________ ERROR collecting tests/unit/modules/dnac/test_swim_intent.py _________ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacSwimIntent.__init__() takes 1 positional argument but 2 were given 1264s _______ ERROR collecting tests/unit/modules/dnac/test_template_intent.py _______ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacTemplateIntent.__init__() takes 1 positional argument but 2 were given 1264s ______ ERROR collecting tests/unit/modules/dnac/test_discovery_intent.py _______ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacDiscoveryIntent.__init__() takes 1 positional argument but 2 were given 1264s _______ ERROR collecting tests/unit/modules/dnac/test_template_intent.py _______ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacTemplateIntent.__init__() takes 1 positional argument but 2 were given 1264s _________ ERROR collecting tests/unit/modules/dnac/test_swim_intent.py _________ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacSwimIntent.__init__() takes 1 positional argument but 2 were given 1264s _________ ERROR collecting tests/unit/modules/dnac/test_pnp_intent.py __________ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacPnPIntent.__init__() takes 1 positional argument but 2 were given 1264s _______ ERROR collecting tests/unit/modules/dnac/test_template_intent.py _______ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacTemplateIntent.__init__() takes 1 positional argument but 2 were given 1264s _________ ERROR collecting tests/unit/modules/dnac/test_pnp_intent.py __________ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacPnPIntent.__init__() takes 1 positional argument but 2 were given 1264s _______ ERROR collecting tests/unit/modules/dnac/test_template_intent.py _______ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacTemplateIntent.__init__() takes 1 positional argument but 2 were given 1264s _________ ERROR collecting tests/unit/modules/dnac/test_site_intent.py _________ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacSiteIntent.__init__() takes 1 positional argument but 2 were given 1264s _________ ERROR collecting tests/unit/modules/dnac/test_site_intent.py _________ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacSiteIntent.__init__() takes 1 positional argument but 2 were given 1264s _________ ERROR collecting tests/unit/modules/dnac/test_pnp_intent.py __________ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacPnPIntent.__init__() takes 1 positional argument but 2 were given 1264s _________ ERROR collecting tests/unit/modules/dnac/test_swim_intent.py _________ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacSwimIntent.__init__() takes 1 positional argument but 2 were given 1264s _________ ERROR collecting tests/unit/modules/dnac/test_swim_intent.py _________ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacSwimIntent.__init__() takes 1 positional argument but 2 were given 1264s _________ ERROR collecting tests/unit/modules/dnac/test_site_intent.py _________ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacSiteIntent.__init__() takes 1 positional argument but 2 were given 1264s _______ ERROR collecting tests/unit/modules/dnac/test_template_intent.py _______ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacTemplateIntent.__init__() takes 1 positional argument but 2 were given 1264s _______ ERROR collecting tests/unit/modules/dnac/test_template_intent.py _______ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacTemplateIntent.__init__() takes 1 positional argument but 2 were given 1264s _________ ERROR collecting tests/unit/modules/dnac/test_swim_intent.py _________ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacSwimIntent.__init__() takes 1 positional argument but 2 were given 1264s ______ ERROR collecting tests/unit/modules/dnac/test_discovery_intent.py _______ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacDiscoveryIntent.__init__() takes 1 positional argument but 2 were given 1264s _______ ERROR collecting tests/unit/modules/dnac/test_template_intent.py _______ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacTemplateIntent.__init__() takes 1 positional argument but 2 were given 1264s _________ ERROR collecting tests/unit/modules/dnac/test_pnp_intent.py __________ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacPnPIntent.__init__() takes 1 positional argument but 2 were given 1264s _________ ERROR collecting tests/unit/modules/dnac/test_site_intent.py _________ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacSiteIntent.__init__() takes 1 positional argument but 2 were given 1264s _________ ERROR collecting tests/unit/modules/dnac/test_swim_intent.py _________ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacSwimIntent.__init__() takes 1 positional argument but 2 were given 1264s _______ ERROR collecting tests/unit/modules/dnac/test_template_intent.py _______ 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1264s result: TResult | None = func() 1264s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1264s return list(collector.collect()) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1264s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1264s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1264s return self.obj("runTest") 1264s E TypeError: TestDnacTemplateIntent.__init__() takes 1 positional argument but 2 were given 1264s =================================== FAILURES =================================== 1264s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_already_sync_cred _ 1264s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_device_credentials_workflow_manager_already_sync_cred(self): 1264s """ 1264s Test case for device credential workflow manager when applying a device credential to site devices where sync is already applied. 1264s 1264s This test case checks the behavior of the device credential workflow manager when applying a device credential to site devices 1264s 1264s where sync is already applied in the specified DNAC. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_version="2.3.7.6", 1264s dnac_log=True, 1264s state="merged", 1264s config=self.playbook_config_apply 1264s ) 1264s ) 1264s result = self.execute_module(changed=False, failed=False) 1264s print(result) 1264s self.assertEqual( 1264s > result['response'][0]['applyCredential']['Applied Credentials']['msg'], 1264s "Provided credentials category is/are already synced." 1264s ) 1264s E KeyError: 'applyCredential' 1264s 1264s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:314: KeyError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s {'changed': False, 'diff': [], 'response': [{'global_credential': {}, 'assign_credential': {}, 'apply_credential': {'Applied Credentials': {'response': [], 'msg': 'Either the provided credentials are already synchronized or they are not assigned to the device.'}}}], 'warnings': []} 1264s ------------------------------ Captured log call ------------------------------- 1264s WARNING logger:dnac.py:294 DeviceCredential: apply_credentials_to_site: 2920: Provided credentials category is/are already synced: {'cliId': '2885a877-022a-4c18-b38f-825a63ebd7d1', 'snmpV2ReadId': '97061bab-1d11-4df4-950c-9304fb846b83', 'snmpV2WriteId': '07c3c5fc-35e6-4c83-bdcb-6322d4bf7103', 'snmpV3Id': '9900b521-0dfb-4bd1-b044-d31037c8def3'} 1264s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_null_sync_status _ 1264s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_device_credentials_workflow_manager_null_sync_status(self): 1264s """ 1264s Test case for device credential workflow manager when exception occured during sync credential. 1264s 1264s This test case checks the behavior of the device credential workflow manager, when exception occured during sync credential in the specified DNAC. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_version="2.3.7.6", 1264s dnac_log=True, 1264s state="merged", 1264s config=self.playbook_config_apply 1264s ) 1264s ) 1264s result = self.execute_module(changed=False, failed=True) 1264s print(result) 1264s > self.assertEqual( 1264s result['msg'], 1264s "Exception occurred while getting global device credentials sync status: " 1264s ) 1264s E AssertionError: 'An exception occurred while retrieving Si[515 chars]rue}' != 'Exception occurred while getting global d[27 chars]us: ' 1264s E - An exception occurred while retrieving Site details for Site 'Global/Vietnam/halong/Hanoi' does not exist in the Cisco Catalyst Center. Error: {'msg': "An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/Vietnam/halong/Hanoi'}. Exception: .", 'response': "An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/Vietnam/halong/Hanoi'}. Exception: .", 'failed': True} 1264s E + Exception occurred while getting global device credentials sync status: 1264s 1264s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:411: AssertionError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s {'msg': 'An exception occurred while retrieving Site details for Site \'Global/Vietnam/halong/Hanoi\' does not exist in the Cisco Catalyst Center. Error: {\'msg\': "An error occurred while executing GET API call to Function: \'get_sites\' from Family: \'site_design\'. Parameters: {\'name_hierarchy\': \'Global/Vietnam/halong/Hanoi\'}. Exception: .", \'response\': "An error occurred while executing GET API call to Function: \'get_sites\' from Family: \'site_design\'. Parameters: {\'name_hierarchy\': \'Global/Vietnam/halong/Hanoi\'}. Exception: .", \'failed\': True}', 'response': 'An exception occurred while retrieving Site details for Site \'Global/Vietnam/halong/Hanoi\' does not exist in the Cisco Catalyst Center. Error: {\'msg\': "An error occurred while executing GET API call to Function: \'get_sites\' from Family: \'site_design\'. Parameters: {\'name_hierarchy\': \'Global/Vietnam/halong/Hanoi\'}. Exception: .", \'response\': "An error occurred while executing GET API call to Function: \'get_sites\' from Family: \'site_design\'. Parameters: {\'name_hierarchy\': \'Global/Vietnam/halong/Hanoi\'}. Exception: .", \'failed\': True}', 'failed': True} 1264s ------------------------------ Captured log call ------------------------------- 1264s ERROR logger:dnac.py:294 DeviceCredential: set_operation_result: 1780: An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/Vietnam/halong/Hanoi'}. Exception: . 1264s 1264s ERROR logger:dnac.py:294 DeviceCredential: set_operation_result: 1780: An exception occurred while retrieving Site details for Site 'Global/Vietnam/halong/Hanoi' does not exist in the Cisco Catalyst Center. Error: {'msg': "An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/Vietnam/halong/Hanoi'}. Exception: .", 'response': "An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/Vietnam/halong/Hanoi'}. Exception: .", 'failed': True} 1264s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_update_mgmt_ip _ 1264s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_inventory_workflow_manager_playbook_update_mgmt_ip(self): 1264s """ 1264s Test case for add device with full crendentials. 1264s 1264s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s dnac_version="2.3.7.6", 1264s state="merged", 1264s config_verify=True, 1264s config=self.playbook_update_mgmt_ip 1264s ) 1264s ) 1264s > result = self.execute_module(changed=True, failed=False) 1264s 1264s tests/unit/modules/dnac/test_inventory_workflow_manager.py:503: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1264s result = self.changed(changed) 1264s tests/unit/modules/dnac/dnac_module.py:133: in changed 1264s self.module.main() 1264s plugins/modules/inventory_workflow_manager.py:4197: in main 1264s ccc_device.get_diff_state_apply[state](config).check_return_status() 1264s plugins/modules/inventory_workflow_manager.py:3391: in get_diff_merged 1264s csv_reader = self.decrypt_and_read_csv(export_response, password) 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s def decrypt_and_read_csv(self, response, password): 1264s """ 1264s Parameters: 1264s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1264s response (requests.Response): HTTP response object containing the encrypted CSV file. 1264s password (str): Password used for decrypting the CSV file. 1264s Returns: 1264s csv.DictReader: A CSV reader object for the decrypted content, allowing iteration over rows as dictionaries. 1264s Description: 1264s Decrypts and reads a CSV-like file from the given HTTP response using the provided password. 1264s """ 1264s 1264s > zip_data = BytesIO(response.data) 1264s E AttributeError: 'NoneType' object has no attribute 'data' 1264s 1264s plugins/modules/inventory_workflow_manager.py:1132: AttributeError 1264s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_deletion _ 1264s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_device_credentials_workflow_manager_deletion(self): 1264s """ 1264s Test case for device credential workflow manager when deleting a device credential. 1264s 1264s This test case checks the behavior of the device credential workflow manager when deleting a device credentials in the specified DNAC. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s state="deleted", 1264s config_verify=True, 1264s config=self.playbook_config_deletion 1264s ) 1264s ) 1264s result = self.execute_module(changed=True, failed=False) 1264s print(result) 1264s self.assertEqual( 1264s > result['response'][0]['globalCredential']['Deletion']['msg'], 1264s "Global Device Credentials Deleted Successfully" 1264s ) 1264s E KeyError: 'globalCredential' 1264s 1264s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:240: KeyError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s {'changed': True, 'diff': [], 'response': [{'global_credential': {'Deletion': {'response': {'cliCredential': [{'description': 'CLI1', 'response': 'Global credential deleted successfully'}], 'snmpV2cRead': [{'description': 'SNMPv2c Read1', 'response': 'Global credential deleted successfully'}], 'snmpV2cWrite': [{'description': 'SNMPv2c Write1', 'response': 'Global credential deleted successfully'}], 'httpsRead': [{'description': 'HTTP Read1', 'response': 'Global credential deleted successfully'}], 'httpsWrite': [{'description': 'HTTP Write1', 'response': 'Global credential deleted successfully'}], 'snmpV3': [{'description': 'snmpV31', 'response': 'Global credential deleted successfully'}]}, 'msg': 'Global Device Credentials Deleted Successfully'}, 'Validation': 'Success'}, 'assign_credential': {}, 'apply_credential': {}}], 'warnings': []} 1264s __ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_add_udf __ 1264s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_inventory_workflow_manager_playbook_add_udf(self): 1264s """ 1264s Test case for add device with full crendentials. 1264s 1264s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s state="merged", 1264s config_verify=True, 1264s config=self.playbook_add_udf 1264s ) 1264s ) 1264s result = self.execute_module(changed=True, failed=False) 1264s print(result) 1264s > self.assertEqual( 1264s result.get('msg'), 1264s "device(s) '70.2.2.2', '80.2.2.2' already present in Cisco Catalyst Center." 1264s ) 1264s E AssertionError: "Global User Defined Field(UDF) named 'Tes[44 chars]ice." != "device(s) '70.2.2.2', '80.2.2.2' already [29 chars]ter." 1264s E - Global User Defined Field(UDF) named 'Test123' has been successfully added to the device. 1264s E + device(s) '70.2.2.2', '80.2.2.2' already present in Cisco Catalyst Center. 1264s 1264s tests/unit/modules/dnac/test_inventory_workflow_manager.py:306: AssertionError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s {'changed': True, 'diff': [], 'response': "Global User Defined Field(UDF) named 'Test123' has been successfully added to the device.", 'warnings': [], 'msg': "Global User Defined Field(UDF) named 'Test123' has been successfully added to the device."} 1264s ------------------------------ Captured log call ------------------------------- 1264s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3566: self.config 1264s 1264s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3567: {'add_user_defined_field': [{'name': 'Test123'}], 'ip_address_list': ['70.2.2.2', '80.2.2.2']} 1264s 1264s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3570: udf_field_list 1264s 1264s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3571: [{'name': 'Test123'}] 1264s 1264s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3584: False 1264s 1264s WARNING logger:dnac.py:294 Inventory: verify_diff_merged: 3882: verify starts here verify diff merged 1264s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_some_error_data_update_accesspoint _ 1264s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_accesspoint_workflow_manager_some_error_data_update_accesspoint(self): 1264s """ 1264s Test case for access point workfollow manager negative case. 1264s 1264s This test case checks the behavior of the access point workflow when wrong data passed in the specified Cisco Catalyst Center. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s state="merged", 1264s config_verify=True, 1264s dnac_version="2.3.7.6", 1264s config=self.playbook_config_update_some_error_data 1264s ) 1264s ) 1264s result = self.execute_module(changed=True, failed=True) 1264s self.maxDiff = None 1264s > self.assertEqual( 1264s result.get('msg'), 1264s 'The provided site name \'Global/USA/New York/BLDNYCGlobal/USA/New York/BLDNYCGlobal/USA/iikk/FLOOR2FLOOR2FLOOR2FLOOR2FLOOR2FLOOR2FLOO\' ' + 1264s 'is either invalid or not present in the Cisco Catalyst Center.' 1264s ) 1264s E AssertionError: "An error occurred while executing GET API[211 chars]n: ." != "The provided site name 'Global/USA/New Yo[175 chars]ter." 1264s E - An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/USA/New York/BLDNYCGlobal/USA/New York/BLDNYCGlobal/USA/iikk/FLOOR2FLOOR2FLOOR2FLOOR2FLOOR2FLOOR2FLOO'}. Exception: . 1264s E + The provided site name 'Global/USA/New York/BLDNYCGlobal/USA/New York/BLDNYCGlobal/USA/iikk/FLOOR2FLOOR2FLOOR2FLOOR2FLOOR2FLOOR2FLOO' is either invalid or not present in the Cisco Catalyst Center. 1264s 1264s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:195: AssertionError 1264s ------------------------------ Captured log call ------------------------------- 1264s ERROR logger:dnac.py:294 Accesspoint: set_operation_result: 1780: An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/USA/New York/BLDNYCGlobal/USA/New York/BLDNYCGlobal/USA/iikk/FLOOR2FLOOR2FLOOR2FLOOR2FLOOR2FLOOR2FLOO'}. Exception: . 1264s 1264s WARNING logger:dnac.py:294 Accesspoint: site_exists: 2929: The provided site name 'Global/USA/New York/BLDNYCGlobal/USA/New York/BLDNYCGlobal/USA/iikk/FLOOR2FLOOR2FLOOR2FLOOR2FLOOR2FLOOR2FLOO' is either invalid or not present in the Cisco Catalyst Center.{'msg': "An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/USA/New York/BLDNYCGlobal/USA/New York/BLDNYCGlobal/USA/iikk/FLOOR2FLOOR2FLOOR2FLOOR2FLOOR2FLOOR2FLOO'}. Exception: .", 'response': "An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/USA/New York/BLDNYCGlobal/USA/New York/BLDNYCGlobal/USA/iikk/FLOOR2FLOOR2FLOOR2FLOOR2FLOOR2FLOOR2FLOO'}. Exception: .", 'failed': True} 1264s 1264s ERROR logger:dnac.py:294 Accesspoint: set_operation_result: 1780: The provided site name 'Global/USA/New York/BLDNYCGlobal/USA/New York/BLDNYCGlobal/USA/iikk/FLOOR2FLOOR2FLOOR2FLOOR2FLOOR2FLOOR2FLOO' is either invalid or not present in the Cisco Catalyst Center. 1264s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_invalid_site _ 1264s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_device_credentials_workflow_manager_invalid_site(self): 1264s """ 1264s Test case for device credential workflow manager when provided site is invalid. 1264s 1264s This test case checks the behavior of the device credential workflow manager, when provided site is invalid in the specified DNAC. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_version="2.3.7.6", 1264s dnac_log=True, 1264s state="merged", 1264s config=self.playbook_config_assign 1264s ) 1264s ) 1264s result = self.execute_module(changed=False, failed=True) 1264s print(result) 1264s > self.assertEqual( 1264s result['msg'], 1264s "The site_name 'Global/Vietnam/halong/Hanoi' is invalid in 'assign_credentials_to_site'" 1264s ) 1264s E AssertionError: 'An exception occurred while retrieving S[516 chars]rue}' != "The site_name 'Global/Vietnam/halong/Han[42 chars]ite'" 1264s E - An exception occurred while retrieving Site details for Site 'Global/Vietnam/halong/Hanoi' does not exist in the Cisco Catalyst Center. Error: {'msg': "An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/Vietnam/halong/Hanoi'}. Exception: .", 'response': "An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/Vietnam/halong/Hanoi'}. Exception: .", 'failed': True} 1264s E + The site_name 'Global/Vietnam/halong/Hanoi' is invalid in 'assign_credentials_to_site' 1264s 1264s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:435: AssertionError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s {'msg': 'An exception occurred while retrieving Site details for Site \'Global/Vietnam/halong/Hanoi\' does not exist in the Cisco Catalyst Center. Error: {\'msg\': "An error occurred while executing GET API call to Function: \'get_sites\' from Family: \'site_design\'. Parameters: {\'name_hierarchy\': \'Global/Vietnam/halong/Hanoi\'}. Exception: .", \'response\': "An error occurred while executing GET API call to Function: \'get_sites\' from Family: \'site_design\'. Parameters: {\'name_hierarchy\': \'Global/Vietnam/halong/Hanoi\'}. Exception: .", \'failed\': True}', 'response': 'An exception occurred while retrieving Site details for Site \'Global/Vietnam/halong/Hanoi\' does not exist in the Cisco Catalyst Center. Error: {\'msg\': "An error occurred while executing GET API call to Function: \'get_sites\' from Family: \'site_design\'. Parameters: {\'name_hierarchy\': \'Global/Vietnam/halong/Hanoi\'}. Exception: .", \'response\': "An error occurred while executing GET API call to Function: \'get_sites\' from Family: \'site_design\'. Parameters: {\'name_hierarchy\': \'Global/Vietnam/halong/Hanoi\'}. Exception: .", \'failed\': True}', 'failed': True} 1264s ------------------------------ Captured log call ------------------------------- 1264s ERROR logger:dnac.py:294 DeviceCredential: set_operation_result: 1780: An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/Vietnam/halong/Hanoi'}. Exception: . 1264s 1264s ERROR logger:dnac.py:294 DeviceCredential: set_operation_result: 1780: An exception occurred while retrieving Site details for Site 'Global/Vietnam/halong/Hanoi' does not exist in the Cisco Catalyst Center. Error: {'msg': "An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/Vietnam/halong/Hanoi'}. Exception: .", 'response': "An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/Vietnam/halong/Hanoi'}. Exception: .", 'failed': True} 1264s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_prov_device_2353 _ 1264s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_inventory_workflow_manager_playbook_prov_device_2353(self): 1264s """ 1264s Test case for add device with full crendentials. 1264s 1264s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s dnac_version="2.3.5.3", 1264s state="merged", 1264s config_verify=True, 1264s config=self.playbook_prov_device_2353 1264s ) 1264s ) 1264s > result = self.execute_module(changed=True, failed=False) 1264s 1264s tests/unit/modules/dnac/test_inventory_workflow_manager.py:578: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1264s result = self.changed(changed) 1264s tests/unit/modules/dnac/dnac_module.py:133: in changed 1264s self.module.main() 1264s plugins/modules/inventory_workflow_manager.py:4197: in main 1264s ccc_device.get_diff_state_apply[state](config).check_return_status() 1264s plugins/modules/inventory_workflow_manager.py:3613: in get_diff_merged 1264s self.provisioned_wired_device().check_return_status() 1264s plugins/module_utils/dnac.py:307: in check_return_status 1264s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s def fail_json(*args, **kwargs): 1264s kwargs["failed"] = True 1264s > raise AnsibleFailJson(kwargs) 1264s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': 'Wired Device Provisioning failed for all devices', 'response': 'Wired Device Provisioning failed for all devices', 'failed': True} 1264s 1264s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1264s ------------------------------ Captured log call ------------------------------- 1264s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3566: self.config 1264s 1264s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3567: {'provision_wired_device': [{'device_ip': '204.1.2.4', 'resync_retry_count': 200, 'resync_retry_interval': 2, 'site_name': 'Global/Chennai/LTTS/FLOOR1'}]} 1264s 1264s ERROR logger:dnac.py:294 Inventory: provisioned_wired_device: 1720: Cannot do Provisioning for device 204.1.2.4. 1264s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_del_provisioned_device_2353 _ 1264s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_inventory_workflow_manager_playbook_del_provisioned_device_2353(self): 1264s """ 1264s Test case for add device with full crendentials. 1264s 1264s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s dnac_version="2.3.5.3", 1264s state="deleted", 1264s config_verify=True, 1264s config=self.playbook_del_provisioned_device_2353 1264s ) 1264s ) 1264s > result = self.execute_module(changed=True, failed=False) 1264s 1264s tests/unit/modules/dnac/test_inventory_workflow_manager.py:553: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1264s result = self.changed(changed) 1264s tests/unit/modules/dnac/dnac_module.py:133: in changed 1264s self.module.main() 1264s plugins/modules/inventory_workflow_manager.py:4197: in main 1264s ccc_device.get_diff_state_apply[state](config).check_return_status() 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s def get_diff_deleted(self, config): 1264s """ 1264s Main function to delete devices in Cisco Catalyst Center based on device IP address. 1264s Parameters: 1264s config (dict): The configuration settings for the deletion process. 1264s Returns: 1264s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1264s Description: 1264s This method compares the provided configuration against the current 1264s devices in the Cisco Catalyst Center and deletes devices based on 1264s their IP addresses. It returns a success status indicating whether 1264s the deletion process was completed successfully. 1264s """ 1264s 1264s device_to_delete = self.get_device_ips_from_config_priority() 1264s self.result['msg'] = [] 1264s 1264s # Handle Global User Defined Fields (UDF) Deletion 1264s if self.config[0].get('add_user_defined_field'): 1264s return self.delete_user_defined_fields() 1264s 1264s # Loop over devices to delete them 1264s for device_ip in device_to_delete: 1264s if device_ip not in self.have.get("device_in_ccc"): 1264s self.status = "success" 1264s self.result['changed'] = False 1264s self.msg = "Device '{0}' is not present in Cisco Catalyst Center so can't perform delete operation".format(device_ip) 1264s self.no_device_to_delete.append(device_ip) 1264s self.result['msg'].append(self.msg) 1264s self.result['response'] = self.msg 1264s self.log(self.msg, "INFO") 1264s continue 1264s device_ids = self.get_device_ids([device_ip]) 1264s > device_id = device_ids[0] 1264s E IndexError: list index out of range 1264s 1264s plugins/modules/inventory_workflow_manager.py:3665: IndexError 1264s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_invalid_site_response _ 1264s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_device_credentials_workflow_manager_invalid_site_response(self): 1264s """ 1264s Test case for device credential workflow manager when provided site response is invalid. 1264s 1264s This test case checks the behavior of the device credential workflow manager when provided site response is invalid in the specified DNAC. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s state="merged", 1264s config=self.playbook_config_apply 1264s ) 1264s ) 1264s result = self.execute_module(changed=False, failed=True) 1264s print(result) 1264s > self.assertEqual( 1264s result['msg'], 1264s "Exception occurred while getting global device credentials: " 1264s ) 1264s E AssertionError: "An exception occurred while retrieving S[137 chars]able" != 'Exception occurred while getting global [16 chars]ls: ' 1264s E - An exception occurred while retrieving Site details for Site 'Global/Vietnam/halong/Hanoi' does not exist in the Cisco Catalyst Center. Error: 'NoneType' object is not subscriptable 1264s E + Exception occurred while getting global device credentials: 1264s 1264s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:481: AssertionError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s {'msg': "An exception occurred while retrieving Site details for Site 'Global/Vietnam/halong/Hanoi' does not exist in the Cisco Catalyst Center. Error: 'NoneType' object is not subscriptable", 'response': "An exception occurred while retrieving Site details for Site 'Global/Vietnam/halong/Hanoi' does not exist in the Cisco Catalyst Center. Error: 'NoneType' object is not subscriptable", 'failed': True} 1264s ------------------------------ Captured log call ------------------------------- 1264s ERROR logger:dnac.py:294 DeviceCredential: set_operation_result: 1780: An exception occurred while retrieving Site details for Site 'Global/Vietnam/halong/Hanoi' does not exist in the Cisco Catalyst Center. Error: 'NoneType' object is not subscriptable 1264s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_negative_config_input _ 1264s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_accesspoint_workflow_manager_negative_config_input(self): 1264s """ 1264s Test case for access point workfollow manager and negative test verify ap update 1264s 1264s This test case checks the behavior of the update access point data in the specified Cisco Catalyst Center. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s state="merged", 1264s config_verify=True, 1264s dnac_version="2.3.7.6", 1264s config=self.playbook_config_update_some_missing_data 1264s ) 1264s ) 1264s result = self.execute_module(changed=False, failed=True) 1264s self.maxDiff = None 1264s > self.assertEqual( 1264s result.get('msg'), 1264s 'Invalid parameters in playbook config: \'[["Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' + 1264s 'for the radio type xor_radio allowed series 280", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' + 1264s 'for the radio type xor_radio allowed series 380", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' + 1264s 'for the radio type xor_radio allowed series 480", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' + 1264s 'for the radio type xor_radio allowed series 9120", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' + 1264s 'for the radio type xor_radio allowed series 9166", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' + 1264s 'for the radio type xor_radio allowed series IW9167EH", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' + 1264s 'for the radio type xor_radio allowed series IW9165E", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' + 1264s 'for the radio type xor_radio allowed series IW9165DH"], "management_ip_address: Invalid Management IP ' + 1264s 'Address \'204.192.12.201dsd\' in playbook.", \'ap_name:hostname,family,type,mac_address,management_ip_address,' + 1264s 'ap_ethernet_mac_address : The string exceeds the allowed range of max 32 char\', "led_status: Invalid LED Status \'Enableddd\' in ' + 1264s 'playbook.", "ap_mode: Invalid value \'Monitorw\' for ap_mode in playbook. Must be one of: Local, Monitor, Sniffer or ' + 1264s 'Bridge.", "failover_priority: Invalid value \'Lossw\' for failover_priority in playbook. Must be one of: Low, Medium, High or ' + 1264s 'Critical.", "clean_air_si_2.4ghz: Invalid value \'Disableds\' in playbook. Must be ' + 1264s 'either \'Enabled\' or \'Disabled\'.", "clean_air_si_5ghz: Invalid value \'Disableds\' in playbook. Must be ' + 1264s 'either \'Enabled\' or \'Disabled\'.", "clean_air_si_6ghz: Invalid value \'Enableds\' in playbook. Must be ' + 1264s 'either \'Enabled\' or \'Disabled\'.", "primary_ip_address: Invalid primary_ip_address \'{\'address\': \'204.192.4.20dfasd0\'}\' in ' + 1264s 'playbook", "secondary_ip_address: Invalid secondary_ip_address \'{\'address\': \'204.192.4.20dfasd0\'}\' in playbook", "tertiary_ip_address: ' + 1264s 'Invalid tertiary_ip_address \'{\'address\': \'204.192.4.20dfasd0\'}\' in playbook", \'Radio Params cannot be changed when AP mode is in ' + 1264s 'Monitorw.\', "admin_status: Invalid value \'Enabledsds\' for admin_status in playbook. Must be ' + 1264s 'either \'Enabled\' or \'Disabled\'.", "channel_assignment_mode: Invalid value \'any\' for Channel Assignment Mode in playbook. Must be ' + 1264s 'either \'Global\' or \'Custom\'.", "channel_number: Invalid value \'22\' for Channel Number in playbook. Must be one of: ' + 1264s '[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14].", "channel_width: Invalid value \'5\' for Channel width in playbook. Must be one ' + 1264s 'of: \'20 MHz\', \'40 MHz\', \'80 MHz\', \'160 MHz\', or \'320 MHz\'.", "power_assignment_mode: Invalid ' + 1264s 'value \'any\' for Power assignment mode in ' + 1264s 'playbook. Must be either \'Global\' or \'Custom\'.", \'powerlevel: This configuration is only supported with Client-Serving Radio Role ' + 1264s 'Assignment None \', "radio_role_assignment: Invalid value \'any\' for radio role assignment in playbook. Must be one ' + 1264s 'of: \'Auto\', \'Monitor\' or \'Client-Serving\'.", \'Radio Params cannot be changed when AP mode is in Monitorw.\', "admin_status: ' + 1264s 'Invalid value \'Enabledsds\' for admin_status in playbook. Must be either \'Enabled\' or \'Disabled\'.", "antenna_gain: Invalid \'41\' in ' + 1264s 'playbook, allowed range of min: 0 and max: 40", "channel_assignment_mode: Invalid value \'any\' for Channel Assignment Mode in playbook. ' + 1264s 'Must be either \'Global\' or \'Custom\'.", ' + 1264s '"radio_role_assignment: Invalid value \'Client-Serving\'. Hence, AP mode is not Local. Kindly change the AP mode to Local then ' + 1264s 'change the radio_role_assignment to Auto."]\' ' 1264s ) 1264s E AssertionError: 'Inva[2010 chars]alid IP address \'204.192.4.20dfasd0\' in play[1626 chars]]\' ' != 'Inva[2010 chars]alid primary_ip_address \'{\'address\': \'204.[1797 chars]]\' ' 1264s E - Invalid parameters in playbook config: '[["Access Point series 'Cisco 9164I Series Unified Access Points' not supported for the radio type xor_radio allowed series 280", "Access Point series 'Cisco 9164I Series Unified Access Points' not supported for the radio type xor_radio allowed series 380", "Access Point series 'Cisco 9164I Series Unified Access Points' not supported for the radio type xor_radio allowed series 480", "Access Point series 'Cisco 9164I Series Unified Access Points' not supported for the radio type xor_radio allowed series 9120", "Access Point series 'Cisco 9164I Series Unified Access Points' not supported for the radio type xor_radio allowed series 9166", "Access Point series 'Cisco 9164I Series Unified Access Points' not supported for the radio type xor_radio allowed series IW9167EH", "Access Point series 'Cisco 9164I Series Unified Access Points' not supported for the radio type xor_radio allowed series IW9165E", "Access Point series 'Cisco 9164I Series Unified Access Points' not supported for the radio type xor_radio allowed series IW9165DH"], "management_ip_address: Invalid Management IP Address '204.192.12.201dsd' in playbook.", 'ap_name:hostname,family,type,mac_address,management_ip_address,ap_ethernet_mac_address : The string exceeds the allowed range of max 32 char', "led_status: Invalid LED Status 'Enableddd' in playbook.", "ap_mode: Invalid value 'Monitorw' for ap_mode in playbook. Must be one of: Local, Monitor, Sniffer or Bridge.", "failover_priority: Invalid value 'Lossw' for failover_priority in playbook. Must be one of: Low, Medium, High or Critical.", "clean_air_si_2.4ghz: Invalid value 'Disableds' in playbook. Must be either 'Enabled' or 'Disabled'.", "clean_air_si_5ghz: Invalid value 'Disableds' in playbook. Must be either 'Enabled' or 'Disabled'.", "clean_air_si_6ghz: Invalid value 'Enableds' in playbook. Must be either 'Enabled' or 'Disabled'.", "primary_ip_address: Invalid IP address '204.192.4.20dfasd0' in playbook", "secondary_ip_address: Invalid IP address '204.192.4.20dfasd0' in playbook", "tertiary_ip_address: Invalid IP address '204.192.4.20dfasd0' in playbook", 'Radio Params cannot be changed when AP mode is in Monitorw.', "admin_status: Invalid value 'Enabledsds' for admin_status in playbook. Must be either 'Enabled' or 'Disabled'.", "channel_assignment_mode: Invalid value 'any' for Channel Assignment Mode in playbook. Must be either 'Global' or 'Custom'.", "channel_number: Invalid value '22' for Channel Number in playbook. Must be one of: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14].", 'channel_width is not applicable for the 2.4GHz radio', "power_assignment_mode: Invalid value 'any' for Power assignment mode in playbook. Must be either 'Global' or 'Custom'.", "radio_role_assignment: Invalid value 'any' for radio role assignment in playbook. Must be one of: 'Auto', 'Monitor' or 'Client-Serving'.", 'Radio Params cannot be changed when AP mode is in Monitorw.', "admin_status: Invalid value 'Enabledsds' for admin_status in playbook. Must be either 'Enabled' or 'Disabled'.", "antenna_gain: Invalid '41' in playbook, allowed range of min: 0 and max: 40", "channel_assignment_mode: Invalid value 'any' for Channel Assignment Mode in playbook. Must be either 'Global' or 'Custom'.", "radio_role_assignment: Invalid value 'Client-Serving'. Hence, AP mode is not Local. Kindly change the AP mode to Local then change the radio_role_assignment to Auto.", "radio_band: Missing in 'xor_radio' in playbook. Must be either '2.4 GHz' or '5 GHz' or '6 GHz'."]' 1264s E ? ^^^^^^^^^^ ^^^ ^^^^^^^^^^ ^^^ ^^^^^^^^^^ ^^^ ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ ^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^ --------------------------------------------------------------------------------------------------- 1264s E + Invalid parameters in playbook config: '[["Access Point series 'Cisco 9164I Series Unified Access Points' not supported for the radio type xor_radio allowed series 280", "Access Point series 'Cisco 9164I Series Unified Access Points' not supported for the radio type xor_radio allowed series 380", "Access Point series 'Cisco 9164I Series Unified Access Points' not supported for the radio type xor_radio allowed series 480", "Access Point series 'Cisco 9164I Series Unified Access Points' not supported for the radio type xor_radio allowed series 9120", "Access Point series 'Cisco 9164I Series Unified Access Points' not supported for the radio type xor_radio allowed series 9166", "Access Point series 'Cisco 9164I Series Unified Access Points' not supported for the radio type xor_radio allowed series IW9167EH", "Access Point series 'Cisco 9164I Series Unified Access Points' not supported for the radio type xor_radio allowed series IW9165E", "Access Point series 'Cisco 9164I Series Unified Access Points' not supported for the radio type xor_radio allowed series IW9165DH"], "management_ip_address: Invalid Management IP Address '204.192.12.201dsd' in playbook.", 'ap_name:hostname,family,type,mac_address,management_ip_address,ap_ethernet_mac_address : The string exceeds the allowed range of max 32 char', "led_status: Invalid LED Status 'Enableddd' in playbook.", "ap_mode: Invalid value 'Monitorw' for ap_mode in playbook. Must be one of: Local, Monitor, Sniffer or Bridge.", "failover_priority: Invalid value 'Lossw' for failover_priority in playbook. Must be one of: Low, Medium, High or Critical.", "clean_air_si_2.4ghz: Invalid value 'Disableds' in playbook. Must be either 'Enabled' or 'Disabled'.", "clean_air_si_5ghz: Invalid value 'Disableds' in playbook. Must be either 'Enabled' or 'Disabled'.", "clean_air_si_6ghz: Invalid value 'Enableds' in playbook. Must be either 'Enabled' or 'Disabled'.", "primary_ip_address: Invalid primary_ip_address '{'address': '204.192.4.20dfasd0'}' in playbook", "secondary_ip_address: Invalid secondary_ip_address '{'address': '204.192.4.20dfasd0'}' in playbook", "tertiary_ip_address: Invalid tertiary_ip_address '{'address': '204.192.4.20dfasd0'}' in playbook", 'Radio Params cannot be changed when AP mode is in Monitorw.', "admin_status: Invalid value 'Enabledsds' for admin_status in playbook. Must be either 'Enabled' or 'Disabled'.", "channel_assignment_mode: Invalid value 'any' for Channel Assignment Mode in playbook. Must be either 'Global' or 'Custom'.", "channel_number: Invalid value '22' for Channel Number in playbook. Must be one of: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14].", "channel_width: Invalid value '5' for Channel width in playbook. Must be one of: '20 MHz', '40 MHz', '80 MHz', '160 MHz', or '320 MHz'.", "power_assignment_mode: Invalid value 'any' for Power assignment mode in playbook. Must be either 'Global' or 'Custom'.", 'powerlevel: This configuration is only supported with Client-Serving Radio Role Assignment None ', "radio_role_assignment: Invalid value 'any' for radio role assignment in playbook. Must be one of: 'Auto', 'Monitor' or 'Client-Serving'.", 'Radio Params cannot be changed when AP mode is in Monitorw.', "admin_status: Invalid value 'Enabledsds' for admin_status in playbook. Must be either 'Enabled' or 'Disabled'.", "antenna_gain: Invalid '41' in playbook, allowed range of min: 0 and max: 40", "channel_assignment_mode: Invalid value 'any' for Channel Assignment Mode in playbook. Must be either 'Global' or 'Custom'.", "radio_role_assignment: Invalid value 'Client-Serving'. Hence, AP mode is not Local. Kindly change the AP mode to Local then change the radio_role_assignment to Auto."]' 1264s E ? ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^ ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^ +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1264s 1264s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:221: AssertionError 1264s ------------------------------ Captured log call ------------------------------- 1264s ERROR logger:dnac.py:294 Accesspoint: validate_ap_config_parameters: 2373: Invalid parameters in playbook config: '[["Access Point series 'Cisco 9164I Series Unified Access Points' not supported for the radio type xor_radio allowed series 280", "Access Point series 'Cisco 9164I Series Unified Access Points' not supported for the radio type xor_radio allowed series 380", "Access Point series 'Cisco 9164I Series Unified Access Points' not supported for the radio type xor_radio allowed series 480", "Access Point series 'Cisco 9164I Series Unified Access Points' not supported for the radio type xor_radio allowed series 9120", "Access Point series 'Cisco 9164I Series Unified Access Points' not supported for the radio type xor_radio allowed series 9166", "Access Point series 'Cisco 9164I Series Unified Access Points' not supported for the radio type xor_radio allowed series IW9167EH", "Access Point series 'Cisco 9164I Series Unified Access Points' not supported for the radio type xor_radio allowed series IW9165E", "Access Point series 'Cisco 9164I Series Unified Access Points' not supported for the radio type xor_radio allowed series IW9165DH"], "management_ip_address: Invalid Management IP Address '204.192.12.201dsd' in playbook.", 'ap_name:hostname,family,type,mac_address,management_ip_address,ap_ethernet_mac_address : The string exceeds the allowed range of max 32 char', "led_status: Invalid LED Status 'Enableddd' in playbook.", "ap_mode: Invalid value 'Monitorw' for ap_mode in playbook. Must be one of: Local, Monitor, Sniffer or Bridge.", "failover_priority: Invalid value 'Lossw' for failover_priority in playbook. Must be one of: Low, Medium, High or Critical.", "clean_air_si_2.4ghz: Invalid value 'Disableds' in playbook. Must be either 'Enabled' or 'Disabled'.", "clean_air_si_5ghz: Invalid value 'Disableds' in playbook. Must be either 'Enabled' or 'Disabled'.", "clean_air_si_6ghz: Invalid value 'Enableds' in playbook. Must be either 'Enabled' or 'Disabled'.", "primary_ip_address: Invalid IP address '204.192.4.20dfasd0' in playbook", "secondary_ip_address: Invalid IP address '204.192.4.20dfasd0' in playbook", "tertiary_ip_address: Invalid IP address '204.192.4.20dfasd0' in playbook", 'Radio Params cannot be changed when AP mode is in Monitorw.', "admin_status: Invalid value 'Enabledsds' for admin_status in playbook. Must be either 'Enabled' or 'Disabled'.", "channel_assignment_mode: Invalid value 'any' for Channel Assignment Mode in playbook. Must be either 'Global' or 'Custom'.", "channel_number: Invalid value '22' for Channel Number in playbook. Must be one of: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14].", 'channel_width is not applicable for the 2.4GHz radio', "power_assignment_mode: Invalid value 'any' for Power assignment mode in playbook. Must be either 'Global' or 'Custom'.", "radio_role_assignment: Invalid value 'any' for radio role assignment in playbook. Must be one of: 'Auto', 'Monitor' or 'Client-Serving'.", 'Radio Params cannot be changed when AP mode is in Monitorw.', "admin_status: Invalid value 'Enabledsds' for admin_status in playbook. Must be either 'Enabled' or 'Disabled'.", "antenna_gain: Invalid '41' in playbook, allowed range of min: 0 and max: 40", "channel_assignment_mode: Invalid value 'any' for Channel Assignment Mode in playbook. Must be either 'Global' or 'Custom'.", "radio_role_assignment: Invalid value 'Client-Serving'. Hence, AP mode is not Local. Kindly change the AP mode to Local then change the radio_role_assignment to Auto.", "radio_band: Missing in 'xor_radio' in playbook. Must be either '2.4 GHz' or '5 GHz' or '6 GHz'."]' 1264s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_update_verify _ 1264s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s def get_tasks_by_id(self, task_id): 1264s """ 1264s Get the tasks of a task ID in Cisco Catalyst Center. 1264s Args: 1264s self (object): An instance of a class that provides access to Cisco Catalyst Center. 1264s task_id (str): The unique identifier of the task for which you want to retrieve details. 1264s Returns: 1264s dict or None: A dictionary status information about the specified task, 1264s or None if the task with the given task_id is not found. 1264s Description: 1264s Call the API 'get_tasks_by_id' to get the status of the task. 1264s Return the details along with the status of the task. 1264s """ 1264s # Need to handle exception 1264s task_status = None 1264s try: 1264s > response = self.dnac._exec( 1264s family="task", 1264s function="get_tasks_by_id", 1264s params={"id": task_id} 1264s ) 1264s 1264s plugins/module_utils/dnac.py:1662: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s /usr/lib/python3.13/unittest/mock.py:1169: in __call__ 1264s return self._mock_call(*args, **kwargs) 1264s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call 1264s return self._execute_mock_call(*args, **kwargs) 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s self = , args = () 1264s kwargs = {'family': 'task', 'function': 'get_tasks_by_id', 'params': {'id': '0191e542-b3fb-7ac8-ae85-81e461c8b022'}} 1264s effect = 1264s 1264s def _execute_mock_call(self, /, *args, **kwargs): 1264s # separate from _increment_mock_call so that awaited functions are 1264s # executed separately from their call, also AsyncMock overrides this method 1264s 1264s effect = self.side_effect 1264s if effect is not None: 1264s if _is_exception(effect): 1264s raise effect 1264s elif not _callable(effect): 1264s > result = next(effect) 1264s E StopIteration 1264s 1264s /usr/lib/python3.13/unittest/mock.py:1230: StopIteration 1264s 1264s During handling of the above exception, another exception occurred: 1264s 1264s self = 1264s 1264s def test_device_credentials_workflow_manager_update_verify(self): 1264s """ 1264s Test case for device credential workflow manager when updating a device credential. 1264s 1264s This test case checks the behavior of the device credential workflow manager when updating a new device credentials in the specified DNAC. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_version="2.3.7.6", 1264s dnac_log=True, 1264s state="merged", 1264s config_verify=True, 1264s config=self.playbook_config_creation 1264s ) 1264s ) 1264s > result = self.execute_module(changed=True, failed=False) 1264s 1264s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:336: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1264s result = self.changed(changed) 1264s tests/unit/modules/dnac/dnac_module.py:133: in changed 1264s self.module.main() 1264s plugins/modules/device_credential_workflow_manager.py:3277: in main 1264s ccc_credential.get_diff_state_apply[state](config).check_return_status() 1264s plugins/modules/device_credential_workflow_manager.py:2977: in get_diff_merged 1264s self.update_device_credentials().check_return_status() 1264s plugins/modules/device_credential_workflow_manager.py:2684: in update_device_credentials 1264s self.check_tasks_response_status(response, "update_global_credentials_v2").check_return_status() 1264s plugins/module_utils/dnac.py:1730: in check_tasks_response_status 1264s task_details = self.get_tasks_by_id(task_id) 1264s plugins/module_utils/dnac.py:1684: in get_tasks_by_id 1264s self.fail_and_exit(self.msg) 1264s plugins/module_utils/dnac.py:1787: in fail_and_exit 1264s self.check_return_status() 1264s plugins/module_utils/dnac.py:307: in check_return_status 1264s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s def fail_json(*args, **kwargs): 1264s kwargs["failed"] = True 1264s > raise AnsibleFailJson(kwargs) 1264s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .", 'response': "An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .", 'failed': True} 1264s 1264s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1264s ------------------------------ Captured log call ------------------------------- 1264s ERROR logger:dnac.py:294 DeviceCredential: set_operation_result: 1780: An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1264s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_invalid_site_response_2 _ 1264s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_device_credentials_workflow_manager_invalid_site_response_2(self): 1264s """ 1264s Test case for device credential workflow manager when provided site response is invalid. 1264s 1264s This test case checks the behavior of the device credential workflow manager when provided site response is invalid in the specified DNAC. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s state="merged", 1264s config=self.playbook_config_apply 1264s ) 1264s ) 1264s result = self.execute_module(changed=False, failed=True) 1264s print(result) 1264s > self.assertEqual( 1264s result['msg'], 1264s "Exception occurred while getting global device credentials: " 1264s ) 1264s E AssertionError: "An exception occurred while retrieving S[278 chars]rue}" != 'Exception occurred while getting global [16 chars]ls: ' 1264s E - An exception occurred while retrieving Site details for Site 'Global/Vietnam/halong/Hanoi' does not exist in the Cisco Catalyst Center. Error: {'msg': 'No site details retrieved for site name: Global/Vietnam/halong/Hanoi', 'response': 'No site details retrieved for site name: Global/Vietnam/halong/Hanoi', 'failed': True} 1264s E + Exception occurred while getting global device credentials: 1264s 1264s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:504: AssertionError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s {'msg': "An exception occurred while retrieving Site details for Site 'Global/Vietnam/halong/Hanoi' does not exist in the Cisco Catalyst Center. Error: {'msg': 'No site details retrieved for site name: Global/Vietnam/halong/Hanoi', 'response': 'No site details retrieved for site name: Global/Vietnam/halong/Hanoi', 'failed': True}", 'response': "An exception occurred while retrieving Site details for Site 'Global/Vietnam/halong/Hanoi' does not exist in the Cisco Catalyst Center. Error: {'msg': 'No site details retrieved for site name: Global/Vietnam/halong/Hanoi', 'response': 'No site details retrieved for site name: Global/Vietnam/halong/Hanoi', 'failed': True}", 'failed': True} 1264s ------------------------------ Captured log call ------------------------------- 1264s WARNING logger:dnac.py:294 DeviceCredential: execute_get_request: 1857: No response received from GET API call to Function: 'get_site' from Family: 'sites'. 1264s 1264s ERROR logger:dnac.py:294 DeviceCredential: set_operation_result: 1780: No site details retrieved for site name: Global/Vietnam/halong/Hanoi 1264s 1264s ERROR logger:dnac.py:294 DeviceCredential: set_operation_result: 1780: An exception occurred while retrieving Site details for Site 'Global/Vietnam/halong/Hanoi' does not exist in the Cisco Catalyst Center. Error: {'msg': 'No site details retrieved for site name: Global/Vietnam/halong/Hanoi', 'response': 'No site details retrieved for site name: Global/Vietnam/halong/Hanoi', 'failed': True} 1264s _________ TestNetworkCompliance.test_run_compliance_categories_iplist __________ 1264s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_run_compliance_categories_iplist(self): 1264s 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s dnac_log_level="DEBUG", 1264s dnac_log_append=False, 1264s state="merged", 1264s config=self.test_data.get("playbook_config_run_compliance_categories_iplist") 1264s ) 1264s ) 1264s > result = self.execute_module(changed=True, failed=False) 1264s 1264s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:412: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1264s result = self.changed(changed) 1264s tests/unit/modules/dnac/dnac_module.py:133: in changed 1264s self.module.main() 1264s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1264s ccc_network_compliance.get_want(config).check_return_status() 1264s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1264s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1264s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list 1264s self.fail_and_exit(self.msg) 1264s plugins/module_utils/dnac.py:1787: in fail_and_exit 1264s self.check_return_status() 1264s plugins/module_utils/dnac.py:307: in check_return_status 1264s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s def fail_json(*args, **kwargs): 1264s kwargs["failed"] = True 1264s > raise AnsibleFailJson(kwargs) 1264s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs).", 'response': "No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs).", 'failed': True} 1264s 1264s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1264s ----------------------------- Captured stdout call ----------------------------- 1264s Inside load_fixtures 1264s Mock for DNACSDK._exec: 1264s Inside load_fixtures 1264s ------------------------------ Captured log call ------------------------------- 1264s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 116: Cisco Catalyst Center parameters: {'dnac_host': '1.1.1.1', 'dnac_port': '443', 'dnac_username': 'dummy', 'dnac_password': 'dummy', 'dnac_version': '2.2.3.3', 'dnac_verify': True, 'dnac_debug': False, 'dnac_log': True, 'dnac_log_level': 'DEBUG', 'dnac_log_file_path': 'dnac.log', 'dnac_log_append': False} 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_input: 422: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': True, 'run_compliance_categories': ['INTENT', 'RUNNING_CONFIG', 'IMAGE', 'PSIRT'], 'run_compliance_batch_size': 100, 'sync_device_config': False}] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1663 status: success, msg: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': True, 'run_compliance_categories': ['INTENT', 'RUNNING_CONFIG', 'IMAGE', 'PSIRT'], 'run_compliance_batch_size': 100, 'sync_device_config': False}] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 532: Validating the provided configuration: {'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': True, 'run_compliance_categories': ['INTENT', 'RUNNING_CONFIG', 'IMAGE', 'PSIRT'], 'run_compliance_batch_size': 100, 'sync_device_config': False} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_params: 538: Extracted parameters - IP Address List: ['192.168.0.0'], Site Name: None, Run Compliance: True, Run Compliance Categories: ['INTENT', 'RUNNING_CONFIG', 'IMAGE', 'PSIRT'], Sync Device Config: False 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None' 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1264s 1264s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 484: Validating if any network compliance operation is requested: run_compliance=True, run_compliance_categories=['INTENT', 'RUNNING_CONFIG', 'IMAGE', 'PSIRT'], sync_device_config=False 1264s 1264s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_run_compliance_categories: 510: Validating the provided run compliance categories: ['INTENT', 'RUNNING_CONFIG', 'IMAGE', 'PSIRT'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_run_compliance_categories: 518: Validation successful: valid run compliance categorites provided: ['INTENT', 'RUNNING_CONFIG', 'IMAGE', 'PSIRT'] 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 556: Validation completed for configuration: {'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': True, 'run_compliance_categories': ['INTENT', 'RUNNING_CONFIG', 'IMAGE', 'PSIRT'], 'run_compliance_batch_size': 100, 'sync_device_config': False} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 809: Entering get_device_id_list with args: ip_address_list=['192.168.0.0'], site_name=None 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 677: Entering get_device_list_params method with ip_address_list: ['192.168.0.0'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 697: Entering 'get_device_ids_from_ip' method with parameters: {'management_ip_address': ['192.168.0.0']} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 1: {'response': [{'reachabilityStatus': 'Reachable', 'family': 'Switches and Hubs', 'managementIpAddress': '192.168.0.0', 'instanceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'id': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'}]} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: 192.168.0.0, Reachability: Reachable, Collection Status: None, Family: Switches and Hubs 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device 192.168.0.0 as its status is Reachable or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 501: {'response': [], 'version': '1.0', 'deviceUuid': 'None'} 1264s 1264s WARNING logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 724: Exiting the loop because no devices were returned after increasing the offset. Current offset: 501 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 782: Total number of devices received: 1 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 783: Number of devices that are Unreachable or APs: 1 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 784: Config Backup Operation can be performed on the following filtered devices: 0 1264s 1264s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1264s 1264s ERROR logger:dnac.py:294 NetworkCompliance: set_operation_result: 1780: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs). 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1787 status: failed, msg: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs). 1264s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_provision_device _ 1264s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_inventory_workflow_manager_playbook_provision_device(self): 1264s """ 1264s Test case for add device with full crendentials. 1264s 1264s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s dnac_version="2.3.7.6", 1264s state="merged", 1264s config_verify=True, 1264s config=self.playbook_provision_device 1264s ) 1264s ) 1264s > result = self.execute_module(changed=True, failed=False) 1264s 1264s tests/unit/modules/dnac/test_inventory_workflow_manager.py:528: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1264s result = self.changed(changed) 1264s tests/unit/modules/dnac/dnac_module.py:133: in changed 1264s self.module.main() 1264s plugins/modules/inventory_workflow_manager.py:4197: in main 1264s ccc_device.get_diff_state_apply[state](config).check_return_status() 1264s plugins/modules/inventory_workflow_manager.py:3613: in get_diff_merged 1264s self.provisioned_wired_device().check_return_status() 1264s plugins/module_utils/dnac.py:307: in check_return_status 1264s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s def fail_json(*args, **kwargs): 1264s kwargs["failed"] = True 1264s > raise AnsibleFailJson(kwargs) 1264s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': 'Wired Device Provisioning failed for all devices', 'response': 'Wired Device Provisioning failed for all devices', 'failed': True} 1264s 1264s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1264s ------------------------------ Captured log call ------------------------------- 1264s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3566: self.config 1264s 1264s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3567: {'provision_wired_device': [{'device_ip': '204.1.2.4', 'resync_retry_count': 200, 'resync_retry_interval': 2, 'site_name': 'Global/Chennai/LTTS/FLOOR1'}]} 1264s 1264s WARNING logger:dnac.py:294 Inventory: is_device_assigned_to_site: 1876: Response collected from the API 'get_device_detail' {'response': [], 'version': '1.0'} 1264s 1264s CRITICAL logger:dnac.py:294 Inventory: is_device_assigned_to_site: 1883: Failed to find device with UUID 03072c33-bd11-4914-9c0e-3c53379b2813 due to: 'list' object has no attribute 'get' 1264s 1264s ERROR logger:dnac.py:294 Inventory: handle_provisioning_exception: 1606: Error while Provisioning the Wired device 204.1.2.4 in Cisco Catalyst Center: {'msg': "Failed to find device with UUID 03072c33-bd11-4914-9c0e-3c53379b2813 due to: 'list' object has no attribute 'get'", 'failed': True} 1264s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_2 ________ 1264s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_run_compliance_with_iplist_failure_2(self): 1264s 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s dnac_log_level="DEBUG", 1264s dnac_log_append=False, 1264s state="merged", 1264s config=self.test_data.get("playbook_config_run_compliance_iplist") 1264s ) 1264s ) 1264s result = self.execute_module(changed=False, failed=True) 1264s > self.assertIn( 1264s "An error occurred while retrieving Compliance Details for device:192.168.0.0 using 'compliance_details_of_device' API call", 1264s result.get('msg') 1264s ) 1264s E AssertionError: "An error occurred while retrieving Compliance Details for device:192.168.0.0 using 'compliance_details_of_device' API call" not found in "No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs)." 1264s 1264s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:563: AssertionError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s Inside load_fixtures 1264s Mock for DNACSDK._exec: 1264s Inside load_fixtures 1264s ------------------------------ Captured log call ------------------------------- 1264s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 116: Cisco Catalyst Center parameters: {'dnac_host': '1.1.1.1', 'dnac_port': '443', 'dnac_username': 'dummy', 'dnac_password': 'dummy', 'dnac_version': '2.2.3.3', 'dnac_verify': True, 'dnac_debug': False, 'dnac_log': True, 'dnac_log_level': 'DEBUG', 'dnac_log_file_path': 'dnac.log', 'dnac_log_append': False} 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_input: 422: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': True, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': False}] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1663 status: success, msg: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': True, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': False}] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 532: Validating the provided configuration: {'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': True, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': False} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_params: 538: Extracted parameters - IP Address List: ['192.168.0.0'], Site Name: None, Run Compliance: True, Run Compliance Categories: None, Sync Device Config: False 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None' 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1264s 1264s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 484: Validating if any network compliance operation is requested: run_compliance=True, run_compliance_categories=None, sync_device_config=False 1264s 1264s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 556: Validation completed for configuration: {'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': True, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': False} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 809: Entering get_device_id_list with args: ip_address_list=['192.168.0.0'], site_name=None 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 677: Entering get_device_list_params method with ip_address_list: ['192.168.0.0'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 697: Entering 'get_device_ids_from_ip' method with parameters: {'management_ip_address': ['192.168.0.0']} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 1: {'response': [{'reachabilityStatus': 'Reachable', 'family': 'Switches and Hubs', 'managementIpAddress': '192.168.0.0', 'instanceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'id': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'}]} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: 192.168.0.0, Reachability: Reachable, Collection Status: None, Family: Switches and Hubs 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device 192.168.0.0 as its status is Reachable or its collectionStatus is None. 1264s 1264s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 788: Error fetching device IDs from Cisco Catalyst Center. Error details: Simulated exception 1264s 1264s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1264s 1264s ERROR logger:dnac.py:294 NetworkCompliance: set_operation_result: 1780: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs). 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1787 status: failed, msg: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs). 1264s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_apply_sync _ 1264s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s def get_tasks_by_id(self, task_id): 1264s """ 1264s Get the tasks of a task ID in Cisco Catalyst Center. 1264s Args: 1264s self (object): An instance of a class that provides access to Cisco Catalyst Center. 1264s task_id (str): The unique identifier of the task for which you want to retrieve details. 1264s Returns: 1264s dict or None: A dictionary status information about the specified task, 1264s or None if the task with the given task_id is not found. 1264s Description: 1264s Call the API 'get_tasks_by_id' to get the status of the task. 1264s Return the details along with the status of the task. 1264s """ 1264s # Need to handle exception 1264s task_status = None 1264s try: 1264s > response = self.dnac._exec( 1264s family="task", 1264s function="get_tasks_by_id", 1264s params={"id": task_id} 1264s ) 1264s 1264s plugins/module_utils/dnac.py:1662: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s /usr/lib/python3.13/unittest/mock.py:1169: in __call__ 1264s return self._mock_call(*args, **kwargs) 1264s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call 1264s return self._execute_mock_call(*args, **kwargs) 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s self = , args = () 1264s kwargs = {'family': 'task', 'function': 'get_tasks_by_id', 'params': {'id': '0191ea00-6acf-7863-83c3-638499ad0aff'}} 1264s effect = 1264s 1264s def _execute_mock_call(self, /, *args, **kwargs): 1264s # separate from _increment_mock_call so that awaited functions are 1264s # executed separately from their call, also AsyncMock overrides this method 1264s 1264s effect = self.side_effect 1264s if effect is not None: 1264s if _is_exception(effect): 1264s raise effect 1264s elif not _callable(effect): 1264s > result = next(effect) 1264s E StopIteration 1264s 1264s /usr/lib/python3.13/unittest/mock.py:1230: StopIteration 1264s 1264s During handling of the above exception, another exception occurred: 1264s 1264s self = 1264s 1264s def test_device_credentials_workflow_manager_apply_sync(self): 1264s """ 1264s Test case for device credential workflow manager when applying a device credential to site devices. 1264s 1264s This test case checks the behavior of the device credential workflow manager when applying a device credential 1264s 1264s to site devices in the specified DNAC. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_version="2.3.7.6", 1264s dnac_log=True, 1264s state="merged", 1264s config=self.playbook_config_apply 1264s ) 1264s ) 1264s > result = self.execute_module(changed=True, failed=False) 1264s 1264s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:362: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1264s result = self.changed(changed) 1264s tests/unit/modules/dnac/dnac_module.py:133: in changed 1264s self.module.main() 1264s plugins/modules/device_credential_workflow_manager.py:3277: in main 1264s ccc_credential.get_diff_state_apply[state](config).check_return_status() 1264s plugins/modules/device_credential_workflow_manager.py:2983: in get_diff_merged 1264s self.apply_credentials_to_site().check_return_status() 1264s plugins/modules/device_credential_workflow_manager.py:2936: in apply_credentials_to_site 1264s self.check_tasks_response_status(response, 1264s plugins/module_utils/dnac.py:1730: in check_tasks_response_status 1264s task_details = self.get_tasks_by_id(task_id) 1264s plugins/module_utils/dnac.py:1684: in get_tasks_by_id 1264s self.fail_and_exit(self.msg) 1264s plugins/module_utils/dnac.py:1787: in fail_and_exit 1264s self.check_return_status() 1264s plugins/module_utils/dnac.py:307: in check_return_status 1264s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s def fail_json(*args, **kwargs): 1264s kwargs["failed"] = True 1264s > raise AnsibleFailJson(kwargs) 1264s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .", 'response': "An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .", 'failed': True} 1264s 1264s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1264s ------------------------------ Captured log call ------------------------------- 1264s ERROR logger:dnac.py:294 DeviceCredential: set_operation_result: 1780: An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1264s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_delete_a_device _ 1264s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_inventory_workflow_manager_playbook_delete_a_device(self): 1264s """ 1264s Test case for add device with full crendentials. 1264s 1264s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s dnac_version="2.3.7.6", 1264s state="deleted", 1264s config_verify=True, 1264s config=self.playbook_delete_a_device 1264s ) 1264s ) 1264s > result = self.execute_module(changed=True, failed=False) 1264s 1264s tests/unit/modules/dnac/test_inventory_workflow_manager.py:329: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1264s result = self.changed(changed) 1264s tests/unit/modules/dnac/dnac_module.py:133: in changed 1264s self.module.main() 1264s plugins/modules/inventory_workflow_manager.py:4197: in main 1264s ccc_device.get_diff_state_apply[state](config).check_return_status() 1264s plugins/modules/inventory_workflow_manager.py:3668: in get_diff_deleted 1264s self.handle_device_deletion(device_ip) 1264s plugins/modules/inventory_workflow_manager.py:3857: in handle_device_deletion 1264s self.check_tasks_response_status(response, api_name='deleted_device_by_id') 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s def check_tasks_response_status(self, response, api_name): 1264s """ 1264s Get the task response status from taskId 1264s Args: 1264s self: The current object details. 1264s response (dict): API response. 1264s api_name (str): API name. 1264s Returns: 1264s self (object): The current object with updated desired Fabric Transits information. 1264s Description: 1264s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE' 1264s state or till it reaches the maximum timeout. 1264s Log the task details and return self. 1264s """ 1264s 1264s if not response: 1264s self.msg = "response is empty" 1264s self.status = "exited" 1264s return self 1264s 1264s if not isinstance(response, dict): 1264s self.msg = "response is not a dictionary" 1264s self.status = "exited" 1264s return self 1264s 1264s task_info = response.get("response") 1264s if task_info.get("errorcode") is not None: 1264s self.msg = response.get("response").get("detail") 1264s self.status = "failed" 1264s return self 1264s 1264s task_id = task_info.get("taskId") 1264s start_time = time.time() 1264s while True: 1264s elapsed_time = time.time() - start_time 1264s if elapsed_time >= self.max_timeout: 1264s self.msg = "Max timeout of {0} sec has reached for the task id '{1}'. " \ 1264s .format(self.max_timeout, task_id) + \ 1264s "Exiting the loop due to unexpected API '{0}' status.".format(api_name) 1264s self.log(self.msg, "WARNING") 1264s self.status = "failed" 1264s break 1264s 1264s task_details = self.get_tasks_by_id(task_id) 1264s self.log('Getting tasks details from task ID {0}: {1}' 1264s .format(task_id, task_details), "DEBUG") 1264s 1264s > task_status = task_details.get("status") 1264s E AttributeError: 'list' object has no attribute 'get' 1264s 1264s plugins/module_utils/dnac.py:1734: AttributeError 1264s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_provision_failed_for_site _ 1264s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_inventory_workflow_manager_playbook_provision_failed_for_site(self): 1264s """ 1264s Test case for add device with full crendentials. 1264s 1264s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s state="merged", 1264s config_verify=True, 1264s config=self.playbook_provision_failed_for_site 1264s ) 1264s ) 1264s result = self.execute_module(changed=False, failed=True) 1264s print(result) 1264s > self.assertEqual( 1264s result.get('msg'), 1264s "Wired Device Provisioning failed for all devices" 1264s ) 1264s E AssertionError: "An exception occurred while retrieving S[136 chars]able" != 'Wired Device Provisioning failed for all devices' 1264s E - An exception occurred while retrieving Site details for Site 'Global/Chennai/LTTS/FLOOR1' does not exist in the Cisco Catalyst Center. Error: 'NoneType' object is not subscriptable 1264s E + Wired Device Provisioning failed for all devices 1264s 1264s tests/unit/modules/dnac/test_inventory_workflow_manager.py:380: AssertionError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s {'msg': "An exception occurred while retrieving Site details for Site 'Global/Chennai/LTTS/FLOOR1' does not exist in the Cisco Catalyst Center. Error: 'NoneType' object is not subscriptable", 'response': "An exception occurred while retrieving Site details for Site 'Global/Chennai/LTTS/FLOOR1' does not exist in the Cisco Catalyst Center. Error: 'NoneType' object is not subscriptable", 'failed': True} 1264s ------------------------------ Captured log call ------------------------------- 1264s ERROR logger:dnac.py:294 Inventory: set_operation_result: 1780: An exception occurred while retrieving Site details for Site 'Global/Chennai/LTTS/FLOOR1' does not exist in the Cisco Catalyst Center. Error: 'NoneType' object is not subscriptable 1264s ____________ TestNetworkCompliance.test_run_compliance_with_iplist _____________ 1264s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_run_compliance_with_iplist(self): 1264s 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=False, 1264s dnac_log_level="DEBUG", 1264s dnac_log_append=False, 1264s state="merged", 1264s config=self.test_data.get("playbook_config_run_compliance_iplist") 1264s ) 1264s ) 1264s > result = self.execute_module(changed=True, failed=False) 1264s 1264s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:349: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1264s result = self.changed(changed) 1264s tests/unit/modules/dnac/dnac_module.py:133: in changed 1264s self.module.main() 1264s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1264s ccc_network_compliance.get_want(config).check_return_status() 1264s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1264s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1264s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list 1264s self.fail_and_exit(self.msg) 1264s plugins/module_utils/dnac.py:1787: in fail_and_exit 1264s self.check_return_status() 1264s plugins/module_utils/dnac.py:307: in check_return_status 1264s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s def fail_json(*args, **kwargs): 1264s kwargs["failed"] = True 1264s > raise AnsibleFailJson(kwargs) 1264s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs).", 'response': "No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs).", 'failed': True} 1264s 1264s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1264s ----------------------------- Captured stdout call ----------------------------- 1264s Inside load_fixtures 1264s Mock for DNACSDK._exec: 1264s Inside load_fixtures 1264s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_task_error_update_accesspoint _ 1264s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_accesspoint_workflow_manager_task_error_update_accesspoint(self): 1264s """ 1264s Test case for access point workfollow manager and negative test verify ap update. 1264s 1264s This test case checks the behavior of the nagative test case of update in the specified Cisco Catalyst Center. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s state="merged", 1264s config_verify=True, 1264s dnac_version="2.3.7.6", 1264s config=self.playbook_config 1264s ) 1264s ) 1264s result = self.execute_module(changed=False, failed=True) 1264s > self.assertEqual( 1264s result.get('msg'), 1264s "Unable to get success response, hence AP config not updated" 1264s ) 1264s E AssertionError: "An error occurred while executing API ca[74 chars]n: ." != 'Unable to get success response, hence AP[15 chars]ated' 1264s E - An error occurred while executing API call to Function: 'get_task_details_by_id' due to the the following exception: . 1264s E + Unable to get success response, hence AP config not updated 1264s 1264s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:326: AssertionError 1264s ------------------------------ Captured log call ------------------------------- 1264s WARNING logger:dnac.py:294 Accesspoint: update_ap_configuration: 3501: No AP name or MAC address found in ap_config. 1264s 1264s ERROR logger:dnac.py:294 Accesspoint: set_operation_result: 1780: An error occurred while executing API call to Function: 'get_task_details_by_id' due to the the following exception: . 1264s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_add_existing_devices _ 1264s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_inventory_workflow_manager_playbook_add_existing_devices(self): 1264s """ 1264s Test case for add device with full crendentials. 1264s 1264s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s dnac_version="2.3.5.3", 1264s state="merged", 1264s config_verify=True, 1264s config=self.playbook_add_existing_devices 1264s ) 1264s ) 1264s result = self.execute_module(changed=False, failed=False) 1264s print(result) 1264s > self.assertEqual( 1264s result.get('msg'), 1264s "device(s) '70.2.2.2', '80.2.2.2' already present in Cisco Catalyst Center." 1264s ) 1264s E AssertionError: 'No changes were made. No inventory actio[39 chars]ter.' != "device(s) '70.2.2.2', '80.2.2.2' already[30 chars]ter." 1264s E - No changes were made. No inventory actions were performed in Cisco Catalyst Center. 1264s E + device(s) '70.2.2.2', '80.2.2.2' already present in Cisco Catalyst Center. 1264s 1264s tests/unit/modules/dnac/test_inventory_workflow_manager.py:282: AssertionError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s {'changed': False, 'diff': [], 'response': 'No changes were made. No inventory actions were performed in Cisco Catalyst Center.', 'warnings': [], 'msg': 'No changes were made. No inventory actions were performed in Cisco Catalyst Center.'} 1264s ------------------------------ Captured log call ------------------------------- 1264s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3566: self.config 1264s 1264s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3567: {'cli_transport': 'ssh', 'compute_device': False, 'enable_password': 'Test@1234', 'extended_discovery_info': 'test', 'http_password': 'test', 'http_port': '443', 'http_secure': False, 'http_username': 'testuser', 'ip_address_list': ['70.2.2.2', '80.2.2.2'], 'netconf_port': 830, 'password': 'Test@123', 'snmp_auth_passphrase': 'Lablab@12', 'snmp_auth_protocol': 'SHA', 'snmp_mode': 'AUTHPRIV', 'snmp_priv_passphrase': 'Lablab@123', 'snmp_priv_protocol': 'AES256', 'snmp_retry': 3, 'snmp_timeout': 5, 'snmp_username': 'v3Public', 'snmp_version': 'v3', 'type': 'NETWORK_DEVICE', 'username': 'cisco'} 1264s 1264s WARNING logger:dnac.py:294 Inventory: verify_diff_merged: 3882: verify starts here verify diff merged 1264s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_3 ________ 1264s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_run_compliance_with_iplist_failure_3(self): 1264s 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s dnac_log_level="DEBUG", 1264s dnac_log_append=False, 1264s state="merged", 1264s config=self.test_data.get("playbook_config_run_compliance_iplist") 1264s ) 1264s ) 1264s result = self.execute_module(changed=False, failed=True) 1264s > self.assertEqual( 1264s "An error occurred while retrieving the task_id of the run_compliance operation.", 1264s result.get('msg') 1264s ) 1264s E AssertionError: 'An error occurred while retrieving the t[35 chars]ion.' != "No device UUIDs were fetched for network[153 chars]Ps)." 1264s E - An error occurred while retrieving the task_id of the run_compliance operation. 1264s E + No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs). 1264s 1264s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:584: AssertionError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s Inside load_fixtures 1264s Mock for DNACSDK._exec: 1264s Inside load_fixtures 1264s ------------------------------ Captured log call ------------------------------- 1264s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 116: Cisco Catalyst Center parameters: {'dnac_host': '1.1.1.1', 'dnac_port': '443', 'dnac_username': 'dummy', 'dnac_password': 'dummy', 'dnac_version': '2.2.3.3', 'dnac_verify': True, 'dnac_debug': False, 'dnac_log': True, 'dnac_log_level': 'DEBUG', 'dnac_log_file_path': 'dnac.log', 'dnac_log_append': False} 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_input: 422: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': True, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': False}] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1663 status: success, msg: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': True, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': False}] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 532: Validating the provided configuration: {'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': True, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': False} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_params: 538: Extracted parameters - IP Address List: ['192.168.0.0'], Site Name: None, Run Compliance: True, Run Compliance Categories: None, Sync Device Config: False 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None' 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1264s 1264s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 484: Validating if any network compliance operation is requested: run_compliance=True, run_compliance_categories=None, sync_device_config=False 1264s 1264s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 556: Validation completed for configuration: {'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': True, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': False} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 809: Entering get_device_id_list with args: ip_address_list=['192.168.0.0'], site_name=None 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 677: Entering get_device_list_params method with ip_address_list: ['192.168.0.0'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 697: Entering 'get_device_ids_from_ip' method with parameters: {'management_ip_address': ['192.168.0.0']} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 1: {'response': [{'reachabilityStatus': 'Reachable', 'family': 'Switches and Hubs', 'managementIpAddress': '192.168.0.0', 'instanceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'id': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'}]} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: 192.168.0.0, Reachability: Reachable, Collection Status: None, Family: Switches and Hubs 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device 192.168.0.0 as its status is Reachable or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 501: {'response': [{'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'IMAGE', 'status': 'COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1721042297620, 'lastUpdateTime': 1721061010296, 'sourceInfoList': [], 'additionalDataURL': '/api/v2/device-image/device?id=92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'ackStatus': 'UNACKNOWLEDGED'}, {'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'EOX', 'status': 'NOT_APPLICABLE', 'state': 'SUCCESS', 'lastSyncTime': 1721042297708, 'lastUpdateTime': 1721061010419, 'sourceInfoList': [], 'message': 'EOX status not available.', 'ackStatus': 'UNACKNOWLEDGED'}, {'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'NETWORK_SETTINGS', 'status': 'NOT_APPLICABLE', 'state': 'SUCCESS', 'lastSyncTime': 1721042297420, 'lastUpdateTime': 1721061010438, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}, {'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'PSIRT', 'status': 'COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1721042297733, 'lastUpdateTime': 1721061010335, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}, {'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'RUNNING_CONFIG', 'status': 'COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1721042299163, 'lastUpdateTime': 1721061010242, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}], 'version': '1.0', 'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 788: Error fetching device IDs from Cisco Catalyst Center. Error details: Simulated exception 1264s 1264s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1264s 1264s ERROR logger:dnac.py:294 NetworkCompliance: set_operation_result: 1780: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs). 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1787 status: failed, msg: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs). 1264s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_1 _________ 1264s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_run_compliance_with_site_failure_1(self): 1264s 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=False, 1264s dnac_log_level="DEBUG", 1264s dnac_log_append=False, 1264s state="merged", 1264s config=self.test_data.get("playbook_config_run_compliance_site") 1264s ) 1264s ) 1264s result = self.execute_module(changed=False, failed=True) 1264s > self.assertIn( 1264s "An error occurred while retrieving site details for Site 'Global'. Please verify that the site exists.", 1264s result.get('msg') 1264s ) 1264s E AssertionError: "An error occurred while retrieving site details for Site 'Global'. Please verify that the site exists." not found in 'An exception occurred while retrieving Site details for Site \'Global\' does not exist in the Cisco Catalyst Center. Error: {\'msg\': "An error occurred while executing GET API call to Function: \'get_site\' from Family: \'sites\'. Parameters: {\'name\': \'Global\'}. Exception: Simulated exception.", \'response\': "An error occurred while executing GET API call to Function: \'get_site\' from Family: \'sites\'. Parameters: {\'name\': \'Global\'}. Exception: Simulated exception.", \'failed\': True}' 1264s 1264s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:647: AssertionError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s Inside load_fixtures 1264s Mock for DNACSDK._exec: 1264s Inside load_fixtures 1264s ___________ TestDnacAccesspointWorkflow.test_invalid_get_site_device ___________ 1264s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_invalid_get_site_device(self): 1264s """ 1264s Test case for access point workfollow manager get device details from site 1264s 1264s This test case checks the behavior of the access point workflow when check the devices in the site on the specified Cisco Catalyst Center. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s state="merged", 1264s dnac_version="2.3.7.6", 1264s config=self.get_membership_empty 1264s ) 1264s ) 1264s result = self.execute_module(changed=False, failed=True) 1264s print(result) 1264s > self.assertEqual( 1264s result.get('msg'), 1264s "Required param of mac_address,ip_address or hostname is not in playbook config" 1264s ) 1264s E AssertionError: 'Successfully validated playbook config pa[1253 chars]}\n]' != 'Required param of mac_address,ip_address [33 chars]nfig' 1264s E Diff is 1423 characters long. Set self.maxDiff to None to see it. 1264s 1264s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:399: AssertionError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s {'msg': 'Successfully validated playbook config params:[\n {\n "mac_address": null,\n "management_ip_address": null,\n "hostname": null,\n "rf_profile": null,\n "site": {\n "response": [],\n "version": "1.0",\n "message": "Site does not have childrens."\n },\n "type": null,\n "ap_name": null,\n "admin_status": null,\n "led_status": null,\n "led_brightness_level": null,\n "ap_mode": null,\n "location": null,\n "is_assigned_site_as_location": null,\n "failover_priority": null,\n "primary_controller_name": null,\n "primary_ip_address": null,\n "secondary_controller_name": null,\n "secondary_ip_address": null,\n "tertiary_controller_name": null,\n "tertiary_ip_address": null,\n "clean_air_si_2.4ghz": null,\n "clean_air_si_5ghz": null,\n "clean_air_si_6ghz": null,\n "2.4ghz_radio": null,\n "5ghz_radio": null,\n "6ghz_radio": null,\n "xor_radio": null,\n "tri_radio": null,\n "reboot_aps": null,\n "factory_reset_aps": null,\n "bulk_update_aps": null,\n "ap_selected_fields": null,\n "ap_config_selected_fields": null\n }\n]', 'response': 'Required param of mac_address,ip_address or hostname is not in playbook config', 'failed': True} 1264s ------------------------------ Captured log call ------------------------------- 1264s WARNING logger:dnac.py:294 Accesspoint: get_accesspoint_details: 2688: Required param of mac_address,ip_address or hostname is not in playbook config 1264s 1264s ERROR logger:dnac.py:294 Accesspoint: set_operation_result: 1780: Required param of mac_address,ip_address or hostname is not in playbook config 1264s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_1 ________ 1264s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_run_compliance_with_iplist_failure_1(self): 1264s 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=False, 1264s dnac_log_level="DEBUG", 1264s dnac_log_append=False, 1264s state="merged", 1264s config=self.test_data.get("playbook_config_run_compliance_iplist") 1264s ) 1264s ) 1264s > result = self.execute_module(changed=False, failed=False) 1264s 1264s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:541: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1264s result = self.changed(changed) 1264s tests/unit/modules/dnac/dnac_module.py:133: in changed 1264s self.module.main() 1264s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1264s ccc_network_compliance.get_want(config).check_return_status() 1264s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1264s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1264s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list 1264s self.fail_and_exit(self.msg) 1264s plugins/module_utils/dnac.py:1787: in fail_and_exit 1264s self.check_return_status() 1264s plugins/module_utils/dnac.py:307: in check_return_status 1264s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s def fail_json(*args, **kwargs): 1264s kwargs["failed"] = True 1264s > raise AnsibleFailJson(kwargs) 1264s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs).", 'response': "No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs).", 'failed': True} 1264s 1264s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1264s ----------------------------- Captured stdout call ----------------------------- 1264s Inside load_fixtures 1264s Mock for DNACSDK._exec: 1264s Inside load_fixtures 1264s _____________ TestDnacAccesspointWorkflow.test_invalid_site_exists _____________ 1264s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_invalid_site_exists(self): 1264s """ 1264s Test case for access point workfollow manager check site exists. 1264s 1264s This test case checks the behavior of the access point workflow when site exist in the specified Cisco Catalyst Center. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s state="merged", 1264s dnac_version="2.3.7.6", 1264s config=self.playbook_config_provision 1264s ) 1264s ) 1264s result = self.execute_module(changed=False, failed=True) 1264s print(result) 1264s > self.assertEqual( 1264s result.get('msg'), 1264s "MAC Address is not Access point" 1264s ) 1264s E AssertionError: 'Provided device is not Access Point.' != 'MAC Address is not Access point' 1264s E - Provided device is not Access Point. 1264s E + MAC Address is not Access point 1264s 1264s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:350: AssertionError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s {'msg': 'Provided device is not Access Point.', 'response': 'Provided device is not Access Point.', 'failed': True} 1264s ------------------------------ Captured log call ------------------------------- 1264s ERROR logger:dnac.py:294 Accesspoint: set_operation_result: 1780: Provided device is not Access Point. 1264s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_delete_device_udf _ 1264s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_inventory_workflow_manager_playbook_delete_device_udf(self): 1264s """ 1264s Test case for add device with full crendentials. 1264s 1264s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s dnac_version="2.3.7.6", 1264s state="deleted", 1264s config_verify=True, 1264s config=self.playbook_delete_device_udf 1264s ) 1264s ) 1264s > result = self.execute_module(changed=True, failed=False) 1264s 1264s tests/unit/modules/dnac/test_inventory_workflow_manager.py:478: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1264s result = self.changed(changed) 1264s tests/unit/modules/dnac/dnac_module.py:133: in changed 1264s self.module.main() 1264s plugins/modules/inventory_workflow_manager.py:4197: in main 1264s ccc_device.get_diff_state_apply[state](config).check_return_status() 1264s plugins/modules/inventory_workflow_manager.py:3668: in get_diff_deleted 1264s self.handle_device_deletion(device_ip) 1264s plugins/modules/inventory_workflow_manager.py:3857: in handle_device_deletion 1264s self.check_tasks_response_status(response, api_name='deleted_device_by_id') 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s def check_tasks_response_status(self, response, api_name): 1264s """ 1264s Get the task response status from taskId 1264s Args: 1264s self: The current object details. 1264s response (dict): API response. 1264s api_name (str): API name. 1264s Returns: 1264s self (object): The current object with updated desired Fabric Transits information. 1264s Description: 1264s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE' 1264s state or till it reaches the maximum timeout. 1264s Log the task details and return self. 1264s """ 1264s 1264s if not response: 1264s self.msg = "response is empty" 1264s self.status = "exited" 1264s return self 1264s 1264s if not isinstance(response, dict): 1264s self.msg = "response is not a dictionary" 1264s self.status = "exited" 1264s return self 1264s 1264s task_info = response.get("response") 1264s if task_info.get("errorcode") is not None: 1264s self.msg = response.get("response").get("detail") 1264s self.status = "failed" 1264s return self 1264s 1264s task_id = task_info.get("taskId") 1264s start_time = time.time() 1264s while True: 1264s elapsed_time = time.time() - start_time 1264s if elapsed_time >= self.max_timeout: 1264s self.msg = "Max timeout of {0} sec has reached for the task id '{1}'. " \ 1264s .format(self.max_timeout, task_id) + \ 1264s "Exiting the loop due to unexpected API '{0}' status.".format(api_name) 1264s self.log(self.msg, "WARNING") 1264s self.status = "failed" 1264s break 1264s 1264s task_details = self.get_tasks_by_id(task_id) 1264s self.log('Getting tasks details from task ID {0}: {1}' 1264s .format(task_id, task_details), "DEBUG") 1264s 1264s > task_status = task_details.get("status") 1264s E AttributeError: 'list' object has no attribute 'get' 1264s 1264s plugins/module_utils/dnac.py:1734: AttributeError 1264s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_provision_device _ 1264s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_accesspoint_workflow_manager_provision_device(self): 1264s """ 1264s Test case for access point workfollow manager provision and update device. 1264s 1264s This test case checks the behavior of the access point workflow when provisioned in the specified Cisco Catalyst Center. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s state="merged", 1264s dnac_version="2.3.7.6", 1264s config_verify=True, 1264s config=self.playbook_config_complete 1264s ) 1264s ) 1264s > result = self.execute_module(changed=True, failed=False) 1264s 1264s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:145: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1264s result = self.changed(changed) 1264s tests/unit/modules/dnac/dnac_module.py:133: in changed 1264s self.module.main() 1264s plugins/modules/accesspoint_workflow_manager.py:4190: in main 1264s ccc_network.get_diff_state_apply[state](config).check_return_status() 1264s plugins/modules/accesspoint_workflow_manager.py:1894: in get_diff_merged 1264s self.validate_ap_config_parameters(ap_config).check_return_status() 1264s plugins/module_utils/dnac.py:307: in check_return_status 1264s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s def fail_json(*args, **kwargs): 1264s kwargs["failed"] = True 1264s > raise AnsibleFailJson(kwargs) 1264s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "Invalid parameters in playbook config: '['channel_width is not applicable for the 2.4GHz radio']' ", 'response': [], 'failed': True} 1264s 1264s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1264s ------------------------------ Captured log call ------------------------------- 1264s ERROR logger:dnac.py:294 Accesspoint: validate_ap_config_parameters: 2373: Invalid parameters in playbook config: '['channel_width is not applicable for the 2.4GHz radio']' 1264s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_4 ________ 1264s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_run_compliance_with_iplist_failure_4(self): 1264s 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s dnac_log_level="DEBUG", 1264s dnac_log_append=False, 1264s state="merged", 1264s config=self.test_data.get("playbook_config_run_compliance_iplist") 1264s ) 1264s ) 1264s result = self.execute_module(changed=False, failed=True) 1264s > self.assertIn( 1264s "Error occurred while retrieving 'get_task_by_id' for Task Run Compliance Check with Task id", 1264s result.get('msg') 1264s ) 1264s E AssertionError: "Error occurred while retrieving 'get_task_by_id' for Task Run Compliance Check with Task id" not found in "No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs)." 1264s 1264s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:605: AssertionError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s Inside load_fixtures 1264s Mock for DNACSDK._exec: 1264s Inside load_fixtures 1264s ------------------------------ Captured log call ------------------------------- 1264s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 116: Cisco Catalyst Center parameters: {'dnac_host': '1.1.1.1', 'dnac_port': '443', 'dnac_username': 'dummy', 'dnac_password': 'dummy', 'dnac_version': '2.2.3.3', 'dnac_verify': True, 'dnac_debug': False, 'dnac_log': True, 'dnac_log_level': 'DEBUG', 'dnac_log_file_path': 'dnac.log', 'dnac_log_append': False} 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_input: 422: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': True, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': False}] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1663 status: success, msg: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': True, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': False}] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 532: Validating the provided configuration: {'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': True, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': False} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_params: 538: Extracted parameters - IP Address List: ['192.168.0.0'], Site Name: None, Run Compliance: True, Run Compliance Categories: None, Sync Device Config: False 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None' 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1264s 1264s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 484: Validating if any network compliance operation is requested: run_compliance=True, run_compliance_categories=None, sync_device_config=False 1264s 1264s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 556: Validation completed for configuration: {'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': True, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': False} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 809: Entering get_device_id_list with args: ip_address_list=['192.168.0.0'], site_name=None 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 677: Entering get_device_list_params method with ip_address_list: ['192.168.0.0'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 697: Entering 'get_device_ids_from_ip' method with parameters: {'management_ip_address': ['192.168.0.0']} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 1: {'response': [{'reachabilityStatus': 'Reachable', 'family': 'Switches and Hubs', 'managementIpAddress': '192.168.0.0', 'instanceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'id': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'}]} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: 192.168.0.0, Reachability: Reachable, Collection Status: None, Family: Switches and Hubs 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device 192.168.0.0 as its status is Reachable or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 501: {'response': [{'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'IMAGE', 'status': 'COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1721042297620, 'lastUpdateTime': 1721061010296, 'sourceInfoList': [], 'additionalDataURL': '/api/v2/device-image/device?id=92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'ackStatus': 'UNACKNOWLEDGED'}, {'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'EOX', 'status': 'NOT_APPLICABLE', 'state': 'SUCCESS', 'lastSyncTime': 1721042297708, 'lastUpdateTime': 1721061010419, 'sourceInfoList': [], 'message': 'EOX status not available.', 'ackStatus': 'UNACKNOWLEDGED'}, {'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'NETWORK_SETTINGS', 'status': 'NOT_APPLICABLE', 'state': 'SUCCESS', 'lastSyncTime': 1721042297420, 'lastUpdateTime': 1721061010438, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}, {'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'PSIRT', 'status': 'COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1721042297733, 'lastUpdateTime': 1721061010335, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}, {'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'RUNNING_CONFIG', 'status': 'COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1721042299163, 'lastUpdateTime': 1721061010242, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}], 'version': '1.0', 'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 1001: {'response': {'taskId': '34629bf3-c191-404d-b5b7-3e445d25457b', 'url': '/api/v1/task/34629bf3-c191-404d-b5b7-3e445d25457b'}, 'version': '1.0'} 1264s 1264s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 788: Error fetching device IDs from Cisco Catalyst Center. Error details: 'str' object has no attribute 'get' 1264s 1264s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1264s 1264s ERROR logger:dnac.py:294 NetworkCompliance: set_operation_result: 1780: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs). 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1787 status: failed, msg: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs). 1264s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_2 _________ 1264s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s def execute_get_request(self, api_family, api_function, api_parameters): 1264s """ 1264s Makes a GET API call to the specified function within a given family and returns the response. 1264s Args: 1264s api_family (str): The family of the API to call. 1264s api_function (str): The specific function of the API to call. 1264s api_parameters (dict): Parameters to pass to the API call. 1264s Returns: 1264s dict or None: The response from the API call if successful, otherwise None. 1264s Logs detailed information about the API call, including responses and errors. 1264s """ 1264s self.log( 1264s "Initiating GET API call for Function: {0} from Family: {1} with Parameters: {2}.".format( 1264s api_function, api_family, api_parameters 1264s ), 1264s "DEBUG" 1264s ) 1264s try: 1264s # Execute the API call 1264s > response = self.dnac._exec( 1264s family=api_family, 1264s function=api_function, 1264s op_modifies=False, 1264s params=api_parameters, 1264s ) 1264s 1264s plugins/module_utils/dnac.py:1840: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s /usr/lib/python3.13/unittest/mock.py:1169: in __call__ 1264s return self._mock_call(*args, **kwargs) 1264s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call 1264s return self._execute_mock_call(*args, **kwargs) 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s self = , args = () 1264s kwargs = {'family': 'sites', 'function': 'get_membership', 'op_modifies': False, 'params': {'site_id': '3cf15665-7b7b-4b29-82a9-75b8d094b602'}} 1264s effect = 1264s result = Exception('Simulated exception') 1264s 1264s def _execute_mock_call(self, /, *args, **kwargs): 1264s # separate from _increment_mock_call so that awaited functions are 1264s # executed separately from their call, also AsyncMock overrides this method 1264s 1264s effect = self.side_effect 1264s if effect is not None: 1264s if _is_exception(effect): 1264s raise effect 1264s elif not _callable(effect): 1264s result = next(effect) 1264s if _is_exception(result): 1264s > raise result 1264s E Exception: Simulated exception 1264s 1264s /usr/lib/python3.13/unittest/mock.py:1232: Exception 1264s 1264s During handling of the above exception, another exception occurred: 1264s 1264s self = 1264s 1264s def test_run_compliance_with_site_failure_2(self): 1264s 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=False, 1264s dnac_log_level="DEBUG", 1264s dnac_log_append=False, 1264s state="merged", 1264s config=self.test_data.get("playbook_config_run_compliance_site") 1264s ) 1264s ) 1264s > result = self.execute_module(changed=False, failed=False) 1264s 1264s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:667: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1264s result = self.changed(changed) 1264s tests/unit/modules/dnac/dnac_module.py:133: in changed 1264s self.module.main() 1264s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1264s ccc_network_compliance.get_want(config).check_return_status() 1264s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1264s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1264s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list 1264s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name) 1264s plugins/module_utils/dnac.py:762: in get_reachable_devices_from_site 1264s device_details_list = self.get_device_details_from_site(site_name, site_id) 1264s plugins/module_utils/dnac.py:716: in get_device_details_from_site 1264s api_response, device_ids = self.get_device_ids_from_site(site_name, site_id) 1264s plugins/module_utils/dnac.py:666: in get_device_ids_from_site 1264s api_response = self.execute_get_request("sites", "get_membership", get_membership_params) 1264s plugins/module_utils/dnac.py:1882: in execute_get_request 1264s self.fail_and_exit(self.msg) 1264s plugins/module_utils/dnac.py:1787: in fail_and_exit 1264s self.check_return_status() 1264s plugins/module_utils/dnac.py:307: in check_return_status 1264s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s def fail_json(*args, **kwargs): 1264s kwargs["failed"] = True 1264s > raise AnsibleFailJson(kwargs) 1264s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "An error occurred while executing GET API call to Function: 'get_membership' from Family: 'sites'. Parameters: {'site_id': '3cf15665-7b7b-4b29-82a9-75b8d094b602'}. Exception: Simulated exception.", 'response': "An error occurred while executing GET API call to Function: 'get_membership' from Family: 'sites'. Parameters: {'site_id': '3cf15665-7b7b-4b29-82a9-75b8d094b602'}. Exception: Simulated exception.", 'failed': True} 1264s 1264s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1264s ----------------------------- Captured stdout call ----------------------------- 1264s Inside load_fixtures 1264s Mock for DNACSDK._exec: 1264s Inside load_fixtures 1264s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_delete_provisioned_device _ 1264s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_inventory_workflow_manager_playbook_delete_provisioned_device(self): 1264s """ 1264s Test case for add device with full crendentials. 1264s 1264s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s dnac_version="2.3.7.6", 1264s state="deleted", 1264s config_verify=True, 1264s config=self.playbook_delete_provisioned_device 1264s ) 1264s ) 1264s > result = self.execute_module(changed=True, failed=False) 1264s 1264s tests/unit/modules/dnac/test_inventory_workflow_manager.py:354: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1264s result = self.changed(changed) 1264s tests/unit/modules/dnac/dnac_module.py:133: in changed 1264s self.module.main() 1264s plugins/modules/inventory_workflow_manager.py:4197: in main 1264s ccc_device.get_diff_state_apply[state](config).check_return_status() 1264s plugins/modules/inventory_workflow_manager.py:3675: in get_diff_deleted 1264s self.delete_provisioned_device_v2(device_ip) 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s def delete_provisioned_device_v2(self, device_ip): 1264s """ 1264s Deletes provisioned devices for versions > 2.3.5.3. 1264s 1264s Parameters: 1264s device_ip (str): The IP address of the device to be deleted. 1264s 1264s Description: 1264s This method deletes a provisioned device with the specified IP address 1264s for software versions greater than 2.3.5.3. It ensures that the device 1264s is properly removed from the Cisco Catalyst Center, handling any 1264s required validations and API interactions. 1264s """ 1264s 1264s device_ids = self.get_device_ids([device_ip]) 1264s > device_id = device_ids[0] 1264s E IndexError: list index out of range 1264s 1264s plugins/modules/inventory_workflow_manager.py:3801: IndexError 1264s ------------------------------ Captured log call ------------------------------- 1264s ERROR logger:dnac.py:294 Inventory: get_device_ids: 2403: Error while fetching device '204.1.2.4' from Cisco Catalyst Center: 0 1264s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_3 _________ 1264s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_run_compliance_with_site_failure_3(self): 1264s 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=False, 1264s dnac_log_level="DEBUG", 1264s dnac_log_append=False, 1264s state="merged", 1264s config=self.test_data.get("playbook_config_run_compliance_site") 1264s ) 1264s ) 1264s result = self.execute_module(changed=False, failed=True) 1264s > self.assertIn( 1264s "An error occurred while retrieving Compliance Details for device:192.168.0.3 using 'compliance_details_of_device' API call", 1264s result.get('msg') 1264s ) 1264s E AssertionError: "An error occurred while retrieving Compliance Details for device:192.168.0.3 using 'compliance_details_of_device' API call" not found in "An error occurred while executing GET API call to Function: 'get_device_by_id' from Family: 'devices'. Parameters: {'id': 'f490e92f-490e-4bb1-9519-770b1dc604c4'}. Exception: Simulated exception." 1264s 1264s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:689: AssertionError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s Inside load_fixtures 1264s Mock for DNACSDK._exec: 1264s Inside load_fixtures 1264s ______________ TestNetworkCompliance.test_sync_device_config_site ______________ 1264s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_sync_device_config_site(self): 1264s 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s dnac_log_level="DEBUG", 1264s dnac_log_append=False, 1264s state="merged", 1264s config=self.test_data.get("playbook_config_sync_device_config_site") 1264s ) 1264s ) 1264s > result = self.execute_module(changed=True, failed=False) 1264s 1264s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:476: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1264s result = self.changed(changed) 1264s tests/unit/modules/dnac/dnac_module.py:133: in changed 1264s self.module.main() 1264s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1264s ccc_network_compliance.get_want(config).check_return_status() 1264s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1264s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1264s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list 1264s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name) 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s def get_reachable_devices_from_site(self, site_name): 1264s """ 1264s Retrieves a mapping of management IP addresses to instance IDs for reachable devices from a specified site. 1264s Args: 1264s site_id (str): The ID of the site from which to retrieve device details. 1264s Returns: 1264s tuple: A tuple containing: 1264s - dict: A mapping of management IP addresses to instance IDs for reachable devices. 1264s - list: A list of management IP addresses of skipped devices. 1264s """ 1264s mgmt_ip_to_instance_id_map = {} 1264s skipped_devices_list = [] 1264s 1264s (site_exists, site_id) = self.get_site_id(site_name) 1264s if not site_exists: 1264s self.msg = "Site '{0}' does not exist in the Cisco Catalyst Center, cannot proceed with device(s) retrieval.".format(site_name) 1264s self.fail_and_exit(self.msg) 1264s 1264s self.log("Initiating retrieval of device details for site ID: '{0}'.".format(site_id), "INFO") 1264s 1264s # Retrieve the list of device details from the specified site 1264s device_details_list = self.get_device_details_from_site(site_name, site_id) 1264s self.log("Device details retrieved for site ID: '{0}': {1}".format(site_id, device_details_list), "DEBUG") 1264s 1264s # Iterate through each device's details 1264s for device_info in device_details_list: 1264s > management_ip = device_info.get("managementIpAddress") 1264s E AttributeError: 'list' object has no attribute 'get' 1264s 1264s plugins/module_utils/dnac.py:767: AttributeError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s Inside load_fixtures 1264s Mock for DNACSDK._exec: 1264s Inside load_fixtures 1264s ------------------------------ Captured log call ------------------------------- 1264s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 116: Cisco Catalyst Center parameters: {'dnac_host': '1.1.1.1', 'dnac_port': '443', 'dnac_username': 'dummy', 'dnac_password': 'dummy', 'dnac_version': '2.2.3.3', 'dnac_verify': True, 'dnac_debug': False, 'dnac_log': True, 'dnac_log_level': 'DEBUG', 'dnac_log_file_path': 'dnac.log', 'dnac_log_append': False} 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_input: 422: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': None, 'site_name': 'Global', 'run_compliance': False, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': True}] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1663 status: success, msg: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': None, 'site_name': 'Global', 'run_compliance': False, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': True}] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 532: Validating the provided configuration: {'ip_address_list': None, 'site_name': 'Global', 'run_compliance': False, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': True} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_params: 538: Extracted parameters - IP Address List: None, Site Name: Global, Run Compliance: False, Run Compliance Categories: None, Sync Device Config: True 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': 'None' or 'site_name': 'Global' 1264s 1264s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 484: Validating if any network compliance operation is requested: run_compliance=False, run_compliance_categories=None, sync_device_config=True 1264s 1264s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 556: Validation completed for configuration: {'ip_address_list': None, 'site_name': 'Global', 'run_compliance': False, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': True} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 809: Entering get_device_id_list with args: ip_address_list=None, site_name=Global 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 823: Retrieving device IDs for site: Global 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 809: Initiating retrieval of site details for site name: 'Global'. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 813: Using 'get_site' API for Catalyst Center version: '2233'. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: execute_get_request: 1832: Initiating GET API call for Function: get_site from Family: sites with Parameters: {'name': 'Global'}. 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: execute_get_request: 1848: Response received from GET API call to Function: 'get_site' from Family: 'sites' is Response: {'response': [{'additionalInfo': [], 'name': 'Global', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'siteHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'siteNameHierarchy': 'Global'}]} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_site_id: 845: Site details retrieved for site 'Global'': {'response': [{'additionalInfo': [], 'name': 'Global', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'siteHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'siteNameHierarchy': 'Global'}]} 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 759: Initiating retrieval of device details for site ID: '3cf15665-7b7b-4b29-82a9-75b8d094b602'. 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 703: Initiating retrieval of device IDs for site ID: '3cf15665-7b7b-4b29-82a9-75b8d094b602'. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 660: Initiating retrieval of device IDs for site ID: '3cf15665-7b7b-4b29-82a9-75b8d094b602'. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 664: Using 'get_membership' API for Catalyst Center version: '2233'. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: execute_get_request: 1832: Initiating GET API call for Function: get_membership from Family: sites with Parameters: {'site_id': '3cf15665-7b7b-4b29-82a9-75b8d094b602'}. 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: execute_get_request: 1848: Response received from GET API call to Function: 'get_membership' from Family: 'sites' is Response: {'site': {'response': [{'parentId': '0c0aef1d-0ab9-4660-b216-649c4fe2b7a7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'address': 'Tokyo, Japan', 'addressInheritedFrom': '0c0aef1d-0ab9-4660-b216-649c4fe2b7a7', 'type': 'floor'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'anchorWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'tertiaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'primaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80143381-187c-48fa-a356-15389aad4e9c/9674054e-fd9e-49ed-8084-1ce9131d6781/0c0aef1d-0ab9-4660-b216-649c4fe2b7a7/c9c21b46-5956-4e6e-9dbf-49f3e6e55a66', 'groupNameHierarchy': 'Global/Japan/Tokyo/Ansible_Tower/Ansible_Floor', 'name': 'Ansible_Floor', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'c9c21b46-5956-4e6e-9dbf-49f3e6e55a66'}, {'parentId': '9674054e-fd9e-49ed-8084-1ce9131d6781', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'anchorWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'tertiaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'primaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c'}}, {'nameSpace': 'Location', 'attributes': {'country': 'Japan', 'address': 'Tokyo, Japan', 'latitude': '35.6764', 'addressInheritedFrom': '0c0aef1d-0ab9-4660-b216-649c4fe2b7a7', 'type': 'building', 'longitude': '139.65'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '1', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80143381-187c-48fa-a356-15389aad4e9c/9674054e-fd9e-49ed-8084-1ce9131d6781/0c0aef1d-0ab9-4660-b216-649c4fe2b7a7', 'groupNameHierarchy': 'Global/Japan/Tokyo/Ansible_Tower', 'name': 'Ansible_Tower', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '0c0aef1d-0ab9-4660-b216-649c4fe2b7a7'}, {'parentId': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '2', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'type': 'area'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'anchorWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'tertiaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'primaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/bf561bf3-95d6-4da1-bf49-26887955fa2e/eda30e7b-0e67-4879-85bd-cfc30b0d9765', 'groupNameHierarchy': 'Global/India/Bangalore', 'name': 'Bangalore', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'eda30e7b-0e67-4879-85bd-cfc30b0d9765'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '1', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/16244588-f6da-4ef7-b329-87eed13902be', 'groupNameHierarchy': 'Global/USA/BayAreaGuest', 'name': 'BayAreaGuest', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '16244588-f6da-4ef7-b329-87eed13902be'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '1', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/a83421d0-cfe5-4318-85ee-a991d2cdd748', 'groupNameHierarchy': 'Global/USA/BERKELEY', 'name': 'BERKELEY', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'a83421d0-cfe5-4318-85ee-a991d2cdd748'}, {'parentId': '3fbfb158-a429-41b3-a220-6a6286f93d16', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'Ev Chargers Bldg 10, 7200-10 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'latitude': '35.85992111421487', 'addressInheritedFrom': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'type': 'building', 'longitude': '-78.8829258991226'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '3', 'hasChild': 'TRUE', 'group.count.direct': '3', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'groupNameHierarchy': 'Global/USA/RTP/BLD10', 'name': 'BLD10', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a'}, {'parentId': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Ev Chargers Bldg 10, 7200-10 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'type': 'floor'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/dca266ec-80d9-4692-8782-1f1d3d7aed0a/0d64a127-ae63-46f8-9b76-9d7d1502c6d4', 'groupNameHierarchy': 'Global/USA/RTP/BLD10/BLD10_FLOOR1', 'name': 'BLD10_FLOOR1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '0d64a127-ae63-46f8-9b76-9d7d1502c6d4'}, {'parentId': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Ev Chargers Bldg 10, 7200-10 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'type': 'floor'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/dca266ec-80d9-4692-8782-1f1d3d7aed0a/f5c31c72-6d56-456b-aefb-d7cc942e5b04', 'groupNameHierarchy': 'Global/USA/RTP/BLD10/BLD10_FLOOR2', 'name': 'BLD10_FLOOR2', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'f5c31c72-6d56-456b-aefb-d7cc942e5b04'}, {'parentId': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Ev Chargers Bldg 10, 7200-10 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'type': 'floor'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/dca266ec-80d9-4692-8782-1f1d3d7aed0a/67966786-b701-4099-8e1a-4191534f36d2', 'groupNameHierarchy': 'Global/USA/RTP/BLD10/BLD10_FLOOR3', 'name': 'BLD10_FLOOR3', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '67966786-b701-4099-8e1a-4191534f36d2'}, {'parentId': '3fbfb158-a429-41b3-a220-6a6286f93d16', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'Cisco Systems, 7200 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'latitude': '35.86059627310624', 'addressInheritedFrom': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'type': 'building', 'longitude': '-78.88105620286412'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '3', 'hasChild': 'TRUE', 'group.count.direct': '3', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/89b128e0-3217-4f63-bf99-b202ec7c0103', 'groupNameHierarchy': 'Global/USA/RTP/BLD11', 'name': 'BLD11', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '89b128e0-3217-4f63-bf99-b202ec7c0103'}, {'parentId': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Cisco Systems, 7200 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'type': 'floor'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/89b128e0-3217-4f63-bf99-b202ec7c0103/16b5e550-d288-4e11-94a6-baaa8e3d9c08', 'groupNameHierarchy': 'Global/USA/RTP/BLD11/BLD11_FLOOR1', 'name': 'BLD11_FLOOR1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '16b5e550-d288-4e11-94a6-baaa8e3d9c08'}, {'parentId': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Cisco Systems, 7200 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'type': 'floor'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/89b128e0-3217-4f63-bf99-b202ec7c0103/8c57bcf3-b0e4-4f47-b45e-bbb9f32e2997', 'groupNameHierarchy': 'Global/USA/RTP/BLD11/BLD11_FLOOR2', 'name': 'BLD11_FLOOR2', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '8c57bcf3-b0e4-4f47-b45e-bbb9f32e2997'}, {'parentId': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Cisco Systems, 7200 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'type': 'floor'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/89b128e0-3217-4f63-bf99-b202ec7c0103/be5fd8eb-dda4-4f38-b5ce-35d1d49151cc', 'groupNameHierarchy': 'Global/USA/RTP/BLD11/BLD11_FLOOR3', 'name': 'BLD11_FLOOR3', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'be5fd8eb-dda4-4f38-b5ce-35d1d49151cc'}, {'parentId': '3fbfb158-a429-41b3-a220-6a6286f93d16', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '3', 'hasChild': 'TRUE', 'group.count.direct': '3', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'Cisco Systems, 7200-12 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'latitude': '35.8611847591779', 'addressInheritedFrom': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'type': 'building', 'longitude': '-78.88217248318003'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/4996f8ef-8933-412e-b58b-2238ba860ec7', 'groupNameHierarchy': 'Global/USA/RTP/BLD12', 'name': 'BLD12', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '4996f8ef-8933-412e-b58b-2238ba860ec7'}, {'parentId': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Cisco Systems, 7200-12 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'type': 'floor'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/4996f8ef-8933-412e-b58b-2238ba860ec7/d44f3eca-a3dc-4ed1-a020-0ded43c78056', 'groupNameHierarchy': 'Global/USA/RTP/BLD12/BLD12_FLOOR1', 'name': 'BLD12_FLOOR1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'd44f3eca-a3dc-4ed1-a020-0ded43c78056'}, {'parentId': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Cisco Systems, 7200-12 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'type': 'floor'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/4996f8ef-8933-412e-b58b-2238ba860ec7/fb5bbd30-3a01-4eaf-a24d-b0e75ff158c6', 'groupNameHierarchy': 'Global/USA/RTP/BLD12/BLD12_FLOOR2', 'name': 'BLD12_FLOOR2', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'fb5bbd30-3a01-4eaf-a24d-b0e75ff158c6'}, {'parentId': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Cisco Systems, 7200-12 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'type': 'floor'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/4996f8ef-8933-412e-b58b-2238ba860ec7/ea574cd8-fa45-48ab-9944-83ed33537416', 'groupNameHierarchy': 'Global/USA/RTP/BLD12/BLD12_FLOOR3', 'name': 'BLD12_FLOOR3', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'ea574cd8-fa45-48ab-9944-83ed33537416'}, {'parentId': '65eba291-ee04-43d2-bddb-a2cb2e7ff7d8', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': '725 Alder Drive, Milpitas, California 95035, United States', 'latitude': '37.415947', 'addressInheritedFrom': 'ed089cbf-3622-492f-bf60-5baf6d0b3708', 'type': 'building', 'longitude': '-121.916327'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '1', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/ed089cbf-3622-492f-bf60-5baf6d0b3708', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD20', 'name': 'BLD20', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'ed089cbf-3622-492f-bf60-5baf6d0b3708'}, {'parentId': 'ed089cbf-3622-492f-bf60-5baf6d0b3708', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'address': '725 Alder Drive, Milpitas, California 95035, United States', 'addressInheritedFrom': 'ed089cbf-3622-492f-bf60-5baf6d0b3708', 'type': 'floor'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/ed089cbf-3622-492f-bf60-5baf6d0b3708/47a127ae-92bd-49ec-aed0-aec8e2a31678', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD20/BLD20_FLOOR1', 'name': 'BLD20_FLOOR1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '47a127ae-92bd-49ec-aed0-aec8e2a31678'}, {'parentId': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'type': 'floor'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/36d3230c-c6ce-44ae-8901-3b4a624883e6/625bcb2d-4e4a-4571-80e9-c5d2caad4ecf', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD23/BLD20_FLOOR2', 'name': 'BLD20_FLOOR2', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '625bcb2d-4e4a-4571-80e9-c5d2caad4ecf'}, {'parentId': '65eba291-ee04-43d2-bddb-a2cb2e7ff7d8', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '5', 'hasChild': 'TRUE', 'group.count.direct': '5', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'latitude': '37.398188', 'addressInheritedFrom': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'type': 'building', 'longitude': '-121.912974'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/36d3230c-c6ce-44ae-8901-3b4a624883e6', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD23', 'name': 'BLD23', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '36d3230c-c6ce-44ae-8901-3b4a624883e6'}, {'parentId': 'a83421d0-cfe5-4318-85ee-a991d2cdd748', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': '725 Alder Drive, Milpitas, California 95035, United States', 'latitude': '37.415947', 'addressInheritedFrom': '8ff6aa1d-089f-41e2-8e42-5cad97770e7d', 'type': 'building', 'longitude': '-121.916327'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/a83421d0-cfe5-4318-85ee-a991d2cdd748/8ff6aa1d-089f-41e2-8e42-5cad97770e7d', 'groupNameHierarchy': 'Global/USA/BERKELEY/BLDBERK', 'name': 'BLDBERK', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '8ff6aa1d-089f-41e2-8e42-5cad97770e7d'}, {'parentId': '16244588-f6da-4ef7-b329-87eed13902be', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': '725 Alder Drive, Milpitas, California 95035, United States', 'latitude': '37.415947', 'addressInheritedFrom': 'fa666989-76fb-4aa1-8caf-ad9dc6d08ef7', 'type': 'building', 'longitude': '-121.916327'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/16244588-f6da-4ef7-b329-87eed13902be/fa666989-76fb-4aa1-8caf-ad9dc6d08ef7', 'groupNameHierarchy': 'Global/USA/BayAreaGuest/BLD_GB', 'name': 'BLD_GB', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'fa666989-76fb-4aa1-8caf-ad9dc6d08ef7'}, {'parentId': '21cc7dad-8c9e-4637-8f24-22ec417b9811', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'UMBRELLA', 'attributes': {'umbrellaReady': 'true', 'member.umbrellaNotReady.direct': '0', 'member.umbrellaReady.direct': '1', 'member.umbrellaReadyNotEnabled.direct': '1', 'member.umbrellaEnabled.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'latitude': '37.398188', 'addressInheritedFrom': '274da223-2411-4689-8f70-b5bbd8915020', 'type': 'building', 'longitude': '-121.912974'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '3', 'hasChild': 'TRUE', 'group.count.direct': '3', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '3', 'member.count.direct': '1'}}, {'nameSpace': 'ETA', 'attributes': {'member.compatibleWithNaasOnly.direct': '0', 'member.etaCapable.direct': '1', 'member.etaReady.direct': '1', 'member.etaEnabledNaasOnly.direct': '0', 'ETAReady': 'true', 'member.etaNotReady.direct': '0', 'member.etaReadyNotEnabled.direct': '1', 'member.etaEnabled.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/21cc7dad-8c9e-4637-8f24-22ec417b9811/274da223-2411-4689-8f70-b5bbd8915020', 'groupNameHierarchy': 'Global/USA/New York/BLDNYC', 'name': 'BLDNYC', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '274da223-2411-4689-8f70-b5bbd8915020'}, {'parentId': '4a03cd04-41bb-4e3c-9a59-3f96637c27e7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'latitude': '37.398188', 'addressInheritedFrom': 'b497a0ab-3ab4-42fd-8921-2f45af587b98', 'type': 'building', 'longitude': '-121.912974'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/4a03cd04-41bb-4e3c-9a59-3f96637c27e7/b497a0ab-3ab4-42fd-8921-2f45af587b98', 'groupNameHierarchy': 'Global/USA/SAN-FRANCISCO/BLD_SF', 'name': 'BLD_SF', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'b497a0ab-3ab4-42fd-8921-2f45af587b98'}, {'parentId': '4a03cd04-41bb-4e3c-9a59-3f96637c27e7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'latitude': '37.398188', 'addressInheritedFrom': 'ef6944e0-72be-4d1d-8e29-1ca1ebcf8d98', 'type': 'building', 'longitude': '-121.912974'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/4a03cd04-41bb-4e3c-9a59-3f96637c27e7/ef6944e0-72be-4d1d-8e29-1ca1ebcf8d98', 'groupNameHierarchy': 'Global/USA/SAN-FRANCISCO/BLD_SF1', 'name': 'BLD_SF1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'ef6944e0-72be-4d1d-8e29-1ca1ebcf8d98'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'anchorWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'tertiaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'primaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '2', 'hasChild': 'TRUE', 'group.count.direct': '2', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'type': 'area'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'groupNameHierarchy': 'Global/Chennai', 'name': 'Chennai', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '80be6b3f-2bb8-4711-ae59-f7a667eedb08'}, {'parentId': '6f4d01b1-d00c-4471-8aa2-28b7e99636ab', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': '1579 Hopkins Drive, San Jose, California 95122, United States', 'latitude': '37.338', 'addressInheritedFrom': '7010b0ed-ae2b-41bd-977a-79b1628dd1b7', 'type': 'building', 'longitude': '-121.832'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '1', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/6f4d01b1-d00c-4471-8aa2-28b7e99636ab/7010b0ed-ae2b-41bd-977a-79b1628dd1b7', 'groupNameHierarchy': 'Global/USA/Georgia/cisco', 'name': 'cisco', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '7010b0ed-ae2b-41bd-977a-79b1628dd1b7'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '94f61603-5f1f-4b26-85dd-59355cd67632', 'type': 'area'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '94f61603-5f1f-4b26-85dd-59355cd67632', 'anchorWlcInheritedFrom': '94f61603-5f1f-4b26-85dd-59355cd67632', 'tertiaryWlcInheritedFrom': '94f61603-5f1f-4b26-85dd-59355cd67632', 'primaryWlcInheritedFrom': '94f61603-5f1f-4b26-85dd-59355cd67632'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/94f61603-5f1f-4b26-85dd-59355cd67632', 'groupNameHierarchy': 'Global/Demo4', 'name': 'Demo4', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '94f61603-5f1f-4b26-85dd-59355cd67632'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '633a40de-b885-448c-bd84-dd1fef679fbe', 'anchorWlcInheritedFrom': '633a40de-b885-448c-bd84-dd1fef679fbe', 'tertiaryWlcInheritedFrom': '633a40de-b885-448c-bd84-dd1fef679fbe', 'primaryWlcInheritedFrom': '633a40de-b885-448c-bd84-dd1fef679fbe'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '633a40de-b885-448c-bd84-dd1fef679fbe', 'type': 'area'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/633a40de-b885-448c-bd84-dd1fef679fbe', 'groupNameHierarchy': 'Global/Demo5', 'name': 'Demo5', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '633a40de-b885-448c-bd84-dd1fef679fbe'}, {'parentId': 'caa9eb0d-618b-4d90-ac10-eb2a2d17e763', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'width': '200.0', 'length': '100.0', 'height': '10.0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'anchorWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'tertiaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'primaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': 'None', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'Location', 'attributes': {'country': 'India', 'address': 'Bengaluru, Karnataka, India', 'latitude': '0.0', 'addressInheritedFrom': 'caa9eb0d-618b-4d90-ac10-eb2a2d17e763', 'type': 'floor', 'longitude': '0.0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/bf561bf3-95d6-4da1-bf49-26887955fa2e/eda30e7b-0e67-4879-85bd-cfc30b0d9765/caa9eb0d-618b-4d90-ac10-eb2a2d17e763/e3c898bc-a0d5-47b9-83c6-a48a88fa6fbe', 'groupNameHierarchy': 'Global/India/Bangalore/Mantri Square/floor1', 'name': 'floor1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'e3c898bc-a0d5-47b9-83c6-a48a88fa6fbe'}, {'parentId': '274da223-2411-4689-8f70-b5bbd8915020', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '17301034-7715-4363-952f-3d290ea6ca59', 'primaryWlc': '778a27bb-d795-4fa3-a321-f2e693ebe1f4'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '2', 'member.count.direct': '2'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'UMBRELLA', 'attributes': {'umbrellaReady': 'true', 'member.umbrellaNotReady.direct': '0', 'member.umbrellaReady.direct': '1', 'member.umbrellaReadyNotEnabled.direct': '1', 'member.umbrellaEnabled.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '274da223-2411-4689-8f70-b5bbd8915020', 'type': 'floor'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/21cc7dad-8c9e-4637-8f24-22ec417b9811/274da223-2411-4689-8f70-b5bbd8915020/17301034-7715-4363-952f-3d290ea6ca59', 'groupNameHierarchy': 'Global/USA/New York/BLDNYC/FLOOR1', 'name': 'FLOOR1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '17301034-7715-4363-952f-3d290ea6ca59'}, {'parentId': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'type': 'floor'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/36d3230c-c6ce-44ae-8901-3b4a624883e6/8a7ddd03-dddb-4a76-a079-56c3b45ab1ec', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD23/FLOOR1_LEVEL1', 'name': 'FLOOR1_LEVEL1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '8a7ddd03-dddb-4a76-a079-56c3b45ab1ec'}, {'parentId': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'type': 'floor'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/36d3230c-c6ce-44ae-8901-3b4a624883e6/c45259ff-0612-4fe7-907c-5987877892d9', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD23/FLOOR1_LEVEL2', 'name': 'FLOOR1_LEVEL2', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'c45259ff-0612-4fe7-907c-5987877892d9'}, {'parentId': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'type': 'floor'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/36d3230c-c6ce-44ae-8901-3b4a624883e6/eb935311-f082-416e-a13c-08acdc6219c0', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD23/FLOOR1_LEVEL3', 'name': 'FLOOR1_LEVEL3', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'eb935311-f082-416e-a13c-08acdc6219c0'}, {'parentId': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'type': 'floor'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/36d3230c-c6ce-44ae-8901-3b4a624883e6/78b8a15c-c112-4941-b00b-ceda2edb38f2', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD23/FLOOR1_LEVEL4', 'name': 'FLOOR1_LEVEL4', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '78b8a15c-c112-4941-b00b-ceda2edb38f2'}, {'parentId': '274da223-2411-4689-8f70-b5bbd8915020', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '212be018-cfb6-4041-9caa-d344385848b7', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'secondaryWlc': '778a27bb-d795-4fa3-a321-f2e693ebe1f4', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '274da223-2411-4689-8f70-b5bbd8915020', 'type': 'floor'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/21cc7dad-8c9e-4637-8f24-22ec417b9811/274da223-2411-4689-8f70-b5bbd8915020/212be018-cfb6-4041-9caa-d344385848b7', 'groupNameHierarchy': 'Global/USA/New York/BLDNYC/FLOOR2', 'name': 'FLOOR2', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '212be018-cfb6-4041-9caa-d344385848b7'}, {'parentId': '7010b0ed-ae2b-41bd-977a-79b1628dd1b7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'address': '1579 Hopkins Drive, San Jose, California 95122, United States', 'addressInheritedFrom': '7010b0ed-ae2b-41bd-977a-79b1628dd1b7', 'type': 'floor'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': 'None', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/6f4d01b1-d00c-4471-8aa2-28b7e99636ab/7010b0ed-ae2b-41bd-977a-79b1628dd1b7/5e6d602a-4135-44ef-a5ae-8d9ee6056f3b', 'groupNameHierarchy': 'Global/USA/Georgia/cisco/Floor_test', 'name': 'Floor_test', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '5e6d602a-4135-44ef-a5ae-8d9ee6056f3b'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '2', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/6f4d01b1-d00c-4471-8aa2-28b7e99636ab', 'groupNameHierarchy': 'Global/USA/Georgia', 'name': 'Georgia', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '6f4d01b1-d00c-4471-8aa2-28b7e99636ab'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '3', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'anchorWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'tertiaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'primaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'type': 'area'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/bf561bf3-95d6-4da1-bf49-26887955fa2e', 'groupNameHierarchy': 'Global/India', 'name': 'India', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'bf561bf3-95d6-4da1-bf49-26887955fa2e'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'anchorWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'tertiaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'primaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '3', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'type': 'area'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80143381-187c-48fa-a356-15389aad4e9c', 'groupNameHierarchy': 'Global/Japan', 'name': 'Japan', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '80143381-187c-48fa-a356-15389aad4e9c'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'Bengaluru, Karnataka, India', 'latitude': '25.2', 'addressInheritedFrom': 'd0484233-604a-4972-b010-42a0d44fe3d6', 'type': 'building', 'longitude': '42.1'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': 'd0484233-604a-4972-b010-42a0d44fe3d6', 'anchorWlcInheritedFrom': 'd0484233-604a-4972-b010-42a0d44fe3d6', 'tertiaryWlcInheritedFrom': 'd0484233-604a-4972-b010-42a0d44fe3d6', 'primaryWlcInheritedFrom': 'd0484233-604a-4972-b010-42a0d44fe3d6'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/d0484233-604a-4972-b010-42a0d44fe3d6', 'groupNameHierarchy': 'Global/JJJ', 'name': 'JJJ', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'd0484233-604a-4972-b010-42a0d44fe3d6'}, {'parentId': 'eda30e7b-0e67-4879-85bd-cfc30b0d9765', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'India', 'address': 'Bengaluru, Karnataka, India', 'latitude': '12.969910', 'addressInheritedFrom': 'caa9eb0d-618b-4d90-ac10-eb2a2d17e763', 'type': 'building', 'longitude': '77.597960'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '1', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'anchorWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'tertiaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'primaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/bf561bf3-95d6-4da1-bf49-26887955fa2e/eda30e7b-0e67-4879-85bd-cfc30b0d9765/caa9eb0d-618b-4d90-ac10-eb2a2d17e763', 'groupNameHierarchy': 'Global/India/Bangalore/Mantri Square', 'name': 'Mantri Square', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'caa9eb0d-618b-4d90-ac10-eb2a2d17e763'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '4', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '3', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/21cc7dad-8c9e-4637-8f24-22ec417b9811', 'groupNameHierarchy': 'Global/USA/New York', 'name': 'New York', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '21cc7dad-8c9e-4637-8f24-22ec417b9811'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '12', 'hasChild': 'TRUE', 'group.count.direct': '3', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16', 'groupNameHierarchy': 'Global/USA/RTP', 'name': 'RTP', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '3fbfb158-a429-41b3-a220-6a6286f93d16'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/7002e28c-a309-454b-ac5d-a6a99d64bc20', 'groupNameHierarchy': 'Global/USA/Sample', 'name': 'Sample', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '7002e28c-a309-454b-ac5d-a6a99d64bc20'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '2', 'hasChild': 'TRUE', 'group.count.direct': '2', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/4a03cd04-41bb-4e3c-9a59-3f96637c27e7', 'groupNameHierarchy': 'Global/USA/SAN-FRANCISCO', 'name': 'SAN-FRANCISCO', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '4a03cd04-41bb-4e3c-9a59-3f96637c27e7'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '8', 'hasChild': 'TRUE', 'group.count.direct': '2', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8', 'groupNameHierarchy': 'Global/USA/SAN JOSE', 'name': 'SAN JOSE', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '65eba291-ee04-43d2-bddb-a2cb2e7ff7d8'}, {'parentId': '274da223-2411-4689-8f70-b5bbd8915020', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'width': '58.1', 'length': '103.23', 'height': '58.22'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'latitude': '0.0', 'addressInheritedFrom': '274da223-2411-4689-8f70-b5bbd8915020', 'type': 'floor', 'longitude': '0.0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': 'None', 'isCadFile': 'false', 'floorIndex': '1'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/21cc7dad-8c9e-4637-8f24-22ec417b9811/274da223-2411-4689-8f70-b5bbd8915020/398f4d42-d265-4233-8ec3-5e4ba73c9956', 'groupNameHierarchy': 'Global/USA/New York/BLDNYC/Test_Floor3', 'name': 'Test_Floor3', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '398f4d42-d265-4233-8ec3-5e4ba73c9956'}, {'parentId': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'India', 'latitude': '12', 'addressInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'type': 'building', 'longitude': '80'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'anchorWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'tertiaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'primaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80be6b3f-2bb8-4711-ae59-f7a667eedb08/0e238b6e-e390-4dae-8932-49ceb3376304', 'groupNameHierarchy': 'Global/Chennai/Tidel', 'name': 'Tidel', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '0e238b6e-e390-4dae-8932-49ceb3376304'}, {'parentId': '80143381-187c-48fa-a356-15389aad4e9c', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'type': 'area'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'anchorWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'tertiaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'primaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '2', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80143381-187c-48fa-a356-15389aad4e9c/9674054e-fd9e-49ed-8084-1ce9131d6781', 'groupNameHierarchy': 'Global/Japan/Tokyo', 'name': 'Tokyo', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '9674054e-fd9e-49ed-8084-1ce9131d6781'}, {'parentId': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'India', 'address': 'Cognizant Technology Solutions, Chennai, Tamil Nadu 600113, India', 'latitude': '12.9908', 'addressInheritedFrom': '05d2d29c-3c23-478e-88ee-7ec60398634f', 'type': 'building', 'longitude': '80.2470'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'anchorWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'tertiaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'primaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80be6b3f-2bb8-4711-ae59-f7a667eedb08/05d2d29c-3c23-478e-88ee-7ec60398634f', 'groupNameHierarchy': 'Global/Chennai/Trill', 'name': 'Trill', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '05d2d29c-3c23-478e-88ee-7ec60398634f'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '38', 'hasChild': 'TRUE', 'group.count.direct': '8', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '3', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupNameHierarchy': 'Global/USA', 'name': 'USA', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '69f31d51-9e0d-48f4-8546-4935253f9a67'}], 'version': '1.0'}, 'device': [{'response': [{'instanceUuid': '3bf3f269-88ae-48fc-910d-3263ba618f87', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 0, 'apManagerInterfaceIp': '', 'associatedWlcIp': '', 'bootDateTime': '2024-05-27 02:32:55', 'collectionInterval': 'Global Default', 'collectionIntervalValue': '01:30:00', 'collectionStatus': 'Managed', 'description': 'Cisco IOS Software [Dublin], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.14.1, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2024 by Cisco Systems, Inc. Compiled Fri 05-Apr-24 00:08 by mcpre netconf enabled', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '192.168.0.1', 'family': 'Switches and Hubs', 'hostname': 'DC-FR-9300.cisco.local', 'interfaceCount': '0', 'inventoryStatusDetail': '', 'lastDeviceResyncStartTime': '2024-07-18 17:40:01', 'lastUpdateTime': 1721324455437, 'lastUpdated': '2024-07-18 17:40:55', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': 'd4:ad:bd:c1:67:00', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.1', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204.192. 3. 40', 'pendingSyncRequestsCount': '0', 'platformId': 'C9300-24U', 'reachabilityFailureReason': '', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': 'Periodic', 'reasonsForPendingSyncRequests': '', 'role': 'ACCESS', 'roleSource': 'AUTO', 'serialNumber': 'FJC2327U0S2', 'series': 'Cisco Catalyst 9300 Series Switches', 'snmpContact': '', 'snmpLocation': '', 'softwareType': 'IOS-XE', 'softwareVersion': '17.14.1', 'tagCount': '0', 'type': 'Cisco Catalyst 9300 Switch', 'upTime': '52 days, 15:08:19.76', 'uptimeSeconds': 4552059, 'vendor': 'Cisco'}, {'instanceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 0, 'apManagerInterfaceIp': '', 'associatedWlcIp': '', 'bootDateTime': '2024-05-27 02:34:15', 'collectionInterval': 'Global Default', 'collectionIntervalValue': '01:30:00', 'collectionStatus': 'In Progress', 'description': 'Cisco IOS Software [Dublin], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.14.1, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2024 by Cisco Systems, Inc. Compiled Fri 05-Apr-24 00:08 by mcpre netconf enabled', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '192.168.0.0', 'family': 'Switches and Hubs', 'hostname': 'DC-T-9300.cisco.local', 'interfaceCount': '0', 'inventoryStatusDetail': '', 'lastDeviceResyncStartTime': '2024-07-18 19:00:21', 'lastUpdateTime': 1721323875769, 'lastUpdated': '2024-07-18 17:31:15', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': '00:b6:70:32:b8:00', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.0', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204. 1. 2. 5', 'pendingSyncRequestsCount': '1', 'platformId': 'C9300-24P', 'reachabilityFailureReason': '', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': 'Periodic', 'reasonsForPendingSyncRequests': 'Periodic', 'role': 'ACCESS', 'roleSource': 'AUTO', 'serialNumber': 'FCW2225C020', 'series': 'Cisco Catalyst 9300 Series Switches', 'snmpContact': '', 'snmpLocation': '', 'softwareType': 'IOS-XE', 'softwareVersion': '17.14.1', 'tagCount': '0', 'type': 'Cisco Catalyst 9300 Switch', 'upTime': '52 days, 14:57:41.19', 'uptimeSeconds': 4551979, 'vendor': 'Cisco'}, {'instanceUuid': '9db11f54-8007-438c-ba9b-711513deecc6', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 0, 'apManagerInterfaceIp': '', 'associatedWlcIp': '', 'bootDateTime': '2024-05-28 00:14:36', 'collectionInterval': 'Global Default', 'collectionIntervalValue': '01:30:00', 'collectionStatus': 'Managed', 'description': 'Cisco IOS Software [Dublin], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.12.2, RELEASE SOFTWARE (fc2) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2023 by Cisco Systems, Inc. Compiled Tue 14-Nov-23 05:56 by mcpre netconf enabled', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '192.168.0.2', 'family': 'Switches and Hubs', 'hostname': 'NY-EN-9300.cisco.local', 'interfaceCount': '0', 'inventoryStatusDetail': '', 'lastDeviceResyncStartTime': '2024-07-18 17:40:01', 'lastUpdateTime': 1721324496374, 'lastUpdated': '2024-07-18 17:41:36', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': '90:88:55:07:59:00', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.2', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204. 1. 2. 2', 'pendingSyncRequestsCount': '0', 'platformId': 'C9300-48UXM, C9300-48UXM', 'reachabilityFailureReason': '', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': 'Periodic', 'reasonsForPendingSyncRequests': '', 'role': 'ACCESS', 'roleSource': 'AUTO', 'serialNumber': 'FJC271924K0, FJC271924EQ', 'series': 'Cisco Catalyst 9300 Series Switches', 'snmpContact': '', 'snmpLocation': '', 'softwareType': 'IOS-XE', 'softwareVersion': '17.12.2', 'tagCount': '0', 'type': 'Cisco Catalyst 9300 Switch', 'upTime': '51 days, 17:27:00.06', 'uptimeSeconds': 4473958, 'vendor': 'Cisco'}, {'instanceUuid': 'f490e92f-490e-4bb1-9519-770b1dc604c4', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 0, 'apManagerInterfaceIp': '', 'associatedWlcIp': '', 'bootDateTime': '2024-05-27 22:21:03', 'collectionInterval': 'Global Default', 'collectionIntervalValue': '01:30:00', 'collectionStatus': 'Managed', 'description': 'Cisco IOS Software [Dublin], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.14.1, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2024 by Cisco Systems, Inc. Compiled Fri 05-Apr-24 00:08 by mcpre netconf enabled', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '192.168.0.3', 'family': 'Switches and Hubs', 'hostname': 'NY-BN-9300.cisco.local', 'interfaceCount': '0', 'inventoryStatusDetail': '', 'lastDeviceResyncStartTime': '2024-07-18 17:40:01', 'lastUpdateTime': 1721324523813, 'lastUpdated': '2024-07-18 17:42:03', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': '0c:75:bd:41:14:00', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.3', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204. 1. 2. 4', 'pendingSyncRequestsCount': '0', 'platformId': 'C9300-48UXM, C9300-48UXM', 'reachabilityFailureReason': '', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': 'Periodic', 'reasonsForPendingSyncRequests': '', 'role': 'DISTRIBUTION', 'roleSource': 'AUTO', 'serialNumber': 'FJB2334D06N, FJC2335S09D', 'series': 'Cisco Catalyst 9300 Series Switches', 'snmpContact': '', 'snmpLocation': '', 'softwareType': 'IOS-XE', 'softwareVersion': '17.14.1', 'tagCount': '0', 'type': 'Cisco Catalyst 9300 Switch', 'upTime': '51 days, 19:21:44.15', 'uptimeSeconds': 4480771, 'vendor': 'Cisco'}], 'version': '1.0', 'siteId': '3cf15665-7b7b-4b29-82a9-75b8d094b602'}, {'response': [], 'version': '1.0', 'siteId': 'c9c21b46-5956-4e6e-9dbf-49f3e6e55a66', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '0c0aef1d-0ab9-4660-b216-649c4fe2b7a7', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'eda30e7b-0e67-4879-85bd-cfc30b0d9765', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '16244588-f6da-4ef7-b329-87eed13902be', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'a83421d0-cfe5-4318-85ee-a991d2cdd748', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '0d64a127-ae63-46f8-9b76-9d7d1502c6d4', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'f5c31c72-6d56-456b-aefb-d7cc942e5b04', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '67966786-b701-4099-8e1a-4191534f36d2', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '16b5e550-d288-4e11-94a6-baaa8e3d9c08', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '8c57bcf3-b0e4-4f47-b45e-bbb9f32e2997', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'be5fd8eb-dda4-4f38-b5ce-35d1d49151cc', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'd44f3eca-a3dc-4ed1-a020-0ded43c78056', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'fb5bbd30-3a01-4eaf-a24d-b0e75ff158c6', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'ea574cd8-fa45-48ab-9944-83ed33537416', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'ed089cbf-3622-492f-bf60-5baf6d0b3708', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '47a127ae-92bd-49ec-aed0-aec8e2a31678', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '625bcb2d-4e4a-4571-80e9-c5d2caad4ecf', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '8ff6aa1d-089f-41e2-8e42-5cad97770e7d', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'fa666989-76fb-4aa1-8caf-ad9dc6d08ef7', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [{'instanceUuid': 'e0bdf3e1-fbcf-4faa-a11c-156e32e7ae38', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 0, 'apManagerInterfaceIp': '', 'associatedWlcIp': '', 'bootDateTime': '2024-05-27 02:35:07', 'collectionInterval': 'Global Default', 'collectionIntervalValue': '01:30:00', 'collectionStatus': 'Managed', 'description': 'Cisco IOS Software [Dublin], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.14.1, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2024 by Cisco Systems, Inc. Compiled Fri 05-Apr-24 00:08 by mcpre netconf enabled', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '192.168.0.4', 'family': 'Switches and Hubs', 'hostname': 'SJ-EN-9300.cisco.local', 'interfaceCount': '0', 'inventoryStatusDetail': '', 'lastDeviceResyncStartTime': '2024-07-18 17:40:01', 'lastUpdateTime': 1721324467241, 'lastUpdated': '2024-07-18 17:41:07', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': '90:88:55:8e:42:80', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.4', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204. 1. 2. 1', 'pendingSyncRequestsCount': '0', 'platformId': 'C9300-48T', 'reachabilityFailureReason': '', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': 'Periodic', 'reasonsForPendingSyncRequests': '', 'role': 'ACCESS', 'roleSource': 'AUTO', 'serialNumber': 'FJC2721271T', 'series': 'Cisco Catalyst 9300 Series Switches', 'snmpContact': '', 'snmpLocation': '', 'softwareType': 'IOS-XE', 'softwareVersion': '17.14.1', 'tagCount': '0', 'type': 'Cisco Catalyst 9300 Switch', 'upTime': '52 days, 15:06:55.77', 'uptimeSeconds': 4551928, 'vendor': 'Cisco'}], 'version': '1.0', 'siteId': '274da223-2411-4689-8f70-b5bbd8915020'}, {'response': [], 'version': '1.0', 'siteId': 'b497a0ab-3ab4-42fd-8921-2f45af587b98', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'ef6944e0-72be-4d1d-8e29-1ca1ebcf8d98', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '7010b0ed-ae2b-41bd-977a-79b1628dd1b7', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '94f61603-5f1f-4b26-85dd-59355cd67632', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '633a40de-b885-448c-bd84-dd1fef679fbe', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'e3c898bc-a0d5-47b9-83c6-a48a88fa6fbe', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [{'instanceUuid': '37b05b0f-1b1e-496a-b101-8f277f0af8ff', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 2, 'apEthernetMacAddress': '34:5d:a8:0e:20:b4', 'apManagerInterfaceIp': '192.168.0.5', 'associatedWlcIp': '192.168.0.5', 'collectionInterval': 'NA', 'collectionStatus': 'Managed', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '', 'errorCode': 'null', 'family': 'Unified AP', 'hostname': 'LTTS-test1', 'interfaceCount': '0', 'inventoryStatusDetail': 'NA', 'lastDeviceResyncStartTime': '', 'lastUpdateTime': 1721327458431, 'lastUpdated': '2024-07-18 18:30:58', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': '90:e9:5e:03:f3:40', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.5', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204. 1.216. 2', 'pendingSyncRequestsCount': '0', 'platformId': 'C9130AXE-B', 'reachabilityFailureReason': 'NA', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': '', 'reasonsForPendingSyncRequests': '', 'role': 'ACCESS', 'roleSource': 'AUTO', 'serialNumber': 'FJC27181V9V', 'series': 'Cisco Catalyst 9130AXE Series Unified Access Points', 'snmpContact': '', 'snmpLocation': 'LTTS/Cisco/Chennai', 'softwareVersion': '17.14.0.79', 'tagCount': '0', 'type': 'Cisco Catalyst 9130AXE Unified Access Point', 'upTime': '3 days, 01:57:12.330', 'uptimeSeconds': 268009, 'vendor': 'NA'}, {'instanceUuid': '778a27bb-d795-4fa3-a321-f2e693ebe1f4', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 0, 'apManagerInterfaceIp': '', 'associatedWlcIp': '', 'bootDateTime': '2024-05-26 21:53:58', 'collectionInterval': 'Global Default', 'collectionIntervalValue': '01:30:00', 'collectionStatus': 'Managed', 'description': 'Cisco IOS Software [Dublin], C9800 Software (C9800_IOSXE-K9), Version 17.14.1, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2024 by Cisco Systems, Inc. Compiled Fri 05-Apr-24 00:11 by mcpre netconf enabled', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '192.168.0.6', 'family': 'Wireless Controller', 'hostname': 'NY-EWLC-1.cisco.local', 'interfaceCount': '0', 'inventoryStatusDetail': '', 'lastDeviceResyncStartTime': '2024-07-18 18:30:26', 'lastUpdateTime': 1721327458431, 'lastUpdated': '2024-07-18 18:30:58', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': 'cc:b6:c8:e2:29:0b', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.6', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204.192. 6.200', 'pendingSyncRequestsCount': '0', 'platformId': 'C9800-40-K9', 'reachabilityFailureReason': '', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': 'Periodic', 'reasonsForPendingSyncRequests': '', 'role': 'ACCESS', 'roleSource': 'AUTO', 'serialNumber': 'FOX2639PAY7', 'series': 'Cisco Catalyst 9800 Series Wireless Controllers', 'snmpContact': '', 'snmpLocation': '', 'softwareType': 'IOS-XE', 'softwareVersion': '17.14.1', 'tagCount': '0', 'type': 'Cisco Catalyst 9800-40 Wireless Controller', 'upTime': '52 days, 20:37:58.64', 'uptimeSeconds': 4568797, 'vendor': 'Cisco'}], 'version': '1.0', 'siteId': '17301034-7715-4363-952f-3d290ea6ca59'}, {'response': [], 'version': '1.0', 'siteId': '8a7ddd03-dddb-4a76-a079-56c3b45ab1ec', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'c45259ff-0612-4fe7-907c-5987877892d9', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'eb935311-f082-416e-a13c-08acdc6219c0', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '78b8a15c-c112-4941-b00b-ceda2edb38f2', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '212be018-cfb6-4041-9caa-d344385848b7', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '5e6d602a-4135-44ef-a5ae-8d9ee6056f3b', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '6f4d01b1-d00c-4471-8aa2-28b7e99636ab', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '80143381-187c-48fa-a356-15389aad4e9c', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'd0484233-604a-4972-b010-42a0d44fe3d6', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'caa9eb0d-618b-4d90-ac10-eb2a2d17e763', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '21cc7dad-8c9e-4637-8f24-22ec417b9811', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '3fbfb158-a429-41b3-a220-6a6286f93d16', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '7002e28c-a309-454b-ac5d-a6a99d64bc20', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '4a03cd04-41bb-4e3c-9a59-3f96637c27e7', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '65eba291-ee04-43d2-bddb-a2cb2e7ff7d8', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '398f4d42-d265-4233-8ec3-5e4ba73c9956', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '0e238b6e-e390-4dae-8932-49ceb3376304', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '9674054e-fd9e-49ed-8084-1ce9131d6781', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '05d2d29c-3c23-478e-88ee-7ec60398634f', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'message': 'Site does not have device member with given device family or serial number as input'}]} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 668: Received response from 'get_membership'. Extracting device IDs. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 674: Retrieved device IDs from membership for site '3cf15665-7b7b-4b29-82a9-75b8d094b602': ['3bf3f269-88ae-48fc-910d-3263ba618f87', '92ffce88-9fce-41d2-ae69-086fa74e9c4b', '9db11f54-8007-438c-ba9b-711513deecc6', 'f490e92f-490e-4bb1-9519-770b1dc604c4', 'e0bdf3e1-fbcf-4faa-a11c-156e32e7ae38', '37b05b0f-1b1e-496a-b101-8f277f0af8ff', '778a27bb-d795-4fa3-a321-f2e693ebe1f4'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 721: Device IDs retrieved from site '3cf15665-7b7b-4b29-82a9-75b8d094b602': ['3bf3f269-88ae-48fc-910d-3263ba618f87', '92ffce88-9fce-41d2-ae69-086fa74e9c4b', '9db11f54-8007-438c-ba9b-711513deecc6', 'f490e92f-490e-4bb1-9519-770b1dc604c4', 'e0bdf3e1-fbcf-4faa-a11c-156e32e7ae38', '37b05b0f-1b1e-496a-b101-8f277f0af8ff', '778a27bb-d795-4fa3-a321-f2e693ebe1f4'] 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 725: Initiating retrieval of device details for device ID: '3bf3f269-88ae-48fc-910d-3263ba618f87'. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: execute_get_request: 1832: Initiating GET API call for Function: get_device_by_id from Family: devices with Parameters: {'id': '3bf3f269-88ae-48fc-910d-3263ba618f87'}. 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: execute_get_request: 1848: Response received from GET API call to Function: 'get_device_by_id' from Family: 'devices' is Response: {'response': [{'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'RUNNING_CONFIG', 'status': 'NON_COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1717977820546, 'lastUpdateTime': 1721609911624, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}], 'version': '1.0', 'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '3bf3f269-88ae-48fc-910d-3263ba618f87'. 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 725: Initiating retrieval of device details for device ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b'. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: execute_get_request: 1832: Initiating GET API call for Function: get_device_by_id from Family: devices with Parameters: {'id': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'}. 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: execute_get_request: 1848: Response received from GET API call to Function: 'get_device_by_id' from Family: 'devices' is Response: {'response': [{'deviceUuid': '3bf3f269-88ae-48fc-910d-3263ba618f87', 'complianceType': 'RUNNING_CONFIG', 'status': 'NON_COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1717977820546, 'lastUpdateTime': 1721329211772, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}], 'version': '1.0', 'deviceUuid': '3bf3f269-88ae-48fc-910d-3263ba618f87'} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b'. 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 725: Initiating retrieval of device details for device ID: '9db11f54-8007-438c-ba9b-711513deecc6'. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: execute_get_request: 1832: Initiating GET API call for Function: get_device_by_id from Family: devices with Parameters: {'id': '9db11f54-8007-438c-ba9b-711513deecc6'}. 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: execute_get_request: 1848: Response received from GET API call to Function: 'get_device_by_id' from Family: 'devices' is Response: {'response': [{'deviceUuid': '9db11f54-8007-438c-ba9b-711513deecc6', 'complianceType': 'RUNNING_CONFIG', 'status': 'NON_COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1720725651251, 'lastUpdateTime': 1721329211782, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}], 'version': '1.0', 'deviceUuid': '9db11f54-8007-438c-ba9b-711513deecc6'} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '9db11f54-8007-438c-ba9b-711513deecc6'. 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 725: Initiating retrieval of device details for device ID: 'f490e92f-490e-4bb1-9519-770b1dc604c4'. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: execute_get_request: 1832: Initiating GET API call for Function: get_device_by_id from Family: devices with Parameters: {'id': 'f490e92f-490e-4bb1-9519-770b1dc604c4'}. 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: execute_get_request: 1848: Response received from GET API call to Function: 'get_device_by_id' from Family: 'devices' is Response: {'response': [{'deviceUuid': 'f490e92f-490e-4bb1-9519-770b1dc604c4', 'complianceType': 'RUNNING_CONFIG', 'status': 'NON_COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1720725651133, 'lastUpdateTime': 1721329211787, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}], 'version': '1.0', 'deviceUuid': 'f490e92f-490e-4bb1-9519-770b1dc604c4'} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: 'f490e92f-490e-4bb1-9519-770b1dc604c4'. 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 725: Initiating retrieval of device details for device ID: 'e0bdf3e1-fbcf-4faa-a11c-156e32e7ae38'. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: execute_get_request: 1832: Initiating GET API call for Function: get_device_by_id from Family: devices with Parameters: {'id': 'e0bdf3e1-fbcf-4faa-a11c-156e32e7ae38'}. 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: execute_get_request: 1848: Response received from GET API call to Function: 'get_device_by_id' from Family: 'devices' is Response: {'response': [{'deviceUuid': 'e0bdf3e1-fbcf-4faa-a11c-156e32e7ae38', 'complianceType': 'RUNNING_CONFIG', 'status': 'NON_COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1717977820501, 'lastUpdateTime': 1721329211781, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}], 'version': '1.0', 'deviceUuid': 'e0bdf3e1-fbcf-4faa-a11c-156e32e7ae38'} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: 'e0bdf3e1-fbcf-4faa-a11c-156e32e7ae38'. 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 725: Initiating retrieval of device details for device ID: '37b05b0f-1b1e-496a-b101-8f277f0af8ff'. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: execute_get_request: 1832: Initiating GET API call for Function: get_device_by_id from Family: devices with Parameters: {'id': '37b05b0f-1b1e-496a-b101-8f277f0af8ff'}. 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: execute_get_request: 1848: Response received from GET API call to Function: 'get_device_by_id' from Family: 'devices' is Response: {'response': [{'deviceUuid': '778a27bb-d795-4fa3-a321-f2e693ebe1f4', 'complianceType': 'RUNNING_CONFIG', 'status': 'NON_COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1720782060442, 'lastUpdateTime': 1721329211778, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}], 'version': '1.0', 'deviceUuid': '778a27bb-d795-4fa3-a321-f2e693ebe1f4'} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '37b05b0f-1b1e-496a-b101-8f277f0af8ff'. 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 725: Initiating retrieval of device details for device ID: '778a27bb-d795-4fa3-a321-f2e693ebe1f4'. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: execute_get_request: 1832: Initiating GET API call for Function: get_device_by_id from Family: devices with Parameters: {'id': '778a27bb-d795-4fa3-a321-f2e693ebe1f4'}. 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: execute_get_request: 1848: Response received from GET API call to Function: 'get_device_by_id' from Family: 'devices' is Response: {'response': {'taskId': 'ce5e3f8d-9ac7-4215-9b83-fac7228c9e63', 'url': '/api/v1/task/ce5e3f8d-9ac7-4215-9b83-fac7228c9e63'}, 'version': '1.0'} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '778a27bb-d795-4fa3-a321-f2e693ebe1f4'. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 763: Device details retrieved for site ID: '3cf15665-7b7b-4b29-82a9-75b8d094b602': [[{'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'RUNNING_CONFIG', 'status': 'NON_COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1717977820546, 'lastUpdateTime': 1721609911624, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}], [{'deviceUuid': '3bf3f269-88ae-48fc-910d-3263ba618f87', 'complianceType': 'RUNNING_CONFIG', 'status': 'NON_COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1717977820546, 'lastUpdateTime': 1721329211772, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}], [{'deviceUuid': '9db11f54-8007-438c-ba9b-711513deecc6', 'complianceType': 'RUNNING_CONFIG', 'status': 'NON_COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1720725651251, 'lastUpdateTime': 1721329211782, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}], [{'deviceUuid': 'f490e92f-490e-4bb1-9519-770b1dc604c4', 'complianceType': 'RUNNING_CONFIG', 'status': 'NON_COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1720725651133, 'lastUpdateTime': 1721329211787, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}], [{'deviceUuid': 'e0bdf3e1-fbcf-4faa-a11c-156e32e7ae38', 'complianceType': 'RUNNING_CONFIG', 'status': 'NON_COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1717977820501, 'lastUpdateTime': 1721329211781, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}], [{'deviceUuid': '778a27bb-d795-4fa3-a321-f2e693ebe1f4', 'complianceType': 'RUNNING_CONFIG', 'status': 'NON_COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1720782060442, 'lastUpdateTime': 1721329211778, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}], {'taskId': 'ce5e3f8d-9ac7-4215-9b83-fac7228c9e63', 'url': '/api/v1/task/ce5e3f8d-9ac7-4215-9b83-fac7228c9e63'}] 1264s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_assign_cred_1 _ 1264s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s def get_tasks_by_id(self, task_id): 1264s """ 1264s Get the tasks of a task ID in Cisco Catalyst Center. 1264s Args: 1264s self (object): An instance of a class that provides access to Cisco Catalyst Center. 1264s task_id (str): The unique identifier of the task for which you want to retrieve details. 1264s Returns: 1264s dict or None: A dictionary status information about the specified task, 1264s or None if the task with the given task_id is not found. 1264s Description: 1264s Call the API 'get_tasks_by_id' to get the status of the task. 1264s Return the details along with the status of the task. 1264s """ 1264s # Need to handle exception 1264s task_status = None 1264s try: 1264s > response = self.dnac._exec( 1264s family="task", 1264s function="get_tasks_by_id", 1264s params={"id": task_id} 1264s ) 1264s 1264s plugins/module_utils/dnac.py:1662: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s /usr/lib/python3.13/unittest/mock.py:1169: in __call__ 1264s return self._mock_call(*args, **kwargs) 1264s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call 1264s return self._execute_mock_call(*args, **kwargs) 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s self = , args = () 1264s kwargs = {'family': 'task', 'function': 'get_tasks_by_id', 'params': {'id': '0191e691-f5f5-7c89-9cf4-099515272844'}} 1264s effect = 1264s 1264s def _execute_mock_call(self, /, *args, **kwargs): 1264s # separate from _increment_mock_call so that awaited functions are 1264s # executed separately from their call, also AsyncMock overrides this method 1264s 1264s effect = self.side_effect 1264s if effect is not None: 1264s if _is_exception(effect): 1264s raise effect 1264s elif not _callable(effect): 1264s > result = next(effect) 1264s E StopIteration 1264s 1264s /usr/lib/python3.13/unittest/mock.py:1230: StopIteration 1264s 1264s During handling of the above exception, another exception occurred: 1264s 1264s self = 1264s 1264s def test_device_credentials_workflow_manager_assign_cred_1(self): 1264s """ 1264s Test case for device credential workflow manager when assigning a device credential to site in dnac_version="2.3.7.6". 1264s 1264s This test case checks the behavior of the device credential workflow manager when assigning a device credential to site in the specified DNAC. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_version="2.3.7.6", 1264s dnac_log=True, 1264s state="merged", 1264s config=self.playbook_config_assign 1264s ) 1264s ) 1264s > result = self.execute_module(changed=True, failed=False) 1264s 1264s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:261: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1264s result = self.changed(changed) 1264s tests/unit/modules/dnac/dnac_module.py:133: in changed 1264s self.module.main() 1264s plugins/modules/device_credential_workflow_manager.py:3277: in main 1264s ccc_credential.get_diff_state_apply[state](config).check_return_status() 1264s plugins/modules/device_credential_workflow_manager.py:2980: in get_diff_merged 1264s self.assign_credentials_to_site().check_return_status() 1264s plugins/modules/device_credential_workflow_manager.py:2757: in assign_credentials_to_site 1264s self.check_tasks_response_status( 1264s plugins/module_utils/dnac.py:1730: in check_tasks_response_status 1264s task_details = self.get_tasks_by_id(task_id) 1264s plugins/module_utils/dnac.py:1684: in get_tasks_by_id 1264s self.fail_and_exit(self.msg) 1264s plugins/module_utils/dnac.py:1787: in fail_and_exit 1264s self.check_return_status() 1264s plugins/module_utils/dnac.py:307: in check_return_status 1264s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s def fail_json(*args, **kwargs): 1264s kwargs["failed"] = True 1264s > raise AnsibleFailJson(kwargs) 1264s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .", 'response': "An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .", 'failed': True} 1264s 1264s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1264s ------------------------------ Captured log call ------------------------------- 1264s ERROR logger:dnac.py:294 DeviceCredential: set_operation_result: 1780: An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1264s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_5 ________ 1264s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_run_compliance_with_iplist_failure_5(self): 1264s 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s dnac_log_level="DEBUG", 1264s dnac_log_append=False, 1264s state="merged", 1264s config=self.test_data.get("playbook_config_run_compliance_iplist") 1264s ) 1264s ) 1264s result = self.execute_module(changed=False, failed=True) 1264s > self.assertIn( 1264s "An error occurred while retrieving Compliance Details for device:192.168.0.0 using 'compliance_details_of_device' API call", 1264s result.get('msg') 1264s ) 1264s E AssertionError: "An error occurred while retrieving Compliance Details for device:192.168.0.0 using 'compliance_details_of_device' API call" not found in "No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs)." 1264s 1264s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:626: AssertionError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s Inside load_fixtures 1264s Mock for DNACSDK._exec: 1264s Inside load_fixtures 1264s ------------------------------ Captured log call ------------------------------- 1264s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 116: Cisco Catalyst Center parameters: {'dnac_host': '1.1.1.1', 'dnac_port': '443', 'dnac_username': 'dummy', 'dnac_password': 'dummy', 'dnac_version': '2.2.3.3', 'dnac_verify': True, 'dnac_debug': False, 'dnac_log': True, 'dnac_log_level': 'DEBUG', 'dnac_log_file_path': 'dnac.log', 'dnac_log_append': False} 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_input: 422: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': True, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': False}] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1663 status: success, msg: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': True, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': False}] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 532: Validating the provided configuration: {'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': True, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': False} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_params: 538: Extracted parameters - IP Address List: ['192.168.0.0'], Site Name: None, Run Compliance: True, Run Compliance Categories: None, Sync Device Config: False 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None' 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1264s 1264s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 484: Validating if any network compliance operation is requested: run_compliance=True, run_compliance_categories=None, sync_device_config=False 1264s 1264s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 556: Validation completed for configuration: {'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': True, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': False} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 809: Entering get_device_id_list with args: ip_address_list=['192.168.0.0'], site_name=None 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 677: Entering get_device_list_params method with ip_address_list: ['192.168.0.0'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 697: Entering 'get_device_ids_from_ip' method with parameters: {'management_ip_address': ['192.168.0.0']} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 1: {'response': [{'reachabilityStatus': 'Reachable', 'family': 'Switches and Hubs', 'managementIpAddress': '192.168.0.0', 'instanceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'id': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'}]} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: 192.168.0.0, Reachability: Reachable, Collection Status: None, Family: Switches and Hubs 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device 192.168.0.0 as its status is Reachable or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 501: {'response': [{'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'IMAGE', 'status': 'COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1721042297620, 'lastUpdateTime': 1721061010296, 'sourceInfoList': [], 'additionalDataURL': '/api/v2/device-image/device?id=92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'ackStatus': 'UNACKNOWLEDGED'}, {'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'EOX', 'status': 'NOT_APPLICABLE', 'state': 'SUCCESS', 'lastSyncTime': 1721042297708, 'lastUpdateTime': 1721061010419, 'sourceInfoList': [], 'message': 'EOX status not available.', 'ackStatus': 'UNACKNOWLEDGED'}, {'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'NETWORK_SETTINGS', 'status': 'NOT_APPLICABLE', 'state': 'SUCCESS', 'lastSyncTime': 1721042297420, 'lastUpdateTime': 1721061010438, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}, {'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'PSIRT', 'status': 'COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1721042297733, 'lastUpdateTime': 1721061010335, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}, {'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'RUNNING_CONFIG', 'status': 'COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1721042299163, 'lastUpdateTime': 1721061010242, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}], 'version': '1.0', 'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 1001: {'response': {'taskId': '34629bf3-c191-404d-b5b7-3e445d25457b', 'url': '/api/v1/task/34629bf3-c191-404d-b5b7-3e445d25457b'}, 'version': '1.0'} 1264s 1264s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 788: Error fetching device IDs from Cisco Catalyst Center. Error details: 'str' object has no attribute 'get' 1264s 1264s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1264s 1264s ERROR logger:dnac.py:294 NetworkCompliance: set_operation_result: 1780: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs). 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1787 status: failed, msg: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs). 1264s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_global_pool_Updation_not_req _ 1264s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_Network_settings_workflow_manager_global_pool_Updation_not_req(self): 1264s """ 1264s Test case for site workflow manager when creating a site. 1264s 1264s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s state="merged", 1264s config_verify=True, 1264s config=self.playbook_global_pool_updation 1264s ) 1264s ) 1264s result = self.execute_module(changed=True, failed=True) 1264s # print(result["response"][0].get("globalPool").get("msg")) 1264s # print(result) 1264s > self.assertEqual( 1264s result["response"][0].get("globalPool").get("msg"), 1264s {'Global_Pool2': "Global pool doesn't require an update", 'Global_Pool3': "Global pool doesn't require an update"} 1264s 1264s ) 1264s E AssertionError: {} != {'Global_Pool2': "Global pool doesn't requ[67 chars]ate"} 1264s E - {} 1264s E + {'Global_Pool2': "Global pool doesn't require an update", 1264s E + 'Global_Pool3': "Global pool doesn't require an update"} 1264s 1264s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:1003: AssertionError 1264s _____________ TestDnacAccesspointWorkflow.test_invalid_wlc_device ______________ 1264s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_invalid_wlc_device(self): 1264s """ 1264s Test case for access point workfollow manager check invalid wireless controller. 1264s 1264s This test case checks the behavior of the access point workflow of invalid wlc specified Cisco Catalyst Center. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s state="merged", 1264s dnac_version="2.3.7.6", 1264s config=self.playbook_config_provision 1264s ) 1264s ) 1264s result = self.execute_module(changed=False, failed=True) 1264s self.maxDiff = None 1264s > self.assertEqual( 1264s result.get('msg'), 1264s "Wireles controller is not provisioned:" 1264s ) 1264s E AssertionError: "An error occurred while executing GET AP[157 chars]n: ." != 'Wireles controller is not provisioned:' 1264s E - An error occurred while executing GET API call to Function: 'get_site_assigned_network_devices' from Family: 'site_design'. Parameters: {'site_id': 'c55c069f-a77f-4cc9-bb20-63df01e9a01a'}. Exception: . 1264s E + Wireles controller is not provisioned: 1264s 1264s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:170: AssertionError 1264s ------------------------------ Captured log call ------------------------------- 1264s ERROR logger:dnac.py:294 Accesspoint: set_operation_result: 1780: An error occurred while executing GET API call to Function: 'get_site_assigned_network_devices' from Family: 'site_design'. Parameters: {'site_id': 'c55c069f-a77f-4cc9-bb20-63df01e9a01a'}. Exception: . 1264s 1264s ERROR logger:dnac.py:294 Accesspoint: get_site_device: 2968: Failed to execute the get_device_ids_from_site function 'c55c069f-a77f-4cc9-bb20-63df01e9a01a' Error: {'msg': "An error occurred while executing GET API call to Function: 'get_site_assigned_network_devices' from Family: 'site_design'. Parameters: {'site_id': 'c55c069f-a77f-4cc9-bb20-63df01e9a01a'}. Exception: .", 'response': "An error occurred while executing GET API call to Function: 'get_site_assigned_network_devices' from Family: 'site_design'. Parameters: {'site_id': 'c55c069f-a77f-4cc9-bb20-63df01e9a01a'}. Exception: .", 'failed': True} 1264s 1264s ERROR logger:dnac.py:294 Accesspoint: verify_ap_provision: 3010: Wireles controller is not provisioned: 1264s 1264s ERROR logger:dnac.py:294 Accesspoint: set_operation_result: 1780: Wireles controller is not provisioned: 1264s _______________ TestNetworkCompliance.test_scale_run_compliance ________________ 1264s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_scale_run_compliance(self): 1264s 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s dnac_log_level="DEBUG", 1264s dnac_log_append=False, 1264s state="merged", 1264s config=self.test_data.get("playbook_config_run_compliance_scale_iplist") 1264s ) 1264s ) 1264s > result = self.execute_module(changed=True, failed=False) 1264s 1264s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:433: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1264s result = self.changed(changed) 1264s tests/unit/modules/dnac/dnac_module.py:133: in changed 1264s self.module.main() 1264s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1264s ccc_network_compliance.get_want(config).check_return_status() 1264s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1264s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1264s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list 1264s self.fail_and_exit(self.msg) 1264s plugins/module_utils/dnac.py:1787: in fail_and_exit 1264s self.check_return_status() 1264s plugins/module_utils/dnac.py:307: in check_return_status 1264s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s def fail_json(*args, **kwargs): 1264s kwargs["failed"] = True 1264s > raise AnsibleFailJson(kwargs) 1264s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0', '192.168.0.1'] or site name: None. This could be due to Unreachable devices or access points (APs).", 'response': "No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0', '192.168.0.1'] or site name: None. This could be due to Unreachable devices or access points (APs).", 'failed': True} 1264s 1264s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1264s ----------------------------- Captured stdout call ----------------------------- 1264s Inside load_fixtures 1264s Mock for DNACSDK._exec: 1264s Inside load_fixtures 1264s ------------------------------ Captured log call ------------------------------- 1264s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 116: Cisco Catalyst Center parameters: {'dnac_host': '1.1.1.1', 'dnac_port': '443', 'dnac_username': 'dummy', 'dnac_password': 'dummy', 'dnac_version': '2.2.3.3', 'dnac_verify': True, 'dnac_debug': False, 'dnac_log': True, 'dnac_log_level': 'DEBUG', 'dnac_log_file_path': 'dnac.log', 'dnac_log_append': False} 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_input: 422: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': ['192.168.0.0', '192.168.0.1'], 'site_name': None, 'run_compliance': True, 'run_compliance_categories': None, 'run_compliance_batch_size': 1, 'sync_device_config': False}] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1663 status: success, msg: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': ['192.168.0.0', '192.168.0.1'], 'site_name': None, 'run_compliance': True, 'run_compliance_categories': None, 'run_compliance_batch_size': 1, 'sync_device_config': False}] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0', '192.168.0.1'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0', '192.168.0.1'] 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 532: Validating the provided configuration: {'ip_address_list': ['192.168.0.0', '192.168.0.1'], 'site_name': None, 'run_compliance': True, 'run_compliance_categories': None, 'run_compliance_batch_size': 1, 'sync_device_config': False} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_params: 538: Extracted parameters - IP Address List: ['192.168.0.0', '192.168.0.1'], Site Name: None, Run Compliance: True, Run Compliance Categories: None, Sync Device Config: False 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0', '192.168.0.1']' or 'site_name': 'None' 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0', '192.168.0.1'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0, 192.168.0.1 1264s 1264s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 484: Validating if any network compliance operation is requested: run_compliance=True, run_compliance_categories=None, sync_device_config=False 1264s 1264s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 556: Validation completed for configuration: {'ip_address_list': ['192.168.0.0', '192.168.0.1'], 'site_name': None, 'run_compliance': True, 'run_compliance_categories': None, 'run_compliance_batch_size': 1, 'sync_device_config': False} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 809: Entering get_device_id_list with args: ip_address_list=['192.168.0.0', '192.168.0.1'], site_name=None 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0, 192.168.0.1 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 677: Entering get_device_list_params method with ip_address_list: ['192.168.0.0', '192.168.0.1'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0', '192.168.0.1']} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 697: Entering 'get_device_ids_from_ip' method with parameters: {'management_ip_address': ['192.168.0.0', '192.168.0.1']} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 1: {'response': [{'reachabilityStatus': 'Reachable', 'family': 'Switches and Hubs', 'managementIpAddress': '192.168.0.0', 'instanceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'id': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'}]} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: 192.168.0.0, Reachability: Reachable, Collection Status: None, Family: Switches and Hubs 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device 192.168.0.0 as its status is Reachable or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 501: {'response': [{'family': 'Wireless Controller', 'managementIpAddress': '192.168.0.1', 'reachabilityStatus': 'Reachable', 'instanceUuid': '3bf3f269-88ae-48fc-910d-3263ba618f87', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '3bf3f269-88ae-48fc-910d-3263ba618f87'}], 'version': '1.0'} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: 192.168.0.1, Reachability: Reachable, Collection Status: None, Family: Wireless Controller 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device 192.168.0.1 as its status is Reachable or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 1001: {'response': [{'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'IMAGE', 'status': 'COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1721042297620, 'lastUpdateTime': 1721061010296, 'sourceInfoList': [], 'additionalDataURL': '/api/v2/device-image/device?id=92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'ackStatus': 'UNACKNOWLEDGED'}, {'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'EOX', 'status': 'NOT_APPLICABLE', 'state': 'SUCCESS', 'lastSyncTime': 1721042297708, 'lastUpdateTime': 1721061010419, 'sourceInfoList': [], 'message': 'EOX status not available.', 'ackStatus': 'UNACKNOWLEDGED'}, {'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'NETWORK_SETTINGS', 'status': 'NOT_APPLICABLE', 'state': 'SUCCESS', 'lastSyncTime': 1721042297420, 'lastUpdateTime': 1721061010438, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}, {'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'PSIRT', 'status': 'COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1721042297733, 'lastUpdateTime': 1721061010335, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}, {'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'RUNNING_CONFIG', 'status': 'COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1721042299163, 'lastUpdateTime': 1721061010242, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}], 'version': '1.0', 'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 1501: {'response': [{'deviceUuid': '3bf3f269-88ae-48fc-910d-3263ba618f87', 'complianceType': 'EOX', 'status': 'NOT_APPLICABLE', 'state': 'SUCCESS', 'lastSyncTime': 1716766741478, 'lastUpdateTime': 1721329212290, 'sourceInfoList': [], 'message': 'EOX status not available.', 'ackStatus': 'UNACKNOWLEDGED'}, {'deviceUuid': '3bf3f269-88ae-48fc-910d-3263ba618f87', 'complianceType': 'PSIRT', 'status': 'COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1716766741495, 'lastUpdateTime': 1721329211854, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}, {'deviceUuid': '3bf3f269-88ae-48fc-910d-3263ba618f87', 'complianceType': 'NETWORK_SETTINGS', 'status': 'NOT_APPLICABLE', 'state': 'SUCCESS', 'lastSyncTime': 1716766741320, 'lastUpdateTime': 1721329212309, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}, {'deviceUuid': '3bf3f269-88ae-48fc-910d-3263ba618f87', 'complianceType': 'IMAGE', 'status': 'COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1716777549860, 'lastUpdateTime': 1721329211804, 'sourceInfoList': [], 'additionalDataURL': '/api/v2/device-image/device?id=3bf3f269-88ae-48fc-910d-3263ba618f87', 'ackStatus': 'UNACKNOWLEDGED'}, {'deviceUuid': '3bf3f269-88ae-48fc-910d-3263ba618f87', 'complianceType': 'RUNNING_CONFIG', 'status': 'COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1717977820546, 'lastUpdateTime': 1721329211772, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}], 'version': '1.0', 'deviceUuid': '3bf3f269-88ae-48fc-910d-3263ba618f87'} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 2001: {'response': {'taskId': '34629bf3-c191-404d-b5b7-3e445d25457b', 'url': '/api/v1/task/34629bf3-c191-404d-b5b7-3e445d25457b'}, 'version': '1.0'} 1264s 1264s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 788: Error fetching device IDs from Cisco Catalyst Center. Error details: 'str' object has no attribute 'get' 1264s 1264s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1264s 1264s ERROR logger:dnac.py:294 NetworkCompliance: set_operation_result: 1780: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0', '192.168.0.1'] or site name: None. This could be due to Unreachable devices or access points (APs). 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1787 status: failed, msg: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0', '192.168.0.1'] or site name: None. This could be due to Unreachable devices or access points (APs). 1264s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_4 _________ 1264s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_run_compliance_with_site_failure_4(self): 1264s 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=False, 1264s dnac_log_level="DEBUG", 1264s dnac_log_append=False, 1264s state="merged", 1264s config=self.test_data.get("playbook_config_run_compliance_site") 1264s ) 1264s ) 1264s result = self.execute_module(changed=False, failed=True) 1264s > self.assertIn( 1264s "An error occurred while retrieving the task_id of the run_compliance operation.", 1264s result.get('msg') 1264s ) 1264s E AssertionError: 'An error occurred while retrieving the task_id of the run_compliance operation.' not found in "An error occurred while executing GET API call to Function: 'get_device_by_id' from Family: 'devices'. Parameters: {'id': '778a27bb-d795-4fa3-a321-f2e693ebe1f4'}. Exception: Simulated exception." 1264s 1264s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:710: AssertionError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s Inside load_fixtures 1264s Mock for DNACSDK._exec: 1264s Inside load_fixtures 1264s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_telemetry_get _ 1264s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_Network_settings_workflow_manager_network_exception_telemetry_get(self): 1264s """ 1264s Test case for site workflow manager when creating a site. 1264s 1264s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s dnac_version="2.3.7.6", 1264s state="merged", 1264s config_verify=True, 1264s config=self.playbook_config_network 1264s ) 1264s ) 1264s result = self.execute_module(changed=False, failed=True) 1264s print(result) 1264s > self.assertEqual( 1264s result.get('msg'), 1264s "Exception occurred while getting telemetry settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1264s ) 1264s E AssertionError: "Exception occurred while getting telemet[78 chars]7): " != 'Exception occurred while getting telemet[55 chars]a7: ' 1264s E - Exception occurred while getting telemetry settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1264s E ? ---------------------- - 1264s E + Exception occurred while getting telemetry settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1264s 1264s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:729: AssertionError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s {'msg': "Exception occurred while getting telemetry settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): ", 'response': [{'globalPool': {'response': {}, 'msg': {}}}, {'reservePool': {'response': {}, 'msg': {}}}, {'network': {'response': {}, 'msg': {}}}], 'failed': True} 1264s ------------------------------ Captured log call ------------------------------- 1264s WARNING logger:dnac.py:294 NetworkSettings: get_dns_settings_for_site: 1153: No DNS settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1264s 1264s CRITICAL logger:dnac.py:294 NetworkSettings: get_telemetry_settings_for_site: 1200: Exception occurred while getting telemetry settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1264s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_banner_get _ 1264s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_Network_settings_workflow_manager_network_exception_banner_get(self): 1264s """ 1264s Test case for site workflow manager when creating a site. 1264s 1264s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s dnac_version="2.3.7.6", 1264s state="merged", 1264s config_verify=True, 1264s config=self.playbook_config_network 1264s ) 1264s ) 1264s result = self.execute_module(changed=False, failed=True) 1264s print(result) 1264s > self.assertEqual( 1264s result.get('msg'), 1264s "Exception occurred while getting banner settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1264s ) 1264s E AssertionError: "Exception occurred while getting banner [75 chars]7): " != 'Exception occurred while getting banner [52 chars]a7: ' 1264s E - Exception occurred while getting banner settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1264s E ? ---------------------- - 1264s E + Exception occurred while getting banner settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1264s 1264s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:854: AssertionError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s {'msg': "Exception occurred while getting banner settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): ", 'response': [{'globalPool': {'response': {}, 'msg': {}}}, {'reservePool': {'response': {}, 'msg': {}}}, {'network': {'response': {}, 'msg': {}}}], 'failed': True} 1264s ------------------------------ Captured log call ------------------------------- 1264s WARNING logger:dnac.py:294 NetworkSettings: get_dns_settings_for_site: 1153: No DNS settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1264s 1264s WARNING logger:dnac.py:294 NetworkSettings: get_ntp_settings_for_site: 1231: No NTP server settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1264s 1264s WARNING logger:dnac.py:294 NetworkSettings: get_time_zone_settings_for_site: 1270: No time zone settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1264s 1264s CRITICAL logger:dnac.py:294 NetworkSettings: get_banner_settings_for_site: 1318: Exception occurred while getting banner settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1264s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_global_pool_creation _ 1264s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_Network_settings_workflow_manager_global_pool_creation(self): 1264s """ 1264s Test case for site workflow manager when creating a site. 1264s 1264s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s state="merged", 1264s config_verify=True, 1264s config=self.playbook_global_pool_creation 1264s ) 1264s ) 1264s > result = self.execute_module(changed=True, failed=False) 1264s 1264s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:975: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1264s result = self.changed(changed) 1264s tests/unit/modules/dnac/dnac_module.py:133: in changed 1264s self.module.main() 1264s plugins/modules/network_settings_workflow_manager.py:4301: in main 1264s ccc_network.check_return_status() 1264s plugins/module_utils/dnac.py:307: in check_return_status 1264s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s def fail_json(*args, **kwargs): 1264s kwargs["failed"] = True 1264s > raise AnsibleFailJson(kwargs) 1264s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "The specified version '2.2.3.3' does not support the Network_settings_workflow features. Supported versions start from '2.3.5.3' onwards. ", 'response': [{'globalPool': {'response': {}, 'msg': {}}}, {'reservePool': {'response': {}, 'msg': {}}}, {'network': {'response': {}, 'msg': {}}}], 'failed': True} 1264s 1264s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1264s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_timezone_get _ 1264s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_Network_settings_workflow_manager_network_exception_timezone_get(self): 1264s """ 1264s Test case for site workflow manager when creating a site. 1264s 1264s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s dnac_version="2.3.7.6", 1264s state="merged", 1264s config_verify=True, 1264s config=self.playbook_config_network 1264s ) 1264s ) 1264s result = self.execute_module(changed=False, failed=True) 1264s print(result) 1264s > self.assertEqual( 1264s result.get('msg'), 1264s "Exception occurred while getting time zone settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1264s ) 1264s E AssertionError: "Exception occurred while getting time zo[78 chars]7): " != 'Exception occurred while getting time zo[55 chars]a7: ' 1264s E - Exception occurred while getting time zone settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1264s E ? ---------------------- - 1264s E + Exception occurred while getting time zone settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1264s 1264s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:804: AssertionError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s {'msg': "Exception occurred while getting time zone settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): ", 'response': [{'globalPool': {'response': {}, 'msg': {}}}, {'reservePool': {'response': {}, 'msg': {}}}, {'network': {'response': {}, 'msg': {}}}], 'failed': True} 1264s ------------------------------ Captured log call ------------------------------- 1264s WARNING logger:dnac.py:294 NetworkSettings: get_dns_settings_for_site: 1153: No DNS settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1264s 1264s WARNING logger:dnac.py:294 NetworkSettings: get_ntp_settings_for_site: 1231: No NTP server settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1264s 1264s CRITICAL logger:dnac.py:294 NetworkSettings: get_time_zone_settings_for_site: 1278: Exception occurred while getting time zone settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1264s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_5 _________ 1264s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_run_compliance_with_site_failure_5(self): 1264s 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=False, 1264s dnac_log_level="DEBUG", 1264s dnac_log_append=False, 1264s state="merged", 1264s config=self.test_data.get("playbook_config_run_compliance_site") 1264s ) 1264s ) 1264s > result = self.execute_module(changed=False, failed=True) 1264s 1264s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:730: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s tests/unit/modules/dnac/dnac_module.py:107: in execute_module 1264s result = self.failed() 1264s tests/unit/modules/dnac/dnac_module.py:125: in failed 1264s self.module.main() 1264s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1264s ccc_network_compliance.get_want(config).check_return_status() 1264s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1264s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1264s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list 1264s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name) 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s def get_reachable_devices_from_site(self, site_name): 1264s """ 1264s Retrieves a mapping of management IP addresses to instance IDs for reachable devices from a specified site. 1264s Args: 1264s site_id (str): The ID of the site from which to retrieve device details. 1264s Returns: 1264s tuple: A tuple containing: 1264s - dict: A mapping of management IP addresses to instance IDs for reachable devices. 1264s - list: A list of management IP addresses of skipped devices. 1264s """ 1264s mgmt_ip_to_instance_id_map = {} 1264s skipped_devices_list = [] 1264s 1264s (site_exists, site_id) = self.get_site_id(site_name) 1264s if not site_exists: 1264s self.msg = "Site '{0}' does not exist in the Cisco Catalyst Center, cannot proceed with device(s) retrieval.".format(site_name) 1264s self.fail_and_exit(self.msg) 1264s 1264s self.log("Initiating retrieval of device details for site ID: '{0}'.".format(site_id), "INFO") 1264s 1264s # Retrieve the list of device details from the specified site 1264s device_details_list = self.get_device_details_from_site(site_name, site_id) 1264s self.log("Device details retrieved for site ID: '{0}': {1}".format(site_id, device_details_list), "DEBUG") 1264s 1264s # Iterate through each device's details 1264s for device_info in device_details_list: 1264s > management_ip = device_info.get("managementIpAddress") 1264s E AttributeError: 'list' object has no attribute 'get' 1264s 1264s plugins/module_utils/dnac.py:767: AttributeError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s Inside load_fixtures 1264s Mock for DNACSDK._exec: 1264s Inside load_fixtures 1264s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_assign_cred_2 _ 1264s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_device_credentials_workflow_manager_assign_cred_2(self): 1264s """ 1264s Test case for device credential workflow manager when assigning a device credential to site in dnac_version="2.3.5.3". 1264s 1264s This test case checks the behavior of the device credential workflow manager when assigning a device credential to site in the specified DNAC. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_version="2.3.5.3", 1264s dnac_log=True, 1264s state="merged", 1264s config=self.playbook_config_assign 1264s ) 1264s ) 1264s result = self.execute_module(changed=True, failed=False) 1264s print(result) 1264s self.assertEqual( 1264s > result['response'][0]['assignCredential']['Assign Credentials']['msg'], 1264s "Device Credential Assigned to a site is Successfully" 1264s ) 1264s E KeyError: 'assignCredential' 1264s 1264s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:288: KeyError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s {'changed': True, 'diff': [], 'response': [{'global_credential': {}, 'assign_credential': {'Assign Credentials': {'response': [{'cliId': '2885a877-022a-4c18-b38f-825a63ebd7d1', 'snmpV2ReadId': '97061bab-1d11-4df4-950c-9304fb846b83', 'snmpV2WriteId': '07c3c5fc-35e6-4c83-bdcb-6322d4bf7103', 'httpRead': 'caf0f5f8-46a4-4516-8766-4ffe1be7ed2a', 'httpWrite': 'a07ab73f-83bb-4cb8-8a75-a7e1b9c116db', 'snmpV3Id': '9900b521-0dfb-4bd1-b044-d31037c8def3', 'site_id': 'dfa9dfa8-3728-4e28-9095-d58c12af5977'}, {'cliId': '2885a877-022a-4c18-b38f-825a63ebd7d1', 'snmpV2ReadId': '97061bab-1d11-4df4-950c-9304fb846b83', 'snmpV2WriteId': '07c3c5fc-35e6-4c83-bdcb-6322d4bf7103', 'httpRead': 'caf0f5f8-46a4-4516-8766-4ffe1be7ed2a', 'httpWrite': 'a07ab73f-83bb-4cb8-8a75-a7e1b9c116db', 'snmpV3Id': '9900b521-0dfb-4bd1-b044-d31037c8def3', 'site_id': 'a31a0c2c-c725-4ab8-8e65-4a5bc14aa615'}], 'msg': 'Device Credential Assigned to a site is Successfully'}}, 'apply_credential': {}}], 'warnings': []} 1264s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_dhcp_gett _ 1264s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_Network_settings_workflow_manager_network_exception_dhcp_gett(self): 1264s """ 1264s Test case for site workflow manager when creating a site. 1264s 1264s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s dnac_version="2.3.7.6", 1264s state="merged", 1264s config_verify=True, 1264s config=self.playbook_config_network 1264s ) 1264s ) 1264s result = self.execute_module(changed=False, failed=True) 1264s print(result) 1264s > self.assertEqual( 1264s result.get('msg'), 1264s "Exception occurred while getting DHCP settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1264s ) 1264s E AssertionError: "Exception occurred while getting DHCP se[73 chars]7): " != 'Exception occurred while getting DHCP se[50 chars]a7: ' 1264s E - Exception occurred while getting DHCP settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1264s E ? ---------------------- - 1264s E + Exception occurred while getting DHCP settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1264s 1264s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:829: AssertionError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s {'msg': "Exception occurred while getting DHCP settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): ", 'response': [{'globalPool': {'response': {}, 'msg': {}}}, {'reservePool': {'response': {}, 'msg': {}}}, {'network': {'response': {}, 'msg': {}}}], 'failed': True} 1264s ------------------------------ Captured log call ------------------------------- 1264s CRITICAL logger:dnac.py:294 NetworkSettings: get_dhcp_settings_for_site: 1122: Exception occurred while getting DHCP settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1264s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_6 _________ 1264s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_run_compliance_with_site_failure_6(self): 1264s 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=False, 1264s dnac_log_level="DEBUG", 1264s dnac_log_append=False, 1264s state="merged", 1264s config=self.test_data.get("playbook_config_run_compliance_site") 1264s ) 1264s ) 1264s > result = self.execute_module(changed=False, failed=True) 1264s 1264s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:751: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s tests/unit/modules/dnac/dnac_module.py:107: in execute_module 1264s result = self.failed() 1264s tests/unit/modules/dnac/dnac_module.py:125: in failed 1264s self.module.main() 1264s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1264s ccc_network_compliance.get_want(config).check_return_status() 1264s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1264s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1264s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list 1264s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name) 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s def get_reachable_devices_from_site(self, site_name): 1264s """ 1264s Retrieves a mapping of management IP addresses to instance IDs for reachable devices from a specified site. 1264s Args: 1264s site_id (str): The ID of the site from which to retrieve device details. 1264s Returns: 1264s tuple: A tuple containing: 1264s - dict: A mapping of management IP addresses to instance IDs for reachable devices. 1264s - list: A list of management IP addresses of skipped devices. 1264s """ 1264s mgmt_ip_to_instance_id_map = {} 1264s skipped_devices_list = [] 1264s 1264s (site_exists, site_id) = self.get_site_id(site_name) 1264s if not site_exists: 1264s self.msg = "Site '{0}' does not exist in the Cisco Catalyst Center, cannot proceed with device(s) retrieval.".format(site_name) 1264s self.fail_and_exit(self.msg) 1264s 1264s self.log("Initiating retrieval of device details for site ID: '{0}'.".format(site_id), "INFO") 1264s 1264s # Retrieve the list of device details from the specified site 1264s device_details_list = self.get_device_details_from_site(site_name, site_id) 1264s self.log("Device details retrieved for site ID: '{0}': {1}".format(site_id, device_details_list), "DEBUG") 1264s 1264s # Iterate through each device's details 1264s for device_info in device_details_list: 1264s > management_ip = device_info.get("managementIpAddress") 1264s E AttributeError: 'list' object has no attribute 'get' 1264s 1264s plugins/module_utils/dnac.py:767: AttributeError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s Inside load_fixtures 1264s Mock for DNACSDK._exec: 1264s Inside load_fixtures 1264s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_global_pool_deletion _ 1264s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_Network_settings_workflow_manager_global_pool_deletion(self): 1264s """ 1264s Test case for site workflow manager when creating a site. 1264s 1264s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s state="deleted", 1264s config_verify=True, 1264s config=self.playbook_config_global_pool_deletion 1264s ) 1264s ) 1264s > result = self.execute_module(changed=True, failed=False) 1264s 1264s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:1026: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1264s result = self.changed(changed) 1264s tests/unit/modules/dnac/dnac_module.py:133: in changed 1264s self.module.main() 1264s plugins/modules/network_settings_workflow_manager.py:4301: in main 1264s ccc_network.check_return_status() 1264s plugins/module_utils/dnac.py:307: in check_return_status 1264s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s def fail_json(*args, **kwargs): 1264s kwargs["failed"] = True 1264s > raise AnsibleFailJson(kwargs) 1264s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "The specified version '2.2.3.3' does not support the Network_settings_workflow features. Supported versions start from '2.3.5.3' onwards. ", 'response': [{'globalPool': {'response': {}, 'msg': {}}}, {'reservePool': {'response': {}, 'msg': {}}}, {'network': {'response': {}, 'msg': {}}}], 'failed': True} 1264s 1264s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1264s _____________ TestNetworkCompliance.test_sync_device_config_iplist _____________ 1264s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_sync_device_config_iplist(self): 1264s 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s dnac_log_level="DEBUG", 1264s dnac_log_append=False, 1264s state="merged", 1264s config=self.test_data.get("playbook_config_sync_device_config_iplist") 1264s ) 1264s ) 1264s > result = self.execute_module(changed=True, failed=False) 1264s 1264s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:455: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1264s result = self.changed(changed) 1264s tests/unit/modules/dnac/dnac_module.py:133: in changed 1264s self.module.main() 1264s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1264s ccc_network_compliance.get_want(config).check_return_status() 1264s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1264s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1264s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list 1264s self.fail_and_exit(self.msg) 1264s plugins/module_utils/dnac.py:1787: in fail_and_exit 1264s self.check_return_status() 1264s plugins/module_utils/dnac.py:307: in check_return_status 1264s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s def fail_json(*args, **kwargs): 1264s kwargs["failed"] = True 1264s > raise AnsibleFailJson(kwargs) 1264s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs).", 'response': "No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs).", 'failed': True} 1264s 1264s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1264s ----------------------------- Captured stdout call ----------------------------- 1264s Inside load_fixtures 1264s Mock for DNACSDK._exec: 1264s Inside load_fixtures 1264s ------------------------------ Captured log call ------------------------------- 1264s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 116: Cisco Catalyst Center parameters: {'dnac_host': '1.1.1.1', 'dnac_port': '443', 'dnac_username': 'dummy', 'dnac_password': 'dummy', 'dnac_version': '2.2.3.3', 'dnac_verify': True, 'dnac_debug': False, 'dnac_log': True, 'dnac_log_level': 'DEBUG', 'dnac_log_file_path': 'dnac.log', 'dnac_log_append': False} 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_input: 422: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': False, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': True}] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1663 status: success, msg: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': False, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': True}] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 532: Validating the provided configuration: {'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': False, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': True} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_params: 538: Extracted parameters - IP Address List: ['192.168.0.0'], Site Name: None, Run Compliance: False, Run Compliance Categories: None, Sync Device Config: True 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None' 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1264s 1264s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 484: Validating if any network compliance operation is requested: run_compliance=False, run_compliance_categories=None, sync_device_config=True 1264s 1264s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 556: Validation completed for configuration: {'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': False, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': True} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 809: Entering get_device_id_list with args: ip_address_list=['192.168.0.0'], site_name=None 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 677: Entering get_device_list_params method with ip_address_list: ['192.168.0.0'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 697: Entering 'get_device_ids_from_ip' method with parameters: {'management_ip_address': ['192.168.0.0']} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 1: {'response': [{'reachabilityStatus': 'Reachable', 'family': 'Switches and Hubs', 'managementIpAddress': '192.168.0.0', 'instanceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'id': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'}]} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: 192.168.0.0, Reachability: Reachable, Collection Status: None, Family: Switches and Hubs 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device 192.168.0.0 as its status is Reachable or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 501: {'response': [{'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'RUNNING_CONFIG', 'status': 'NON_COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1717977820546, 'lastUpdateTime': 1721609911624, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}], 'version': '1.0', 'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 1001: {'response': {'taskId': 'ce5e3f8d-9ac7-4215-9b83-fac7228c9e63', 'url': '/api/v1/task/ce5e3f8d-9ac7-4215-9b83-fac7228c9e63'}, 'version': '1.0'} 1264s 1264s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 788: Error fetching device IDs from Cisco Catalyst Center. Error details: 'str' object has no attribute 'get' 1264s 1264s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1264s 1264s ERROR logger:dnac.py:294 NetworkCompliance: set_operation_result: 1780: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs). 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1787 status: failed, msg: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs). 1264s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_dns_get _ 1264s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_Network_settings_workflow_manager_network_exception_dns_get(self): 1264s """ 1264s Test case for site workflow manager when creating a site. 1264s 1264s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s dnac_version="2.3.7.6", 1264s state="merged", 1264s config_verify=True, 1264s config=self.playbook_config_network 1264s ) 1264s ) 1264s result = self.execute_module(changed=False, failed=True) 1264s print(result) 1264s > self.assertEqual( 1264s result.get('msg'), 1264s "Exception occurred while getting DNS settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1264s ) 1264s E AssertionError: "Exception occurred while getting DNS set[72 chars]7): " != 'Exception occurred while getting DNS set[49 chars]a7: ' 1264s E - Exception occurred while getting DNS settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1264s E ? ---------------------- - 1264s E + Exception occurred while getting DNS settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1264s 1264s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:754: AssertionError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s {'msg': "Exception occurred while getting DNS settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): ", 'response': [{'globalPool': {'response': {}, 'msg': {}}}, {'reservePool': {'response': {}, 'msg': {}}}, {'network': {'response': {}, 'msg': {}}}], 'failed': True} 1264s ------------------------------ Captured log call ------------------------------- 1264s CRITICAL logger:dnac.py:294 NetworkSettings: get_dns_settings_for_site: 1161: Exception occurred while getting DNS settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1264s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_creation _ 1264s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_device_credentials_workflow_manager_creation(self): 1264s """ 1264s Test case for device credential workflow manager when creating a device credential. 1264s 1264s This test case checks the behavior of the device credential workflow manager when creating a new device credentials in the specified DNAC. 1264s """ 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s state="merged", 1264s config=self.playbook_config_creation 1264s ) 1264s ) 1264s result = self.execute_module(changed=True, failed=False) 1264s print(result) 1264s self.assertEqual( 1264s > result['response'][0]['globalCredential']['Creation']['msg'], 1264s "Global Credential Created Successfully" 1264s ) 1264s E KeyError: 'globalCredential' 1264s 1264s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:216: KeyError 1264s ----------------------------- Captured stdout call ----------------------------- 1264s {'changed': True, 'diff': [], 'response': [{'global_credential': {'Creation': {'response': {'cliCredential': [{'password': '12345', 'description': 'CLI1', 'username': 'cli1', 'enablePassword': '12345'}], 'snmpV2cRead': [{'readCommunity': '123456', 'description': 'SNMPv2c Read1'}], 'snmpV2cWrite': [{'writeCommunity': '123456', 'description': 'SNMPv2c Write1'}], 'httpsRead': [{'password': '12345', 'description': 'HTTP Read1', 'username': 'HTTP_Read1', 'port': 443}], 'httpsWrite': [{'password': '12345', 'description': 'HTTP Write1', 'username': 'HTTP_Write1', 'port': 443}], 'snmpV3': [{'description': 'snmpV31', 'username': 'snmpV31', 'snmpMode': 'AUTHPRIV', 'authPassword': '12345678', 'authType': 'SHA', 'privacyPassword': '12345678', 'privacyType': 'AES128'}]}, 'msg': 'Global Credential Created Successfully'}, 'No Updation': {'response': 'No Response', 'msg': 'No Updation is available'}}, 'assign_credential': {}, 'apply_credential': {}}], 'warnings': []} 1264s __________ TestNetworkCompliance.test_run_compliance_with_iplist_site __________ 1264s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1264s 1264s self = 1264s 1264s def test_run_compliance_with_iplist_site(self): 1264s 1264s set_module_args( 1264s dict( 1264s dnac_host="1.1.1.1", 1264s dnac_username="dummy", 1264s dnac_password="dummy", 1264s dnac_log=True, 1264s dnac_log_level="DEBUG", 1264s dnac_log_append=False, 1264s state="merged", 1264s config=self.test_data.get("playbook_config_run_compliance_iplist_site") 1264s ) 1264s ) 1264s > result = self.execute_module(changed=True, failed=False) 1264s 1264s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:391: 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1264s result = self.changed(changed) 1264s tests/unit/modules/dnac/dnac_module.py:133: in changed 1264s self.module.main() 1264s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1264s ccc_network_compliance.get_want(config).check_return_status() 1264s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1264s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1264s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list 1264s self.fail_and_exit(self.msg) 1264s plugins/module_utils/dnac.py:1787: in fail_and_exit 1264s self.check_return_status() 1264s plugins/module_utils/dnac.py:307: in check_return_status 1264s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1264s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1264s 1264s def fail_json(*args, **kwargs): 1264s kwargs["failed"] = True 1264s > raise AnsibleFailJson(kwargs) 1264s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: Global. This could be due to Unreachable devices or access points (APs).", 'response': "No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: Global. This could be due to Unreachable devices or access points (APs).", 'failed': True} 1264s 1264s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1264s ----------------------------- Captured stdout call ----------------------------- 1264s Inside load_fixtures 1264s Mock for DNACSDK._exec: 1264s Inside load_fixtures 1264s ------------------------------ Captured log call ------------------------------- 1264s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 116: Cisco Catalyst Center parameters: {'dnac_host': '1.1.1.1', 'dnac_port': '443', 'dnac_username': 'dummy', 'dnac_password': 'dummy', 'dnac_version': '2.2.3.3', 'dnac_verify': True, 'dnac_debug': False, 'dnac_log': True, 'dnac_log_level': 'DEBUG', 'dnac_log_file_path': 'dnac.log', 'dnac_log_append': False} 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_input: 422: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': ['192.168.0.0'], 'site_name': 'Global', 'run_compliance': True, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': False}] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1663 status: success, msg: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': ['192.168.0.0'], 'site_name': 'Global', 'run_compliance': True, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': False}] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1264s 1264s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 532: Validating the provided configuration: {'ip_address_list': ['192.168.0.0'], 'site_name': 'Global', 'run_compliance': True, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': False} 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_params: 538: Extracted parameters - IP Address List: ['192.168.0.0'], Site Name: Global, Run Compliance: True, Run Compliance Categories: None, Sync Device Config: False 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'Global' 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1264s 1264s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1264s 1264s DEBUG logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 484: Validating if any network compliance operation is requested: run_compliance=True, run_compliance_categories=None, sync_device_config=False 1264s 1264s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 556: Validation completed for configuration: {'ip_address_list': ['192.168.0.0'], 'site_name': 'Global', 'run_compliance': True, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': False} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 809: Entering get_device_id_list with args: ip_address_list=['192.168.0.0'], site_name=Global 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 677: Entering get_device_list_params method with ip_address_list: ['192.168.0.0'] 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 697: Entering 'get_device_ids_from_ip' method with parameters: {'management_ip_address': ['192.168.0.0']} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 1: {'response': [{'additionalInfo': [], 'name': 'Global', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'siteHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'siteNameHierarchy': 'Global'}]} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 501: {'site': {'response': [{'parentId': '0c0aef1d-0ab9-4660-b216-649c4fe2b7a7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'address': 'Tokyo, Japan', 'addressInheritedFrom': '0c0aef1d-0ab9-4660-b216-649c4fe2b7a7', 'type': 'floor'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'anchorWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'tertiaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'primaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80143381-187c-48fa-a356-15389aad4e9c/9674054e-fd9e-49ed-8084-1ce9131d6781/0c0aef1d-0ab9-4660-b216-649c4fe2b7a7/c9c21b46-5956-4e6e-9dbf-49f3e6e55a66', 'groupNameHierarchy': 'Global/Japan/Tokyo/Ansible_Tower/Ansible_Floor', 'name': 'Ansible_Floor', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'c9c21b46-5956-4e6e-9dbf-49f3e6e55a66'}, {'parentId': '9674054e-fd9e-49ed-8084-1ce9131d6781', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'anchorWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'tertiaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'primaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c'}}, {'nameSpace': 'Location', 'attributes': {'country': 'Japan', 'address': 'Tokyo, Japan', 'latitude': '35.6764', 'addressInheritedFrom': '0c0aef1d-0ab9-4660-b216-649c4fe2b7a7', 'type': 'building', 'longitude': '139.65'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '1', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80143381-187c-48fa-a356-15389aad4e9c/9674054e-fd9e-49ed-8084-1ce9131d6781/0c0aef1d-0ab9-4660-b216-649c4fe2b7a7', 'groupNameHierarchy': 'Global/Japan/Tokyo/Ansible_Tower', 'name': 'Ansible_Tower', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '0c0aef1d-0ab9-4660-b216-649c4fe2b7a7'}, {'parentId': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '2', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'type': 'area'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'anchorWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'tertiaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'primaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/bf561bf3-95d6-4da1-bf49-26887955fa2e/eda30e7b-0e67-4879-85bd-cfc30b0d9765', 'groupNameHierarchy': 'Global/India/Bangalore', 'name': 'Bangalore', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'eda30e7b-0e67-4879-85bd-cfc30b0d9765'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '1', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/16244588-f6da-4ef7-b329-87eed13902be', 'groupNameHierarchy': 'Global/USA/BayAreaGuest', 'name': 'BayAreaGuest', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '16244588-f6da-4ef7-b329-87eed13902be'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '1', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/a83421d0-cfe5-4318-85ee-a991d2cdd748', 'groupNameHierarchy': 'Global/USA/BERKELEY', 'name': 'BERKELEY', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'a83421d0-cfe5-4318-85ee-a991d2cdd748'}, {'parentId': '3fbfb158-a429-41b3-a220-6a6286f93d16', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'Ev Chargers Bldg 10, 7200-10 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'latitude': '35.85992111421487', 'addressInheritedFrom': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'type': 'building', 'longitude': '-78.8829258991226'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '3', 'hasChild': 'TRUE', 'group.count.direct': '3', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'groupNameHierarchy': 'Global/USA/RTP/BLD10', 'name': 'BLD10', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a'}, {'parentId': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Ev Chargers Bldg 10, 7200-10 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'type': 'floor'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/dca266ec-80d9-4692-8782-1f1d3d7aed0a/0d64a127-ae63-46f8-9b76-9d7d1502c6d4', 'groupNameHierarchy': 'Global/USA/RTP/BLD10/BLD10_FLOOR1', 'name': 'BLD10_FLOOR1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '0d64a127-ae63-46f8-9b76-9d7d1502c6d4'}, {'parentId': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Ev Chargers Bldg 10, 7200-10 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'type': 'floor'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/dca266ec-80d9-4692-8782-1f1d3d7aed0a/f5c31c72-6d56-456b-aefb-d7cc942e5b04', 'groupNameHierarchy': 'Global/USA/RTP/BLD10/BLD10_FLOOR2', 'name': 'BLD10_FLOOR2', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'f5c31c72-6d56-456b-aefb-d7cc942e5b04'}, {'parentId': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Ev Chargers Bldg 10, 7200-10 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'type': 'floor'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/dca266ec-80d9-4692-8782-1f1d3d7aed0a/67966786-b701-4099-8e1a-4191534f36d2', 'groupNameHierarchy': 'Global/USA/RTP/BLD10/BLD10_FLOOR3', 'name': 'BLD10_FLOOR3', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '67966786-b701-4099-8e1a-4191534f36d2'}, {'parentId': '3fbfb158-a429-41b3-a220-6a6286f93d16', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'Cisco Systems, 7200 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'latitude': '35.86059627310624', 'addressInheritedFrom': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'type': 'building', 'longitude': '-78.88105620286412'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '3', 'hasChild': 'TRUE', 'group.count.direct': '3', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/89b128e0-3217-4f63-bf99-b202ec7c0103', 'groupNameHierarchy': 'Global/USA/RTP/BLD11', 'name': 'BLD11', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '89b128e0-3217-4f63-bf99-b202ec7c0103'}, {'parentId': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Cisco Systems, 7200 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'type': 'floor'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/89b128e0-3217-4f63-bf99-b202ec7c0103/16b5e550-d288-4e11-94a6-baaa8e3d9c08', 'groupNameHierarchy': 'Global/USA/RTP/BLD11/BLD11_FLOOR1', 'name': 'BLD11_FLOOR1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '16b5e550-d288-4e11-94a6-baaa8e3d9c08'}, {'parentId': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Cisco Systems, 7200 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'type': 'floor'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/89b128e0-3217-4f63-bf99-b202ec7c0103/8c57bcf3-b0e4-4f47-b45e-bbb9f32e2997', 'groupNameHierarchy': 'Global/USA/RTP/BLD11/BLD11_FLOOR2', 'name': 'BLD11_FLOOR2', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '8c57bcf3-b0e4-4f47-b45e-bbb9f32e2997'}, {'parentId': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Cisco Systems, 7200 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'type': 'floor'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/89b128e0-3217-4f63-bf99-b202ec7c0103/be5fd8eb-dda4-4f38-b5ce-35d1d49151cc', 'groupNameHierarchy': 'Global/USA/RTP/BLD11/BLD11_FLOOR3', 'name': 'BLD11_FLOOR3', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'be5fd8eb-dda4-4f38-b5ce-35d1d49151cc'}, {'parentId': '3fbfb158-a429-41b3-a220-6a6286f93d16', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '3', 'hasChild': 'TRUE', 'group.count.direct': '3', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'Cisco Systems, 7200-12 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'latitude': '35.8611847591779', 'addressInheritedFrom': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'type': 'building', 'longitude': '-78.88217248318003'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/4996f8ef-8933-412e-b58b-2238ba860ec7', 'groupNameHierarchy': 'Global/USA/RTP/BLD12', 'name': 'BLD12', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '4996f8ef-8933-412e-b58b-2238ba860ec7'}, {'parentId': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Cisco Systems, 7200-12 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'type': 'floor'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/4996f8ef-8933-412e-b58b-2238ba860ec7/d44f3eca-a3dc-4ed1-a020-0ded43c78056', 'groupNameHierarchy': 'Global/USA/RTP/BLD12/BLD12_FLOOR1', 'name': 'BLD12_FLOOR1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'd44f3eca-a3dc-4ed1-a020-0ded43c78056'}, {'parentId': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Cisco Systems, 7200-12 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'type': 'floor'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/4996f8ef-8933-412e-b58b-2238ba860ec7/fb5bbd30-3a01-4eaf-a24d-b0e75ff158c6', 'groupNameHierarchy': 'Global/USA/RTP/BLD12/BLD12_FLOOR2', 'name': 'BLD12_FLOOR2', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'fb5bbd30-3a01-4eaf-a24d-b0e75ff158c6'}, {'parentId': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Cisco Systems, 7200-12 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'type': 'floor'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/4996f8ef-8933-412e-b58b-2238ba860ec7/ea574cd8-fa45-48ab-9944-83ed33537416', 'groupNameHierarchy': 'Global/USA/RTP/BLD12/BLD12_FLOOR3', 'name': 'BLD12_FLOOR3', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'ea574cd8-fa45-48ab-9944-83ed33537416'}, {'parentId': '65eba291-ee04-43d2-bddb-a2cb2e7ff7d8', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': '725 Alder Drive, Milpitas, California 95035, United States', 'latitude': '37.415947', 'addressInheritedFrom': 'ed089cbf-3622-492f-bf60-5baf6d0b3708', 'type': 'building', 'longitude': '-121.916327'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '1', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/ed089cbf-3622-492f-bf60-5baf6d0b3708', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD20', 'name': 'BLD20', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'ed089cbf-3622-492f-bf60-5baf6d0b3708'}, {'parentId': 'ed089cbf-3622-492f-bf60-5baf6d0b3708', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'address': '725 Alder Drive, Milpitas, California 95035, United States', 'addressInheritedFrom': 'ed089cbf-3622-492f-bf60-5baf6d0b3708', 'type': 'floor'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/ed089cbf-3622-492f-bf60-5baf6d0b3708/47a127ae-92bd-49ec-aed0-aec8e2a31678', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD20/BLD20_FLOOR1', 'name': 'BLD20_FLOOR1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '47a127ae-92bd-49ec-aed0-aec8e2a31678'}, {'parentId': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'type': 'floor'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/36d3230c-c6ce-44ae-8901-3b4a624883e6/625bcb2d-4e4a-4571-80e9-c5d2caad4ecf', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD23/BLD20_FLOOR2', 'name': 'BLD20_FLOOR2', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '625bcb2d-4e4a-4571-80e9-c5d2caad4ecf'}, {'parentId': '65eba291-ee04-43d2-bddb-a2cb2e7ff7d8', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '5', 'hasChild': 'TRUE', 'group.count.direct': '5', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'latitude': '37.398188', 'addressInheritedFrom': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'type': 'building', 'longitude': '-121.912974'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/36d3230c-c6ce-44ae-8901-3b4a624883e6', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD23', 'name': 'BLD23', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '36d3230c-c6ce-44ae-8901-3b4a624883e6'}, {'parentId': 'a83421d0-cfe5-4318-85ee-a991d2cdd748', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': '725 Alder Drive, Milpitas, California 95035, United States', 'latitude': '37.415947', 'addressInheritedFrom': '8ff6aa1d-089f-41e2-8e42-5cad97770e7d', 'type': 'building', 'longitude': '-121.916327'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/a83421d0-cfe5-4318-85ee-a991d2cdd748/8ff6aa1d-089f-41e2-8e42-5cad97770e7d', 'groupNameHierarchy': 'Global/USA/BERKELEY/BLDBERK', 'name': 'BLDBERK', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '8ff6aa1d-089f-41e2-8e42-5cad97770e7d'}, {'parentId': '16244588-f6da-4ef7-b329-87eed13902be', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': '725 Alder Drive, Milpitas, California 95035, United States', 'latitude': '37.415947', 'addressInheritedFrom': 'fa666989-76fb-4aa1-8caf-ad9dc6d08ef7', 'type': 'building', 'longitude': '-121.916327'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/16244588-f6da-4ef7-b329-87eed13902be/fa666989-76fb-4aa1-8caf-ad9dc6d08ef7', 'groupNameHierarchy': 'Global/USA/BayAreaGuest/BLD_GB', 'name': 'BLD_GB', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'fa666989-76fb-4aa1-8caf-ad9dc6d08ef7'}, {'parentId': '21cc7dad-8c9e-4637-8f24-22ec417b9811', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'UMBRELLA', 'attributes': {'umbrellaReady': 'true', 'member.umbrellaNotReady.direct': '0', 'member.umbrellaReady.direct': '1', 'member.umbrellaReadyNotEnabled.direct': '1', 'member.umbrellaEnabled.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'latitude': '37.398188', 'addressInheritedFrom': '274da223-2411-4689-8f70-b5bbd8915020', 'type': 'building', 'longitude': '-121.912974'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '3', 'hasChild': 'TRUE', 'group.count.direct': '3', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '3', 'member.count.direct': '1'}}, {'nameSpace': 'ETA', 'attributes': {'member.compatibleWithNaasOnly.direct': '0', 'member.etaCapable.direct': '1', 'member.etaReady.direct': '1', 'member.etaEnabledNaasOnly.direct': '0', 'ETAReady': 'true', 'member.etaNotReady.direct': '0', 'member.etaReadyNotEnabled.direct': '1', 'member.etaEnabled.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/21cc7dad-8c9e-4637-8f24-22ec417b9811/274da223-2411-4689-8f70-b5bbd8915020', 'groupNameHierarchy': 'Global/USA/New York/BLDNYC', 'name': 'BLDNYC', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '274da223-2411-4689-8f70-b5bbd8915020'}, {'parentId': '4a03cd04-41bb-4e3c-9a59-3f96637c27e7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'latitude': '37.398188', 'addressInheritedFrom': 'b497a0ab-3ab4-42fd-8921-2f45af587b98', 'type': 'building', 'longitude': '-121.912974'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/4a03cd04-41bb-4e3c-9a59-3f96637c27e7/b497a0ab-3ab4-42fd-8921-2f45af587b98', 'groupNameHierarchy': 'Global/USA/SAN-FRANCISCO/BLD_SF', 'name': 'BLD_SF', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'b497a0ab-3ab4-42fd-8921-2f45af587b98'}, {'parentId': '4a03cd04-41bb-4e3c-9a59-3f96637c27e7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'latitude': '37.398188', 'addressInheritedFrom': 'ef6944e0-72be-4d1d-8e29-1ca1ebcf8d98', 'type': 'building', 'longitude': '-121.912974'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/4a03cd04-41bb-4e3c-9a59-3f96637c27e7/ef6944e0-72be-4d1d-8e29-1ca1ebcf8d98', 'groupNameHierarchy': 'Global/USA/SAN-FRANCISCO/BLD_SF1', 'name': 'BLD_SF1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'ef6944e0-72be-4d1d-8e29-1ca1ebcf8d98'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'anchorWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'tertiaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'primaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '2', 'hasChild': 'TRUE', 'group.count.direct': '2', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'type': 'area'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'groupNameHierarchy': 'Global/Chennai', 'name': 'Chennai', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '80be6b3f-2bb8-4711-ae59-f7a667eedb08'}, {'parentId': '6f4d01b1-d00c-4471-8aa2-28b7e99636ab', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': '1579 Hopkins Drive, San Jose, California 95122, United States', 'latitude': '37.338', 'addressInheritedFrom': '7010b0ed-ae2b-41bd-977a-79b1628dd1b7', 'type': 'building', 'longitude': '-121.832'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '1', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/6f4d01b1-d00c-4471-8aa2-28b7e99636ab/7010b0ed-ae2b-41bd-977a-79b1628dd1b7', 'groupNameHierarchy': 'Global/USA/Georgia/cisco', 'name': 'cisco', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '7010b0ed-ae2b-41bd-977a-79b1628dd1b7'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '94f61603-5f1f-4b26-85dd-59355cd67632', 'type': 'area'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '94f61603-5f1f-4b26-85dd-59355cd67632', 'anchorWlcInheritedFrom': '94f61603-5f1f-4b26-85dd-59355cd67632', 'tertiaryWlcInheritedFrom': '94f61603-5f1f-4b26-85dd-59355cd67632', 'primaryWlcInheritedFrom': '94f61603-5f1f-4b26-85dd-59355cd67632'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/94f61603-5f1f-4b26-85dd-59355cd67632', 'groupNameHierarchy': 'Global/Demo4', 'name': 'Demo4', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '94f61603-5f1f-4b26-85dd-59355cd67632'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '633a40de-b885-448c-bd84-dd1fef679fbe', 'anchorWlcInheritedFrom': '633a40de-b885-448c-bd84-dd1fef679fbe', 'tertiaryWlcInheritedFrom': '633a40de-b885-448c-bd84-dd1fef679fbe', 'primaryWlcInheritedFrom': '633a40de-b885-448c-bd84-dd1fef679fbe'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '633a40de-b885-448c-bd84-dd1fef679fbe', 'type': 'area'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/633a40de-b885-448c-bd84-dd1fef679fbe', 'groupNameHierarchy': 'Global/Demo5', 'name': 'Demo5', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '633a40de-b885-448c-bd84-dd1fef679fbe'}, {'parentId': 'caa9eb0d-618b-4d90-ac10-eb2a2d17e763', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'width': '200.0', 'length': '100.0', 'height': '10.0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'anchorWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'tertiaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'primaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': 'None', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'Location', 'attributes': {'country': 'India', 'address': 'Bengaluru, Karnataka, India', 'latitude': '0.0', 'addressInheritedFrom': 'caa9eb0d-618b-4d90-ac10-eb2a2d17e763', 'type': 'floor', 'longitude': '0.0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/bf561bf3-95d6-4da1-bf49-26887955fa2e/eda30e7b-0e67-4879-85bd-cfc30b0d9765/caa9eb0d-618b-4d90-ac10-eb2a2d17e763/e3c898bc-a0d5-47b9-83c6-a48a88fa6fbe', 'groupNameHierarchy': 'Global/India/Bangalore/Mantri Square/floor1', 'name': 'floor1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'e3c898bc-a0d5-47b9-83c6-a48a88fa6fbe'}, {'parentId': '274da223-2411-4689-8f70-b5bbd8915020', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '17301034-7715-4363-952f-3d290ea6ca59', 'primaryWlc': '778a27bb-d795-4fa3-a321-f2e693ebe1f4'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '2', 'member.count.direct': '2'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'UMBRELLA', 'attributes': {'umbrellaReady': 'true', 'member.umbrellaNotReady.direct': '0', 'member.umbrellaReady.direct': '1', 'member.umbrellaReadyNotEnabled.direct': '1', 'member.umbrellaEnabled.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '274da223-2411-4689-8f70-b5bbd8915020', 'type': 'floor'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/21cc7dad-8c9e-4637-8f24-22ec417b9811/274da223-2411-4689-8f70-b5bbd8915020/17301034-7715-4363-952f-3d290ea6ca59', 'groupNameHierarchy': 'Global/USA/New York/BLDNYC/FLOOR1', 'name': 'FLOOR1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '17301034-7715-4363-952f-3d290ea6ca59'}, {'parentId': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'type': 'floor'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/36d3230c-c6ce-44ae-8901-3b4a624883e6/8a7ddd03-dddb-4a76-a079-56c3b45ab1ec', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD23/FLOOR1_LEVEL1', 'name': 'FLOOR1_LEVEL1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '8a7ddd03-dddb-4a76-a079-56c3b45ab1ec'}, {'parentId': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'type': 'floor'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/36d3230c-c6ce-44ae-8901-3b4a624883e6/c45259ff-0612-4fe7-907c-5987877892d9', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD23/FLOOR1_LEVEL2', 'name': 'FLOOR1_LEVEL2', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'c45259ff-0612-4fe7-907c-5987877892d9'}, {'parentId': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'type': 'floor'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/36d3230c-c6ce-44ae-8901-3b4a624883e6/eb935311-f082-416e-a13c-08acdc6219c0', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD23/FLOOR1_LEVEL3', 'name': 'FLOOR1_LEVEL3', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'eb935311-f082-416e-a13c-08acdc6219c0'}, {'parentId': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'type': 'floor'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/36d3230c-c6ce-44ae-8901-3b4a624883e6/78b8a15c-c112-4941-b00b-ceda2edb38f2', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD23/FLOOR1_LEVEL4', 'name': 'FLOOR1_LEVEL4', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '78b8a15c-c112-4941-b00b-ceda2edb38f2'}, {'parentId': '274da223-2411-4689-8f70-b5bbd8915020', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '212be018-cfb6-4041-9caa-d344385848b7', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'secondaryWlc': '778a27bb-d795-4fa3-a321-f2e693ebe1f4', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '274da223-2411-4689-8f70-b5bbd8915020', 'type': 'floor'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/21cc7dad-8c9e-4637-8f24-22ec417b9811/274da223-2411-4689-8f70-b5bbd8915020/212be018-cfb6-4041-9caa-d344385848b7', 'groupNameHierarchy': 'Global/USA/New York/BLDNYC/FLOOR2', 'name': 'FLOOR2', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '212be018-cfb6-4041-9caa-d344385848b7'}, {'parentId': '7010b0ed-ae2b-41bd-977a-79b1628dd1b7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'address': '1579 Hopkins Drive, San Jose, California 95122, United States', 'addressInheritedFrom': '7010b0ed-ae2b-41bd-977a-79b1628dd1b7', 'type': 'floor'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': 'None', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/6f4d01b1-d00c-4471-8aa2-28b7e99636ab/7010b0ed-ae2b-41bd-977a-79b1628dd1b7/5e6d602a-4135-44ef-a5ae-8d9ee6056f3b', 'groupNameHierarchy': 'Global/USA/Georgia/cisco/Floor_test', 'name': 'Floor_test', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '5e6d602a-4135-44ef-a5ae-8d9ee6056f3b'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '2', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/6f4d01b1-d00c-4471-8aa2-28b7e99636ab', 'groupNameHierarchy': 'Global/USA/Georgia', 'name': 'Georgia', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '6f4d01b1-d00c-4471-8aa2-28b7e99636ab'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '3', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'anchorWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'tertiaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'primaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'type': 'area'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/bf561bf3-95d6-4da1-bf49-26887955fa2e', 'groupNameHierarchy': 'Global/India', 'name': 'India', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'bf561bf3-95d6-4da1-bf49-26887955fa2e'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'anchorWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'tertiaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'primaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '3', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'type': 'area'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80143381-187c-48fa-a356-15389aad4e9c', 'groupNameHierarchy': 'Global/Japan', 'name': 'Japan', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '80143381-187c-48fa-a356-15389aad4e9c'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'Bengaluru, Karnataka, India', 'latitude': '25.2', 'addressInheritedFrom': 'd0484233-604a-4972-b010-42a0d44fe3d6', 'type': 'building', 'longitude': '42.1'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': 'd0484233-604a-4972-b010-42a0d44fe3d6', 'anchorWlcInheritedFrom': 'd0484233-604a-4972-b010-42a0d44fe3d6', 'tertiaryWlcInheritedFrom': 'd0484233-604a-4972-b010-42a0d44fe3d6', 'primaryWlcInheritedFrom': 'd0484233-604a-4972-b010-42a0d44fe3d6'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/d0484233-604a-4972-b010-42a0d44fe3d6', 'groupNameHierarchy': 'Global/JJJ', 'name': 'JJJ', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'd0484233-604a-4972-b010-42a0d44fe3d6'}, {'parentId': 'eda30e7b-0e67-4879-85bd-cfc30b0d9765', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'India', 'address': 'Bengaluru, Karnataka, India', 'latitude': '12.969910', 'addressInheritedFrom': 'caa9eb0d-618b-4d90-ac10-eb2a2d17e763', 'type': 'building', 'longitude': '77.597960'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '1', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'anchorWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'tertiaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'primaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/bf561bf3-95d6-4da1-bf49-26887955fa2e/eda30e7b-0e67-4879-85bd-cfc30b0d9765/caa9eb0d-618b-4d90-ac10-eb2a2d17e763', 'groupNameHierarchy': 'Global/India/Bangalore/Mantri Square', 'name': 'Mantri Square', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'caa9eb0d-618b-4d90-ac10-eb2a2d17e763'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '4', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '3', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/21cc7dad-8c9e-4637-8f24-22ec417b9811', 'groupNameHierarchy': 'Global/USA/New York', 'name': 'New York', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '21cc7dad-8c9e-4637-8f24-22ec417b9811'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '12', 'hasChild': 'TRUE', 'group.count.direct': '3', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16', 'groupNameHierarchy': 'Global/USA/RTP', 'name': 'RTP', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '3fbfb158-a429-41b3-a220-6a6286f93d16'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/7002e28c-a309-454b-ac5d-a6a99d64bc20', 'groupNameHierarchy': 'Global/USA/Sample', 'name': 'Sample', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '7002e28c-a309-454b-ac5d-a6a99d64bc20'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '2', 'hasChild': 'TRUE', 'group.count.direct': '2', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/4a03cd04-41bb-4e3c-9a59-3f96637c27e7', 'groupNameHierarchy': 'Global/USA/SAN-FRANCISCO', 'name': 'SAN-FRANCISCO', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '4a03cd04-41bb-4e3c-9a59-3f96637c27e7'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '8', 'hasChild': 'TRUE', 'group.count.direct': '2', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8', 'groupNameHierarchy': 'Global/USA/SAN JOSE', 'name': 'SAN JOSE', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '65eba291-ee04-43d2-bddb-a2cb2e7ff7d8'}, {'parentId': '274da223-2411-4689-8f70-b5bbd8915020', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'width': '58.1', 'length': '103.23', 'height': '58.22'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'latitude': '0.0', 'addressInheritedFrom': '274da223-2411-4689-8f70-b5bbd8915020', 'type': 'floor', 'longitude': '0.0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': 'None', 'isCadFile': 'false', 'floorIndex': '1'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/21cc7dad-8c9e-4637-8f24-22ec417b9811/274da223-2411-4689-8f70-b5bbd8915020/398f4d42-d265-4233-8ec3-5e4ba73c9956', 'groupNameHierarchy': 'Global/USA/New York/BLDNYC/Test_Floor3', 'name': 'Test_Floor3', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '398f4d42-d265-4233-8ec3-5e4ba73c9956'}, {'parentId': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'India', 'latitude': '12', 'addressInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'type': 'building', 'longitude': '80'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'anchorWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'tertiaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'primaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80be6b3f-2bb8-4711-ae59-f7a667eedb08/0e238b6e-e390-4dae-8932-49ceb3376304', 'groupNameHierarchy': 'Global/Chennai/Tidel', 'name': 'Tidel', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '0e238b6e-e390-4dae-8932-49ceb3376304'}, {'parentId': '80143381-187c-48fa-a356-15389aad4e9c', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'type': 'area'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'anchorWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'tertiaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'primaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '2', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80143381-187c-48fa-a356-15389aad4e9c/9674054e-fd9e-49ed-8084-1ce9131d6781', 'groupNameHierarchy': 'Global/Japan/Tokyo', 'name': 'Tokyo', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '9674054e-fd9e-49ed-8084-1ce9131d6781'}, {'parentId': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'India', 'address': 'Cognizant Technology Solutions, Chennai, Tamil Nadu 600113, India', 'latitude': '12.9908', 'addressInheritedFrom': '05d2d29c-3c23-478e-88ee-7ec60398634f', 'type': 'building', 'longitude': '80.2470'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'anchorWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'tertiaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'primaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80be6b3f-2bb8-4711-ae59-f7a667eedb08/05d2d29c-3c23-478e-88ee-7ec60398634f', 'groupNameHierarchy': 'Global/Chennai/Trill', 'name': 'Trill', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '05d2d29c-3c23-478e-88ee-7ec60398634f'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '38', 'hasChild': 'TRUE', 'group.count.direct': '8', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '3', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupNameHierarchy': 'Global/USA', 'name': 'USA', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '69f31d51-9e0d-48f4-8546-4935253f9a67'}], 'version': '1.0'}, 'device': [{'response': [{'instanceUuid': '3bf3f269-88ae-48fc-910d-3263ba618f87', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 0, 'apManagerInterfaceIp': '', 'associatedWlcIp': '', 'bootDateTime': '2024-05-27 02:32:55', 'collectionInterval': 'Global Default', 'collectionIntervalValue': '01:30:00', 'collectionStatus': 'Managed', 'description': 'Cisco IOS Software [Dublin], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.14.1, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2024 by Cisco Systems, Inc. Compiled Fri 05-Apr-24 00:08 by mcpre netconf enabled', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '192.168.0.1', 'family': 'Switches and Hubs', 'hostname': 'DC-FR-9300.cisco.local', 'interfaceCount': '0', 'inventoryStatusDetail': '', 'lastDeviceResyncStartTime': '2024-07-18 17:40:01', 'lastUpdateTime': 1721324455437, 'lastUpdated': '2024-07-18 17:40:55', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': 'd4:ad:bd:c1:67:00', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.1', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204.192. 3. 40', 'pendingSyncRequestsCount': '0', 'platformId': 'C9300-24U', 'reachabilityFailureReason': '', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': 'Periodic', 'reasonsForPendingSyncRequests': '', 'role': 'ACCESS', 'roleSource': 'AUTO', 'serialNumber': 'FJC2327U0S2', 'series': 'Cisco Catalyst 9300 Series Switches', 'snmpContact': '', 'snmpLocation': '', 'softwareType': 'IOS-XE', 'softwareVersion': '17.14.1', 'tagCount': '0', 'type': 'Cisco Catalyst 9300 Switch', 'upTime': '52 days, 15:08:19.76', 'uptimeSeconds': 4552059, 'vendor': 'Cisco'}, {'instanceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 0, 'apManagerInterfaceIp': '', 'associatedWlcIp': '', 'bootDateTime': '2024-05-27 02:34:15', 'collectionInterval': 'Global Default', 'collectionIntervalValue': '01:30:00', 'collectionStatus': 'In Progress', 'description': 'Cisco IOS Software [Dublin], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.14.1, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2024 by Cisco Systems, Inc. Compiled Fri 05-Apr-24 00:08 by mcpre netconf enabled', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '192.168.0.0', 'family': 'Switches and Hubs', 'hostname': 'DC-T-9300.cisco.local', 'interfaceCount': '0', 'inventoryStatusDetail': '', 'lastDeviceResyncStartTime': '2024-07-18 19:00:21', 'lastUpdateTime': 1721323875769, 'lastUpdated': '2024-07-18 17:31:15', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': '00:b6:70:32:b8:00', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.0', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204. 1. 2. 5', 'pendingSyncRequestsCount': '1', 'platformId': 'C9300-24P', 'reachabilityFailureReason': '', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': 'Periodic', 'reasonsForPendingSyncRequests': 'Periodic', 'role': 'ACCESS', 'roleSource': 'AUTO', 'serialNumber': 'FCW2225C020', 'series': 'Cisco Catalyst 9300 Series Switches', 'snmpContact': '', 'snmpLocation': '', 'softwareType': 'IOS-XE', 'softwareVersion': '17.14.1', 'tagCount': '0', 'type': 'Cisco Catalyst 9300 Switch', 'upTime': '52 days, 14:57:41.19', 'uptimeSeconds': 4551979, 'vendor': 'Cisco'}, {'instanceUuid': '9db11f54-8007-438c-ba9b-711513deecc6', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 0, 'apManagerInterfaceIp': '', 'associatedWlcIp': '', 'bootDateTime': '2024-05-28 00:14:36', 'collectionInterval': 'Global Default', 'collectionIntervalValue': '01:30:00', 'collectionStatus': 'Managed', 'description': 'Cisco IOS Software [Dublin], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.12.2, RELEASE SOFTWARE (fc2) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2023 by Cisco Systems, Inc. Compiled Tue 14-Nov-23 05:56 by mcpre netconf enabled', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '192.168.0.2', 'family': 'Switches and Hubs', 'hostname': 'NY-EN-9300.cisco.local', 'interfaceCount': '0', 'inventoryStatusDetail': '', 'lastDeviceResyncStartTime': '2024-07-18 17:40:01', 'lastUpdateTime': 1721324496374, 'lastUpdated': '2024-07-18 17:41:36', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': '90:88:55:07:59:00', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.2', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204. 1. 2. 2', 'pendingSyncRequestsCount': '0', 'platformId': 'C9300-48UXM, C9300-48UXM', 'reachabilityFailureReason': '', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': 'Periodic', 'reasonsForPendingSyncRequests': '', 'role': 'ACCESS', 'roleSource': 'AUTO', 'serialNumber': 'FJC271924K0, FJC271924EQ', 'series': 'Cisco Catalyst 9300 Series Switches', 'snmpContact': '', 'snmpLocation': '', 'softwareType': 'IOS-XE', 'softwareVersion': '17.12.2', 'tagCount': '0', 'type': 'Cisco Catalyst 9300 Switch', 'upTime': '51 days, 17:27:00.06', 'uptimeSeconds': 4473958, 'vendor': 'Cisco'}, {'instanceUuid': 'f490e92f-490e-4bb1-9519-770b1dc604c4', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 0, 'apManagerInterfaceIp': '', 'associatedWlcIp': '', 'bootDateTime': '2024-05-27 22:21:03', 'collectionInterval': 'Global Default', 'collectionIntervalValue': '01:30:00', 'collectionStatus': 'Managed', 'description': 'Cisco IOS Software [Dublin], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.14.1, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2024 by Cisco Systems, Inc. Compiled Fri 05-Apr-24 00:08 by mcpre netconf enabled', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '192.168.0.3', 'family': 'Switches and Hubs', 'hostname': 'NY-BN-9300.cisco.local', 'interfaceCount': '0', 'inventoryStatusDetail': '', 'lastDeviceResyncStartTime': '2024-07-18 17:40:01', 'lastUpdateTime': 1721324523813, 'lastUpdated': '2024-07-18 17:42:03', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': '0c:75:bd:41:14:00', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.3', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204. 1. 2. 4', 'pendingSyncRequestsCount': '0', 'platformId': 'C9300-48UXM, C9300-48UXM', 'reachabilityFailureReason': '', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': 'Periodic', 'reasonsForPendingSyncRequests': '', 'role': 'DISTRIBUTION', 'roleSource': 'AUTO', 'serialNumber': 'FJB2334D06N, FJC2335S09D', 'series': 'Cisco Catalyst 9300 Series Switches', 'snmpContact': '', 'snmpLocation': '', 'softwareType': 'IOS-XE', 'softwareVersion': '17.14.1', 'tagCount': '0', 'type': 'Cisco Catalyst 9300 Switch', 'upTime': '51 days, 19:21:44.15', 'uptimeSeconds': 4480771, 'vendor': 'Cisco'}], 'version': '1.0', 'siteId': '3cf15665-7b7b-4b29-82a9-75b8d094b602'}, {'response': [], 'version': '1.0', 'siteId': 'c9c21b46-5956-4e6e-9dbf-49f3e6e55a66', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '0c0aef1d-0ab9-4660-b216-649c4fe2b7a7', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'eda30e7b-0e67-4879-85bd-cfc30b0d9765', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '16244588-f6da-4ef7-b329-87eed13902be', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'a83421d0-cfe5-4318-85ee-a991d2cdd748', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '0d64a127-ae63-46f8-9b76-9d7d1502c6d4', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'f5c31c72-6d56-456b-aefb-d7cc942e5b04', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '67966786-b701-4099-8e1a-4191534f36d2', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '16b5e550-d288-4e11-94a6-baaa8e3d9c08', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '8c57bcf3-b0e4-4f47-b45e-bbb9f32e2997', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'be5fd8eb-dda4-4f38-b5ce-35d1d49151cc', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'd44f3eca-a3dc-4ed1-a020-0ded43c78056', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'fb5bbd30-3a01-4eaf-a24d-b0e75ff158c6', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'ea574cd8-fa45-48ab-9944-83ed33537416', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'ed089cbf-3622-492f-bf60-5baf6d0b3708', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '47a127ae-92bd-49ec-aed0-aec8e2a31678', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '625bcb2d-4e4a-4571-80e9-c5d2caad4ecf', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '8ff6aa1d-089f-41e2-8e42-5cad97770e7d', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'fa666989-76fb-4aa1-8caf-ad9dc6d08ef7', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [{'instanceUuid': 'e0bdf3e1-fbcf-4faa-a11c-156e32e7ae38', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 0, 'apManagerInterfaceIp': '', 'associatedWlcIp': '', 'bootDateTime': '2024-05-27 02:35:07', 'collectionInterval': 'Global Default', 'collectionIntervalValue': '01:30:00', 'collectionStatus': 'Managed', 'description': 'Cisco IOS Software [Dublin], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.14.1, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2024 by Cisco Systems, Inc. Compiled Fri 05-Apr-24 00:08 by mcpre netconf enabled', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '192.168.0.4', 'family': 'Switches and Hubs', 'hostname': 'SJ-EN-9300.cisco.local', 'interfaceCount': '0', 'inventoryStatusDetail': '', 'lastDeviceResyncStartTime': '2024-07-18 17:40:01', 'lastUpdateTime': 1721324467241, 'lastUpdated': '2024-07-18 17:41:07', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': '90:88:55:8e:42:80', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.4', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204. 1. 2. 1', 'pendingSyncRequestsCount': '0', 'platformId': 'C9300-48T', 'reachabilityFailureReason': '', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': 'Periodic', 'reasonsForPendingSyncRequests': '', 'role': 'ACCESS', 'roleSource': 'AUTO', 'serialNumber': 'FJC2721271T', 'series': 'Cisco Catalyst 9300 Series Switches', 'snmpContact': '', 'snmpLocation': '', 'softwareType': 'IOS-XE', 'softwareVersion': '17.14.1', 'tagCount': '0', 'type': 'Cisco Catalyst 9300 Switch', 'upTime': '52 days, 15:06:55.77', 'uptimeSeconds': 4551928, 'vendor': 'Cisco'}], 'version': '1.0', 'siteId': '274da223-2411-4689-8f70-b5bbd8915020'}, {'response': [], 'version': '1.0', 'siteId': 'b497a0ab-3ab4-42fd-8921-2f45af587b98', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'ef6944e0-72be-4d1d-8e29-1ca1ebcf8d98', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '7010b0ed-ae2b-41bd-977a-79b1628dd1b7', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '94f61603-5f1f-4b26-85dd-59355cd67632', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '633a40de-b885-448c-bd84-dd1fef679fbe', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'e3c898bc-a0d5-47b9-83c6-a48a88fa6fbe', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [{'instanceUuid': '37b05b0f-1b1e-496a-b101-8f277f0af8ff', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 2, 'apEthernetMacAddress': '34:5d:a8:0e:20:b4', 'apManagerInterfaceIp': '192.168.0.5', 'associatedWlcIp': '192.168.0.5', 'collectionInterval': 'NA', 'collectionStatus': 'Managed', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '', 'errorCode': 'null', 'family': 'Unified AP', 'hostname': 'LTTS-test1', 'interfaceCount': '0', 'inventoryStatusDetail': 'NA', 'lastDeviceResyncStartTime': '', 'lastUpdateTime': 1721327458431, 'lastUpdated': '2024-07-18 18:30:58', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': '90:e9:5e:03:f3:40', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.5', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204. 1.216. 2', 'pendingSyncRequestsCount': '0', 'platformId': 'C9130AXE-B', 'reachabilityFailureReason': 'NA', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': '', 'reasonsForPendingSyncRequests': '', 'role': 'ACCESS', 'roleSource': 'AUTO', 'serialNumber': 'FJC27181V9V', 'series': 'Cisco Catalyst 9130AXE Series Unified Access Points', 'snmpContact': '', 'snmpLocation': 'LTTS/Cisco/Chennai', 'softwareVersion': '17.14.0.79', 'tagCount': '0', 'type': 'Cisco Catalyst 9130AXE Unified Access Point', 'upTime': '3 days, 01:57:12.330', 'uptimeSeconds': 268009, 'vendor': 'NA'}, {'instanceUuid': '778a27bb-d795-4fa3-a321-f2e693ebe1f4', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 0, 'apManagerInterfaceIp': '', 'associatedWlcIp': '', 'bootDateTime': '2024-05-26 21:53:58', 'collectionInterval': 'Global Default', 'collectionIntervalValue': '01:30:00', 'collectionStatus': 'Managed', 'description': 'Cisco IOS Software [Dublin], C9800 Software (C9800_IOSXE-K9), Version 17.14.1, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2024 by Cisco Systems, Inc. Compiled Fri 05-Apr-24 00:11 by mcpre netconf enabled', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '192.168.0.6', 'family': 'Wireless Controller', 'hostname': 'NY-EWLC-1.cisco.local', 'interfaceCount': '0', 'inventoryStatusDetail': '', 'lastDeviceResyncStartTime': '2024-07-18 18:30:26', 'lastUpdateTime': 1721327458431, 'lastUpdated': '2024-07-18 18:30:58', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': 'cc:b6:c8:e2:29:0b', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.6', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204.192. 6.200', 'pendingSyncRequestsCount': '0', 'platformId': 'C9800-40-K9', 'reachabilityFailureReason': '', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': 'Periodic', 'reasonsForPendingSyncRequests': '', 'role': 'ACCESS', 'roleSource': 'AUTO', 'serialNumber': 'FOX2639PAY7', 'series': 'Cisco Catalyst 9800 Series Wireless Controllers', 'snmpContact': '', 'snmpLocation': '', 'softwareType': 'IOS-XE', 'softwareVersion': '17.14.1', 'tagCount': '0', 'type': 'Cisco Catalyst 9800-40 Wireless Controller', 'upTime': '52 days, 20:37:58.64', 'uptimeSeconds': 4568797, 'vendor': 'Cisco'}], 'version': '1.0', 'siteId': '17301034-7715-4363-952f-3d290ea6ca59'}, {'response': [], 'version': '1.0', 'siteId': '8a7ddd03-dddb-4a76-a079-56c3b45ab1ec', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'c45259ff-0612-4fe7-907c-5987877892d9', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'eb935311-f082-416e-a13c-08acdc6219c0', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '78b8a15c-c112-4941-b00b-ceda2edb38f2', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '212be018-cfb6-4041-9caa-d344385848b7', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '5e6d602a-4135-44ef-a5ae-8d9ee6056f3b', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '6f4d01b1-d00c-4471-8aa2-28b7e99636ab', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '80143381-187c-48fa-a356-15389aad4e9c', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'd0484233-604a-4972-b010-42a0d44fe3d6', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'caa9eb0d-618b-4d90-ac10-eb2a2d17e763', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '21cc7dad-8c9e-4637-8f24-22ec417b9811', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '3fbfb158-a429-41b3-a220-6a6286f93d16', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '7002e28c-a309-454b-ac5d-a6a99d64bc20', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '4a03cd04-41bb-4e3c-9a59-3f96637c27e7', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '65eba291-ee04-43d2-bddb-a2cb2e7ff7d8', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '398f4d42-d265-4233-8ec3-5e4ba73c9956', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '0e238b6e-e390-4dae-8932-49ceb3376304', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '9674054e-fd9e-49ed-8084-1ce9131d6781', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '05d2d29c-3c23-478e-88ee-7ec60398634f', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'message': 'Site does not have device member with given device family or serial number as input'}]} 1265s 1265s WARNING logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 724: Exiting the loop because no devices were returned after increasing the offset. Current offset: 501 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 782: Total number of devices received: 1 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 783: Number of devices that are Unreachable or APs: 1 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 784: Config Backup Operation can be performed on the following filtered devices: 0 1265s 1265s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 823: Retrieving device IDs for site: Global 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 809: Initiating retrieval of site details for site name: 'Global'. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 813: Using 'get_site' API for Catalyst Center version: '2233'. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: execute_get_request: 1832: Initiating GET API call for Function: get_site from Family: sites with Parameters: {'name': 'Global'}. 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: execute_get_request: 1848: Response received from GET API call to Function: 'get_site' from Family: 'sites' is Response: {'response': [{'reachabilityStatus': 'Reachable', 'family': 'Switches and Hubs', 'managementIpAddress': '192.168.0.0', 'instanceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'id': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'}]} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_site_id: 845: Site details retrieved for site 'Global'': {'response': [{'reachabilityStatus': 'Reachable', 'family': 'Switches and Hubs', 'managementIpAddress': '192.168.0.0', 'instanceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'id': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'}]} 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 759: Initiating retrieval of device details for site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b'. 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 703: Initiating retrieval of device IDs for site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b'. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 660: Initiating retrieval of device IDs for site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b'. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 664: Using 'get_membership' API for Catalyst Center version: '2233'. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: execute_get_request: 1832: Initiating GET API call for Function: get_membership from Family: sites with Parameters: {'site_id': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'}. 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: execute_get_request: 1848: Response received from GET API call to Function: 'get_membership' from Family: 'sites' is Response: {'response': [{'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'IMAGE', 'status': 'COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1721042297620, 'lastUpdateTime': 1721061010296, 'sourceInfoList': [], 'additionalDataURL': '/api/v2/device-image/device?id=92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'ackStatus': 'UNACKNOWLEDGED'}, {'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'EOX', 'status': 'NOT_APPLICABLE', 'state': 'SUCCESS', 'lastSyncTime': 1721042297708, 'lastUpdateTime': 1721061010419, 'sourceInfoList': [], 'message': 'EOX status not available.', 'ackStatus': 'UNACKNOWLEDGED'}, {'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'NETWORK_SETTINGS', 'status': 'NOT_APPLICABLE', 'state': 'SUCCESS', 'lastSyncTime': 1721042297420, 'lastUpdateTime': 1721061010438, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}, {'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'PSIRT', 'status': 'COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1721042297733, 'lastUpdateTime': 1721061010335, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}, {'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'RUNNING_CONFIG', 'status': 'COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1721042299163, 'lastUpdateTime': 1721061010242, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}], 'version': '1.0', 'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 668: Received response from 'get_membership'. Extracting device IDs. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 674: Retrieved device IDs from membership for site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1265s 1265s WARNING logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 688: No devices found for site 'Global' with site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b'. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 721: Device IDs retrieved from site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 763: Device details retrieved for site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 792: No reachable devices found at Site: 92ffce88-9fce-41d2-ae69-086fa74e9c4b 1265s 1265s ERROR logger:dnac.py:294 NetworkCompliance: set_operation_result: 1780: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: Global. This could be due to Unreachable devices or access points (APs). 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1787 status: failed, msg: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: Global. This could be due to Unreachable devices or access points (APs). 1265s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_aaa_get _ 1265s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Network_settings_workflow_manager_network_exception_aaa_get(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s dnac_version="2.3.7.6", 1265s state="merged", 1265s config_verify=True, 1265s config=self.playbook_config_network 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "Exception occurred while getting AAA settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1265s ) 1265s E AssertionError: "Exception occurred while getting AAA set[72 chars]7): " != 'Exception occurred while getting AAA set[49 chars]a7: ' 1265s E - Exception occurred while getting AAA settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1265s E ? ---------------------- - 1265s E + Exception occurred while getting AAA settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1265s 1265s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:879: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "Exception occurred while getting AAA settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): ", 'response': [{'globalPool': {'response': {}, 'msg': {}}}, {'reservePool': {'response': {}, 'msg': {}}}, {'network': {'response': {}, 'msg': {}}}], 'failed': True} 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 NetworkSettings: get_dns_settings_for_site: 1153: No DNS settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_ntp_settings_for_site: 1231: No NTP server settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_time_zone_settings_for_site: 1270: No time zone settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_banner_settings_for_site: 1309: No banner (Message of the Day) settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s CRITICAL logger:dnac.py:294 NetworkSettings: get_aaa_settings_for_site: 1377: Exception occurred while getting AAA settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1265s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_ntp_get _ 1265s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Network_settings_workflow_manager_network_exception_ntp_get(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s dnac_version="2.3.7.6", 1265s state="merged", 1265s config_verify=True, 1265s config=self.playbook_config_network 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "Exception occurred while getting NTP server settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1265s ) 1265s E AssertionError: "Exception occurred while getting NTP ser[79 chars]7): " != 'Exception occurred while getting NTP ser[56 chars]a7: ' 1265s E - Exception occurred while getting NTP server settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1265s E ? ---------------------- - 1265s E + Exception occurred while getting NTP server settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1265s 1265s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:779: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "Exception occurred while getting NTP server settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): ", 'response': [{'globalPool': {'response': {}, 'msg': {}}}, {'reservePool': {'response': {}, 'msg': {}}}, {'network': {'response': {}, 'msg': {}}}], 'failed': True} 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 NetworkSettings: get_dns_settings_for_site: 1153: No DNS settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s CRITICAL logger:dnac.py:294 NetworkSettings: get_ntp_settings_for_site: 1239: Exception occurred while getting NTP server settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1265s ________ TestNetworkCompliance.test_sync_device_config_iplist_failure_1 ________ 1265s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_sync_device_config_iplist_failure_1(self): 1265s 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s dnac_log_level="DEBUG", 1265s dnac_log_append=False, 1265s state="merged", 1265s config=self.test_data.get("playbook_config_sync_device_config_iplist") 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s > self.assertIn( 1265s "Error occurred while synchronizing device configuration for parameters - {'deviceId':", 1265s result.get('msg') 1265s ) 1265s E AssertionError: "Error occurred while synchronizing device configuration for parameters - {'deviceId':" not found in "No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs)." 1265s 1265s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:773: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s Inside load_fixtures 1265s Mock for DNACSDK._exec: 1265s Inside load_fixtures 1265s ------------------------------ Captured log call ------------------------------- 1265s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 116: Cisco Catalyst Center parameters: {'dnac_host': '1.1.1.1', 'dnac_port': '443', 'dnac_username': 'dummy', 'dnac_password': 'dummy', 'dnac_version': '2.2.3.3', 'dnac_verify': True, 'dnac_debug': False, 'dnac_log': True, 'dnac_log_level': 'DEBUG', 'dnac_log_file_path': 'dnac.log', 'dnac_log_append': False} 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: validate_input: 422: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': False, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': True}] 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1663 status: success, msg: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': False, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': True}] 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 532: Validating the provided configuration: {'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': False, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': True} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: validate_params: 538: Extracted parameters - IP Address List: ['192.168.0.0'], Site Name: None, Run Compliance: False, Run Compliance Categories: None, Sync Device Config: True 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None' 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1265s 1265s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 484: Validating if any network compliance operation is requested: run_compliance=False, run_compliance_categories=None, sync_device_config=True 1265s 1265s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 556: Validation completed for configuration: {'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': False, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': True} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 809: Entering get_device_id_list with args: ip_address_list=['192.168.0.0'], site_name=None 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 677: Entering get_device_list_params method with ip_address_list: ['192.168.0.0'] 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 697: Entering 'get_device_ids_from_ip' method with parameters: {'management_ip_address': ['192.168.0.0']} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 1: {'response': [{'reachabilityStatus': 'Reachable', 'family': 'Switches and Hubs', 'managementIpAddress': '192.168.0.0', 'instanceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'id': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'}]} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: 192.168.0.0, Reachability: Reachable, Collection Status: None, Family: Switches and Hubs 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device 192.168.0.0 as its status is Reachable or its collectionStatus is None. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 501: {'response': [{'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'RUNNING_CONFIG', 'status': 'NON_COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1717977820546, 'lastUpdateTime': 1721609911624, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}], 'version': '1.0', 'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1265s 1265s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 788: Error fetching device IDs from Cisco Catalyst Center. Error details: Simulated exception 1265s 1265s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1265s 1265s ERROR logger:dnac.py:294 NetworkCompliance: set_operation_result: 1780: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs). 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1787 status: failed, msg: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs). 1265s _____________ TestNetworkCompliance.test_run_compliance_with_site ______________ 1265s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_run_compliance_with_site(self): 1265s 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=False, 1265s dnac_log_level="DEBUG", 1265s dnac_log_append=False, 1265s state="merged", 1265s config=self.test_data.get("playbook_config_run_compliance_site") 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:370: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1265s ccc_network_compliance.get_want(config).check_return_status() 1265s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1265s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1265s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list 1265s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def get_reachable_devices_from_site(self, site_name): 1265s """ 1265s Retrieves a mapping of management IP addresses to instance IDs for reachable devices from a specified site. 1265s Args: 1265s site_id (str): The ID of the site from which to retrieve device details. 1265s Returns: 1265s tuple: A tuple containing: 1265s - dict: A mapping of management IP addresses to instance IDs for reachable devices. 1265s - list: A list of management IP addresses of skipped devices. 1265s """ 1265s mgmt_ip_to_instance_id_map = {} 1265s skipped_devices_list = [] 1265s 1265s (site_exists, site_id) = self.get_site_id(site_name) 1265s if not site_exists: 1265s self.msg = "Site '{0}' does not exist in the Cisco Catalyst Center, cannot proceed with device(s) retrieval.".format(site_name) 1265s self.fail_and_exit(self.msg) 1265s 1265s self.log("Initiating retrieval of device details for site ID: '{0}'.".format(site_id), "INFO") 1265s 1265s # Retrieve the list of device details from the specified site 1265s device_details_list = self.get_device_details_from_site(site_name, site_id) 1265s self.log("Device details retrieved for site ID: '{0}': {1}".format(site_id, device_details_list), "DEBUG") 1265s 1265s # Iterate through each device's details 1265s for device_info in device_details_list: 1265s > management_ip = device_info.get("managementIpAddress") 1265s E AttributeError: 'list' object has no attribute 'get' 1265s 1265s plugins/module_utils/dnac.py:767: AttributeError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s Inside load_fixtures 1265s Mock for DNACSDK._exec: 1265s Inside load_fixtures 1265s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_provision_old_version _ 1265s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_accesspoint_workflow_manager_provision_old_version(self): 1265s """ 1265s Test case for access point workfollow manager provision device old version. 1265s 1265s This test case checks the behavior of the access point workflow when provisioned in the specified Cisco Catalyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s dnac_version="2.3.5.3", 1265s config_verify=True, 1265s config=self.playbook_config_provision_old_version 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s self.maxDiff = None 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "The provided site name 'Global/Chennai/LTTS/FLOOR1' is either invalid or not present in the Cisco Catalyst Center." 1265s ) 1265s E AssertionError: 'AP - LTTS_Test_9124_T2 does not need any update' != "The provided site name 'Global/Chennai/L[94 chars]ter." 1265s E - AP - LTTS_Test_9124_T2 does not need any update 1265s E + The provided site name 'Global/Chennai/LTTS/FLOOR1' is either invalid or not present in the Cisco Catalyst Center. 1265s 1265s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:302: AssertionError 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 Accesspoint: site_exists: 2929: The provided site name 'Global/Chennai/LTTS/FLOOR1' is either invalid or not present in the Cisco Catalyst Center.'NoneType' object has no attribute 'get' 1265s 1265s ERROR logger:dnac.py:294 Accesspoint: set_operation_result: 1780: The provided site name 'Global/Chennai/LTTS/FLOOR1' is either invalid or not present in the Cisco Catalyst Center. 1265s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_aaa _ 1265s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Network_settings_workflow_manager_network_exception_update_aaa(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s dnac_version="2.3.7.6", 1265s state="merged", 1265s config_verify=True, 1265s config=self.playbook_update_network 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "Exception occurred while updating AAA settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1265s ) 1265s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating AAA se[50 chars]a7: ' 1265s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1265s E + Exception occurred while updating AAA settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1265s 1265s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:654: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .", 'response': "An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .", 'failed': True} 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 NetworkSettings: get_dns_settings_for_site: 1153: No DNS settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_ntp_settings_for_site: 1231: No NTP server settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_time_zone_settings_for_site: 1270: No time zone settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_banner_settings_for_site: 1309: No banner (Message of the Day) settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_aaa_settings_for_site: 1357: No network_aaa and client_and_endpoint_aaa settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s ERROR logger:dnac.py:294 NetworkSettings: set_operation_result: 1780: An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1265s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_dns _ 1265s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Network_settings_workflow_manager_network_exception_update_dns(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s dnac_version="2.3.7.6", 1265s state="merged", 1265s config_verify=True, 1265s config=self.playbook_update_network 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "Exception occurred while updating DNS settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1265s ) 1265s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating DNS se[50 chars]a7: ' 1265s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1265s E + Exception occurred while updating DNS settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1265s 1265s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:604: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .", 'response': "An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .", 'failed': True} 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 NetworkSettings: get_dns_settings_for_site: 1153: No DNS settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_ntp_settings_for_site: 1231: No NTP server settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_time_zone_settings_for_site: 1270: No time zone settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_banner_settings_for_site: 1309: No banner (Message of the Day) settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_aaa_settings_for_site: 1357: No network_aaa and client_and_endpoint_aaa settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s ERROR logger:dnac.py:294 NetworkSettings: set_operation_result: 1780: An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1265s ________ TestNetworkCompliance.test_sync_device_config_iplist_failure_2 ________ 1265s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_sync_device_config_iplist_failure_2(self): 1265s 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s dnac_log_level="DEBUG", 1265s dnac_log_append=False, 1265s state="merged", 1265s config=self.test_data.get("playbook_config_sync_device_config_iplist") 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s > self.assertIn( 1265s "Error occurred while retrieving 'get_task_tree' for Task Sync Device Configuration with task id", 1265s result.get('msg') 1265s ) 1265s E AssertionError: "Error occurred while retrieving 'get_task_tree' for Task Sync Device Configuration with task id" not found in "No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs)." 1265s 1265s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:794: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s Inside load_fixtures 1265s Mock for DNACSDK._exec: 1265s Inside load_fixtures 1265s ------------------------------ Captured log call ------------------------------- 1265s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 116: Cisco Catalyst Center parameters: {'dnac_host': '1.1.1.1', 'dnac_port': '443', 'dnac_username': 'dummy', 'dnac_password': 'dummy', 'dnac_version': '2.2.3.3', 'dnac_verify': True, 'dnac_debug': False, 'dnac_log': True, 'dnac_log_level': 'DEBUG', 'dnac_log_file_path': 'dnac.log', 'dnac_log_append': False} 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: validate_input: 422: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': False, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': True}] 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1663 status: success, msg: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': False, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': True}] 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 532: Validating the provided configuration: {'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': False, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': True} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: validate_params: 538: Extracted parameters - IP Address List: ['192.168.0.0'], Site Name: None, Run Compliance: False, Run Compliance Categories: None, Sync Device Config: True 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None' 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1265s 1265s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 484: Validating if any network compliance operation is requested: run_compliance=False, run_compliance_categories=None, sync_device_config=True 1265s 1265s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 556: Validation completed for configuration: {'ip_address_list': ['192.168.0.0'], 'site_name': None, 'run_compliance': False, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': True} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 809: Entering get_device_id_list with args: ip_address_list=['192.168.0.0'], site_name=None 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 677: Entering get_device_list_params method with ip_address_list: ['192.168.0.0'] 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 697: Entering 'get_device_ids_from_ip' method with parameters: {'management_ip_address': ['192.168.0.0']} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 1: {'response': [{'reachabilityStatus': 'Reachable', 'family': 'Switches and Hubs', 'managementIpAddress': '192.168.0.0', 'instanceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'id': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'}]} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: 192.168.0.0, Reachability: Reachable, Collection Status: None, Family: Switches and Hubs 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device 192.168.0.0 as its status is Reachable or its collectionStatus is None. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 501: {'response': [{'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'RUNNING_CONFIG', 'status': 'NON_COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1717977820546, 'lastUpdateTime': 1721609911624, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}], 'version': '1.0', 'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 1001: {'response': {'taskId': 'ce5e3f8d-9ac7-4215-9b83-fac7228c9e63', 'url': '/api/v1/task/ce5e3f8d-9ac7-4215-9b83-fac7228c9e63'}, 'version': '1.0'} 1265s 1265s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 788: Error fetching device IDs from Cisco Catalyst Center. Error details: 'str' object has no attribute 'get' 1265s 1265s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1265s 1265s ERROR logger:dnac.py:294 NetworkCompliance: set_operation_result: 1780: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs). 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1787 status: failed, msg: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs). 1265s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_mandatory_aaa_param _ 1265s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Network_settings_workflow_manager_network_mandatory_aaa_param(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s dnac_version="2.3.7.6", 1265s state="merged", 1265s config_verify=True, 1265s config=self.playbook_config_aaa_req 1265s ) 1265s ) 1265s > result = self.execute_module(changed=False, failed=True) 1265s 1265s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:902: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:107: in execute_module 1265s result = self.failed() 1265s tests/unit/modules/dnac/dnac_module.py:125: in failed 1265s self.module.main() 1265s plugins/modules/network_settings_workflow_manager.py:4316: in main 1265s ccc_network.get_diff_state_apply[state](config).check_return_status() 1265s plugins/modules/network_settings_workflow_manager.py:3824: in get_diff_merged 1265s self.update_network(network_management).check_return_status() 1265s plugins/modules/network_settings_workflow_manager.py:3790: in update_network 1265s self.check_tasks_response_status(response, "set_aaa_settings_for_a_site").check_return_status() 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def check_tasks_response_status(self, response, api_name): 1265s """ 1265s Get the task response status from taskId 1265s Args: 1265s self: The current object details. 1265s response (dict): API response. 1265s api_name (str): API name. 1265s Returns: 1265s self (object): The current object with updated desired Fabric Transits information. 1265s Description: 1265s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE' 1265s state or till it reaches the maximum timeout. 1265s Log the task details and return self. 1265s """ 1265s 1265s if not response: 1265s self.msg = "response is empty" 1265s self.status = "exited" 1265s return self 1265s 1265s if not isinstance(response, dict): 1265s self.msg = "response is not a dictionary" 1265s self.status = "exited" 1265s return self 1265s 1265s task_info = response.get("response") 1265s > if task_info.get("errorcode") is not None: 1265s E AttributeError: 'list' object has no attribute 'get' 1265s 1265s plugins/module_utils/dnac.py:1713: AttributeError 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 NetworkSettings: get_dns_settings_for_site: 1153: No DNS settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_ntp_settings_for_site: 1231: No NTP server settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_time_zone_settings_for_site: 1270: No time zone settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_banner_settings_for_site: 1309: No banner (Message of the Day) settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_aaa_settings_for_site: 1357: No network_aaa and client_and_endpoint_aaa settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_network_not_need_update _ 1265s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Network_settings_workflow_manager_network_network_not_need_update(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config_verify=True, 1265s config=self.playbook_config_network 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "Successfully retrieved details from the playbook" 1265s ) 1265s E AssertionError: "The specified version '2.2.3.3' does not[94 chars]ds. " != 'Successfully retrieved details from the playbook' 1265s E - The specified version '2.2.3.3' does not support the Network_settings_workflow features. Supported versions start from '2.3.5.3' onwards. 1265s E + Successfully retrieved details from the playbook 1265s 1265s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:454: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "The specified version '2.2.3.3' does not support the Network_settings_workflow features. Supported versions start from '2.3.5.3' onwards. ", 'response': [{'globalPool': {'response': {}, 'msg': {}}}, {'reservePool': {'response': {}, 'msg': {}}}, {'network': {'response': {}, 'msg': {}}}], 'failed': True} 1265s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_ntp _ 1265s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Network_settings_workflow_manager_network_exception_update_ntp(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s dnac_version="2.3.7.6", 1265s state="merged", 1265s config_verify=True, 1265s config=self.playbook_update_network 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "Exception occurred while updating NTP settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1265s ) 1265s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating NTP se[50 chars]a7: ' 1265s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1265s E + Exception occurred while updating NTP settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1265s 1265s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:554: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .", 'response': "An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .", 'failed': True} 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 NetworkSettings: get_dns_settings_for_site: 1153: No DNS settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_ntp_settings_for_site: 1231: No NTP server settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_time_zone_settings_for_site: 1270: No time zone settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_banner_settings_for_site: 1309: No banner (Message of the Day) settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_aaa_settings_for_site: 1357: No network_aaa and client_and_endpoint_aaa settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s ERROR logger:dnac.py:294 NetworkSettings: set_operation_result: 1780: An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1265s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_site_not_exist _ 1265s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Network_settings_workflow_manager_network_exception_site_not_exist(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s dnac_version="2.3.7.6", 1265s state="merged", 1265s config_verify=True, 1265s config=self.playbook_config_network 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "An exception occurred: Site 'Global/Vietnam' does not exist in the Cisco Catalyst Center." 1265s ) 1265s E AssertionError: "An error occurred while executing API call to[62 chars]n: ." != "An exception occurred: Site 'Global/Vietnam' [40 chars]ter." 1265s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1265s E + An exception occurred: Site 'Global/Vietnam' does not exist in the Cisco Catalyst Center. 1265s 1265s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:704: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .", 'response': "An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .", 'failed': True} 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 NetworkSettings: get_dns_settings_for_site: 1153: No DNS settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_ntp_settings_for_site: 1231: No NTP server settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_time_zone_settings_for_site: 1270: No time zone settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_banner_settings_for_site: 1309: No banner (Message of the Day) settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_aaa_settings_for_site: 1357: No network_aaa and client_and_endpoint_aaa settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s ERROR logger:dnac.py:294 NetworkSettings: set_operation_result: 1780: An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1265s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_banner _ 1265s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Network_settings_workflow_manager_network_exception_update_banner(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s dnac_version="2.3.7.6", 1265s state="merged", 1265s config_verify=True, 1265s config=self.playbook_update_network 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "Exception occurred while updating banner settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1265s ) 1265s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating banner[53 chars]a7: ' 1265s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1265s E + Exception occurred while updating banner settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1265s 1265s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:629: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .", 'response': "An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .", 'failed': True} 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 NetworkSettings: get_dns_settings_for_site: 1153: No DNS settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_ntp_settings_for_site: 1231: No NTP server settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_time_zone_settings_for_site: 1270: No time zone settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_banner_settings_for_site: 1309: No banner (Message of the Day) settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_aaa_settings_for_site: 1357: No network_aaa and client_and_endpoint_aaa settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s ERROR logger:dnac.py:294 NetworkSettings: set_operation_result: 1780: An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1265s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_assign_wired_device_to_site _ 1265s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_provision_workflow_manager_playbook_assign_wired_device_to_site(self): 1265s """ 1265s Test case for add device with full crendentials. 1265s 1265s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config_verify=True, 1265s config=self.playbook_assign_wired_device_to_site 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_provision_workflow_manager.py:152: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/provision_workflow_manager.py:1809: in main 1265s ccc_provision.get_diff_state_apply[state]().check_return_status() 1265s plugins/modules/provision_workflow_manager.py:1044: in get_diff_merged 1265s self.provision_wired_device(to_provisioning, to_force_provisioning) 1265s plugins/modules/provision_workflow_manager.py:1143: in provision_wired_device 1265s device_id = self.get_device_id() 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def get_device_id(self): 1265s """ 1265s Fetches the UUID of the device added in the inventory 1265s 1265s Parameters: 1265s - self: The instance of the class containing the 'config' attribute 1265s to be validated. 1265s Returns: 1265s The method returns the serial number of the device as a string. If it fails, it returns None. 1265s Example: 1265s After creating the validated input, this method retrieves the 1265s UUID of the device. 1265s """ 1265s 1265s dev_response = self.dnac_apply['exec']( 1265s family="devices", 1265s function='get_network_device_by_ip', 1265s params={"ip_address": self.validated_config["management_ip_address"]} 1265s ) 1265s 1265s self.log("The device response from 'get_network_device_by_ip' API is {0}".format(str(dev_response)), "DEBUG") 1265s dev_dict = dev_response.get("response") 1265s > device_id = dev_dict.get("id") 1265s E AttributeError: 'NoneType' object has no attribute 'get' 1265s 1265s plugins/modules/provision_workflow_manager.py:490: AttributeError 1265s __________ TestNetworkCompliance.test_sync_device_config_iplist_site ___________ 1265s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_sync_device_config_iplist_site(self): 1265s 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s dnac_log_level="DEBUG", 1265s dnac_log_append=False, 1265s state="merged", 1265s config=self.test_data.get("playbook_config_sync_device_config_iplist_site") 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:497: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1265s ccc_network_compliance.get_want(config).check_return_status() 1265s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1265s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1265s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list 1265s self.fail_and_exit(self.msg) 1265s plugins/module_utils/dnac.py:1787: in fail_and_exit 1265s self.check_return_status() 1265s plugins/module_utils/dnac.py:307: in check_return_status 1265s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def fail_json(*args, **kwargs): 1265s kwargs["failed"] = True 1265s > raise AnsibleFailJson(kwargs) 1265s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: Global. This could be due to Unreachable devices or access points (APs).", 'response': "No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: Global. This could be due to Unreachable devices or access points (APs).", 'failed': True} 1265s 1265s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1265s ----------------------------- Captured stdout call ----------------------------- 1265s Inside load_fixtures 1265s Mock for DNACSDK._exec: 1265s Inside load_fixtures 1265s ------------------------------ Captured log call ------------------------------- 1265s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 116: Cisco Catalyst Center parameters: {'dnac_host': '1.1.1.1', 'dnac_port': '443', 'dnac_username': 'dummy', 'dnac_password': 'dummy', 'dnac_version': '2.2.3.3', 'dnac_verify': True, 'dnac_debug': False, 'dnac_log': True, 'dnac_log_level': 'DEBUG', 'dnac_log_file_path': 'dnac.log', 'dnac_log_append': False} 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: validate_input: 422: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': ['192.168.0.0'], 'site_name': 'Global', 'run_compliance': False, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': True}] 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1663 status: success, msg: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': ['192.168.0.0'], 'site_name': 'Global', 'run_compliance': False, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': True}] 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 532: Validating the provided configuration: {'ip_address_list': ['192.168.0.0'], 'site_name': 'Global', 'run_compliance': False, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': True} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: validate_params: 538: Extracted parameters - IP Address List: ['192.168.0.0'], Site Name: Global, Run Compliance: False, Run Compliance Categories: None, Sync Device Config: True 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'Global' 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1265s 1265s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 484: Validating if any network compliance operation is requested: run_compliance=False, run_compliance_categories=None, sync_device_config=True 1265s 1265s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 556: Validation completed for configuration: {'ip_address_list': ['192.168.0.0'], 'site_name': 'Global', 'run_compliance': False, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': True} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 809: Entering get_device_id_list with args: ip_address_list=['192.168.0.0'], site_name=Global 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 677: Entering get_device_list_params method with ip_address_list: ['192.168.0.0'] 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 697: Entering 'get_device_ids_from_ip' method with parameters: {'management_ip_address': ['192.168.0.0']} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 1: {'response': [{'additionalInfo': [], 'name': 'Global', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'siteHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'siteNameHierarchy': 'Global'}]} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 501: {'site': {'response': [{'parentId': '0c0aef1d-0ab9-4660-b216-649c4fe2b7a7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'address': 'Tokyo, Japan', 'addressInheritedFrom': '0c0aef1d-0ab9-4660-b216-649c4fe2b7a7', 'type': 'floor'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'anchorWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'tertiaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'primaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80143381-187c-48fa-a356-15389aad4e9c/9674054e-fd9e-49ed-8084-1ce9131d6781/0c0aef1d-0ab9-4660-b216-649c4fe2b7a7/c9c21b46-5956-4e6e-9dbf-49f3e6e55a66', 'groupNameHierarchy': 'Global/Japan/Tokyo/Ansible_Tower/Ansible_Floor', 'name': 'Ansible_Floor', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'c9c21b46-5956-4e6e-9dbf-49f3e6e55a66'}, {'parentId': '9674054e-fd9e-49ed-8084-1ce9131d6781', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'anchorWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'tertiaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'primaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c'}}, {'nameSpace': 'Location', 'attributes': {'country': 'Japan', 'address': 'Tokyo, Japan', 'latitude': '35.6764', 'addressInheritedFrom': '0c0aef1d-0ab9-4660-b216-649c4fe2b7a7', 'type': 'building', 'longitude': '139.65'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '1', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80143381-187c-48fa-a356-15389aad4e9c/9674054e-fd9e-49ed-8084-1ce9131d6781/0c0aef1d-0ab9-4660-b216-649c4fe2b7a7', 'groupNameHierarchy': 'Global/Japan/Tokyo/Ansible_Tower', 'name': 'Ansible_Tower', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '0c0aef1d-0ab9-4660-b216-649c4fe2b7a7'}, {'parentId': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '2', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'type': 'area'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'anchorWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'tertiaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'primaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/bf561bf3-95d6-4da1-bf49-26887955fa2e/eda30e7b-0e67-4879-85bd-cfc30b0d9765', 'groupNameHierarchy': 'Global/India/Bangalore', 'name': 'Bangalore', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'eda30e7b-0e67-4879-85bd-cfc30b0d9765'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '1', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/16244588-f6da-4ef7-b329-87eed13902be', 'groupNameHierarchy': 'Global/USA/BayAreaGuest', 'name': 'BayAreaGuest', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '16244588-f6da-4ef7-b329-87eed13902be'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '1', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/a83421d0-cfe5-4318-85ee-a991d2cdd748', 'groupNameHierarchy': 'Global/USA/BERKELEY', 'name': 'BERKELEY', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'a83421d0-cfe5-4318-85ee-a991d2cdd748'}, {'parentId': '3fbfb158-a429-41b3-a220-6a6286f93d16', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'Ev Chargers Bldg 10, 7200-10 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'latitude': '35.85992111421487', 'addressInheritedFrom': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'type': 'building', 'longitude': '-78.8829258991226'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '3', 'hasChild': 'TRUE', 'group.count.direct': '3', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'groupNameHierarchy': 'Global/USA/RTP/BLD10', 'name': 'BLD10', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a'}, {'parentId': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Ev Chargers Bldg 10, 7200-10 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'type': 'floor'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/dca266ec-80d9-4692-8782-1f1d3d7aed0a/0d64a127-ae63-46f8-9b76-9d7d1502c6d4', 'groupNameHierarchy': 'Global/USA/RTP/BLD10/BLD10_FLOOR1', 'name': 'BLD10_FLOOR1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '0d64a127-ae63-46f8-9b76-9d7d1502c6d4'}, {'parentId': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Ev Chargers Bldg 10, 7200-10 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'type': 'floor'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/dca266ec-80d9-4692-8782-1f1d3d7aed0a/f5c31c72-6d56-456b-aefb-d7cc942e5b04', 'groupNameHierarchy': 'Global/USA/RTP/BLD10/BLD10_FLOOR2', 'name': 'BLD10_FLOOR2', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'f5c31c72-6d56-456b-aefb-d7cc942e5b04'}, {'parentId': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Ev Chargers Bldg 10, 7200-10 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'type': 'floor'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/dca266ec-80d9-4692-8782-1f1d3d7aed0a/67966786-b701-4099-8e1a-4191534f36d2', 'groupNameHierarchy': 'Global/USA/RTP/BLD10/BLD10_FLOOR3', 'name': 'BLD10_FLOOR3', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '67966786-b701-4099-8e1a-4191534f36d2'}, {'parentId': '3fbfb158-a429-41b3-a220-6a6286f93d16', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'Cisco Systems, 7200 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'latitude': '35.86059627310624', 'addressInheritedFrom': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'type': 'building', 'longitude': '-78.88105620286412'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '3', 'hasChild': 'TRUE', 'group.count.direct': '3', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/89b128e0-3217-4f63-bf99-b202ec7c0103', 'groupNameHierarchy': 'Global/USA/RTP/BLD11', 'name': 'BLD11', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '89b128e0-3217-4f63-bf99-b202ec7c0103'}, {'parentId': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Cisco Systems, 7200 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'type': 'floor'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/89b128e0-3217-4f63-bf99-b202ec7c0103/16b5e550-d288-4e11-94a6-baaa8e3d9c08', 'groupNameHierarchy': 'Global/USA/RTP/BLD11/BLD11_FLOOR1', 'name': 'BLD11_FLOOR1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '16b5e550-d288-4e11-94a6-baaa8e3d9c08'}, {'parentId': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Cisco Systems, 7200 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'type': 'floor'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/89b128e0-3217-4f63-bf99-b202ec7c0103/8c57bcf3-b0e4-4f47-b45e-bbb9f32e2997', 'groupNameHierarchy': 'Global/USA/RTP/BLD11/BLD11_FLOOR2', 'name': 'BLD11_FLOOR2', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '8c57bcf3-b0e4-4f47-b45e-bbb9f32e2997'}, {'parentId': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Cisco Systems, 7200 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'type': 'floor'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/89b128e0-3217-4f63-bf99-b202ec7c0103/be5fd8eb-dda4-4f38-b5ce-35d1d49151cc', 'groupNameHierarchy': 'Global/USA/RTP/BLD11/BLD11_FLOOR3', 'name': 'BLD11_FLOOR3', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'be5fd8eb-dda4-4f38-b5ce-35d1d49151cc'}, {'parentId': '3fbfb158-a429-41b3-a220-6a6286f93d16', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '3', 'hasChild': 'TRUE', 'group.count.direct': '3', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'Cisco Systems, 7200-12 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'latitude': '35.8611847591779', 'addressInheritedFrom': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'type': 'building', 'longitude': '-78.88217248318003'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/4996f8ef-8933-412e-b58b-2238ba860ec7', 'groupNameHierarchy': 'Global/USA/RTP/BLD12', 'name': 'BLD12', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '4996f8ef-8933-412e-b58b-2238ba860ec7'}, {'parentId': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Cisco Systems, 7200-12 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'type': 'floor'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/4996f8ef-8933-412e-b58b-2238ba860ec7/d44f3eca-a3dc-4ed1-a020-0ded43c78056', 'groupNameHierarchy': 'Global/USA/RTP/BLD12/BLD12_FLOOR1', 'name': 'BLD12_FLOOR1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'd44f3eca-a3dc-4ed1-a020-0ded43c78056'}, {'parentId': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Cisco Systems, 7200-12 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'type': 'floor'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/4996f8ef-8933-412e-b58b-2238ba860ec7/fb5bbd30-3a01-4eaf-a24d-b0e75ff158c6', 'groupNameHierarchy': 'Global/USA/RTP/BLD12/BLD12_FLOOR2', 'name': 'BLD12_FLOOR2', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'fb5bbd30-3a01-4eaf-a24d-b0e75ff158c6'}, {'parentId': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Cisco Systems, 7200-12 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'type': 'floor'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/4996f8ef-8933-412e-b58b-2238ba860ec7/ea574cd8-fa45-48ab-9944-83ed33537416', 'groupNameHierarchy': 'Global/USA/RTP/BLD12/BLD12_FLOOR3', 'name': 'BLD12_FLOOR3', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'ea574cd8-fa45-48ab-9944-83ed33537416'}, {'parentId': '65eba291-ee04-43d2-bddb-a2cb2e7ff7d8', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': '725 Alder Drive, Milpitas, California 95035, United States', 'latitude': '37.415947', 'addressInheritedFrom': 'ed089cbf-3622-492f-bf60-5baf6d0b3708', 'type': 'building', 'longitude': '-121.916327'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '1', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/ed089cbf-3622-492f-bf60-5baf6d0b3708', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD20', 'name': 'BLD20', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'ed089cbf-3622-492f-bf60-5baf6d0b3708'}, {'parentId': 'ed089cbf-3622-492f-bf60-5baf6d0b3708', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'address': '725 Alder Drive, Milpitas, California 95035, United States', 'addressInheritedFrom': 'ed089cbf-3622-492f-bf60-5baf6d0b3708', 'type': 'floor'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/ed089cbf-3622-492f-bf60-5baf6d0b3708/47a127ae-92bd-49ec-aed0-aec8e2a31678', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD20/BLD20_FLOOR1', 'name': 'BLD20_FLOOR1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '47a127ae-92bd-49ec-aed0-aec8e2a31678'}, {'parentId': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'type': 'floor'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/36d3230c-c6ce-44ae-8901-3b4a624883e6/625bcb2d-4e4a-4571-80e9-c5d2caad4ecf', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD23/BLD20_FLOOR2', 'name': 'BLD20_FLOOR2', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '625bcb2d-4e4a-4571-80e9-c5d2caad4ecf'}, {'parentId': '65eba291-ee04-43d2-bddb-a2cb2e7ff7d8', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '5', 'hasChild': 'TRUE', 'group.count.direct': '5', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'latitude': '37.398188', 'addressInheritedFrom': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'type': 'building', 'longitude': '-121.912974'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/36d3230c-c6ce-44ae-8901-3b4a624883e6', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD23', 'name': 'BLD23', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '36d3230c-c6ce-44ae-8901-3b4a624883e6'}, {'parentId': 'a83421d0-cfe5-4318-85ee-a991d2cdd748', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': '725 Alder Drive, Milpitas, California 95035, United States', 'latitude': '37.415947', 'addressInheritedFrom': '8ff6aa1d-089f-41e2-8e42-5cad97770e7d', 'type': 'building', 'longitude': '-121.916327'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/a83421d0-cfe5-4318-85ee-a991d2cdd748/8ff6aa1d-089f-41e2-8e42-5cad97770e7d', 'groupNameHierarchy': 'Global/USA/BERKELEY/BLDBERK', 'name': 'BLDBERK', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '8ff6aa1d-089f-41e2-8e42-5cad97770e7d'}, {'parentId': '16244588-f6da-4ef7-b329-87eed13902be', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': '725 Alder Drive, Milpitas, California 95035, United States', 'latitude': '37.415947', 'addressInheritedFrom': 'fa666989-76fb-4aa1-8caf-ad9dc6d08ef7', 'type': 'building', 'longitude': '-121.916327'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/16244588-f6da-4ef7-b329-87eed13902be/fa666989-76fb-4aa1-8caf-ad9dc6d08ef7', 'groupNameHierarchy': 'Global/USA/BayAreaGuest/BLD_GB', 'name': 'BLD_GB', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'fa666989-76fb-4aa1-8caf-ad9dc6d08ef7'}, {'parentId': '21cc7dad-8c9e-4637-8f24-22ec417b9811', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'UMBRELLA', 'attributes': {'umbrellaReady': 'true', 'member.umbrellaNotReady.direct': '0', 'member.umbrellaReady.direct': '1', 'member.umbrellaReadyNotEnabled.direct': '1', 'member.umbrellaEnabled.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'latitude': '37.398188', 'addressInheritedFrom': '274da223-2411-4689-8f70-b5bbd8915020', 'type': 'building', 'longitude': '-121.912974'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '3', 'hasChild': 'TRUE', 'group.count.direct': '3', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '3', 'member.count.direct': '1'}}, {'nameSpace': 'ETA', 'attributes': {'member.compatibleWithNaasOnly.direct': '0', 'member.etaCapable.direct': '1', 'member.etaReady.direct': '1', 'member.etaEnabledNaasOnly.direct': '0', 'ETAReady': 'true', 'member.etaNotReady.direct': '0', 'member.etaReadyNotEnabled.direct': '1', 'member.etaEnabled.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/21cc7dad-8c9e-4637-8f24-22ec417b9811/274da223-2411-4689-8f70-b5bbd8915020', 'groupNameHierarchy': 'Global/USA/New York/BLDNYC', 'name': 'BLDNYC', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '274da223-2411-4689-8f70-b5bbd8915020'}, {'parentId': '4a03cd04-41bb-4e3c-9a59-3f96637c27e7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'latitude': '37.398188', 'addressInheritedFrom': 'b497a0ab-3ab4-42fd-8921-2f45af587b98', 'type': 'building', 'longitude': '-121.912974'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/4a03cd04-41bb-4e3c-9a59-3f96637c27e7/b497a0ab-3ab4-42fd-8921-2f45af587b98', 'groupNameHierarchy': 'Global/USA/SAN-FRANCISCO/BLD_SF', 'name': 'BLD_SF', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'b497a0ab-3ab4-42fd-8921-2f45af587b98'}, {'parentId': '4a03cd04-41bb-4e3c-9a59-3f96637c27e7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'latitude': '37.398188', 'addressInheritedFrom': 'ef6944e0-72be-4d1d-8e29-1ca1ebcf8d98', 'type': 'building', 'longitude': '-121.912974'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/4a03cd04-41bb-4e3c-9a59-3f96637c27e7/ef6944e0-72be-4d1d-8e29-1ca1ebcf8d98', 'groupNameHierarchy': 'Global/USA/SAN-FRANCISCO/BLD_SF1', 'name': 'BLD_SF1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'ef6944e0-72be-4d1d-8e29-1ca1ebcf8d98'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'anchorWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'tertiaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'primaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '2', 'hasChild': 'TRUE', 'group.count.direct': '2', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'type': 'area'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'groupNameHierarchy': 'Global/Chennai', 'name': 'Chennai', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '80be6b3f-2bb8-4711-ae59-f7a667eedb08'}, {'parentId': '6f4d01b1-d00c-4471-8aa2-28b7e99636ab', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': '1579 Hopkins Drive, San Jose, California 95122, United States', 'latitude': '37.338', 'addressInheritedFrom': '7010b0ed-ae2b-41bd-977a-79b1628dd1b7', 'type': 'building', 'longitude': '-121.832'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '1', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/6f4d01b1-d00c-4471-8aa2-28b7e99636ab/7010b0ed-ae2b-41bd-977a-79b1628dd1b7', 'groupNameHierarchy': 'Global/USA/Georgia/cisco', 'name': 'cisco', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '7010b0ed-ae2b-41bd-977a-79b1628dd1b7'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '94f61603-5f1f-4b26-85dd-59355cd67632', 'type': 'area'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '94f61603-5f1f-4b26-85dd-59355cd67632', 'anchorWlcInheritedFrom': '94f61603-5f1f-4b26-85dd-59355cd67632', 'tertiaryWlcInheritedFrom': '94f61603-5f1f-4b26-85dd-59355cd67632', 'primaryWlcInheritedFrom': '94f61603-5f1f-4b26-85dd-59355cd67632'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/94f61603-5f1f-4b26-85dd-59355cd67632', 'groupNameHierarchy': 'Global/Demo4', 'name': 'Demo4', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '94f61603-5f1f-4b26-85dd-59355cd67632'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '633a40de-b885-448c-bd84-dd1fef679fbe', 'anchorWlcInheritedFrom': '633a40de-b885-448c-bd84-dd1fef679fbe', 'tertiaryWlcInheritedFrom': '633a40de-b885-448c-bd84-dd1fef679fbe', 'primaryWlcInheritedFrom': '633a40de-b885-448c-bd84-dd1fef679fbe'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '633a40de-b885-448c-bd84-dd1fef679fbe', 'type': 'area'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/633a40de-b885-448c-bd84-dd1fef679fbe', 'groupNameHierarchy': 'Global/Demo5', 'name': 'Demo5', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '633a40de-b885-448c-bd84-dd1fef679fbe'}, {'parentId': 'caa9eb0d-618b-4d90-ac10-eb2a2d17e763', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'width': '200.0', 'length': '100.0', 'height': '10.0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'anchorWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'tertiaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'primaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': 'None', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'Location', 'attributes': {'country': 'India', 'address': 'Bengaluru, Karnataka, India', 'latitude': '0.0', 'addressInheritedFrom': 'caa9eb0d-618b-4d90-ac10-eb2a2d17e763', 'type': 'floor', 'longitude': '0.0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/bf561bf3-95d6-4da1-bf49-26887955fa2e/eda30e7b-0e67-4879-85bd-cfc30b0d9765/caa9eb0d-618b-4d90-ac10-eb2a2d17e763/e3c898bc-a0d5-47b9-83c6-a48a88fa6fbe', 'groupNameHierarchy': 'Global/India/Bangalore/Mantri Square/floor1', 'name': 'floor1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'e3c898bc-a0d5-47b9-83c6-a48a88fa6fbe'}, {'parentId': '274da223-2411-4689-8f70-b5bbd8915020', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '17301034-7715-4363-952f-3d290ea6ca59', 'primaryWlc': '778a27bb-d795-4fa3-a321-f2e693ebe1f4'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '2', 'member.count.direct': '2'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'UMBRELLA', 'attributes': {'umbrellaReady': 'true', 'member.umbrellaNotReady.direct': '0', 'member.umbrellaReady.direct': '1', 'member.umbrellaReadyNotEnabled.direct': '1', 'member.umbrellaEnabled.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '274da223-2411-4689-8f70-b5bbd8915020', 'type': 'floor'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/21cc7dad-8c9e-4637-8f24-22ec417b9811/274da223-2411-4689-8f70-b5bbd8915020/17301034-7715-4363-952f-3d290ea6ca59', 'groupNameHierarchy': 'Global/USA/New York/BLDNYC/FLOOR1', 'name': 'FLOOR1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '17301034-7715-4363-952f-3d290ea6ca59'}, {'parentId': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'type': 'floor'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/36d3230c-c6ce-44ae-8901-3b4a624883e6/8a7ddd03-dddb-4a76-a079-56c3b45ab1ec', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD23/FLOOR1_LEVEL1', 'name': 'FLOOR1_LEVEL1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '8a7ddd03-dddb-4a76-a079-56c3b45ab1ec'}, {'parentId': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'type': 'floor'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/36d3230c-c6ce-44ae-8901-3b4a624883e6/c45259ff-0612-4fe7-907c-5987877892d9', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD23/FLOOR1_LEVEL2', 'name': 'FLOOR1_LEVEL2', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'c45259ff-0612-4fe7-907c-5987877892d9'}, {'parentId': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'type': 'floor'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/36d3230c-c6ce-44ae-8901-3b4a624883e6/eb935311-f082-416e-a13c-08acdc6219c0', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD23/FLOOR1_LEVEL3', 'name': 'FLOOR1_LEVEL3', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'eb935311-f082-416e-a13c-08acdc6219c0'}, {'parentId': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'type': 'floor'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/36d3230c-c6ce-44ae-8901-3b4a624883e6/78b8a15c-c112-4941-b00b-ceda2edb38f2', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD23/FLOOR1_LEVEL4', 'name': 'FLOOR1_LEVEL4', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '78b8a15c-c112-4941-b00b-ceda2edb38f2'}, {'parentId': '274da223-2411-4689-8f70-b5bbd8915020', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '212be018-cfb6-4041-9caa-d344385848b7', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'secondaryWlc': '778a27bb-d795-4fa3-a321-f2e693ebe1f4', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '274da223-2411-4689-8f70-b5bbd8915020', 'type': 'floor'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/21cc7dad-8c9e-4637-8f24-22ec417b9811/274da223-2411-4689-8f70-b5bbd8915020/212be018-cfb6-4041-9caa-d344385848b7', 'groupNameHierarchy': 'Global/USA/New York/BLDNYC/FLOOR2', 'name': 'FLOOR2', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '212be018-cfb6-4041-9caa-d344385848b7'}, {'parentId': '7010b0ed-ae2b-41bd-977a-79b1628dd1b7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'address': '1579 Hopkins Drive, San Jose, California 95122, United States', 'addressInheritedFrom': '7010b0ed-ae2b-41bd-977a-79b1628dd1b7', 'type': 'floor'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': 'None', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/6f4d01b1-d00c-4471-8aa2-28b7e99636ab/7010b0ed-ae2b-41bd-977a-79b1628dd1b7/5e6d602a-4135-44ef-a5ae-8d9ee6056f3b', 'groupNameHierarchy': 'Global/USA/Georgia/cisco/Floor_test', 'name': 'Floor_test', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '5e6d602a-4135-44ef-a5ae-8d9ee6056f3b'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '2', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/6f4d01b1-d00c-4471-8aa2-28b7e99636ab', 'groupNameHierarchy': 'Global/USA/Georgia', 'name': 'Georgia', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '6f4d01b1-d00c-4471-8aa2-28b7e99636ab'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '3', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'anchorWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'tertiaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'primaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'type': 'area'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/bf561bf3-95d6-4da1-bf49-26887955fa2e', 'groupNameHierarchy': 'Global/India', 'name': 'India', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'bf561bf3-95d6-4da1-bf49-26887955fa2e'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'anchorWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'tertiaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'primaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '3', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'type': 'area'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80143381-187c-48fa-a356-15389aad4e9c', 'groupNameHierarchy': 'Global/Japan', 'name': 'Japan', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '80143381-187c-48fa-a356-15389aad4e9c'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'Bengaluru, Karnataka, India', 'latitude': '25.2', 'addressInheritedFrom': 'd0484233-604a-4972-b010-42a0d44fe3d6', 'type': 'building', 'longitude': '42.1'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': 'd0484233-604a-4972-b010-42a0d44fe3d6', 'anchorWlcInheritedFrom': 'd0484233-604a-4972-b010-42a0d44fe3d6', 'tertiaryWlcInheritedFrom': 'd0484233-604a-4972-b010-42a0d44fe3d6', 'primaryWlcInheritedFrom': 'd0484233-604a-4972-b010-42a0d44fe3d6'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/d0484233-604a-4972-b010-42a0d44fe3d6', 'groupNameHierarchy': 'Global/JJJ', 'name': 'JJJ', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'd0484233-604a-4972-b010-42a0d44fe3d6'}, {'parentId': 'eda30e7b-0e67-4879-85bd-cfc30b0d9765', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'India', 'address': 'Bengaluru, Karnataka, India', 'latitude': '12.969910', 'addressInheritedFrom': 'caa9eb0d-618b-4d90-ac10-eb2a2d17e763', 'type': 'building', 'longitude': '77.597960'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '1', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'anchorWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'tertiaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'primaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/bf561bf3-95d6-4da1-bf49-26887955fa2e/eda30e7b-0e67-4879-85bd-cfc30b0d9765/caa9eb0d-618b-4d90-ac10-eb2a2d17e763', 'groupNameHierarchy': 'Global/India/Bangalore/Mantri Square', 'name': 'Mantri Square', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'caa9eb0d-618b-4d90-ac10-eb2a2d17e763'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '4', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '3', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/21cc7dad-8c9e-4637-8f24-22ec417b9811', 'groupNameHierarchy': 'Global/USA/New York', 'name': 'New York', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '21cc7dad-8c9e-4637-8f24-22ec417b9811'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '12', 'hasChild': 'TRUE', 'group.count.direct': '3', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16', 'groupNameHierarchy': 'Global/USA/RTP', 'name': 'RTP', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '3fbfb158-a429-41b3-a220-6a6286f93d16'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/7002e28c-a309-454b-ac5d-a6a99d64bc20', 'groupNameHierarchy': 'Global/USA/Sample', 'name': 'Sample', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '7002e28c-a309-454b-ac5d-a6a99d64bc20'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '2', 'hasChild': 'TRUE', 'group.count.direct': '2', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/4a03cd04-41bb-4e3c-9a59-3f96637c27e7', 'groupNameHierarchy': 'Global/USA/SAN-FRANCISCO', 'name': 'SAN-FRANCISCO', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '4a03cd04-41bb-4e3c-9a59-3f96637c27e7'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '8', 'hasChild': 'TRUE', 'group.count.direct': '2', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8', 'groupNameHierarchy': 'Global/USA/SAN JOSE', 'name': 'SAN JOSE', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '65eba291-ee04-43d2-bddb-a2cb2e7ff7d8'}, {'parentId': '274da223-2411-4689-8f70-b5bbd8915020', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'width': '58.1', 'length': '103.23', 'height': '58.22'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'latitude': '0.0', 'addressInheritedFrom': '274da223-2411-4689-8f70-b5bbd8915020', 'type': 'floor', 'longitude': '0.0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': 'None', 'isCadFile': 'false', 'floorIndex': '1'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/21cc7dad-8c9e-4637-8f24-22ec417b9811/274da223-2411-4689-8f70-b5bbd8915020/398f4d42-d265-4233-8ec3-5e4ba73c9956', 'groupNameHierarchy': 'Global/USA/New York/BLDNYC/Test_Floor3', 'name': 'Test_Floor3', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '398f4d42-d265-4233-8ec3-5e4ba73c9956'}, {'parentId': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'India', 'latitude': '12', 'addressInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'type': 'building', 'longitude': '80'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'anchorWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'tertiaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'primaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80be6b3f-2bb8-4711-ae59-f7a667eedb08/0e238b6e-e390-4dae-8932-49ceb3376304', 'groupNameHierarchy': 'Global/Chennai/Tidel', 'name': 'Tidel', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '0e238b6e-e390-4dae-8932-49ceb3376304'}, {'parentId': '80143381-187c-48fa-a356-15389aad4e9c', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'type': 'area'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'anchorWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'tertiaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'primaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '2', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80143381-187c-48fa-a356-15389aad4e9c/9674054e-fd9e-49ed-8084-1ce9131d6781', 'groupNameHierarchy': 'Global/Japan/Tokyo', 'name': 'Tokyo', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '9674054e-fd9e-49ed-8084-1ce9131d6781'}, {'parentId': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'India', 'address': 'Cognizant Technology Solutions, Chennai, Tamil Nadu 600113, India', 'latitude': '12.9908', 'addressInheritedFrom': '05d2d29c-3c23-478e-88ee-7ec60398634f', 'type': 'building', 'longitude': '80.2470'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'anchorWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'tertiaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'primaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80be6b3f-2bb8-4711-ae59-f7a667eedb08/05d2d29c-3c23-478e-88ee-7ec60398634f', 'groupNameHierarchy': 'Global/Chennai/Trill', 'name': 'Trill', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '05d2d29c-3c23-478e-88ee-7ec60398634f'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '38', 'hasChild': 'TRUE', 'group.count.direct': '8', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '3', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupNameHierarchy': 'Global/USA', 'name': 'USA', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '69f31d51-9e0d-48f4-8546-4935253f9a67'}], 'version': '1.0'}, 'device': [{'response': [{'instanceUuid': '3bf3f269-88ae-48fc-910d-3263ba618f87', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 0, 'apManagerInterfaceIp': '', 'associatedWlcIp': '', 'bootDateTime': '2024-05-27 02:32:55', 'collectionInterval': 'Global Default', 'collectionIntervalValue': '01:30:00', 'collectionStatus': 'Managed', 'description': 'Cisco IOS Software [Dublin], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.14.1, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2024 by Cisco Systems, Inc. Compiled Fri 05-Apr-24 00:08 by mcpre netconf enabled', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '192.168.0.1', 'family': 'Switches and Hubs', 'hostname': 'DC-FR-9300.cisco.local', 'interfaceCount': '0', 'inventoryStatusDetail': '', 'lastDeviceResyncStartTime': '2024-07-18 17:40:01', 'lastUpdateTime': 1721324455437, 'lastUpdated': '2024-07-18 17:40:55', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': 'd4:ad:bd:c1:67:00', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.1', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204.192. 3. 40', 'pendingSyncRequestsCount': '0', 'platformId': 'C9300-24U', 'reachabilityFailureReason': '', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': 'Periodic', 'reasonsForPendingSyncRequests': '', 'role': 'ACCESS', 'roleSource': 'AUTO', 'serialNumber': 'FJC2327U0S2', 'series': 'Cisco Catalyst 9300 Series Switches', 'snmpContact': '', 'snmpLocation': '', 'softwareType': 'IOS-XE', 'softwareVersion': '17.14.1', 'tagCount': '0', 'type': 'Cisco Catalyst 9300 Switch', 'upTime': '52 days, 15:08:19.76', 'uptimeSeconds': 4552059, 'vendor': 'Cisco'}, {'instanceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 0, 'apManagerInterfaceIp': '', 'associatedWlcIp': '', 'bootDateTime': '2024-05-27 02:34:15', 'collectionInterval': 'Global Default', 'collectionIntervalValue': '01:30:00', 'collectionStatus': 'In Progress', 'description': 'Cisco IOS Software [Dublin], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.14.1, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2024 by Cisco Systems, Inc. Compiled Fri 05-Apr-24 00:08 by mcpre netconf enabled', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '192.168.0.0', 'family': 'Switches and Hubs', 'hostname': 'DC-T-9300.cisco.local', 'interfaceCount': '0', 'inventoryStatusDetail': '', 'lastDeviceResyncStartTime': '2024-07-18 19:00:21', 'lastUpdateTime': 1721323875769, 'lastUpdated': '2024-07-18 17:31:15', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': '00:b6:70:32:b8:00', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.0', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204. 1. 2. 5', 'pendingSyncRequestsCount': '1', 'platformId': 'C9300-24P', 'reachabilityFailureReason': '', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': 'Periodic', 'reasonsForPendingSyncRequests': 'Periodic', 'role': 'ACCESS', 'roleSource': 'AUTO', 'serialNumber': 'FCW2225C020', 'series': 'Cisco Catalyst 9300 Series Switches', 'snmpContact': '', 'snmpLocation': '', 'softwareType': 'IOS-XE', 'softwareVersion': '17.14.1', 'tagCount': '0', 'type': 'Cisco Catalyst 9300 Switch', 'upTime': '52 days, 14:57:41.19', 'uptimeSeconds': 4551979, 'vendor': 'Cisco'}, {'instanceUuid': '9db11f54-8007-438c-ba9b-711513deecc6', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 0, 'apManagerInterfaceIp': '', 'associatedWlcIp': '', 'bootDateTime': '2024-05-28 00:14:36', 'collectionInterval': 'Global Default', 'collectionIntervalValue': '01:30:00', 'collectionStatus': 'Managed', 'description': 'Cisco IOS Software [Dublin], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.12.2, RELEASE SOFTWARE (fc2) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2023 by Cisco Systems, Inc. Compiled Tue 14-Nov-23 05:56 by mcpre netconf enabled', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '192.168.0.2', 'family': 'Switches and Hubs', 'hostname': 'NY-EN-9300.cisco.local', 'interfaceCount': '0', 'inventoryStatusDetail': '', 'lastDeviceResyncStartTime': '2024-07-18 17:40:01', 'lastUpdateTime': 1721324496374, 'lastUpdated': '2024-07-18 17:41:36', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': '90:88:55:07:59:00', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.2', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204. 1. 2. 2', 'pendingSyncRequestsCount': '0', 'platformId': 'C9300-48UXM, C9300-48UXM', 'reachabilityFailureReason': '', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': 'Periodic', 'reasonsForPendingSyncRequests': '', 'role': 'ACCESS', 'roleSource': 'AUTO', 'serialNumber': 'FJC271924K0, FJC271924EQ', 'series': 'Cisco Catalyst 9300 Series Switches', 'snmpContact': '', 'snmpLocation': '', 'softwareType': 'IOS-XE', 'softwareVersion': '17.12.2', 'tagCount': '0', 'type': 'Cisco Catalyst 9300 Switch', 'upTime': '51 days, 17:27:00.06', 'uptimeSeconds': 4473958, 'vendor': 'Cisco'}, {'instanceUuid': 'f490e92f-490e-4bb1-9519-770b1dc604c4', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 0, 'apManagerInterfaceIp': '', 'associatedWlcIp': '', 'bootDateTime': '2024-05-27 22:21:03', 'collectionInterval': 'Global Default', 'collectionIntervalValue': '01:30:00', 'collectionStatus': 'Managed', 'description': 'Cisco IOS Software [Dublin], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.14.1, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2024 by Cisco Systems, Inc. Compiled Fri 05-Apr-24 00:08 by mcpre netconf enabled', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '192.168.0.3', 'family': 'Switches and Hubs', 'hostname': 'NY-BN-9300.cisco.local', 'interfaceCount': '0', 'inventoryStatusDetail': '', 'lastDeviceResyncStartTime': '2024-07-18 17:40:01', 'lastUpdateTime': 1721324523813, 'lastUpdated': '2024-07-18 17:42:03', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': '0c:75:bd:41:14:00', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.3', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204. 1. 2. 4', 'pendingSyncRequestsCount': '0', 'platformId': 'C9300-48UXM, C9300-48UXM', 'reachabilityFailureReason': '', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': 'Periodic', 'reasonsForPendingSyncRequests': '', 'role': 'DISTRIBUTION', 'roleSource': 'AUTO', 'serialNumber': 'FJB2334D06N, FJC2335S09D', 'series': 'Cisco Catalyst 9300 Series Switches', 'snmpContact': '', 'snmpLocation': '', 'softwareType': 'IOS-XE', 'softwareVersion': '17.14.1', 'tagCount': '0', 'type': 'Cisco Catalyst 9300 Switch', 'upTime': '51 days, 19:21:44.15', 'uptimeSeconds': 4480771, 'vendor': 'Cisco'}], 'version': '1.0', 'siteId': '3cf15665-7b7b-4b29-82a9-75b8d094b602'}, {'response': [], 'version': '1.0', 'siteId': 'c9c21b46-5956-4e6e-9dbf-49f3e6e55a66', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '0c0aef1d-0ab9-4660-b216-649c4fe2b7a7', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'eda30e7b-0e67-4879-85bd-cfc30b0d9765', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '16244588-f6da-4ef7-b329-87eed13902be', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'a83421d0-cfe5-4318-85ee-a991d2cdd748', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '0d64a127-ae63-46f8-9b76-9d7d1502c6d4', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'f5c31c72-6d56-456b-aefb-d7cc942e5b04', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '67966786-b701-4099-8e1a-4191534f36d2', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '16b5e550-d288-4e11-94a6-baaa8e3d9c08', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '8c57bcf3-b0e4-4f47-b45e-bbb9f32e2997', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'be5fd8eb-dda4-4f38-b5ce-35d1d49151cc', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'd44f3eca-a3dc-4ed1-a020-0ded43c78056', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'fb5bbd30-3a01-4eaf-a24d-b0e75ff158c6', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'ea574cd8-fa45-48ab-9944-83ed33537416', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'ed089cbf-3622-492f-bf60-5baf6d0b3708', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '47a127ae-92bd-49ec-aed0-aec8e2a31678', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '625bcb2d-4e4a-4571-80e9-c5d2caad4ecf', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '8ff6aa1d-089f-41e2-8e42-5cad97770e7d', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'fa666989-76fb-4aa1-8caf-ad9dc6d08ef7', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [{'instanceUuid': 'e0bdf3e1-fbcf-4faa-a11c-156e32e7ae38', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 0, 'apManagerInterfaceIp': '', 'associatedWlcIp': '', 'bootDateTime': '2024-05-27 02:35:07', 'collectionInterval': 'Global Default', 'collectionIntervalValue': '01:30:00', 'collectionStatus': 'Managed', 'description': 'Cisco IOS Software [Dublin], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.14.1, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2024 by Cisco Systems, Inc. Compiled Fri 05-Apr-24 00:08 by mcpre netconf enabled', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '192.168.0.4', 'family': 'Switches and Hubs', 'hostname': 'SJ-EN-9300.cisco.local', 'interfaceCount': '0', 'inventoryStatusDetail': '', 'lastDeviceResyncStartTime': '2024-07-18 17:40:01', 'lastUpdateTime': 1721324467241, 'lastUpdated': '2024-07-18 17:41:07', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': '90:88:55:8e:42:80', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.4', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204. 1. 2. 1', 'pendingSyncRequestsCount': '0', 'platformId': 'C9300-48T', 'reachabilityFailureReason': '', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': 'Periodic', 'reasonsForPendingSyncRequests': '', 'role': 'ACCESS', 'roleSource': 'AUTO', 'serialNumber': 'FJC2721271T', 'series': 'Cisco Catalyst 9300 Series Switches', 'snmpContact': '', 'snmpLocation': '', 'softwareType': 'IOS-XE', 'softwareVersion': '17.14.1', 'tagCount': '0', 'type': 'Cisco Catalyst 9300 Switch', 'upTime': '52 days, 15:06:55.77', 'uptimeSeconds': 4551928, 'vendor': 'Cisco'}], 'version': '1.0', 'siteId': '274da223-2411-4689-8f70-b5bbd8915020'}, {'response': [], 'version': '1.0', 'siteId': 'b497a0ab-3ab4-42fd-8921-2f45af587b98', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'ef6944e0-72be-4d1d-8e29-1ca1ebcf8d98', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '7010b0ed-ae2b-41bd-977a-79b1628dd1b7', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '94f61603-5f1f-4b26-85dd-59355cd67632', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '633a40de-b885-448c-bd84-dd1fef679fbe', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'e3c898bc-a0d5-47b9-83c6-a48a88fa6fbe', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [{'instanceUuid': '37b05b0f-1b1e-496a-b101-8f277f0af8ff', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 2, 'apEthernetMacAddress': '34:5d:a8:0e:20:b4', 'apManagerInterfaceIp': '192.168.0.5', 'associatedWlcIp': '192.168.0.5', 'collectionInterval': 'NA', 'collectionStatus': 'Managed', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '', 'errorCode': 'null', 'family': 'Unified AP', 'hostname': 'LTTS-test1', 'interfaceCount': '0', 'inventoryStatusDetail': 'NA', 'lastDeviceResyncStartTime': '', 'lastUpdateTime': 1721327458431, 'lastUpdated': '2024-07-18 18:30:58', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': '90:e9:5e:03:f3:40', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.5', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204. 1.216. 2', 'pendingSyncRequestsCount': '0', 'platformId': 'C9130AXE-B', 'reachabilityFailureReason': 'NA', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': '', 'reasonsForPendingSyncRequests': '', 'role': 'ACCESS', 'roleSource': 'AUTO', 'serialNumber': 'FJC27181V9V', 'series': 'Cisco Catalyst 9130AXE Series Unified Access Points', 'snmpContact': '', 'snmpLocation': 'LTTS/Cisco/Chennai', 'softwareVersion': '17.14.0.79', 'tagCount': '0', 'type': 'Cisco Catalyst 9130AXE Unified Access Point', 'upTime': '3 days, 01:57:12.330', 'uptimeSeconds': 268009, 'vendor': 'NA'}, {'instanceUuid': '778a27bb-d795-4fa3-a321-f2e693ebe1f4', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 0, 'apManagerInterfaceIp': '', 'associatedWlcIp': '', 'bootDateTime': '2024-05-26 21:53:58', 'collectionInterval': 'Global Default', 'collectionIntervalValue': '01:30:00', 'collectionStatus': 'Managed', 'description': 'Cisco IOS Software [Dublin], C9800 Software (C9800_IOSXE-K9), Version 17.14.1, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2024 by Cisco Systems, Inc. Compiled Fri 05-Apr-24 00:11 by mcpre netconf enabled', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '192.168.0.6', 'family': 'Wireless Controller', 'hostname': 'NY-EWLC-1.cisco.local', 'interfaceCount': '0', 'inventoryStatusDetail': '', 'lastDeviceResyncStartTime': '2024-07-18 18:30:26', 'lastUpdateTime': 1721327458431, 'lastUpdated': '2024-07-18 18:30:58', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': 'cc:b6:c8:e2:29:0b', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.6', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204.192. 6.200', 'pendingSyncRequestsCount': '0', 'platformId': 'C9800-40-K9', 'reachabilityFailureReason': '', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': 'Periodic', 'reasonsForPendingSyncRequests': '', 'role': 'ACCESS', 'roleSource': 'AUTO', 'serialNumber': 'FOX2639PAY7', 'series': 'Cisco Catalyst 9800 Series Wireless Controllers', 'snmpContact': '', 'snmpLocation': '', 'softwareType': 'IOS-XE', 'softwareVersion': '17.14.1', 'tagCount': '0', 'type': 'Cisco Catalyst 9800-40 Wireless Controller', 'upTime': '52 days, 20:37:58.64', 'uptimeSeconds': 4568797, 'vendor': 'Cisco'}], 'version': '1.0', 'siteId': '17301034-7715-4363-952f-3d290ea6ca59'}, {'response': [], 'version': '1.0', 'siteId': '8a7ddd03-dddb-4a76-a079-56c3b45ab1ec', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'c45259ff-0612-4fe7-907c-5987877892d9', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'eb935311-f082-416e-a13c-08acdc6219c0', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '78b8a15c-c112-4941-b00b-ceda2edb38f2', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '212be018-cfb6-4041-9caa-d344385848b7', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '5e6d602a-4135-44ef-a5ae-8d9ee6056f3b', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '6f4d01b1-d00c-4471-8aa2-28b7e99636ab', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '80143381-187c-48fa-a356-15389aad4e9c', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'd0484233-604a-4972-b010-42a0d44fe3d6', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'caa9eb0d-618b-4d90-ac10-eb2a2d17e763', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '21cc7dad-8c9e-4637-8f24-22ec417b9811', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '3fbfb158-a429-41b3-a220-6a6286f93d16', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '7002e28c-a309-454b-ac5d-a6a99d64bc20', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '4a03cd04-41bb-4e3c-9a59-3f96637c27e7', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '65eba291-ee04-43d2-bddb-a2cb2e7ff7d8', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '398f4d42-d265-4233-8ec3-5e4ba73c9956', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '0e238b6e-e390-4dae-8932-49ceb3376304', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '9674054e-fd9e-49ed-8084-1ce9131d6781', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '05d2d29c-3c23-478e-88ee-7ec60398634f', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'message': 'Site does not have device member with given device family or serial number as input'}]} 1265s 1265s WARNING logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 724: Exiting the loop because no devices were returned after increasing the offset. Current offset: 501 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 782: Total number of devices received: 1 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 783: Number of devices that are Unreachable or APs: 1 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 784: Config Backup Operation can be performed on the following filtered devices: 0 1265s 1265s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 823: Retrieving device IDs for site: Global 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 809: Initiating retrieval of site details for site name: 'Global'. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 813: Using 'get_site' API for Catalyst Center version: '2233'. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: execute_get_request: 1832: Initiating GET API call for Function: get_site from Family: sites with Parameters: {'name': 'Global'}. 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: execute_get_request: 1848: Response received from GET API call to Function: 'get_site' from Family: 'sites' is Response: {'response': [{'reachabilityStatus': 'Reachable', 'family': 'Switches and Hubs', 'managementIpAddress': '192.168.0.0', 'instanceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'id': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'}]} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_site_id: 845: Site details retrieved for site 'Global'': {'response': [{'reachabilityStatus': 'Reachable', 'family': 'Switches and Hubs', 'managementIpAddress': '192.168.0.0', 'instanceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'id': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'}]} 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 759: Initiating retrieval of device details for site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b'. 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 703: Initiating retrieval of device IDs for site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b'. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 660: Initiating retrieval of device IDs for site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b'. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 664: Using 'get_membership' API for Catalyst Center version: '2233'. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: execute_get_request: 1832: Initiating GET API call for Function: get_membership from Family: sites with Parameters: {'site_id': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'}. 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: execute_get_request: 1848: Response received from GET API call to Function: 'get_membership' from Family: 'sites' is Response: {'response': [{'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'RUNNING_CONFIG', 'status': 'NON_COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1717977820546, 'lastUpdateTime': 1721609911624, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}], 'version': '1.0', 'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 668: Received response from 'get_membership'. Extracting device IDs. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 674: Retrieved device IDs from membership for site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1265s 1265s WARNING logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 688: No devices found for site 'Global' with site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b'. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 721: Device IDs retrieved from site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 763: Device details retrieved for site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 792: No reachable devices found at Site: 92ffce88-9fce-41d2-ae69-086fa74e9c4b 1265s 1265s ERROR logger:dnac.py:294 NetworkCompliance: set_operation_result: 1780: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: Global. This could be due to Unreachable devices or access points (APs). 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1787 status: failed, msg: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: Global. This could be due to Unreachable devices or access points (APs). 1265s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_null_network_params _ 1265s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Network_settings_workflow_manager_network_null_network_params(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s dnac_version="2.3.5.3", 1265s state="merged", 1265s config_verify=True, 1265s config=self.playbook_config_update_not_req 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "Successfully retrieved details from the playbook" 1265s ) 1265s E AssertionError: "Exception occurred while updating the ne[37 chars]t': " != 'Successfully retrieved details from the playbook' 1265s E - Exception occurred while updating the network settings of 'Global/Testing/test': 1265s E + Successfully retrieved details from the playbook 1265s 1265s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:953: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "Exception occurred while updating the network settings of 'Global/Testing/test': ", 'response': [{'globalPool': {'response': {}, 'msg': {}}}, {'reservePool': {'response': {}, 'msg': {}}}, {'network': {'response': {'Global/Testing/test': {}}, 'msg': {}}}], 'failed': True} 1265s ------------------------------ Captured log call ------------------------------- 1265s ERROR logger:dnac.py:294 NetworkSettings: update_network: 3730: 1265s __________ TestDnacPnpWorkflow.test_pnp_workflow_manager_claim_switch __________ 1265s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_pnp_workflow_manager_claim_switch(self): 1265s """ 1265s Test case for PNP workflow manager when add and claim switch device. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_version="2.3.7.6", 1265s dnac_log=True, 1265s config_verify=True, 1265s state="merged", 1265s config=self.playbook_config_switch 1265s ) 1265s ) 1265s > result = self.execute_module(changed=False, failed=True) 1265s 1265s tests/unit/modules/dnac/test_pnp_workflow_manager.py:193: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:107: in execute_module 1265s result = self.failed() 1265s tests/unit/modules/dnac/dnac_module.py:125: in failed 1265s self.module.main() 1265s plugins/modules/pnp_workflow_manager.py:1414: in main 1265s ccc_pnp.get_diff_state_apply[state]().check_return_status() 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def get_diff_merged(self): 1265s """ 1265s If given device doesnot exist 1265s then add it to pnp database and get the device id 1265s Args: 1265s self: An instance of a class used for interacting with Cisco Catalyst Center. 1265s Returns: 1265s object: An instance of the class with updated results and status 1265s based on the processing of differences. Based on the length of devices passed 1265s it adds/claims or does both. 1265s Description: 1265s The function processes the differences and, depending on the 1265s changes required, it may add, update,or resynchronize devices in 1265s Cisco Catalyst Center. The updated results and status are stored in the 1265s class instance for further use. 1265s """ 1265s 1265s if not isinstance(self.want.get("pnp_params"), list): 1265s self.msg = "Device Info must be passed as a list" 1265s self.log(self.msg, "ERROR") 1265s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1265s 1265s if len(self.want.get("pnp_params")) > 1: 1265s devices_added = [] 1265s for device in self.want.get("pnp_params"): 1265s multi_device_response = self.get_device_list_pnp(device["deviceInfo"]["serialNumber"]) 1265s self.log("Device details for serial number {0} \ 1265s obtained from the API 'get_device_list': {1}".format(device["deviceInfo"]["serialNumber"], 1265s str(multi_device_response)), "DEBUG") 1265s if (multi_device_response and (len(multi_device_response) == 1)): 1265s devices_added.append(device) 1265s self.log("Details of the added device:{0}".format(str(device)), "INFO") 1265s if (len(self.want.get("pnp_params")) - len(devices_added)) == 0: 1265s self.result['response'] = [] 1265s self.result['msg'] = "Devices are already added" 1265s self.log(self.result['msg'], "WARNING") 1265s return self 1265s 1265s bulk_list = [ 1265s device 1265s for device in self.want.get("pnp_params") 1265s if device not in devices_added 1265s ] 1265s bulk_params = self.dnac_apply['exec']( 1265s family="device_onboarding_pnp", 1265s function="import_devices_in_bulk", 1265s params={"payload": bulk_list}, 1265s op_modifies=True, 1265s ) 1265s self.log("Response from API 'import_devices_in_bulk' for imported devices: {0}".format(bulk_params), "DEBUG") 1265s if len(bulk_params.get("successList")) > 0: 1265s self.result['msg'] = "{0} device(s) imported successfully".format( 1265s len(bulk_params.get("successList"))) 1265s self.log(self.result['msg'], "INFO") 1265s self.result['response'] = bulk_params 1265s self.result['diff'] = self.validated_config 1265s self.result['changed'] = True 1265s return self 1265s elif len(bulk_params.get("failureList")) > 0: 1265s self.msg = "Unable to import below {0} device(s). ".format( 1265s len(bulk_params.get("failureList"))) 1265s self.set_operation_result("failed", False, self.msg, "ERROR", 1265s bulk_params).check_return_status() 1265s 1265s self.msg = "Bulk import failed" 1265s self.log(self.msg, "CRITICAL") 1265s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1265s 1265s provisioned_count_params = { 1265s "serial_number": self.want.get("serial_number"), 1265s "state": "Provisioned" 1265s } 1265s 1265s planned_count_params = { 1265s "serial_number": self.want.get("serial_number"), 1265s "state": "Planned" 1265s } 1265s 1265s if not self.have.get("device_found"): 1265s if not self.want['pnp_params']: 1265s self.msg = "Device needs to be added before claiming. Please add device_info" 1265s self.log(self.msg, "ERROR") 1265s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1265s 1265s if not self.want["site_name"]: 1265s self.log("Adding device to pnp database", "INFO") 1265s dev_add_response = self.add_pnp_device(self.want.get('pnp_params')[0]) 1265s self.have["deviceInfo"] = dev_add_response.get("deviceInfo") 1265s self.log("Response from API 'add device' for a single device addition: {0}".format(str(dev_add_response)), "DEBUG") 1265s 1265s if self.have["deviceInfo"]: 1265s self.result['msg'] = "Only Device Added Successfully" 1265s self.log(self.result['msg'], "INFO") 1265s self.result['response'] = dev_add_response 1265s self.result['diff'] = self.validated_config 1265s self.result['changed'] = True 1265s else: 1265s self.msg = "Device Addition Failed" 1265s self.log(self.result['msg'], "CRITICAL") 1265s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1265s 1265s return self 1265s 1265s else: 1265s self.log("Adding device to pnp database") 1265s dev_add_response = self.add_pnp_device(self.want.get('pnp_params')[0]) 1265s self.get_have().check_return_status() 1265s self.have["deviceInfo"] = dev_add_response.get("deviceInfo") 1265s self.log("Response from API 'add device' for single device addition: {0}".format(str(dev_add_response)), "DEBUG") 1265s claim_params = self.get_claim_params() 1265s claim_params["deviceId"] = dev_add_response.get("id") 1265s 1265s claim_response = self.claim_device_site(claim_params) 1265s self.log("Response from API 'claim a device to a site' for a single claiming: {0}".format(str(claim_response)), "DEBUG") 1265s 1265s if claim_response.get("response") == "Device Claimed" and self.have["deviceInfo"]: 1265s self.result['msg'] = "Device Added and Claimed Successfully" 1265s self.log(self.result['msg'], "INFO") 1265s self.result['response'] = claim_response 1265s self.result['diff'] = self.validated_config 1265s self.result['changed'] = True 1265s 1265s else: 1265s self.msg = "Device Claim Failed" 1265s > self.log(self.result['msg'], "CRITICAL") 1265s E KeyError: 'msg' 1265s 1265s plugins/modules/pnp_workflow_manager.py:985: KeyError 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 PnP: get_device_list_pnp: 1219: No device found with serial number: FOC2439LA89 1265s 1265s WARNING logger:dnac.py:294 PnP: get_have: 701: Device with serial number FOC2439LA89 is not found in the inventory 1265s 1265s WARNING logger:dnac.py:294 PnP: get_diff_merged: 965: Adding device to pnp database 1265s 1265s WARNING logger:dnac.py:294 PnP: get_device_list_pnp: 1219: No device found with serial number: FOC2439LA89 1265s 1265s WARNING logger:dnac.py:294 PnP: get_have: 701: Device with serial number FOC2439LA89 is not found in the inventory 1265s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_del_provision_device _ 1265s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_provision_workflow_manager_playbook_del_provision_device(self): 1265s """ 1265s Test case for add device with full crendentials. 1265s 1265s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="deleted", 1265s config_verify=True, 1265s config=self.playbook_del_provision_device 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_provision_workflow_manager.py:176: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/provision_workflow_manager.py:1809: in main 1265s ccc_provision.get_diff_state_apply[state]().check_return_status() 1265s plugins/modules/provision_workflow_manager.py:1596: in get_diff_deleted 1265s device_id = self.get_device_id() 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def get_device_id(self): 1265s """ 1265s Fetches the UUID of the device added in the inventory 1265s 1265s Parameters: 1265s - self: The instance of the class containing the 'config' attribute 1265s to be validated. 1265s Returns: 1265s The method returns the serial number of the device as a string. If it fails, it returns None. 1265s Example: 1265s After creating the validated input, this method retrieves the 1265s UUID of the device. 1265s """ 1265s 1265s dev_response = self.dnac_apply['exec']( 1265s family="devices", 1265s function='get_network_device_by_ip', 1265s params={"ip_address": self.validated_config["management_ip_address"]} 1265s ) 1265s 1265s self.log("The device response from 'get_network_device_by_ip' API is {0}".format(str(dev_response)), "DEBUG") 1265s dev_dict = dev_response.get("response") 1265s > device_id = dev_dict.get("id") 1265s E AttributeError: 'list' object has no attribute 'get' 1265s 1265s plugins/modules/provision_workflow_manager.py:490: AttributeError 1265s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_not_verified __ 1265s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Network_settings_workflow_manager_not_verified(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s dnac_version="2.3.7.6", 1265s state="merged", 1265s config_verify=True, 1265s config=self.playbook_config_network 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=True) 1265s 1265s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:477: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:107: in execute_module 1265s result = self.failed() 1265s tests/unit/modules/dnac/dnac_module.py:125: in failed 1265s self.module.main() 1265s plugins/modules/network_settings_workflow_manager.py:4316: in main 1265s ccc_network.get_diff_state_apply[state](config).check_return_status() 1265s plugins/modules/network_settings_workflow_manager.py:3824: in get_diff_merged 1265s self.update_network(network_management).check_return_status() 1265s plugins/modules/network_settings_workflow_manager.py:3741: in update_network 1265s self.check_tasks_response_status(response, "set_dhcp_settings_for_a_site").check_return_status() 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def check_tasks_response_status(self, response, api_name): 1265s """ 1265s Get the task response status from taskId 1265s Args: 1265s self: The current object details. 1265s response (dict): API response. 1265s api_name (str): API name. 1265s Returns: 1265s self (object): The current object with updated desired Fabric Transits information. 1265s Description: 1265s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE' 1265s state or till it reaches the maximum timeout. 1265s Log the task details and return self. 1265s """ 1265s 1265s if not response: 1265s self.msg = "response is empty" 1265s self.status = "exited" 1265s return self 1265s 1265s if not isinstance(response, dict): 1265s self.msg = "response is not a dictionary" 1265s self.status = "exited" 1265s return self 1265s 1265s task_info = response.get("response") 1265s if task_info.get("errorcode") is not None: 1265s self.msg = response.get("response").get("detail") 1265s self.status = "failed" 1265s return self 1265s 1265s task_id = task_info.get("taskId") 1265s start_time = time.time() 1265s while True: 1265s elapsed_time = time.time() - start_time 1265s if elapsed_time >= self.max_timeout: 1265s self.msg = "Max timeout of {0} sec has reached for the task id '{1}'. " \ 1265s .format(self.max_timeout, task_id) + \ 1265s "Exiting the loop due to unexpected API '{0}' status.".format(api_name) 1265s self.log(self.msg, "WARNING") 1265s self.status = "failed" 1265s break 1265s 1265s task_details = self.get_tasks_by_id(task_id) 1265s self.log('Getting tasks details from task ID {0}: {1}' 1265s .format(task_id, task_details), "DEBUG") 1265s 1265s > task_status = task_details.get("status") 1265s E AttributeError: 'list' object has no attribute 'get' 1265s 1265s plugins/module_utils/dnac.py:1734: AttributeError 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 NetworkSettings: get_dns_settings_for_site: 1153: No DNS settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_ntp_settings_for_site: 1231: No NTP server settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_time_zone_settings_for_site: 1270: No time zone settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_banner_settings_for_site: 1309: No banner (Message of the Day) settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_aaa_settings_for_site: 1357: No network_aaa and client_and_endpoint_aaa settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_force_provision_device _ 1265s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_provision_workflow_manager_playbook_force_provision_device(self): 1265s """ 1265s Test case for add device with full crendentials. 1265s 1265s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_force_provision_device 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_provision_workflow_manager.py:248: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/provision_workflow_manager.py:1809: in main 1265s ccc_provision.get_diff_state_apply[state]().check_return_status() 1265s plugins/modules/provision_workflow_manager.py:1044: in get_diff_merged 1265s self.provision_wired_device(to_provisioning, to_force_provisioning) 1265s plugins/modules/provision_workflow_manager.py:1143: in provision_wired_device 1265s device_id = self.get_device_id() 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def get_device_id(self): 1265s """ 1265s Fetches the UUID of the device added in the inventory 1265s 1265s Parameters: 1265s - self: The instance of the class containing the 'config' attribute 1265s to be validated. 1265s Returns: 1265s The method returns the serial number of the device as a string. If it fails, it returns None. 1265s Example: 1265s After creating the validated input, this method retrieves the 1265s UUID of the device. 1265s """ 1265s 1265s dev_response = self.dnac_apply['exec']( 1265s family="devices", 1265s function='get_network_device_by_ip', 1265s params={"ip_address": self.validated_config["management_ip_address"]} 1265s ) 1265s 1265s self.log("The device response from 'get_network_device_by_ip' API is {0}".format(str(dev_response)), "DEBUG") 1265s dev_dict = dev_response.get("response") 1265s > device_id = dev_dict.get("id") 1265s E AttributeError: 'list' object has no attribute 'get' 1265s 1265s plugins/modules/provision_workflow_manager.py:490: AttributeError 1265s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_telemetry _ 1265s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Network_settings_workflow_manager_network_exception_update_telemetry(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s dnac_version="2.3.7.6", 1265s state="merged", 1265s config_verify=True, 1265s config=self.playbook_config_network 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "Exception occurred while updating telemetry settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1265s ) 1265s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating teleme[56 chars]a7: ' 1265s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1265s E + Exception occurred while updating telemetry settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1265s 1265s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:679: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .", 'response': "An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .", 'failed': True} 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 NetworkSettings: get_dns_settings_for_site: 1153: No DNS settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_ntp_settings_for_site: 1231: No NTP server settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_time_zone_settings_for_site: 1270: No time zone settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_banner_settings_for_site: 1309: No banner (Message of the Day) settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_aaa_settings_for_site: 1357: No network_aaa and client_and_endpoint_aaa settings found for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s ERROR logger:dnac.py:294 NetworkSettings: set_operation_result: 1780: An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1265s _________ TestNetworkCompliance.test_sync_device_config_iplist_site_nr _________ 1265s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_sync_device_config_iplist_site_nr(self): 1265s 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s dnac_log_level="DEBUG", 1265s dnac_log_append=False, 1265s state="merged", 1265s config=self.test_data.get("playbook_config_sync_device_config_iplist_site_nr") 1265s ) 1265s ) 1265s > result = self.execute_module(changed=False, failed=False) 1265s 1265s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:518: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1265s ccc_network_compliance.get_want(config).check_return_status() 1265s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1265s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1265s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list 1265s self.fail_and_exit(self.msg) 1265s plugins/module_utils/dnac.py:1787: in fail_and_exit 1265s self.check_return_status() 1265s plugins/module_utils/dnac.py:307: in check_return_status 1265s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def fail_json(*args, **kwargs): 1265s kwargs["failed"] = True 1265s > raise AnsibleFailJson(kwargs) 1265s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: Global. This could be due to Unreachable devices or access points (APs).", 'response': "No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: Global. This could be due to Unreachable devices or access points (APs).", 'failed': True} 1265s 1265s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1265s ----------------------------- Captured stdout call ----------------------------- 1265s Inside load_fixtures 1265s Mock for DNACSDK._exec: 1265s Inside load_fixtures 1265s ------------------------------ Captured log call ------------------------------- 1265s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 116: Cisco Catalyst Center parameters: {'dnac_host': '1.1.1.1', 'dnac_port': '443', 'dnac_username': 'dummy', 'dnac_password': 'dummy', 'dnac_version': '2.2.3.3', 'dnac_verify': True, 'dnac_debug': False, 'dnac_log': True, 'dnac_log_level': 'DEBUG', 'dnac_log_file_path': 'dnac.log', 'dnac_log_append': False} 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: validate_input: 422: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': ['192.168.0.0'], 'site_name': 'Global', 'run_compliance': False, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': True}] 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1663 status: success, msg: Successfully validated playbook configuration parameters using 'validated_input': [{'ip_address_list': ['192.168.0.0'], 'site_name': 'Global', 'run_compliance': False, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': True}] 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 532: Validating the provided configuration: {'ip_address_list': ['192.168.0.0'], 'site_name': 'Global', 'run_compliance': False, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': True} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: validate_params: 538: Extracted parameters - IP Address List: ['192.168.0.0'], Site Name: Global, Run Compliance: False, Run Compliance Categories: None, Sync Device Config: True 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'Global' 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1265s 1265s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 484: Validating if any network compliance operation is requested: run_compliance=False, run_compliance_categories=None, sync_device_config=True 1265s 1265s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: validate_params: 556: Validation completed for configuration: {'ip_address_list': ['192.168.0.0'], 'site_name': 'Global', 'run_compliance': False, 'run_compliance_categories': None, 'run_compliance_batch_size': 100, 'sync_device_config': True} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 809: Entering get_device_id_list with args: ip_address_list=['192.168.0.0'], site_name=Global 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 677: Entering get_device_list_params method with ip_address_list: ['192.168.0.0'] 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 697: Entering 'get_device_ids_from_ip' method with parameters: {'management_ip_address': ['192.168.0.0']} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 1: {'response': [{'additionalInfo': [], 'name': 'Global', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'siteHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'siteNameHierarchy': 'Global'}]} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 736: Processing device with IP: Unknown IP, Reachability: None, Collection Status: None, Family: None 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 770: Skipping device Unknown IP as its status is None or its collectionStatus is None. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 720: Response received post 'get_device_list' API call with offset 501: {'site': {'response': [{'parentId': '0c0aef1d-0ab9-4660-b216-649c4fe2b7a7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'address': 'Tokyo, Japan', 'addressInheritedFrom': '0c0aef1d-0ab9-4660-b216-649c4fe2b7a7', 'type': 'floor'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'anchorWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'tertiaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'primaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80143381-187c-48fa-a356-15389aad4e9c/9674054e-fd9e-49ed-8084-1ce9131d6781/0c0aef1d-0ab9-4660-b216-649c4fe2b7a7/c9c21b46-5956-4e6e-9dbf-49f3e6e55a66', 'groupNameHierarchy': 'Global/Japan/Tokyo/Ansible_Tower/Ansible_Floor', 'name': 'Ansible_Floor', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'c9c21b46-5956-4e6e-9dbf-49f3e6e55a66'}, {'parentId': '9674054e-fd9e-49ed-8084-1ce9131d6781', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'anchorWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'tertiaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'primaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c'}}, {'nameSpace': 'Location', 'attributes': {'country': 'Japan', 'address': 'Tokyo, Japan', 'latitude': '35.6764', 'addressInheritedFrom': '0c0aef1d-0ab9-4660-b216-649c4fe2b7a7', 'type': 'building', 'longitude': '139.65'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '1', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80143381-187c-48fa-a356-15389aad4e9c/9674054e-fd9e-49ed-8084-1ce9131d6781/0c0aef1d-0ab9-4660-b216-649c4fe2b7a7', 'groupNameHierarchy': 'Global/Japan/Tokyo/Ansible_Tower', 'name': 'Ansible_Tower', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '0c0aef1d-0ab9-4660-b216-649c4fe2b7a7'}, {'parentId': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '2', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'type': 'area'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'anchorWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'tertiaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'primaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/bf561bf3-95d6-4da1-bf49-26887955fa2e/eda30e7b-0e67-4879-85bd-cfc30b0d9765', 'groupNameHierarchy': 'Global/India/Bangalore', 'name': 'Bangalore', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'eda30e7b-0e67-4879-85bd-cfc30b0d9765'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '1', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/16244588-f6da-4ef7-b329-87eed13902be', 'groupNameHierarchy': 'Global/USA/BayAreaGuest', 'name': 'BayAreaGuest', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '16244588-f6da-4ef7-b329-87eed13902be'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '1', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/a83421d0-cfe5-4318-85ee-a991d2cdd748', 'groupNameHierarchy': 'Global/USA/BERKELEY', 'name': 'BERKELEY', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'a83421d0-cfe5-4318-85ee-a991d2cdd748'}, {'parentId': '3fbfb158-a429-41b3-a220-6a6286f93d16', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'Ev Chargers Bldg 10, 7200-10 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'latitude': '35.85992111421487', 'addressInheritedFrom': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'type': 'building', 'longitude': '-78.8829258991226'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '3', 'hasChild': 'TRUE', 'group.count.direct': '3', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'groupNameHierarchy': 'Global/USA/RTP/BLD10', 'name': 'BLD10', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a'}, {'parentId': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Ev Chargers Bldg 10, 7200-10 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'type': 'floor'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/dca266ec-80d9-4692-8782-1f1d3d7aed0a/0d64a127-ae63-46f8-9b76-9d7d1502c6d4', 'groupNameHierarchy': 'Global/USA/RTP/BLD10/BLD10_FLOOR1', 'name': 'BLD10_FLOOR1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '0d64a127-ae63-46f8-9b76-9d7d1502c6d4'}, {'parentId': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Ev Chargers Bldg 10, 7200-10 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'type': 'floor'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/dca266ec-80d9-4692-8782-1f1d3d7aed0a/f5c31c72-6d56-456b-aefb-d7cc942e5b04', 'groupNameHierarchy': 'Global/USA/RTP/BLD10/BLD10_FLOOR2', 'name': 'BLD10_FLOOR2', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'f5c31c72-6d56-456b-aefb-d7cc942e5b04'}, {'parentId': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Ev Chargers Bldg 10, 7200-10 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'type': 'floor'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/dca266ec-80d9-4692-8782-1f1d3d7aed0a/67966786-b701-4099-8e1a-4191534f36d2', 'groupNameHierarchy': 'Global/USA/RTP/BLD10/BLD10_FLOOR3', 'name': 'BLD10_FLOOR3', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '67966786-b701-4099-8e1a-4191534f36d2'}, {'parentId': '3fbfb158-a429-41b3-a220-6a6286f93d16', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'Cisco Systems, 7200 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'latitude': '35.86059627310624', 'addressInheritedFrom': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'type': 'building', 'longitude': '-78.88105620286412'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '3', 'hasChild': 'TRUE', 'group.count.direct': '3', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/89b128e0-3217-4f63-bf99-b202ec7c0103', 'groupNameHierarchy': 'Global/USA/RTP/BLD11', 'name': 'BLD11', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '89b128e0-3217-4f63-bf99-b202ec7c0103'}, {'parentId': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Cisco Systems, 7200 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'type': 'floor'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/89b128e0-3217-4f63-bf99-b202ec7c0103/16b5e550-d288-4e11-94a6-baaa8e3d9c08', 'groupNameHierarchy': 'Global/USA/RTP/BLD11/BLD11_FLOOR1', 'name': 'BLD11_FLOOR1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '16b5e550-d288-4e11-94a6-baaa8e3d9c08'}, {'parentId': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Cisco Systems, 7200 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'type': 'floor'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/89b128e0-3217-4f63-bf99-b202ec7c0103/8c57bcf3-b0e4-4f47-b45e-bbb9f32e2997', 'groupNameHierarchy': 'Global/USA/RTP/BLD11/BLD11_FLOOR2', 'name': 'BLD11_FLOOR2', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '8c57bcf3-b0e4-4f47-b45e-bbb9f32e2997'}, {'parentId': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Cisco Systems, 7200 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'type': 'floor'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/89b128e0-3217-4f63-bf99-b202ec7c0103/be5fd8eb-dda4-4f38-b5ce-35d1d49151cc', 'groupNameHierarchy': 'Global/USA/RTP/BLD11/BLD11_FLOOR3', 'name': 'BLD11_FLOOR3', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'be5fd8eb-dda4-4f38-b5ce-35d1d49151cc'}, {'parentId': '3fbfb158-a429-41b3-a220-6a6286f93d16', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '3', 'hasChild': 'TRUE', 'group.count.direct': '3', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'Cisco Systems, 7200-12 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'latitude': '35.8611847591779', 'addressInheritedFrom': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'type': 'building', 'longitude': '-78.88217248318003'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/4996f8ef-8933-412e-b58b-2238ba860ec7', 'groupNameHierarchy': 'Global/USA/RTP/BLD12', 'name': 'BLD12', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '4996f8ef-8933-412e-b58b-2238ba860ec7'}, {'parentId': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Cisco Systems, 7200-12 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'type': 'floor'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/4996f8ef-8933-412e-b58b-2238ba860ec7/d44f3eca-a3dc-4ed1-a020-0ded43c78056', 'groupNameHierarchy': 'Global/USA/RTP/BLD12/BLD12_FLOOR1', 'name': 'BLD12_FLOOR1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'd44f3eca-a3dc-4ed1-a020-0ded43c78056'}, {'parentId': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Cisco Systems, 7200-12 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'type': 'floor'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/4996f8ef-8933-412e-b58b-2238ba860ec7/fb5bbd30-3a01-4eaf-a24d-b0e75ff158c6', 'groupNameHierarchy': 'Global/USA/RTP/BLD12/BLD12_FLOOR2', 'name': 'BLD12_FLOOR2', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'fb5bbd30-3a01-4eaf-a24d-b0e75ff158c6'}, {'parentId': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'address': 'Cisco Systems, 7200-12 Kit Creek Rd, Morrisville, North Carolina 27560, United States', 'addressInheritedFrom': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'type': 'floor'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16/4996f8ef-8933-412e-b58b-2238ba860ec7/ea574cd8-fa45-48ab-9944-83ed33537416', 'groupNameHierarchy': 'Global/USA/RTP/BLD12/BLD12_FLOOR3', 'name': 'BLD12_FLOOR3', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'ea574cd8-fa45-48ab-9944-83ed33537416'}, {'parentId': '65eba291-ee04-43d2-bddb-a2cb2e7ff7d8', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': '725 Alder Drive, Milpitas, California 95035, United States', 'latitude': '37.415947', 'addressInheritedFrom': 'ed089cbf-3622-492f-bf60-5baf6d0b3708', 'type': 'building', 'longitude': '-121.916327'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '1', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/ed089cbf-3622-492f-bf60-5baf6d0b3708', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD20', 'name': 'BLD20', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'ed089cbf-3622-492f-bf60-5baf6d0b3708'}, {'parentId': 'ed089cbf-3622-492f-bf60-5baf6d0b3708', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'address': '725 Alder Drive, Milpitas, California 95035, United States', 'addressInheritedFrom': 'ed089cbf-3622-492f-bf60-5baf6d0b3708', 'type': 'floor'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/ed089cbf-3622-492f-bf60-5baf6d0b3708/47a127ae-92bd-49ec-aed0-aec8e2a31678', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD20/BLD20_FLOOR1', 'name': 'BLD20_FLOOR1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '47a127ae-92bd-49ec-aed0-aec8e2a31678'}, {'parentId': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'type': 'floor'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/36d3230c-c6ce-44ae-8901-3b4a624883e6/625bcb2d-4e4a-4571-80e9-c5d2caad4ecf', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD23/BLD20_FLOOR2', 'name': 'BLD20_FLOOR2', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '625bcb2d-4e4a-4571-80e9-c5d2caad4ecf'}, {'parentId': '65eba291-ee04-43d2-bddb-a2cb2e7ff7d8', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '5', 'hasChild': 'TRUE', 'group.count.direct': '5', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'latitude': '37.398188', 'addressInheritedFrom': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'type': 'building', 'longitude': '-121.912974'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/36d3230c-c6ce-44ae-8901-3b4a624883e6', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD23', 'name': 'BLD23', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '36d3230c-c6ce-44ae-8901-3b4a624883e6'}, {'parentId': 'a83421d0-cfe5-4318-85ee-a991d2cdd748', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': '725 Alder Drive, Milpitas, California 95035, United States', 'latitude': '37.415947', 'addressInheritedFrom': '8ff6aa1d-089f-41e2-8e42-5cad97770e7d', 'type': 'building', 'longitude': '-121.916327'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/a83421d0-cfe5-4318-85ee-a991d2cdd748/8ff6aa1d-089f-41e2-8e42-5cad97770e7d', 'groupNameHierarchy': 'Global/USA/BERKELEY/BLDBERK', 'name': 'BLDBERK', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '8ff6aa1d-089f-41e2-8e42-5cad97770e7d'}, {'parentId': '16244588-f6da-4ef7-b329-87eed13902be', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': '725 Alder Drive, Milpitas, California 95035, United States', 'latitude': '37.415947', 'addressInheritedFrom': 'fa666989-76fb-4aa1-8caf-ad9dc6d08ef7', 'type': 'building', 'longitude': '-121.916327'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/16244588-f6da-4ef7-b329-87eed13902be/fa666989-76fb-4aa1-8caf-ad9dc6d08ef7', 'groupNameHierarchy': 'Global/USA/BayAreaGuest/BLD_GB', 'name': 'BLD_GB', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'fa666989-76fb-4aa1-8caf-ad9dc6d08ef7'}, {'parentId': '21cc7dad-8c9e-4637-8f24-22ec417b9811', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'UMBRELLA', 'attributes': {'umbrellaReady': 'true', 'member.umbrellaNotReady.direct': '0', 'member.umbrellaReady.direct': '1', 'member.umbrellaReadyNotEnabled.direct': '1', 'member.umbrellaEnabled.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'latitude': '37.398188', 'addressInheritedFrom': '274da223-2411-4689-8f70-b5bbd8915020', 'type': 'building', 'longitude': '-121.912974'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '3', 'hasChild': 'TRUE', 'group.count.direct': '3', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '3', 'member.count.direct': '1'}}, {'nameSpace': 'ETA', 'attributes': {'member.compatibleWithNaasOnly.direct': '0', 'member.etaCapable.direct': '1', 'member.etaReady.direct': '1', 'member.etaEnabledNaasOnly.direct': '0', 'ETAReady': 'true', 'member.etaNotReady.direct': '0', 'member.etaReadyNotEnabled.direct': '1', 'member.etaEnabled.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/21cc7dad-8c9e-4637-8f24-22ec417b9811/274da223-2411-4689-8f70-b5bbd8915020', 'groupNameHierarchy': 'Global/USA/New York/BLDNYC', 'name': 'BLDNYC', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '274da223-2411-4689-8f70-b5bbd8915020'}, {'parentId': '4a03cd04-41bb-4e3c-9a59-3f96637c27e7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'latitude': '37.398188', 'addressInheritedFrom': 'b497a0ab-3ab4-42fd-8921-2f45af587b98', 'type': 'building', 'longitude': '-121.912974'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/4a03cd04-41bb-4e3c-9a59-3f96637c27e7/b497a0ab-3ab4-42fd-8921-2f45af587b98', 'groupNameHierarchy': 'Global/USA/SAN-FRANCISCO/BLD_SF', 'name': 'BLD_SF', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'b497a0ab-3ab4-42fd-8921-2f45af587b98'}, {'parentId': '4a03cd04-41bb-4e3c-9a59-3f96637c27e7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'latitude': '37.398188', 'addressInheritedFrom': 'ef6944e0-72be-4d1d-8e29-1ca1ebcf8d98', 'type': 'building', 'longitude': '-121.912974'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/4a03cd04-41bb-4e3c-9a59-3f96637c27e7/ef6944e0-72be-4d1d-8e29-1ca1ebcf8d98', 'groupNameHierarchy': 'Global/USA/SAN-FRANCISCO/BLD_SF1', 'name': 'BLD_SF1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'ef6944e0-72be-4d1d-8e29-1ca1ebcf8d98'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'anchorWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'tertiaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'primaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '2', 'hasChild': 'TRUE', 'group.count.direct': '2', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'type': 'area'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'groupNameHierarchy': 'Global/Chennai', 'name': 'Chennai', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '80be6b3f-2bb8-4711-ae59-f7a667eedb08'}, {'parentId': '6f4d01b1-d00c-4471-8aa2-28b7e99636ab', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': '1579 Hopkins Drive, San Jose, California 95122, United States', 'latitude': '37.338', 'addressInheritedFrom': '7010b0ed-ae2b-41bd-977a-79b1628dd1b7', 'type': 'building', 'longitude': '-121.832'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '1', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/6f4d01b1-d00c-4471-8aa2-28b7e99636ab/7010b0ed-ae2b-41bd-977a-79b1628dd1b7', 'groupNameHierarchy': 'Global/USA/Georgia/cisco', 'name': 'cisco', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '7010b0ed-ae2b-41bd-977a-79b1628dd1b7'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '94f61603-5f1f-4b26-85dd-59355cd67632', 'type': 'area'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '94f61603-5f1f-4b26-85dd-59355cd67632', 'anchorWlcInheritedFrom': '94f61603-5f1f-4b26-85dd-59355cd67632', 'tertiaryWlcInheritedFrom': '94f61603-5f1f-4b26-85dd-59355cd67632', 'primaryWlcInheritedFrom': '94f61603-5f1f-4b26-85dd-59355cd67632'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/94f61603-5f1f-4b26-85dd-59355cd67632', 'groupNameHierarchy': 'Global/Demo4', 'name': 'Demo4', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '94f61603-5f1f-4b26-85dd-59355cd67632'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '633a40de-b885-448c-bd84-dd1fef679fbe', 'anchorWlcInheritedFrom': '633a40de-b885-448c-bd84-dd1fef679fbe', 'tertiaryWlcInheritedFrom': '633a40de-b885-448c-bd84-dd1fef679fbe', 'primaryWlcInheritedFrom': '633a40de-b885-448c-bd84-dd1fef679fbe'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '633a40de-b885-448c-bd84-dd1fef679fbe', 'type': 'area'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/633a40de-b885-448c-bd84-dd1fef679fbe', 'groupNameHierarchy': 'Global/Demo5', 'name': 'Demo5', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '633a40de-b885-448c-bd84-dd1fef679fbe'}, {'parentId': 'caa9eb0d-618b-4d90-ac10-eb2a2d17e763', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'width': '200.0', 'length': '100.0', 'height': '10.0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'anchorWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'tertiaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'primaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': 'None', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'Location', 'attributes': {'country': 'India', 'address': 'Bengaluru, Karnataka, India', 'latitude': '0.0', 'addressInheritedFrom': 'caa9eb0d-618b-4d90-ac10-eb2a2d17e763', 'type': 'floor', 'longitude': '0.0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/bf561bf3-95d6-4da1-bf49-26887955fa2e/eda30e7b-0e67-4879-85bd-cfc30b0d9765/caa9eb0d-618b-4d90-ac10-eb2a2d17e763/e3c898bc-a0d5-47b9-83c6-a48a88fa6fbe', 'groupNameHierarchy': 'Global/India/Bangalore/Mantri Square/floor1', 'name': 'floor1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'e3c898bc-a0d5-47b9-83c6-a48a88fa6fbe'}, {'parentId': '274da223-2411-4689-8f70-b5bbd8915020', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '17301034-7715-4363-952f-3d290ea6ca59', 'primaryWlc': '778a27bb-d795-4fa3-a321-f2e693ebe1f4'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '2', 'member.count.direct': '2'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'UMBRELLA', 'attributes': {'umbrellaReady': 'true', 'member.umbrellaNotReady.direct': '0', 'member.umbrellaReady.direct': '1', 'member.umbrellaReadyNotEnabled.direct': '1', 'member.umbrellaEnabled.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '274da223-2411-4689-8f70-b5bbd8915020', 'type': 'floor'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/21cc7dad-8c9e-4637-8f24-22ec417b9811/274da223-2411-4689-8f70-b5bbd8915020/17301034-7715-4363-952f-3d290ea6ca59', 'groupNameHierarchy': 'Global/USA/New York/BLDNYC/FLOOR1', 'name': 'FLOOR1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '17301034-7715-4363-952f-3d290ea6ca59'}, {'parentId': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'type': 'floor'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/36d3230c-c6ce-44ae-8901-3b4a624883e6/8a7ddd03-dddb-4a76-a079-56c3b45ab1ec', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD23/FLOOR1_LEVEL1', 'name': 'FLOOR1_LEVEL1', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '8a7ddd03-dddb-4a76-a079-56c3b45ab1ec'}, {'parentId': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'type': 'floor'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/36d3230c-c6ce-44ae-8901-3b4a624883e6/c45259ff-0612-4fe7-907c-5987877892d9', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD23/FLOOR1_LEVEL2', 'name': 'FLOOR1_LEVEL2', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'c45259ff-0612-4fe7-907c-5987877892d9'}, {'parentId': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'type': 'floor'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/36d3230c-c6ce-44ae-8901-3b4a624883e6/eb935311-f082-416e-a13c-08acdc6219c0', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD23/FLOOR1_LEVEL3', 'name': 'FLOOR1_LEVEL3', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'eb935311-f082-416e-a13c-08acdc6219c0'}, {'parentId': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'type': 'floor'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8/36d3230c-c6ce-44ae-8901-3b4a624883e6/78b8a15c-c112-4941-b00b-ceda2edb38f2', 'groupNameHierarchy': 'Global/USA/SAN JOSE/BLD23/FLOOR1_LEVEL4', 'name': 'FLOOR1_LEVEL4', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '78b8a15c-c112-4941-b00b-ceda2edb38f2'}, {'parentId': '274da223-2411-4689-8f70-b5bbd8915020', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '212be018-cfb6-4041-9caa-d344385848b7', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'secondaryWlc': '778a27bb-d795-4fa3-a321-f2e693ebe1f4', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': '', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'Location', 'attributes': {'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'addressInheritedFrom': '274da223-2411-4689-8f70-b5bbd8915020', 'type': 'floor'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/21cc7dad-8c9e-4637-8f24-22ec417b9811/274da223-2411-4689-8f70-b5bbd8915020/212be018-cfb6-4041-9caa-d344385848b7', 'groupNameHierarchy': 'Global/USA/New York/BLDNYC/FLOOR2', 'name': 'FLOOR2', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '212be018-cfb6-4041-9caa-d344385848b7'}, {'parentId': '7010b0ed-ae2b-41bd-977a-79b1628dd1b7', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'address': '1579 Hopkins Drive, San Jose, California 95122, United States', 'addressInheritedFrom': '7010b0ed-ae2b-41bd-977a-79b1628dd1b7', 'type': 'floor'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': 'None', 'isCadFile': 'false', 'floorIndex': '1'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'length': '100.0', 'width': '100.0', 'height': '10.0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/6f4d01b1-d00c-4471-8aa2-28b7e99636ab/7010b0ed-ae2b-41bd-977a-79b1628dd1b7/5e6d602a-4135-44ef-a5ae-8d9ee6056f3b', 'groupNameHierarchy': 'Global/USA/Georgia/cisco/Floor_test', 'name': 'Floor_test', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '5e6d602a-4135-44ef-a5ae-8d9ee6056f3b'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '2', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/6f4d01b1-d00c-4471-8aa2-28b7e99636ab', 'groupNameHierarchy': 'Global/USA/Georgia', 'name': 'Georgia', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '6f4d01b1-d00c-4471-8aa2-28b7e99636ab'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '3', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'anchorWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'tertiaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'primaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'type': 'area'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/bf561bf3-95d6-4da1-bf49-26887955fa2e', 'groupNameHierarchy': 'Global/India', 'name': 'India', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'bf561bf3-95d6-4da1-bf49-26887955fa2e'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'anchorWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'tertiaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'primaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '3', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'type': 'area'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80143381-187c-48fa-a356-15389aad4e9c', 'groupNameHierarchy': 'Global/Japan', 'name': 'Japan', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '80143381-187c-48fa-a356-15389aad4e9c'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'Bengaluru, Karnataka, India', 'latitude': '25.2', 'addressInheritedFrom': 'd0484233-604a-4972-b010-42a0d44fe3d6', 'type': 'building', 'longitude': '42.1'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': 'd0484233-604a-4972-b010-42a0d44fe3d6', 'anchorWlcInheritedFrom': 'd0484233-604a-4972-b010-42a0d44fe3d6', 'tertiaryWlcInheritedFrom': 'd0484233-604a-4972-b010-42a0d44fe3d6', 'primaryWlcInheritedFrom': 'd0484233-604a-4972-b010-42a0d44fe3d6'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/d0484233-604a-4972-b010-42a0d44fe3d6', 'groupNameHierarchy': 'Global/JJJ', 'name': 'JJJ', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'd0484233-604a-4972-b010-42a0d44fe3d6'}, {'parentId': 'eda30e7b-0e67-4879-85bd-cfc30b0d9765', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'India', 'address': 'Bengaluru, Karnataka, India', 'latitude': '12.969910', 'addressInheritedFrom': 'caa9eb0d-618b-4d90-ac10-eb2a2d17e763', 'type': 'building', 'longitude': '77.597960'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '1', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'anchorWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'tertiaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'primaryWlcInheritedFrom': 'bf561bf3-95d6-4da1-bf49-26887955fa2e'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/bf561bf3-95d6-4da1-bf49-26887955fa2e/eda30e7b-0e67-4879-85bd-cfc30b0d9765/caa9eb0d-618b-4d90-ac10-eb2a2d17e763', 'groupNameHierarchy': 'Global/India/Bangalore/Mantri Square', 'name': 'Mantri Square', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': 'caa9eb0d-618b-4d90-ac10-eb2a2d17e763'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '4', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '3', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/21cc7dad-8c9e-4637-8f24-22ec417b9811', 'groupNameHierarchy': 'Global/USA/New York', 'name': 'New York', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '21cc7dad-8c9e-4637-8f24-22ec417b9811'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '12', 'hasChild': 'TRUE', 'group.count.direct': '3', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/3fbfb158-a429-41b3-a220-6a6286f93d16', 'groupNameHierarchy': 'Global/USA/RTP', 'name': 'RTP', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '3fbfb158-a429-41b3-a220-6a6286f93d16'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/7002e28c-a309-454b-ac5d-a6a99d64bc20', 'groupNameHierarchy': 'Global/USA/Sample', 'name': 'Sample', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '7002e28c-a309-454b-ac5d-a6a99d64bc20'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '2', 'hasChild': 'TRUE', 'group.count.direct': '2', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/4a03cd04-41bb-4e3c-9a59-3f96637c27e7', 'groupNameHierarchy': 'Global/USA/SAN-FRANCISCO', 'name': 'SAN-FRANCISCO', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '4a03cd04-41bb-4e3c-9a59-3f96637c27e7'}, {'parentId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '8', 'hasChild': 'TRUE', 'group.count.direct': '2', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/65eba291-ee04-43d2-bddb-a2cb2e7ff7d8', 'groupNameHierarchy': 'Global/USA/SAN JOSE', 'name': 'SAN JOSE', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '65eba291-ee04-43d2-bddb-a2cb2e7ff7d8'}, {'parentId': '274da223-2411-4689-8f70-b5bbd8915020', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'mapGeometry', 'attributes': {'offsetX': '0.0', 'offsetY': '0.0', 'width': '58.1', 'length': '103.23', 'height': '58.22'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'country': 'United States', 'address': 'McCarthy Blvd, San Jose, California 95131, United States', 'latitude': '0.0', 'addressInheritedFrom': '274da223-2411-4689-8f70-b5bbd8915020', 'type': 'floor', 'longitude': '0.0'}}, {'nameSpace': 'mapsSummary', 'attributes': {'rfModel': '101101', 'imageURL': 'None', 'isCadFile': 'false', 'floorIndex': '1'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67/21cc7dad-8c9e-4637-8f24-22ec417b9811/274da223-2411-4689-8f70-b5bbd8915020/398f4d42-d265-4233-8ec3-5e4ba73c9956', 'groupNameHierarchy': 'Global/USA/New York/BLDNYC/Test_Floor3', 'name': 'Test_Floor3', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '398f4d42-d265-4233-8ec3-5e4ba73c9956'}, {'parentId': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'India', 'latitude': '12', 'addressInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'type': 'building', 'longitude': '80'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'anchorWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'tertiaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'primaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80be6b3f-2bb8-4711-ae59-f7a667eedb08/0e238b6e-e390-4dae-8932-49ceb3376304', 'groupNameHierarchy': 'Global/Chennai/Tidel', 'name': 'Tidel', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '0e238b6e-e390-4dae-8932-49ceb3376304'}, {'parentId': '80143381-187c-48fa-a356-15389aad4e9c', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'type': 'area'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'anchorWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'tertiaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c', 'primaryWlcInheritedFrom': '80143381-187c-48fa-a356-15389aad4e9c'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '2', 'hasChild': 'TRUE', 'group.count.direct': '1', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80143381-187c-48fa-a356-15389aad4e9c/9674054e-fd9e-49ed-8084-1ce9131d6781', 'groupNameHierarchy': 'Global/Japan/Tokyo', 'name': 'Tokyo', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '9674054e-fd9e-49ed-8084-1ce9131d6781'}, {'parentId': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'Location', 'attributes': {'country': 'India', 'address': 'Cognizant Technology Solutions, Chennai, Tamil Nadu 600113, India', 'latitude': '12.9908', 'addressInheritedFrom': '05d2d29c-3c23-478e-88ee-7ec60398634f', 'type': 'building', 'longitude': '80.2470'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '0', 'hasChild': 'FALSE', 'group.count.direct': '0', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '0', 'member.count.direct': '0'}}, {'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'anchorWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'tertiaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'primaryWlcInheritedFrom': '80be6b3f-2bb8-4711-ae59-f7a667eedb08'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/80be6b3f-2bb8-4711-ae59-f7a667eedb08/05d2d29c-3c23-478e-88ee-7ec60398634f', 'groupNameHierarchy': 'Global/Chennai/Trill', 'name': 'Trill', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '05d2d29c-3c23-478e-88ee-7ec60398634f'}, {'parentId': '3cf15665-7b7b-4b29-82a9-75b8d094b602', 'groupTypeList': ['SITE'], 'additionalInfo': [{'nameSpace': 'com.wireless.managingwlc', 'attributes': {'secondaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'anchorWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'tertiaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'primaryWlcInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67'}}, {'nameSpace': 'Location', 'attributes': {'addressInheritedFrom': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'type': 'area'}}, {'nameSpace': 'System Settings', 'attributes': {'group.count.total': '38', 'hasChild': 'TRUE', 'group.count.direct': '8', 'group.hierarchy.groupType': 'SITE', 'member.count.total': '3', 'member.count.direct': '0'}}], 'groupHierarchy': '3cf15665-7b7b-4b29-82a9-75b8d094b602/69f31d51-9e0d-48f4-8546-4935253f9a67', 'groupNameHierarchy': 'Global/USA', 'name': 'USA', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'id': '69f31d51-9e0d-48f4-8546-4935253f9a67'}], 'version': '1.0'}, 'device': [{'response': [{'instanceUuid': '3bf3f269-88ae-48fc-910d-3263ba618f87', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 0, 'apManagerInterfaceIp': '', 'associatedWlcIp': '', 'bootDateTime': '2024-05-27 02:32:55', 'collectionInterval': 'Global Default', 'collectionIntervalValue': '01:30:00', 'collectionStatus': 'Managed', 'description': 'Cisco IOS Software [Dublin], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.14.1, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2024 by Cisco Systems, Inc. Compiled Fri 05-Apr-24 00:08 by mcpre netconf enabled', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '192.168.0.1', 'family': 'Switches and Hubs', 'hostname': 'DC-FR-9300.cisco.local', 'interfaceCount': '0', 'inventoryStatusDetail': '', 'lastDeviceResyncStartTime': '2024-07-18 17:40:01', 'lastUpdateTime': 1721324455437, 'lastUpdated': '2024-07-18 17:40:55', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': 'd4:ad:bd:c1:67:00', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.1', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204.192. 3. 40', 'pendingSyncRequestsCount': '0', 'platformId': 'C9300-24U', 'reachabilityFailureReason': '', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': 'Periodic', 'reasonsForPendingSyncRequests': '', 'role': 'ACCESS', 'roleSource': 'AUTO', 'serialNumber': 'FJC2327U0S2', 'series': 'Cisco Catalyst 9300 Series Switches', 'snmpContact': '', 'snmpLocation': '', 'softwareType': 'IOS-XE', 'softwareVersion': '17.14.1', 'tagCount': '0', 'type': 'Cisco Catalyst 9300 Switch', 'upTime': '52 days, 15:08:19.76', 'uptimeSeconds': 4552059, 'vendor': 'Cisco'}, {'instanceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 0, 'apManagerInterfaceIp': '', 'associatedWlcIp': '', 'bootDateTime': '2024-05-27 02:34:15', 'collectionInterval': 'Global Default', 'collectionIntervalValue': '01:30:00', 'collectionStatus': 'In Progress', 'description': 'Cisco IOS Software [Dublin], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.14.1, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2024 by Cisco Systems, Inc. Compiled Fri 05-Apr-24 00:08 by mcpre netconf enabled', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '192.168.0.0', 'family': 'Switches and Hubs', 'hostname': 'DC-T-9300.cisco.local', 'interfaceCount': '0', 'inventoryStatusDetail': '', 'lastDeviceResyncStartTime': '2024-07-18 19:00:21', 'lastUpdateTime': 1721323875769, 'lastUpdated': '2024-07-18 17:31:15', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': '00:b6:70:32:b8:00', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.0', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204. 1. 2. 5', 'pendingSyncRequestsCount': '1', 'platformId': 'C9300-24P', 'reachabilityFailureReason': '', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': 'Periodic', 'reasonsForPendingSyncRequests': 'Periodic', 'role': 'ACCESS', 'roleSource': 'AUTO', 'serialNumber': 'FCW2225C020', 'series': 'Cisco Catalyst 9300 Series Switches', 'snmpContact': '', 'snmpLocation': '', 'softwareType': 'IOS-XE', 'softwareVersion': '17.14.1', 'tagCount': '0', 'type': 'Cisco Catalyst 9300 Switch', 'upTime': '52 days, 14:57:41.19', 'uptimeSeconds': 4551979, 'vendor': 'Cisco'}, {'instanceUuid': '9db11f54-8007-438c-ba9b-711513deecc6', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 0, 'apManagerInterfaceIp': '', 'associatedWlcIp': '', 'bootDateTime': '2024-05-28 00:14:36', 'collectionInterval': 'Global Default', 'collectionIntervalValue': '01:30:00', 'collectionStatus': 'Managed', 'description': 'Cisco IOS Software [Dublin], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.12.2, RELEASE SOFTWARE (fc2) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2023 by Cisco Systems, Inc. Compiled Tue 14-Nov-23 05:56 by mcpre netconf enabled', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '192.168.0.2', 'family': 'Switches and Hubs', 'hostname': 'NY-EN-9300.cisco.local', 'interfaceCount': '0', 'inventoryStatusDetail': '', 'lastDeviceResyncStartTime': '2024-07-18 17:40:01', 'lastUpdateTime': 1721324496374, 'lastUpdated': '2024-07-18 17:41:36', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': '90:88:55:07:59:00', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.2', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204. 1. 2. 2', 'pendingSyncRequestsCount': '0', 'platformId': 'C9300-48UXM, C9300-48UXM', 'reachabilityFailureReason': '', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': 'Periodic', 'reasonsForPendingSyncRequests': '', 'role': 'ACCESS', 'roleSource': 'AUTO', 'serialNumber': 'FJC271924K0, FJC271924EQ', 'series': 'Cisco Catalyst 9300 Series Switches', 'snmpContact': '', 'snmpLocation': '', 'softwareType': 'IOS-XE', 'softwareVersion': '17.12.2', 'tagCount': '0', 'type': 'Cisco Catalyst 9300 Switch', 'upTime': '51 days, 17:27:00.06', 'uptimeSeconds': 4473958, 'vendor': 'Cisco'}, {'instanceUuid': 'f490e92f-490e-4bb1-9519-770b1dc604c4', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 0, 'apManagerInterfaceIp': '', 'associatedWlcIp': '', 'bootDateTime': '2024-05-27 22:21:03', 'collectionInterval': 'Global Default', 'collectionIntervalValue': '01:30:00', 'collectionStatus': 'Managed', 'description': 'Cisco IOS Software [Dublin], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.14.1, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2024 by Cisco Systems, Inc. Compiled Fri 05-Apr-24 00:08 by mcpre netconf enabled', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '192.168.0.3', 'family': 'Switches and Hubs', 'hostname': 'NY-BN-9300.cisco.local', 'interfaceCount': '0', 'inventoryStatusDetail': '', 'lastDeviceResyncStartTime': '2024-07-18 17:40:01', 'lastUpdateTime': 1721324523813, 'lastUpdated': '2024-07-18 17:42:03', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': '0c:75:bd:41:14:00', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.3', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204. 1. 2. 4', 'pendingSyncRequestsCount': '0', 'platformId': 'C9300-48UXM, C9300-48UXM', 'reachabilityFailureReason': '', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': 'Periodic', 'reasonsForPendingSyncRequests': '', 'role': 'DISTRIBUTION', 'roleSource': 'AUTO', 'serialNumber': 'FJB2334D06N, FJC2335S09D', 'series': 'Cisco Catalyst 9300 Series Switches', 'snmpContact': '', 'snmpLocation': '', 'softwareType': 'IOS-XE', 'softwareVersion': '17.14.1', 'tagCount': '0', 'type': 'Cisco Catalyst 9300 Switch', 'upTime': '51 days, 19:21:44.15', 'uptimeSeconds': 4480771, 'vendor': 'Cisco'}], 'version': '1.0', 'siteId': '3cf15665-7b7b-4b29-82a9-75b8d094b602'}, {'response': [], 'version': '1.0', 'siteId': 'c9c21b46-5956-4e6e-9dbf-49f3e6e55a66', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '0c0aef1d-0ab9-4660-b216-649c4fe2b7a7', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'eda30e7b-0e67-4879-85bd-cfc30b0d9765', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '16244588-f6da-4ef7-b329-87eed13902be', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'a83421d0-cfe5-4318-85ee-a991d2cdd748', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'dca266ec-80d9-4692-8782-1f1d3d7aed0a', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '0d64a127-ae63-46f8-9b76-9d7d1502c6d4', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'f5c31c72-6d56-456b-aefb-d7cc942e5b04', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '67966786-b701-4099-8e1a-4191534f36d2', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '89b128e0-3217-4f63-bf99-b202ec7c0103', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '16b5e550-d288-4e11-94a6-baaa8e3d9c08', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '8c57bcf3-b0e4-4f47-b45e-bbb9f32e2997', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'be5fd8eb-dda4-4f38-b5ce-35d1d49151cc', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '4996f8ef-8933-412e-b58b-2238ba860ec7', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'd44f3eca-a3dc-4ed1-a020-0ded43c78056', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'fb5bbd30-3a01-4eaf-a24d-b0e75ff158c6', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'ea574cd8-fa45-48ab-9944-83ed33537416', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'ed089cbf-3622-492f-bf60-5baf6d0b3708', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '47a127ae-92bd-49ec-aed0-aec8e2a31678', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '625bcb2d-4e4a-4571-80e9-c5d2caad4ecf', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '36d3230c-c6ce-44ae-8901-3b4a624883e6', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '8ff6aa1d-089f-41e2-8e42-5cad97770e7d', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'fa666989-76fb-4aa1-8caf-ad9dc6d08ef7', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [{'instanceUuid': 'e0bdf3e1-fbcf-4faa-a11c-156e32e7ae38', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 0, 'apManagerInterfaceIp': '', 'associatedWlcIp': '', 'bootDateTime': '2024-05-27 02:35:07', 'collectionInterval': 'Global Default', 'collectionIntervalValue': '01:30:00', 'collectionStatus': 'Managed', 'description': 'Cisco IOS Software [Dublin], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.14.1, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2024 by Cisco Systems, Inc. Compiled Fri 05-Apr-24 00:08 by mcpre netconf enabled', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '192.168.0.4', 'family': 'Switches and Hubs', 'hostname': 'SJ-EN-9300.cisco.local', 'interfaceCount': '0', 'inventoryStatusDetail': '', 'lastDeviceResyncStartTime': '2024-07-18 17:40:01', 'lastUpdateTime': 1721324467241, 'lastUpdated': '2024-07-18 17:41:07', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': '90:88:55:8e:42:80', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.4', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204. 1. 2. 1', 'pendingSyncRequestsCount': '0', 'platformId': 'C9300-48T', 'reachabilityFailureReason': '', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': 'Periodic', 'reasonsForPendingSyncRequests': '', 'role': 'ACCESS', 'roleSource': 'AUTO', 'serialNumber': 'FJC2721271T', 'series': 'Cisco Catalyst 9300 Series Switches', 'snmpContact': '', 'snmpLocation': '', 'softwareType': 'IOS-XE', 'softwareVersion': '17.14.1', 'tagCount': '0', 'type': 'Cisco Catalyst 9300 Switch', 'upTime': '52 days, 15:06:55.77', 'uptimeSeconds': 4551928, 'vendor': 'Cisco'}], 'version': '1.0', 'siteId': '274da223-2411-4689-8f70-b5bbd8915020'}, {'response': [], 'version': '1.0', 'siteId': 'b497a0ab-3ab4-42fd-8921-2f45af587b98', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'ef6944e0-72be-4d1d-8e29-1ca1ebcf8d98', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '80be6b3f-2bb8-4711-ae59-f7a667eedb08', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '7010b0ed-ae2b-41bd-977a-79b1628dd1b7', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '94f61603-5f1f-4b26-85dd-59355cd67632', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '633a40de-b885-448c-bd84-dd1fef679fbe', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'e3c898bc-a0d5-47b9-83c6-a48a88fa6fbe', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [{'instanceUuid': '37b05b0f-1b1e-496a-b101-8f277f0af8ff', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 2, 'apEthernetMacAddress': '34:5d:a8:0e:20:b4', 'apManagerInterfaceIp': '192.168.0.5', 'associatedWlcIp': '192.168.0.5', 'collectionInterval': 'NA', 'collectionStatus': 'Managed', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '', 'errorCode': 'null', 'family': 'Unified AP', 'hostname': 'LTTS-test1', 'interfaceCount': '0', 'inventoryStatusDetail': 'NA', 'lastDeviceResyncStartTime': '', 'lastUpdateTime': 1721327458431, 'lastUpdated': '2024-07-18 18:30:58', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': '90:e9:5e:03:f3:40', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.5', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204. 1.216. 2', 'pendingSyncRequestsCount': '0', 'platformId': 'C9130AXE-B', 'reachabilityFailureReason': 'NA', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': '', 'reasonsForPendingSyncRequests': '', 'role': 'ACCESS', 'roleSource': 'AUTO', 'serialNumber': 'FJC27181V9V', 'series': 'Cisco Catalyst 9130AXE Series Unified Access Points', 'snmpContact': '', 'snmpLocation': 'LTTS/Cisco/Chennai', 'softwareVersion': '17.14.0.79', 'tagCount': '0', 'type': 'Cisco Catalyst 9130AXE Unified Access Point', 'upTime': '3 days, 01:57:12.330', 'uptimeSeconds': 268009, 'vendor': 'NA'}, {'instanceUuid': '778a27bb-d795-4fa3-a321-f2e693ebe1f4', 'instanceTenantId': '6486ce96ff1f0d0c8be622f4', 'deployPending': 'NONE', 'instanceVersion': 0, 'apManagerInterfaceIp': '', 'associatedWlcIp': '', 'bootDateTime': '2024-05-26 21:53:58', 'collectionInterval': 'Global Default', 'collectionIntervalValue': '01:30:00', 'collectionStatus': 'Managed', 'description': 'Cisco IOS Software [Dublin], C9800 Software (C9800_IOSXE-K9), Version 17.14.1, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2024 by Cisco Systems, Inc. Compiled Fri 05-Apr-24 00:11 by mcpre netconf enabled', 'deviceSupportLevel': 'Supported', 'dnsResolvedManagementAddress': '192.168.0.6', 'family': 'Wireless Controller', 'hostname': 'NY-EWLC-1.cisco.local', 'interfaceCount': '0', 'inventoryStatusDetail': '', 'lastDeviceResyncStartTime': '2024-07-18 18:30:26', 'lastUpdateTime': 1721327458431, 'lastUpdated': '2024-07-18 18:30:58', 'lineCardCount': '0', 'lineCardId': '', 'macAddress': 'cc:b6:c8:e2:29:0b', 'managedAtleastOnce': False, 'managementIpAddress': '192.168.0.6', 'managementState': 'Managed', 'memorySize': 'NA', 'paddedMgmtIpAddress': '204.192. 6.200', 'pendingSyncRequestsCount': '0', 'platformId': 'C9800-40-K9', 'reachabilityFailureReason': '', 'reachabilityStatus': 'Reachable', 'reasonsForDeviceResync': 'Periodic', 'reasonsForPendingSyncRequests': '', 'role': 'ACCESS', 'roleSource': 'AUTO', 'serialNumber': 'FOX2639PAY7', 'series': 'Cisco Catalyst 9800 Series Wireless Controllers', 'snmpContact': '', 'snmpLocation': '', 'softwareType': 'IOS-XE', 'softwareVersion': '17.14.1', 'tagCount': '0', 'type': 'Cisco Catalyst 9800-40 Wireless Controller', 'upTime': '52 days, 20:37:58.64', 'uptimeSeconds': 4568797, 'vendor': 'Cisco'}], 'version': '1.0', 'siteId': '17301034-7715-4363-952f-3d290ea6ca59'}, {'response': [], 'version': '1.0', 'siteId': '8a7ddd03-dddb-4a76-a079-56c3b45ab1ec', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'c45259ff-0612-4fe7-907c-5987877892d9', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'eb935311-f082-416e-a13c-08acdc6219c0', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '78b8a15c-c112-4941-b00b-ceda2edb38f2', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '212be018-cfb6-4041-9caa-d344385848b7', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '5e6d602a-4135-44ef-a5ae-8d9ee6056f3b', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '6f4d01b1-d00c-4471-8aa2-28b7e99636ab', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'bf561bf3-95d6-4da1-bf49-26887955fa2e', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '80143381-187c-48fa-a356-15389aad4e9c', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'd0484233-604a-4972-b010-42a0d44fe3d6', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': 'caa9eb0d-618b-4d90-ac10-eb2a2d17e763', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '21cc7dad-8c9e-4637-8f24-22ec417b9811', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '3fbfb158-a429-41b3-a220-6a6286f93d16', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '7002e28c-a309-454b-ac5d-a6a99d64bc20', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '4a03cd04-41bb-4e3c-9a59-3f96637c27e7', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '65eba291-ee04-43d2-bddb-a2cb2e7ff7d8', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '398f4d42-d265-4233-8ec3-5e4ba73c9956', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '0e238b6e-e390-4dae-8932-49ceb3376304', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '9674054e-fd9e-49ed-8084-1ce9131d6781', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '05d2d29c-3c23-478e-88ee-7ec60398634f', 'message': 'Site does not have device member with given device family or serial number as input'}, {'response': [], 'version': '1.0', 'siteId': '69f31d51-9e0d-48f4-8546-4935253f9a67', 'message': 'Site does not have device member with given device family or serial number as input'}]} 1265s 1265s WARNING logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 724: Exiting the loop because no devices were returned after increasing the offset. Current offset: 501 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 782: Total number of devices received: 1 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 783: Number of devices that are Unreachable or APs: 1 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 784: Config Backup Operation can be performed on the following filtered devices: 0 1265s 1265s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 823: Retrieving device IDs for site: Global 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 809: Initiating retrieval of site details for site name: 'Global'. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 813: Using 'get_site' API for Catalyst Center version: '2233'. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: execute_get_request: 1832: Initiating GET API call for Function: get_site from Family: sites with Parameters: {'name': 'Global'}. 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: execute_get_request: 1848: Response received from GET API call to Function: 'get_site' from Family: 'sites' is Response: {'response': [{'reachabilityStatus': 'Reachable', 'family': 'Switches and Hubs', 'managementIpAddress': '192.168.0.0', 'instanceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'id': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'}]} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_site_id: 845: Site details retrieved for site 'Global'': {'response': [{'reachabilityStatus': 'Reachable', 'family': 'Switches and Hubs', 'managementIpAddress': '192.168.0.0', 'instanceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b', 'id': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'}]} 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 759: Initiating retrieval of device details for site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b'. 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 703: Initiating retrieval of device IDs for site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b'. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 660: Initiating retrieval of device IDs for site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b'. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 664: Using 'get_membership' API for Catalyst Center version: '2233'. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: execute_get_request: 1832: Initiating GET API call for Function: get_membership from Family: sites with Parameters: {'site_id': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'}. 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: execute_get_request: 1848: Response received from GET API call to Function: 'get_membership' from Family: 'sites' is Response: {'response': [{'deviceUuid': '392ffce88-9fce-41d2-ae69-086fa74e9c4b', 'complianceType': 'RUNNING_CONFIG', 'status': 'COMPLIANT', 'state': 'SUCCESS', 'lastSyncTime': 1717977820546, 'lastUpdateTime': 1721609911624, 'sourceInfoList': [], 'ackStatus': 'UNACKNOWLEDGED'}], 'version': '1.0', 'deviceUuid': '92ffce88-9fce-41d2-ae69-086fa74e9c4b'} 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 668: Received response from 'get_membership'. Extracting device IDs. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 674: Retrieved device IDs from membership for site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1265s 1265s WARNING logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 688: No devices found for site 'Global' with site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b'. 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 721: Device IDs retrieved from site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 763: Device details retrieved for site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1265s 1265s INFO logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 792: No reachable devices found at Site: 92ffce88-9fce-41d2-ae69-086fa74e9c4b 1265s 1265s ERROR logger:dnac.py:294 NetworkCompliance: set_operation_result: 1780: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: Global. This could be due to Unreachable devices or access points (APs). 1265s 1265s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1787 status: failed, msg: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0'] or site name: Global. This could be due to Unreachable devices or access points (APs). 1265s _ TestDnacRmaIntent.test_rma_workflow_manager_mark_device_for_replacement_exception _ 1265s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_rma_workflow_manager_mark_device_for_replacement_exception(self): 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="replaced", 1265s config=self.playbook_config_valid 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "Exception occurred while marking device for replacement: " 1265s ) 1265s E AssertionError: 'The replacement device is not reachable. [46 chars]ent.' != 'Exception occurred while marking device for replacement: ' 1265s E - The replacement device is not reachable. Unable to proceed with the RMA device replacement. 1265s E + Exception occurred while marking device for replacement: 1265s 1265s tests/unit/modules/dnac/test_rma_workflow_manager.py:256: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': 'The replacement device is not reachable. Unable to proceed with the RMA device replacement.', 'response': [], 'failed': True} 1265s ------------------------------ Captured log call ------------------------------- 1265s ERROR logger:dnac.py:294 DeviceReplacement: rma_device_replacement_pre_check: 679: The replacement device is not reachable. Unable to proceed with the RMA device replacement. 1265s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_reserve_pool_creation _ 1265s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Network_settings_workflow_manager_reserve_pool_creation(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config_verify=True, 1265s config=self.playbook_config_reserve_pool 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:1075: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/network_settings_workflow_manager.py:4301: in main 1265s ccc_network.check_return_status() 1265s plugins/module_utils/dnac.py:307: in check_return_status 1265s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def fail_json(*args, **kwargs): 1265s kwargs["failed"] = True 1265s > raise AnsibleFailJson(kwargs) 1265s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "The specified version '2.2.3.3' does not support the Network_settings_workflow features. Supported versions start from '2.3.5.3' onwards. ", 'response': [{'globalPool': {'response': {}, 'msg': {}}}, {'reservePool': {'response': {}, 'msg': {}}}, {'network': {'response': {}, 'msg': {}}}], 'failed': True} 1265s 1265s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1265s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_provision_device _ 1265s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_provision_workflow_manager_playbook_provision_device(self): 1265s """ 1265s Test case for add device with full crendentials. 1265s 1265s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_provision_device 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_provision_workflow_manager.py:199: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/provision_workflow_manager.py:1809: in main 1265s ccc_provision.get_diff_state_apply[state]().check_return_status() 1265s plugins/modules/provision_workflow_manager.py:1044: in get_diff_merged 1265s self.provision_wired_device(to_provisioning, to_force_provisioning) 1265s plugins/modules/provision_workflow_manager.py:1143: in provision_wired_device 1265s device_id = self.get_device_id() 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def get_device_id(self): 1265s """ 1265s Fetches the UUID of the device added in the inventory 1265s 1265s Parameters: 1265s - self: The instance of the class containing the 'config' attribute 1265s to be validated. 1265s Returns: 1265s The method returns the serial number of the device as a string. If it fails, it returns None. 1265s Example: 1265s After creating the validated input, this method retrieves the 1265s UUID of the device. 1265s """ 1265s 1265s dev_response = self.dnac_apply['exec']( 1265s family="devices", 1265s function='get_network_device_by_ip', 1265s params={"ip_address": self.validated_config["management_ip_address"]} 1265s ) 1265s 1265s self.log("The device response from 'get_network_device_by_ip' API is {0}".format(str(dev_response)), "DEBUG") 1265s dev_dict = dev_response.get("response") 1265s > device_id = dev_dict.get("id") 1265s E AttributeError: 'list' object has no attribute 'get' 1265s 1265s plugins/modules/provision_workflow_manager.py:490: AttributeError 1265s _ TestDnacRmaIntent.test_rma_workflow_manager_deploy_workflow_failure_unmark_failure _ 1265s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_rma_workflow_manager_deploy_workflow_failure_unmark_failure(self): 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="replaced", 1265s config=self.playbook_config_valid 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "Error while unmarking device for replacement: Task failed. | Unmarking result: Error while unmarking device for replacement: Task failed." 1265s ) 1265s E AssertionError: 'The replacement device is not reachable. [46 chars]ent.' != 'Error while unmarking device for replacem[92 chars]led.' 1265s E - The replacement device is not reachable. Unable to proceed with the RMA device replacement. 1265s E + Error while unmarking device for replacement: Task failed. | Unmarking result: Error while unmarking device for replacement: Task failed. 1265s 1265s tests/unit/modules/dnac/test_rma_workflow_manager.py:310: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': 'The replacement device is not reachable. Unable to proceed with the RMA device replacement.', 'response': [], 'failed': True} 1265s ------------------------------ Captured log call ------------------------------- 1265s ERROR logger:dnac.py:294 DeviceReplacement: rma_device_replacement_pre_check: 679: The replacement device is not reachable. Unable to proceed with the RMA device replacement. 1265s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_wireless_provision _ 1265s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_provision_workflow_manager_playbook_wireless_provision(self): 1265s """ 1265s Test case for add device with full crendentials. 1265s 1265s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s > config=self.playbook_wireless_provisionZ 1265s ) 1265s ) 1265s E AttributeError: 'TestDnacProvisionWorkflow' object has no attribute 'playbook_wireless_provisionZ'. Did you mean: 'playbook_wireless_provision'? 1265s 1265s tests/unit/modules/dnac/test_provision_workflow_manager.py:268: AttributeError 1265s _______ TestDnacRmaIntent.test_rma_workflow_manager_mark_device_failure ________ 1265s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_rma_workflow_manager_mark_device_failure(self): 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="replaced", 1265s config=self.playbook_config_valid 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "An error occurred during the operation" 1265s ) 1265s E AssertionError: 'The replacement device is not reachable. [46 chars]ent.' != 'An error occurred during the operation' 1265s E - The replacement device is not reachable. Unable to proceed with the RMA device replacement. 1265s E + An error occurred during the operation 1265s 1265s tests/unit/modules/dnac/test_rma_workflow_manager.py:274: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': 'The replacement device is not reachable. Unable to proceed with the RMA device replacement.', 'response': [], 'failed': True} 1265s ------------------------------ Captured log call ------------------------------- 1265s ERROR logger:dnac.py:294 DeviceReplacement: rma_device_replacement_pre_check: 679: The replacement device is not reachable. Unable to proceed with the RMA device replacement. 1265s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_reserve_pool_deletion _ 1265s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Network_settings_workflow_manager_reserve_pool_deletion(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="deleted", 1265s config_verify=True, 1265s config=self.playbook_config_reserve_pool_deletion 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:1050: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/network_settings_workflow_manager.py:4301: in main 1265s ccc_network.check_return_status() 1265s plugins/module_utils/dnac.py:307: in check_return_status 1265s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def fail_json(*args, **kwargs): 1265s kwargs["failed"] = True 1265s > raise AnsibleFailJson(kwargs) 1265s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "The specified version '2.2.3.3' does not support the Network_settings_workflow features. Supported versions start from '2.3.5.3' onwards. ", 'response': [{'globalPool': {'response': {}, 'msg': {}}}, {'reservePool': {'response': {}, 'msg': {}}}, {'network': {'response': {}, 'msg': {}}}], 'failed': True} 1265s 1265s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1265s ___ TestDnacRmaIntent.test_rma_workflow_manager_replacement_device_not_found ___ 1265s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_rma_workflow_manager_replacement_device_not_found(self): 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="replaced", 1265s config=self.playbook_config_device_not_found 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "Replacement device '204.1.2.19' not found in Cisco Catalyst Center" 1265s ) 1265s E AssertionError: "Replacement device '204.1.2.19' not found in PnP" != "Replacement device '204.1.2.19' not found in Cisco Catalyst Center" 1265s E - Replacement device '204.1.2.19' not found in PnP 1265s E ? ^ ^ 1265s E + Replacement device '204.1.2.19' not found in Cisco Catalyst Center 1265s E ? ^^^^^^^^^^^^^^^^^ ^^^ 1265s 1265s tests/unit/modules/dnac/test_rma_workflow_manager.py:220: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "Replacement device '204.1.2.19' not found in PnP", 'response': [], 'failed': True} 1265s ------------------------------ Captured log call ------------------------------- 1265s ERROR logger:dnac.py:294 DeviceReplacement: device_exists: 802: No valid response received from Cisco Catalyst Center 1265s 1265s ERROR logger:dnac.py:294 DeviceReplacement: pnp_device_exists: 713: Invalid identifier type provided 1265s 1265s ERROR logger:dnac.py:294 DeviceReplacement: get_have: 586: Replacement device '204.1.2.19' not found in PnP 1265s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_update _ 1265s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Network_settings_workflow_manager_network_update(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s dnac_version="2.3.7.6", 1265s state="merged", 1265s config_verify=True, 1265s config=self.playbook_update_network 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:502: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/network_settings_workflow_manager.py:4316: in main 1265s ccc_network.get_diff_state_apply[state](config).check_return_status() 1265s plugins/modules/network_settings_workflow_manager.py:3824: in get_diff_merged 1265s self.update_network(network_management).check_return_status() 1265s plugins/modules/network_settings_workflow_manager.py:3741: in update_network 1265s self.check_tasks_response_status(response, "set_dhcp_settings_for_a_site").check_return_status() 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def check_tasks_response_status(self, response, api_name): 1265s """ 1265s Get the task response status from taskId 1265s Args: 1265s self: The current object details. 1265s response (dict): API response. 1265s api_name (str): API name. 1265s Returns: 1265s self (object): The current object with updated desired Fabric Transits information. 1265s Description: 1265s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE' 1265s state or till it reaches the maximum timeout. 1265s Log the task details and return self. 1265s """ 1265s 1265s if not response: 1265s self.msg = "response is empty" 1265s self.status = "exited" 1265s return self 1265s 1265s if not isinstance(response, dict): 1265s self.msg = "response is not a dictionary" 1265s self.status = "exited" 1265s return self 1265s 1265s task_info = response.get("response") 1265s if task_info.get("errorcode") is not None: 1265s self.msg = response.get("response").get("detail") 1265s self.status = "failed" 1265s return self 1265s 1265s task_id = task_info.get("taskId") 1265s start_time = time.time() 1265s while True: 1265s elapsed_time = time.time() - start_time 1265s if elapsed_time >= self.max_timeout: 1265s self.msg = "Max timeout of {0} sec has reached for the task id '{1}'. " \ 1265s .format(self.max_timeout, task_id) + \ 1265s "Exiting the loop due to unexpected API '{0}' status.".format(api_name) 1265s self.log(self.msg, "WARNING") 1265s self.status = "failed" 1265s break 1265s 1265s task_details = self.get_tasks_by_id(task_id) 1265s self.log('Getting tasks details from task ID {0}: {1}' 1265s .format(task_id, task_details), "DEBUG") 1265s 1265s > task_status = task_details.get("status") 1265s E AttributeError: 'list' object has no attribute 'get' 1265s 1265s plugins/module_utils/dnac.py:1734: AttributeError 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 NetworkSettings: get_dns_settings_for_site: 1153: No DNS settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_ntp_settings_for_site: 1231: No NTP server settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_time_zone_settings_for_site: 1270: No time zone settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_banner_settings_for_site: 1309: No banner (Message of the Day) settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_aaa_settings_for_site: 1357: No network_aaa and client_and_endpoint_aaa settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_timezone _ 1265s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Network_settings_workflow_manager_network_exception_update_timezone(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s dnac_version="2.3.7.6", 1265s state="merged", 1265s config_verify=True, 1265s config=self.playbook_update_network 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "Exception occurred while updating time zone settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1265s ) 1265s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating time z[56 chars]a7: ' 1265s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1265s E + Exception occurred while updating time zone settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1265s 1265s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:579: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .", 'response': "An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .", 'failed': True} 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 NetworkSettings: get_dns_settings_for_site: 1153: No DNS settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_ntp_settings_for_site: 1231: No NTP server settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_time_zone_settings_for_site: 1270: No time zone settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_banner_settings_for_site: 1309: No banner (Message of the Day) settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s WARNING logger:dnac.py:294 NetworkSettings: get_aaa_settings_for_site: 1357: No network_aaa and client_and_endpoint_aaa settings found for site 'Global/Testing/test' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7) 1265s 1265s ERROR logger:dnac.py:294 NetworkSettings: set_operation_result: 1780: An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1265s _ TestDnacRmaIntent.test_rma_workflow_manager_deploy_workflow_failure_unmark_success _ 1265s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_rma_workflow_manager_deploy_workflow_failure_unmark_success(self): 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="replaced", 1265s config=self.playbook_config_valid 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_rma_workflow_manager.py:326: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/rma_workflow_manager.py:1434: in main 1265s ccc_device_replacement.rma_device_replacement_pre_check().check_return_status() 1265s plugins/module_utils/dnac.py:307: in check_return_status 1265s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def fail_json(*args, **kwargs): 1265s kwargs["failed"] = True 1265s > raise AnsibleFailJson(kwargs) 1265s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': 'The replacement device is not reachable. Unable to proceed with the RMA device replacement.', 'response': [], 'failed': True} 1265s 1265s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1265s ------------------------------ Captured log call ------------------------------- 1265s ERROR logger:dnac.py:294 DeviceReplacement: rma_device_replacement_pre_check: 679: The replacement device is not reachable. Unable to proceed with the RMA device replacement. 1265s _______ TestDnacSiteWorkflow.test_Site_workflow_manager_create_bulk_site _______ 1265s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Site_workflow_manager_create_bulk_site(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_version="2.3.7.6", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.upload_floor_map_playbook 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_site_workflow_manager.py:274: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/site_workflow_manager.py:2520: in main 1265s ccc_site.validate_site_input_data(ccc_site.validated_config, state).check_return_status() 1265s plugins/module_utils/dnac.py:307: in check_return_status 1265s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def fail_json(*args, **kwargs): 1265s kwargs["failed"] = True 1265s > raise AnsibleFailJson(kwargs) 1265s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "Missing or invalid parameters in playbook config: 'name should not be None or empty, parent_name should not be None or empty, Site_type should not be None or empty' ", 'response': [], 'failed': True} 1265s 1265s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1265s ------------------------------ Captured log call ------------------------------- 1265s ERROR logger:dnac.py:294 Site: validate_site_input_data: 1188: Missing 'name' field in entry. 1265s 1265s ERROR logger:dnac.py:294 Site: validate_site_input_data: 1196: Missing 'parent_name' field in entry. 1265s 1265s ERROR logger:dnac.py:294 Site: validate_site_input_data: 1335: Missing or invalid parameters in playbook config: 'name should not be None or empty, parent_name should not be None or empty, Site_type should not be None or empty' 1265s ____ TestDnacSiteWorkflow.test_Site_workflow_manager_update_not_needed_site ____ 1265s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Site_workflow_manager_update_not_needed_site(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_version="2.3.5.3", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_update_site 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_site_workflow_manager.py:585: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def main(): 1265s """ main entry point for module execution 1265s """ 1265s element_spec = {'dnac_host': {'required': True, 'type': 'str'}, 1265s 'dnac_port': {'type': 'str', 'default': '443'}, 1265s 'dnac_username': {'type': 'str', 'default': 'admin', 'aliases': ['user']}, 1265s 'dnac_password': {'type': 'str', 'no_log': True}, 1265s 'dnac_verify': {'type': 'bool', 'default': 'True'}, 1265s 'dnac_version': {'type': 'str', 'default': '2.2.3.3'}, 1265s 'dnac_debug': {'type': 'bool', 'default': False}, 1265s 'dnac_log_level': {'type': 'str', 'default': 'WARNING'}, 1265s "dnac_log_file_path": {"type": 'str', "default": 'dnac.log'}, 1265s "dnac_log_append": {"type": 'bool', "default": True}, 1265s 'dnac_log': {'type': 'bool', 'default': False}, 1265s 'validate_response_schema': {'type': 'bool', 'default': True}, 1265s 'config_verify': {'type': 'bool', "default": False}, 1265s 'dnac_api_task_timeout': {'type': 'int', "default": 1200}, 1265s 'dnac_task_poll_interval': {'type': 'int', "default": 2}, 1265s 'config': {'required': True, 'type': 'list', 'elements': 'dict'}, 1265s 'state': {'default': 'merged', 'choices': ['merged', 'deleted']} 1265s } 1265s 1265s module = AnsibleModule(argument_spec=element_spec, 1265s supports_check_mode=False) 1265s 1265s ccc_site = Site(module) 1265s state = ccc_site.params.get("state") 1265s 1265s if ccc_site.compare_dnac_versions(ccc_site.get_ccc_version(), "2.3.5.3") < 0: 1265s ccc_site.msg = ( 1265s "The specified version '{0}' does not support the site workflow feature. Supported versions start from '2.3.5.3' onwards. " 1265s "Version '2.3.5.3' introduces APIs for creating, updating, and deleting sites. " 1265s "Version '2.3.7.6' expands support to include APIs for bulk site creating, updating, and deleting sites.".format( 1265s ccc_site.get_ccc_version()) 1265s ) 1265s 1265s ccc_site.status = "failed" 1265s ccc_site.check_return_status() 1265s 1265s if state not in ccc_site.supported_states: 1265s ccc_site.status = "invalid" 1265s ccc_site.msg = "State {0} is invalid".format(state) 1265s ccc_site.check_return_status() 1265s 1265s ccc_site.validate_input().check_return_status() 1265s config_verify = ccc_site.params.get("config_verify") 1265s ccc_site.validate_site_input_data(ccc_site.validated_config, state).check_return_status() 1265s 1265s if ccc_site.compare_dnac_versions(ccc_site.get_ccc_version(), "2.3.7.6") >= 0: 1265s ccc_site.reset_values() 1265s ccc_site.get_want(ccc_site.validated_config).check_return_status() 1265s ccc_site.get_have(ccc_site.validated_config).check_return_status() 1265s 1265s ccc_site.get_diff_state_apply[state](ccc_site.validated_config).check_return_status() 1265s 1265s if config_verify: 1265s ccc_site.update_site_messages().check_return_status() 1265s 1265s else: 1265s for config in ccc_site.validated_config: 1265s ccc_site.reset_values() 1265s 1265s ccc_site.get_want(config).check_return_status() 1265s > ccc_site.get_have(config).check_return_status() 1265s E AttributeError: 'NoneType' object has no attribute 'check_return_status' 1265s 1265s plugins/modules/site_workflow_manager.py:2537: AttributeError 1265s ------------------------------ Captured log call ------------------------------- 1265s ERROR logger:dnac.py:294 Site: set_operation_result: 1780: An unexpected error occurred while retrieving site details: 'NoneType' object is not subscriptable 1265s _____ TestDnacRmaIntent.test_rma_workflow_manager_deploy_workflow_success ______ 1265s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_rma_workflow_manager_deploy_workflow_success(self): 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="replaced", 1265s config=self.playbook_config_valid 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_rma_workflow_manager.py:290: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/rma_workflow_manager.py:1434: in main 1265s ccc_device_replacement.rma_device_replacement_pre_check().check_return_status() 1265s plugins/module_utils/dnac.py:307: in check_return_status 1265s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def fail_json(*args, **kwargs): 1265s kwargs["failed"] = True 1265s > raise AnsibleFailJson(kwargs) 1265s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': 'The replacement device is not reachable. Unable to proceed with the RMA device replacement.', 'response': [], 'failed': True} 1265s 1265s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1265s ------------------------------ Captured log call ------------------------------- 1265s ERROR logger:dnac.py:294 DeviceReplacement: rma_device_replacement_pre_check: 679: The replacement device is not reachable. Unable to proceed with the RMA device replacement. 1265s ______ TestDnacSiteWorkflow.test_Site_workflow_manager_delete_a_new_site _______ 1265s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Site_workflow_manager_delete_a_new_site(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_version="2.3.7.6", 1265s dnac_log=True, 1265s state="deleted", 1265s config=self.delete_config_playbook 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_site_workflow_manager.py:489: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/site_workflow_manager.py:2527: in main 1265s ccc_site.get_diff_state_apply[state](ccc_site.validated_config).check_return_status() 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def get_diff_deleted(self, config): 1265s """ 1265s Call Cisco Catalyst Center API to delete sites with provided inputs. 1265s Parameters: 1265s - self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1265s - config (dict): Dictionary containing information for site deletion. 1265s Returns: 1265s - self: The result dictionary includes the following keys: 1265s - 'changed' (bool): Indicates whether changes were made 1265s during the deletion process. 1265s - 'response' (dict): Contains details about the execution 1265s and the deleted site ID. 1265s - 'msg' (str): A message indicating the status of the deletion operation. 1265s Description: 1265s This method initiates the deletion of a site by calling the 'delete_site' function in the 'sites' family 1265s of the Cisco Catalyst Center API. It uses the site ID obtained from the 'have' attribute. 1265s """ 1265s 1265s if self.compare_dnac_versions(self.get_ccc_version(), "2.3.5.3") <= 0: 1265s site_exists = self.have.get("site_exists") 1265s site_name_hierarchy = self.want.get("site_name_hierarchy") 1265s site_id = self.have.get("site_id") 1265s if not site_exists: 1265s if site_name_hierarchy not in self.deleted_site_list: 1265s self.site_absent_list.append(site_name_hierarchy) 1265s self.log( 1265s "Failed to delete site '{0}'. Reason: The site was not found in the Cisco Catalyst Center.".format(site_name_hierarchy), 1265s "DEBUG" 1265s ) 1265s return self 1265s api_response, response = self.get_device_ids_from_site(site_name_hierarchy, site_id) 1265s self.log( 1265s "Received API response from 'get_membership': {0}".format(str(api_response)), "DEBUG") 1265s 1265s site_response = api_response.get("site", {}).get("response", []) 1265s self.log( 1265s "Site '{0}' response along with its child sites: {1}".format(site_name_hierarchy, str(site_response)), "DEBUG") 1265s 1265s if not site_response: 1265s self.delete_single_site(site_id, site_name_hierarchy) 1265s return self 1265s 1265s sorted_site_resp = sorted( 1265s site_response, key=lambda x: x.get("groupHierarchy"), reverse=True) 1265s 1265s for item in sorted_site_resp: 1265s self.delete_single_site(item['id'], item['groupNameHierarchy']) 1265s 1265s self.delete_single_site(site_id, site_name_hierarchy) 1265s self.log( 1265s "The site '{0}' and its child sites have been deleted successfully".format(site_name_hierarchy), "INFO") 1265s 1265s elif self.compare_dnac_versions(self.get_ccc_version(), "2.3.7.6") >= 0: 1265s final_deletion_list = [] 1265s for each_type in ("floor", "building", "area"): 1265s if self.handle_config[each_type]: 1265s self.log("Starting bulk site creation for type: {}".format(each_type), "DEBUG") 1265s for config in self.handle_config[each_type]: 1265s site_exists = config.get("site_exists") 1265s if not site_exists: 1265s self.log("Unable to delete site {0} as it's not found in Cisco Catalyst Center". 1265s format(config.get("site_name_hierarchy")), "INFO") 1265s self.site_absent_list.append(str(each_type) + ": " + str(config.get("site_name_hierarchy"))) 1265s else: 1265s final_deletion_list.append(config) 1265s self.log("Deletion list re-arranged order: {0}.".format(final_deletion_list), "INFO") 1265s 1265s if len(final_deletion_list) > 0: 1265s for config in final_deletion_list: 1265s site_name_hierarchy = config.get("site_name_hierarchy") 1265s site_params = config.get("site_params") 1265s site_params["site_id"] = config.get("site_id") 1265s site_type = site_params.get("type") 1265s site_id = site_params["site_id"] 1265s self.log("Site ID from 'have' for retrieval: {0}".format(site_id), "DEBUG") 1265s self.log("Site TYPE from 'have' for retrieval: {0}".format(site_type), "DEBUG") 1265s self.log("Site PARAMS from 'have' for retrieval: {0}".format(site_params), "DEBUG") 1265s self.log("Site NAME from 'want' for retrieval: {0}".format(site_name_hierarchy), "DEBUG") 1265s 1265s self.log("Initiating deletion for site '{0}' with site ID: {1} of type: {2}".format( 1265s site_name_hierarchy, site_id, site_type), "DEBUG") 1265s 1265s response = None 1265s if site_type == "floor": 1265s response = self.delete_floor(site_name_hierarchy, site_id) 1265s elif site_type == "area": 1265s response = self.delete_area(site_name_hierarchy, site_id) 1265s self.log("Response for deleting area: {0}".format(str(response)), "DEBUG") 1265s elif site_type == "building": 1265s response = self.delete_building(site_name_hierarchy, site_id) 1265s 1265s if isinstance(response, dict): 1265s > task_id = response.get("response", {}).get("taskId") 1265s E AttributeError: 'list' object has no attribute 'get' 1265s 1265s plugins/modules/site_workflow_manager.py:2136: AttributeError 1265s _______ TestDnacSiteWorkflow.test_Site_workflow_manager_upload_floor_map _______ 1265s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Site_workflow_manager_upload_floor_map(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_version="2.3.7.6", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.upload_floor_map_playbook 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_site_workflow_manager.py:320: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/site_workflow_manager.py:2520: in main 1265s ccc_site.validate_site_input_data(ccc_site.validated_config, state).check_return_status() 1265s plugins/module_utils/dnac.py:307: in check_return_status 1265s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def fail_json(*args, **kwargs): 1265s kwargs["failed"] = True 1265s > raise AnsibleFailJson(kwargs) 1265s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "Missing or invalid parameters in playbook config: 'name should not be None or empty, parent_name should not be None or empty, Site_type should not be None or empty' ", 'response': [], 'failed': True} 1265s 1265s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1265s ------------------------------ Captured log call ------------------------------- 1265s ERROR logger:dnac.py:294 Site: validate_site_input_data: 1188: Missing 'name' field in entry. 1265s 1265s ERROR logger:dnac.py:294 Site: validate_site_input_data: 1196: Missing 'parent_name' field in entry. 1265s 1265s ERROR logger:dnac.py:294 Site: validate_site_input_data: 1335: Missing or invalid parameters in playbook config: 'name should not be None or empty, parent_name should not be None or empty, Site_type should not be None or empty' 1265s _________ TestDnacSiteWorkflow.test_Site_workflow_manager_create_site __________ 1265s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Site_workflow_manager_create_site(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_version="2.3.5.3", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_site 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_site_workflow_manager.py:297: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/site_workflow_manager.py:2539: in main 1265s ccc_site.get_diff_state_apply[state](config).check_return_status() 1265s plugins/module_utils/dnac.py:307: in check_return_status 1265s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def fail_json(*args, **kwargs): 1265s kwargs["failed"] = True 1265s > raise AnsibleFailJson(kwargs) 1265s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "Parent name 'Global' does not exist in the Cisco Catalyst Center.", 'response': "Parent name 'Global' does not exist in the Cisco Catalyst Center.", 'failed': True} 1265s 1265s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1265s ------------------------------ Captured log call ------------------------------- 1265s ERROR logger:dnac.py:294 Site: get_site_v1: 619: An error occurred in 'get_sites': 1265s 1265s ERROR logger:dnac.py:294 Site: site_exists: 676: No response received from 'get_site' API for site: Global/japan8888 1265s 1265s ERROR logger:dnac.py:294 Site: get_site_v1: 619: An error occurred in 'get_sites': 1265s 1265s ERROR logger:dnac.py:294 Site: set_operation_result: 1780: Parent name 'Global' does not exist in the Cisco Catalyst Center. 1265s 1265s ERROR logger:dnac.py:294 Site: get_diff_merged: 1866: No response received from 'get_site_v1' API for site: Global{'msg': "Parent name 'Global' does not exist in the Cisco Catalyst Center.", 'response': "Parent name 'Global' does not exist in the Cisco Catalyst Center.", 'failed': True} 1265s 1265s WARNING logger:dnac.py:294 Site: get_site_v1: 612: Empty response received for site: Global/japan8888 1265s 1265s ERROR logger:dnac.py:294 Site: site_exists: 676: No response received from 'get_site' API for site: Global/japan8888 1265s __ TestswimWorkflowManager.test_swim_workflow_manager_playbook_activate_image __ 1265s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_swim_workflow_manager_playbook_activate_image(self): 1265s """ 1265s Test case for swim workflow manager import image url 1265s This test case checks the behavior of activativating the image in the specified Cisco Catalyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_version='2.3.5.3', 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s config_verify=True, 1265s state="merged", 1265s config=self.playbook_activate_image 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_swim_workflow_manager.py:281: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/swim_workflow_manager.py:2415: in main 1265s ccc_swims.get_diff_state_apply[state](config).check_return_status() 1265s plugins/modules/swim_workflow_manager.py:2113: in get_diff_merged 1265s self.get_diff_activation().check_return_status() 1265s plugins/modules/swim_workflow_manager.py:1964: in get_diff_activation 1265s device_uuid_list = self.get_device_uuids(site_name, device_family, device_role, device_series_name) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def get_device_uuids(self, site_name, device_family, device_role, device_series_name=None): 1265s """ 1265s Retrieve a list of device UUIDs based on the specified criteria. 1265s Parameters: 1265s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1265s site_name (str): The name of the site for which device UUIDs are requested. 1265s device_family (str): The family/type of devices to filter on. 1265s device_role (str): The role of devices to filter on. If None, 'ALL' roles are considered. 1265s device_series_name(str): Specifies the name of the device series. 1265s Returns: 1265s list: A list of device UUIDs that match the specified criteria. 1265s Description: 1265s The function checks the reachability status and role of devices in the given site. 1265s Only devices with "Reachable" status are considered, and filtering is based on the specified 1265s device family and role (if provided). 1265s """ 1265s 1265s device_uuid_list = [] 1265s device_id_list, site_response_list = [], [] 1265s if not site_name: 1265s site_name = "Global" 1265s self.log("Site name not specified; defaulting to 'Global' to fetch all devices under this category", "INFO") 1265s 1265s (site_exists, site_id) = self.site_exists(site_name) 1265s if not site_exists: 1265s self.log("""Site '{0}' is not found in the Cisco Catalyst Center, hence unable to fetch associated 1265s devices.""".format(site_name), "INFO") 1265s return device_uuid_list 1265s 1265s if device_series_name: 1265s if device_series_name.startswith(".*") and device_series_name.endswith(".*"): 1265s self.log("Device series name '{0}' is already in the regex format".format(device_series_name), "INFO") 1265s else: 1265s device_series_name = ".*" + device_series_name + ".*" 1265s 1265s if self.dnac_version <= self.version_2_3_5_3: 1265s site_params = { 1265s "site_id": site_id, 1265s "device_family": device_family 1265s } 1265s 1265s try: 1265s response = self.dnac._exec( 1265s family="sites", 1265s function='get_membership', 1265s op_modifies=True, 1265s params=site_params, 1265s ) 1265s 1265s except Exception as e: 1265s self.log("Unable to fetch the device(s) associated to the site '{0}' due to '{1}'".format(site_name, str(e)), "WARNING") 1265s return device_uuid_list 1265s 1265s self.log("Received API response from 'get_membership': {0}".format(str(response)), "DEBUG") 1265s response = response.get("device") 1265s 1265s > for item in response: 1265s E TypeError: 'NoneType' object is not iterable 1265s 1265s plugins/modules/swim_workflow_manager.py:935: TypeError 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 1265s _____ TestDnacSiteWorkflow.test_Site_workflow_manager_invalid_delete_site ______ 1265s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Site_workflow_manager_invalid_delete_site(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_version="2.3.5.3", 1265s dnac_log=True, 1265s state="deleted", 1265s config=self.delete_playbook_config 1265s ) 1265s ) 1265s self.maxDiff = None 1265s > result = self.execute_module(changed=False, failed=True) 1265s 1265s tests/unit/modules/dnac/test_site_workflow_manager.py:536: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:107: in execute_module 1265s result = self.failed() 1265s tests/unit/modules/dnac/dnac_module.py:125: in failed 1265s self.module.main() 1265s plugins/modules/site_workflow_manager.py:2542: in main 1265s module.exit_json(**ccc_site.result) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def exit_json(*args, **kwargs): 1265s if "changed" not in kwargs: 1265s kwargs["changed"] = False 1265s > raise AnsibleExitJson(kwargs) 1265s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleExitJson: {'changed': True, 'diff': [], 'response': ['Global/bangalore', 'Global/bangalore/s1', 'Global/bangalore/s1/cherry4'], 'warnings': [], 'msg': "Given site(s) '['Global/bangalore', 'Global/bangalore/s1', 'Global/bangalore/s1/cherry4']' deleted successfully from Cisco Catalyst Center"} 1265s 1265s ../../ansible/netcommon/tests/unit/modules/utils.py:35: AnsibleExitJson 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 Site: get_device_ids_from_site: 688: No devices found for site 'Global/bangalore' with site ID: '445a755e-b654-44b9-a294-3e304becc9ee'. 1265s 1265s WARNING logger:dnac.py:294 Site: get_device_ids_from_site: 688: No devices found for site 'Global/bangalore/s1' with site ID: '445a755e-b654-44b9-a294-3e304becc9ee'. 1265s 1265s WARNING logger:dnac.py:294 Site: get_device_ids_from_site: 688: No devices found for site 'Global/bangalore/s1/cherry4' with site ID: '445a755e-b654-44b9-a294-3e304becc9ee'. 1265s ____ TestDnacSiteWorkflow.test_Site_workflow_manager_invalid_delete_config _____ 1265s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Site_workflow_manager_invalid_delete_config(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_version="2.3.7.6", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_empty 1265s ) 1265s ) 1265s > result = self.execute_module(changed=False, failed=False) 1265s 1265s tests/unit/modules/dnac/test_site_workflow_manager.py:391: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def main(): 1265s """ main entry point for module execution 1265s """ 1265s element_spec = {'dnac_host': {'required': True, 'type': 'str'}, 1265s 'dnac_port': {'type': 'str', 'default': '443'}, 1265s 'dnac_username': {'type': 'str', 'default': 'admin', 'aliases': ['user']}, 1265s 'dnac_password': {'type': 'str', 'no_log': True}, 1265s 'dnac_verify': {'type': 'bool', 'default': 'True'}, 1265s 'dnac_version': {'type': 'str', 'default': '2.2.3.3'}, 1265s 'dnac_debug': {'type': 'bool', 'default': False}, 1265s 'dnac_log_level': {'type': 'str', 'default': 'WARNING'}, 1265s "dnac_log_file_path": {"type": 'str', "default": 'dnac.log'}, 1265s "dnac_log_append": {"type": 'bool', "default": True}, 1265s 'dnac_log': {'type': 'bool', 'default': False}, 1265s 'validate_response_schema': {'type': 'bool', 'default': True}, 1265s 'config_verify': {'type': 'bool', "default": False}, 1265s 'dnac_api_task_timeout': {'type': 'int', "default": 1200}, 1265s 'dnac_task_poll_interval': {'type': 'int', "default": 2}, 1265s 'config': {'required': True, 'type': 'list', 'elements': 'dict'}, 1265s 'state': {'default': 'merged', 'choices': ['merged', 'deleted']} 1265s } 1265s 1265s module = AnsibleModule(argument_spec=element_spec, 1265s supports_check_mode=False) 1265s 1265s ccc_site = Site(module) 1265s state = ccc_site.params.get("state") 1265s 1265s if ccc_site.compare_dnac_versions(ccc_site.get_ccc_version(), "2.3.5.3") < 0: 1265s ccc_site.msg = ( 1265s "The specified version '{0}' does not support the site workflow feature. Supported versions start from '2.3.5.3' onwards. " 1265s "Version '2.3.5.3' introduces APIs for creating, updating, and deleting sites. " 1265s "Version '2.3.7.6' expands support to include APIs for bulk site creating, updating, and deleting sites.".format( 1265s ccc_site.get_ccc_version()) 1265s ) 1265s 1265s ccc_site.status = "failed" 1265s ccc_site.check_return_status() 1265s 1265s if state not in ccc_site.supported_states: 1265s ccc_site.status = "invalid" 1265s ccc_site.msg = "State {0} is invalid".format(state) 1265s ccc_site.check_return_status() 1265s 1265s ccc_site.validate_input().check_return_status() 1265s config_verify = ccc_site.params.get("config_verify") 1265s > ccc_site.validate_site_input_data(ccc_site.validated_config, state).check_return_status() 1265s E AttributeError: 'list' object has no attribute 'check_return_status' 1265s 1265s plugins/modules/site_workflow_manager.py:2520: AttributeError 1265s ------------------------------ Captured log call ------------------------------- 1265s ERROR logger:dnac.py:294 Site: validate_input: 493: Error: Configuration is not available in the playbook for validation 1265s 1265s ERROR logger:dnac.py:294 Site: validate_site_input_data: 1172: Config data is missing. 1265s _________ TestDnacSiteWorkflow.test_Site_workflow_manager_update_site __________ 1265s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s def get_diff_merged(self, config): 1265s """ 1265s Update/Create site information in Cisco Catalyst Center with fields 1265s provided in the playbook. 1265s Parameters: 1265s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1265s config (dict): A dictionary containing configuration information. 1265s Returns: 1265s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1265s Description: 1265s This method determines whether to update or create a site in Cisco Catalyst Center based on the provided 1265s configuration information. If the specified site exists, the method checks if it requires an update 1265s by calling the 'site_requires_update' method. If an update is required, it calls the 'update_site' 1265s function from the 'sites' family of the Cisco Catalyst Center API. If the site does not require an update, 1265s the method exits, indicating that the site is up to date. 1265s """ 1265s site_updated = False 1265s site_created = False 1265s 1265s if self.compare_dnac_versions(self.get_ccc_version(), "2.3.7.6") >= 0: 1265s self.handle_config['area'] = [] 1265s self.handle_config['building'] = [] 1265s self.handle_config['floor'] = [] 1265s try: 1265s create_site = copy.deepcopy(self.handle_config["create_site"]) 1265s if len(create_site) > 0: 1265s self.log("Starting site creation process.", "DEBUG") 1265s for each_config in create_site: 1265s payload_data = self.change_payload_data(each_config.get("want")) 1265s if payload_data: 1265s payload_data[self.keymap["parent_name_hierarchy"]] =\ 1265s payload_data.get(self.keymap["parent_name"]) 1265s del payload_data[self.keymap["parent_name"]] 1265s self.log("Payload data prepared for site creation: {}".format(payload_data), "DEBUG") 1265s 1265s if payload_data.get("type") == "area": 1265s self.handle_config["area"].append(payload_data) 1265s self.log("Added to area: {}".format(payload_data), "DEBUG") 1265s elif payload_data.get("type") == "building": 1265s self.handle_config["building"].append(payload_data) 1265s self.log("Added to building: {}".format(payload_data), "DEBUG") 1265s elif payload_data.get("type") == "floor": 1265s self.handle_config["floor"].append(payload_data) 1265s self.log("Added to floor: {}".format(payload_data), "DEBUG") 1265s for each_type in ("area", "building", "floor"): 1265s if self.handle_config[each_type]: 1265s self.log("Processing configurations for '{0}'.".format(each_type), "DEBUG") 1265s for create_config in self.handle_config[each_type]: 1265s self.log("Handling configuration: {0}".format(create_config), "DEBUG") 1265s parent_name = create_config.get(self.keymap.get("parent_name_hierarchy")) 1265s if not parent_name: 1265s self.msg = "No parent name found in configuration for '{0}'.".format(each_type) 1265s self.log(self.msg, "DEBUG") 1265s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1265s self.log("Checking if parent site '{0}' exists in the hierarchy.".format(parent_name), "DEBUG") 1265s 1265s site_exists = self.is_site_exist(parent_name) 1265s if not site_exists: 1265s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name) 1265s self.log(self.msg, "DEBUG") 1265s self.site_absent_list.append(str(parent_name) + " does not exist ") 1265s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1265s 1265s response = self.creating_bulk_site(self.handle_config[each_type]) 1265s self.log("Response from creating_bulk_site for {}: {}".format(each_type, response), "DEBUG") 1265s 1265s if response and isinstance(response, dict) and "response" in response: 1265s task_id = response["response"].get("taskId") 1265s if task_id: 1265s self.log("Task Id for the 'site_creation' task is {}".format(task_id), "INFO") 1265s 1265s task_name = "create_sites" 1265s success_msg = "Site created successfully." 1265s self.get_task_status_from_tasks_by_id(task_id, task_name, success_msg) 1265s 1265s for site in self.handle_config[each_type]: 1265s if "name" in site: 1265s self.created_site_list.append(str(each_type) + ": " + str(site.get("name"))) 1265s 1265s self.log("Site '{}' created successfully".format(self.created_site_list), "INFO") 1265s 1265s for site in self.handle_config[each_type]: 1265s if site.get("type") == "floor": 1265s floor_name = site.get("name") 1265s self.log("Floor '{}' has been created successfully.".format(floor_name), "INFO") 1265s 1265s upload_path = site.get("upload_floor_image_path", None) 1265s if upload_path: 1265s self.log("Upload path found for floor '{}'. Starting upload floor map from '{}.'". 1265s format(floor_name, upload_path), "INFO") 1265s 1265s map_details, map_status, success_message = self.upload_floor_image(site) 1265s if map_details: 1265s self.log("Floor map for '{}' uploaded successfully: {}". 1265s format(floor_name, success_message), "INFO") 1265s else: 1265s self.log("Floor map upload failed for '{}'. Please check the upload path and retry.". 1265s format(floor_name), "ERROR") 1265s else: 1265s self.log("No upload path provided for '{}'. Floor created without floor map.". 1265s format(floor_name), "INFO") 1265s else: 1265s self.log("No valid task ID received from the 'creating_bulk_site' response.", "WARNING") 1265s return None 1265s else: 1265s self.log("No response received from the 'creating_bulk_site' API call.", "WARNING") 1265s return None 1265s 1265s task_detail_list = [] 1265s for each_config in self.have: 1265s site_name_hierarchy = each_config.get("site_name_hierarchy") 1265s 1265s if each_config.get("site_exists"): 1265s self.log("Processing site: {}".format(site_name_hierarchy), "DEBUG") 1265s payload_new = self.change_payload_data(each_config.get("want")) 1265s if payload_new.get("type") == "area": 1265s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1265s self.log(self.msg, "INFO") 1265s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy) 1265s elif payload_new.get("type") in ("building", "floor"): 1265s site_params = each_config.get("site_params") 1265s site_params["site_id"] = each_config.get("site_id") 1265s site_type = site_params.get("type") 1265s 1265s if self.site_requires_update(each_config): 1265s self.log("Site requires update, starting update for type: {}".format(site_type), "DEBUG") 1265s response = (self.update_floor(site_params, payload_new) if site_type == "floor" 1265s else self.update_area(site_params) if site_type == "area" 1265s else self.update_building(site_params) if site_type == "building" 1265s else self.log("Unknown site type: {0}".format(site_type), "ERROR")) 1265s 1265s self.log("Received API response from 'update_site': {0}". 1265s format(str(response)), "DEBUG") 1265s 1265s if response and isinstance(response, dict): 1265s taskid = response["response"]["taskId"] 1265s 1265s while True: 1265s task_details = self.get_task_details(taskid) 1265s if site_type != "floor": 1265s if task_details.get("progress") == "Group is updated successfully": 1265s task_detail_list.append(task_details) 1265s self.updated_site_list.append(site_type + ": " + site_name_hierarchy) 1265s self.log("Site '{}' updated successfully.".format(site_name_hierarchy), "INFO") 1265s break 1265s else: 1265s if task_details.get("progress") == "Service domain is updated successfully.": 1265s task_detail_list.append(task_details) 1265s self.updated_site_list.append(site_type + ": " + site_name_hierarchy) 1265s break 1265s 1265s if task_details.get("bapiError"): 1265s msg = task_details.get("bapiError") 1265s self.set_operation_result("failed", False, msg, "ERROR", 1265s task_details).check_return_status() 1265s break 1265s else: 1265s self.msg = "Unable to execute the update the site: {0} ".format(site_name_hierarchy) 1265s self.log(self.msg, "INFO") 1265s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1265s else: 1265s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1265s self.log(self.msg, "INFO") 1265s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy) 1265s except Exception as e: 1265s self.log("Yaml is not available for bulk: {}".format(str(e)), "ERROR") 1265s 1265s return self 1265s 1265s else: 1265s site_params = self.want.get("site_params") 1265s site_type = site_params.get("type") 1265s if self.have.get("site_exists"): 1265s site_name_hierarchy = self.want.get("site_name_hierarchy") 1265s if not self.site_requires_update(): 1265s self.update_not_needed_sites.append(site_type + ": " + site_name_hierarchy) 1265s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1265s self.log(self.msg, "INFO") 1265s else: 1265s try: 1265s site_params["site_id"] = self.have.get("site_id") 1265s self.log("Site parameters prepared for update: {}".format(site_params)) 1265s self.log("Site update process started.", "INFO") 1265s 1265s if site_params['site'].get('building'): 1265s building_details = {} 1265s for key, value in site_params['site']['building'].items(): 1265s if value is not None: 1265s building_details[key] = value 1265s 1265s site_params['site']['building'] = building_details 1265s 1265s response = self.dnac._exec( 1265s family="sites", 1265s function='update_site', 1265s op_modifies=True, 1265s params=site_params, 1265s ) 1265s self.log("Received API response from 'update_site': {0}".format(str(response)), "DEBUG") 1265s 1265s if response and isinstance(response, dict): 1265s execution_id = response.get("executionId") 1265s while True: 1265s execution_details = self.get_execution_details(execution_id) 1265s if execution_details.get("status") == "SUCCESS": 1265s self.result['changed'] = True 1265s site_updated = True 1265s self.updated_site_list.append(str(site_type) + ": " + str(site_name_hierarchy)) 1265s self.log("Site - {0} Updated Successfully".format(site_name_hierarchy), "INFO") 1265s break 1265s elif execution_details.get("bapiError"): 1265s self.msg = "Unable to Update: " + execution_details.get("bapiError") 1265s self.set_operation_result("failed", False, self.msg, "ERROR", 1265s execution_details).check_return_status() 1265s 1265s except Exception as e: 1265s self.msg = "Unexpected error occurred while update: {0}".format(str(e)) 1265s self.log(self.msg, "ERROR") 1265s self.set_operation_result("failed", False, self.msg, "ERROR", 1265s site_name_hierarchy).check_return_status() 1265s 1265s else: 1265s try: 1265s try: 1265s if site_params['site'].get('building'): 1265s building_details = {} 1265s for key, value in site_params['site']['building'].items(): 1265s if value is not None: 1265s building_details[key] = value 1265s 1265s site_params['site']['building'] = building_details 1265s 1265s except Exception as e: 1265s site_type = site_params['type'] 1265s name = site_params['site'][site_type]['name'] 1265s self.log("The site '{0}' is not categorized as a building; no need to filter 'None' values.". 1265s format(name), "INFO") 1265s 1265s site_type = site_params['type'] 1265s parent_name = site_params.get('site').get(site_type).get('parentName') 1265s try: 1265s response = self.get_site_v1(parent_name) 1265s if not response: 1265s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name) 1265s self.log(self.msg, "DEBUG") 1265s self.site_absent_list.append(str(parent_name) + " does not exist ") 1265s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1265s except Exception as e: 1265s self.log("No response received from 'get_site_v1' API for site: {0}".format(parent_name + str(e)), "ERROR") 1265s 1265s > response = self.dnac._exec( 1265s family="sites", 1265s function='create_site', 1265s op_modifies=True, 1265s params=site_params, 1265s ) 1265s 1265s plugins/modules/site_workflow_manager.py:1868: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s /usr/lib/python3.13/unittest/mock.py:1169: in __call__ 1265s return self._mock_call(*args, **kwargs) 1265s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call 1265s return self._execute_mock_call(*args, **kwargs) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s self = , args = () 1265s kwargs = {'family': 'sites', 'function': 'create_site', 'op_modifies': True, 'params': {'site': {'area': {'name': 'japan8888', 'parentName': 'Global'}}, 'type': 'area'}} 1265s effect = , result = Exception() 1265s 1265s def _execute_mock_call(self, /, *args, **kwargs): 1265s # separate from _increment_mock_call so that awaited functions are 1265s # executed separately from their call, also AsyncMock overrides this method 1265s 1265s effect = self.side_effect 1265s if effect is not None: 1265s if _is_exception(effect): 1265s raise effect 1265s elif not _callable(effect): 1265s result = next(effect) 1265s if _is_exception(result): 1265s > raise result 1265s E Exception 1265s 1265s /usr/lib/python3.13/unittest/mock.py:1232: Exception 1265s 1265s During handling of the above exception, another exception occurred: 1265s 1265s self = 1265s 1265s def test_Site_workflow_manager_update_site(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_version="2.3.5.3", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_update_site 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_site_workflow_manager.py:559: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/site_workflow_manager.py:2539: in main 1265s ccc_site.get_diff_state_apply[state](config).check_return_status() 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def get_diff_merged(self, config): 1265s """ 1265s Update/Create site information in Cisco Catalyst Center with fields 1265s provided in the playbook. 1265s Parameters: 1265s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1265s config (dict): A dictionary containing configuration information. 1265s Returns: 1265s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1265s Description: 1265s This method determines whether to update or create a site in Cisco Catalyst Center based on the provided 1265s configuration information. If the specified site exists, the method checks if it requires an update 1265s by calling the 'site_requires_update' method. If an update is required, it calls the 'update_site' 1265s function from the 'sites' family of the Cisco Catalyst Center API. If the site does not require an update, 1265s the method exits, indicating that the site is up to date. 1265s """ 1265s site_updated = False 1265s site_created = False 1265s 1265s if self.compare_dnac_versions(self.get_ccc_version(), "2.3.7.6") >= 0: 1265s self.handle_config['area'] = [] 1265s self.handle_config['building'] = [] 1265s self.handle_config['floor'] = [] 1265s try: 1265s create_site = copy.deepcopy(self.handle_config["create_site"]) 1265s if len(create_site) > 0: 1265s self.log("Starting site creation process.", "DEBUG") 1265s for each_config in create_site: 1265s payload_data = self.change_payload_data(each_config.get("want")) 1265s if payload_data: 1265s payload_data[self.keymap["parent_name_hierarchy"]] =\ 1265s payload_data.get(self.keymap["parent_name"]) 1265s del payload_data[self.keymap["parent_name"]] 1265s self.log("Payload data prepared for site creation: {}".format(payload_data), "DEBUG") 1265s 1265s if payload_data.get("type") == "area": 1265s self.handle_config["area"].append(payload_data) 1265s self.log("Added to area: {}".format(payload_data), "DEBUG") 1265s elif payload_data.get("type") == "building": 1265s self.handle_config["building"].append(payload_data) 1265s self.log("Added to building: {}".format(payload_data), "DEBUG") 1265s elif payload_data.get("type") == "floor": 1265s self.handle_config["floor"].append(payload_data) 1265s self.log("Added to floor: {}".format(payload_data), "DEBUG") 1265s for each_type in ("area", "building", "floor"): 1265s if self.handle_config[each_type]: 1265s self.log("Processing configurations for '{0}'.".format(each_type), "DEBUG") 1265s for create_config in self.handle_config[each_type]: 1265s self.log("Handling configuration: {0}".format(create_config), "DEBUG") 1265s parent_name = create_config.get(self.keymap.get("parent_name_hierarchy")) 1265s if not parent_name: 1265s self.msg = "No parent name found in configuration for '{0}'.".format(each_type) 1265s self.log(self.msg, "DEBUG") 1265s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1265s self.log("Checking if parent site '{0}' exists in the hierarchy.".format(parent_name), "DEBUG") 1265s 1265s site_exists = self.is_site_exist(parent_name) 1265s if not site_exists: 1265s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name) 1265s self.log(self.msg, "DEBUG") 1265s self.site_absent_list.append(str(parent_name) + " does not exist ") 1265s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1265s 1265s response = self.creating_bulk_site(self.handle_config[each_type]) 1265s self.log("Response from creating_bulk_site for {}: {}".format(each_type, response), "DEBUG") 1265s 1265s if response and isinstance(response, dict) and "response" in response: 1265s task_id = response["response"].get("taskId") 1265s if task_id: 1265s self.log("Task Id for the 'site_creation' task is {}".format(task_id), "INFO") 1265s 1265s task_name = "create_sites" 1265s success_msg = "Site created successfully." 1265s self.get_task_status_from_tasks_by_id(task_id, task_name, success_msg) 1265s 1265s for site in self.handle_config[each_type]: 1265s if "name" in site: 1265s self.created_site_list.append(str(each_type) + ": " + str(site.get("name"))) 1265s 1265s self.log("Site '{}' created successfully".format(self.created_site_list), "INFO") 1265s 1265s for site in self.handle_config[each_type]: 1265s if site.get("type") == "floor": 1265s floor_name = site.get("name") 1265s self.log("Floor '{}' has been created successfully.".format(floor_name), "INFO") 1265s 1265s upload_path = site.get("upload_floor_image_path", None) 1265s if upload_path: 1265s self.log("Upload path found for floor '{}'. Starting upload floor map from '{}.'". 1265s format(floor_name, upload_path), "INFO") 1265s 1265s map_details, map_status, success_message = self.upload_floor_image(site) 1265s if map_details: 1265s self.log("Floor map for '{}' uploaded successfully: {}". 1265s format(floor_name, success_message), "INFO") 1265s else: 1265s self.log("Floor map upload failed for '{}'. Please check the upload path and retry.". 1265s format(floor_name), "ERROR") 1265s else: 1265s self.log("No upload path provided for '{}'. Floor created without floor map.". 1265s format(floor_name), "INFO") 1265s else: 1265s self.log("No valid task ID received from the 'creating_bulk_site' response.", "WARNING") 1265s return None 1265s else: 1265s self.log("No response received from the 'creating_bulk_site' API call.", "WARNING") 1265s return None 1265s 1265s task_detail_list = [] 1265s for each_config in self.have: 1265s site_name_hierarchy = each_config.get("site_name_hierarchy") 1265s 1265s if each_config.get("site_exists"): 1265s self.log("Processing site: {}".format(site_name_hierarchy), "DEBUG") 1265s payload_new = self.change_payload_data(each_config.get("want")) 1265s if payload_new.get("type") == "area": 1265s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1265s self.log(self.msg, "INFO") 1265s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy) 1265s elif payload_new.get("type") in ("building", "floor"): 1265s site_params = each_config.get("site_params") 1265s site_params["site_id"] = each_config.get("site_id") 1265s site_type = site_params.get("type") 1265s 1265s if self.site_requires_update(each_config): 1265s self.log("Site requires update, starting update for type: {}".format(site_type), "DEBUG") 1265s response = (self.update_floor(site_params, payload_new) if site_type == "floor" 1265s else self.update_area(site_params) if site_type == "area" 1265s else self.update_building(site_params) if site_type == "building" 1265s else self.log("Unknown site type: {0}".format(site_type), "ERROR")) 1265s 1265s self.log("Received API response from 'update_site': {0}". 1265s format(str(response)), "DEBUG") 1265s 1265s if response and isinstance(response, dict): 1265s taskid = response["response"]["taskId"] 1265s 1265s while True: 1265s task_details = self.get_task_details(taskid) 1265s if site_type != "floor": 1265s if task_details.get("progress") == "Group is updated successfully": 1265s task_detail_list.append(task_details) 1265s self.updated_site_list.append(site_type + ": " + site_name_hierarchy) 1265s self.log("Site '{}' updated successfully.".format(site_name_hierarchy), "INFO") 1265s break 1265s else: 1265s if task_details.get("progress") == "Service domain is updated successfully.": 1265s task_detail_list.append(task_details) 1265s self.updated_site_list.append(site_type + ": " + site_name_hierarchy) 1265s break 1265s 1265s if task_details.get("bapiError"): 1265s msg = task_details.get("bapiError") 1265s self.set_operation_result("failed", False, msg, "ERROR", 1265s task_details).check_return_status() 1265s break 1265s else: 1265s self.msg = "Unable to execute the update the site: {0} ".format(site_name_hierarchy) 1265s self.log(self.msg, "INFO") 1265s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1265s else: 1265s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1265s self.log(self.msg, "INFO") 1265s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy) 1265s except Exception as e: 1265s self.log("Yaml is not available for bulk: {}".format(str(e)), "ERROR") 1265s 1265s return self 1265s 1265s else: 1265s site_params = self.want.get("site_params") 1265s site_type = site_params.get("type") 1265s if self.have.get("site_exists"): 1265s site_name_hierarchy = self.want.get("site_name_hierarchy") 1265s if not self.site_requires_update(): 1265s self.update_not_needed_sites.append(site_type + ": " + site_name_hierarchy) 1265s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1265s self.log(self.msg, "INFO") 1265s else: 1265s try: 1265s site_params["site_id"] = self.have.get("site_id") 1265s self.log("Site parameters prepared for update: {}".format(site_params)) 1265s self.log("Site update process started.", "INFO") 1265s 1265s if site_params['site'].get('building'): 1265s building_details = {} 1265s for key, value in site_params['site']['building'].items(): 1265s if value is not None: 1265s building_details[key] = value 1265s 1265s site_params['site']['building'] = building_details 1265s 1265s response = self.dnac._exec( 1265s family="sites", 1265s function='update_site', 1265s op_modifies=True, 1265s params=site_params, 1265s ) 1265s self.log("Received API response from 'update_site': {0}".format(str(response)), "DEBUG") 1265s 1265s if response and isinstance(response, dict): 1265s execution_id = response.get("executionId") 1265s while True: 1265s execution_details = self.get_execution_details(execution_id) 1265s if execution_details.get("status") == "SUCCESS": 1265s self.result['changed'] = True 1265s site_updated = True 1265s self.updated_site_list.append(str(site_type) + ": " + str(site_name_hierarchy)) 1265s self.log("Site - {0} Updated Successfully".format(site_name_hierarchy), "INFO") 1265s break 1265s elif execution_details.get("bapiError"): 1265s self.msg = "Unable to Update: " + execution_details.get("bapiError") 1265s self.set_operation_result("failed", False, self.msg, "ERROR", 1265s execution_details).check_return_status() 1265s 1265s except Exception as e: 1265s self.msg = "Unexpected error occurred while update: {0}".format(str(e)) 1265s self.log(self.msg, "ERROR") 1265s self.set_operation_result("failed", False, self.msg, "ERROR", 1265s site_name_hierarchy).check_return_status() 1265s 1265s else: 1265s try: 1265s try: 1265s if site_params['site'].get('building'): 1265s building_details = {} 1265s for key, value in site_params['site']['building'].items(): 1265s if value is not None: 1265s building_details[key] = value 1265s 1265s site_params['site']['building'] = building_details 1265s 1265s except Exception as e: 1265s site_type = site_params['type'] 1265s name = site_params['site'][site_type]['name'] 1265s self.log("The site '{0}' is not categorized as a building; no need to filter 'None' values.". 1265s format(name), "INFO") 1265s 1265s site_type = site_params['type'] 1265s parent_name = site_params.get('site').get(site_type).get('parentName') 1265s try: 1265s response = self.get_site_v1(parent_name) 1265s if not response: 1265s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name) 1265s self.log(self.msg, "DEBUG") 1265s self.site_absent_list.append(str(parent_name) + " does not exist ") 1265s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1265s except Exception as e: 1265s self.log("No response received from 'get_site_v1' API for site: {0}".format(parent_name + str(e)), "ERROR") 1265s 1265s response = self.dnac._exec( 1265s family="sites", 1265s function='create_site', 1265s op_modifies=True, 1265s params=site_params, 1265s ) 1265s self.log("Received API response from 'create_site': {0}".format(str(response)), "DEBUG") 1265s 1265s if response and isinstance(response, dict): 1265s executionid = response.get("executionId") 1265s while True: 1265s execution_details = self.get_execution_details(executionid) 1265s if execution_details.get("status") == "SUCCESS": 1265s self.result['changed'] = True 1265s break 1265s elif execution_details.get("bapiError"): 1265s self.msg = "Unable to Create: " + str(execution_details.get("bapiError")) 1265s self.set_operation_result("failed", False, self.msg, "ERROR", 1265s execution_details).check_return_status() 1265s break 1265s 1265s site_exists, current_site = self.site_exists() 1265s if site_exists: 1265s site_name_hierarchy = self.want.get("site_name_hierarchy") 1265s self.created_site_list.append(str(site_type) + ": " + str(site_name_hierarchy)) 1265s self.log("Site '{0}' created successfully".format(site_name_hierarchy), "INFO") 1265s return self 1265s 1265s except Exception as e: 1265s self.msg = "Unexpected error occurred while create: {0}".format(str(e)) 1265s self.log(self.msg, "ERROR") 1265s self.set_operation_result("failed", False, self.msg, "ERROR", 1265s > site_name_hierarchy).check_return_status() 1265s E UnboundLocalError: cannot access local variable 'site_name_hierarchy' where it is not associated with a value 1265s 1265s plugins/modules/site_workflow_manager.py:1900: UnboundLocalError 1265s ------------------------------ Captured log call ------------------------------- 1265s ERROR logger:dnac.py:294 Site: get_site_v1: 619: An error occurred in 'get_sites': 1265s 1265s ERROR logger:dnac.py:294 Site: site_exists: 676: No response received from 'get_site' API for site: Global/japan8888 1265s 1265s ERROR logger:dnac.py:294 Site: get_diff_merged: 1898: Unexpected error occurred while create: 1265s _ TestswimWorkflowManager.test_swim_workflow_manager_playbook_import_cco_image _ 1265s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_swim_workflow_manager_playbook_import_cco_image(self): 1265s """ 1265s Test case for SWIM workflow manager to import an image from Cisco's cloud (CCO). 1265s This test case verifies the import of an image from the CCO into the specified Cisco Catalyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_version='2.3.7.6', 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_import_cco_image 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_swim_workflow_manager.py:303: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/swim_workflow_manager.py:2413: in main 1265s ccc_swims.get_diff_import().check_return_status() 1265s plugins/module_utils/dnac.py:307: in check_return_status 1265s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def fail_json(*args, **kwargs): 1265s kwargs["failed"] = True 1265s > raise AnsibleFailJson(kwargs) 1265s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "Error: Import image details are missing from the playbook or the Import Image API was not triggered successfully. Please ensure that all necessary details are provided and verify the status of the Import Image process. Details: 'list' object has no attribute 'get'", 'response': "Error: Import image details are missing from the playbook or the Import Image API was not triggered successfully. Please ensure that all necessary details are provided and verify the status of the Import Image process. Details: 'list' object has no attribute 'get'", 'failed': True} 1265s 1265s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 Swim: get_diff_import: 1355: image_type - cco 1265s 1265s WARNING logger:dnac.py:294 Swim: get_diff_import: 1372: cat9k_iosxe_npe.17.12.04.SPA.bin 1265s 1265s WARNING logger:dnac.py:294 Swim: get_diff_import: 1434: importing with the import_params - {'id': '8b01c34b-7e5e-4181-81ee-9bece7b5d078'} 1265s 1265s ERROR logger:dnac.py:294 Swim: get_diff_import: 1520: Error: Import image details are missing from the playbook or the Import Image API was not triggered successfully. Please ensure that all necessary details are provided and verify the status of the Import Image process. Details: 'list' object has no attribute 'get' 1265s ___ TestDnacSiteWorkflow.test_Site_workflow_manager_verify_diff_merged_site ____ 1265s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s def get_diff_merged(self, config): 1265s """ 1265s Update/Create site information in Cisco Catalyst Center with fields 1265s provided in the playbook. 1265s Parameters: 1265s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1265s config (dict): A dictionary containing configuration information. 1265s Returns: 1265s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1265s Description: 1265s This method determines whether to update or create a site in Cisco Catalyst Center based on the provided 1265s configuration information. If the specified site exists, the method checks if it requires an update 1265s by calling the 'site_requires_update' method. If an update is required, it calls the 'update_site' 1265s function from the 'sites' family of the Cisco Catalyst Center API. If the site does not require an update, 1265s the method exits, indicating that the site is up to date. 1265s """ 1265s site_updated = False 1265s site_created = False 1265s 1265s if self.compare_dnac_versions(self.get_ccc_version(), "2.3.7.6") >= 0: 1265s self.handle_config['area'] = [] 1265s self.handle_config['building'] = [] 1265s self.handle_config['floor'] = [] 1265s try: 1265s create_site = copy.deepcopy(self.handle_config["create_site"]) 1265s if len(create_site) > 0: 1265s self.log("Starting site creation process.", "DEBUG") 1265s for each_config in create_site: 1265s payload_data = self.change_payload_data(each_config.get("want")) 1265s if payload_data: 1265s payload_data[self.keymap["parent_name_hierarchy"]] =\ 1265s payload_data.get(self.keymap["parent_name"]) 1265s del payload_data[self.keymap["parent_name"]] 1265s self.log("Payload data prepared for site creation: {}".format(payload_data), "DEBUG") 1265s 1265s if payload_data.get("type") == "area": 1265s self.handle_config["area"].append(payload_data) 1265s self.log("Added to area: {}".format(payload_data), "DEBUG") 1265s elif payload_data.get("type") == "building": 1265s self.handle_config["building"].append(payload_data) 1265s self.log("Added to building: {}".format(payload_data), "DEBUG") 1265s elif payload_data.get("type") == "floor": 1265s self.handle_config["floor"].append(payload_data) 1265s self.log("Added to floor: {}".format(payload_data), "DEBUG") 1265s for each_type in ("area", "building", "floor"): 1265s if self.handle_config[each_type]: 1265s self.log("Processing configurations for '{0}'.".format(each_type), "DEBUG") 1265s for create_config in self.handle_config[each_type]: 1265s self.log("Handling configuration: {0}".format(create_config), "DEBUG") 1265s parent_name = create_config.get(self.keymap.get("parent_name_hierarchy")) 1265s if not parent_name: 1265s self.msg = "No parent name found in configuration for '{0}'.".format(each_type) 1265s self.log(self.msg, "DEBUG") 1265s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1265s self.log("Checking if parent site '{0}' exists in the hierarchy.".format(parent_name), "DEBUG") 1265s 1265s site_exists = self.is_site_exist(parent_name) 1265s if not site_exists: 1265s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name) 1265s self.log(self.msg, "DEBUG") 1265s self.site_absent_list.append(str(parent_name) + " does not exist ") 1265s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1265s 1265s response = self.creating_bulk_site(self.handle_config[each_type]) 1265s self.log("Response from creating_bulk_site for {}: {}".format(each_type, response), "DEBUG") 1265s 1265s if response and isinstance(response, dict) and "response" in response: 1265s task_id = response["response"].get("taskId") 1265s if task_id: 1265s self.log("Task Id for the 'site_creation' task is {}".format(task_id), "INFO") 1265s 1265s task_name = "create_sites" 1265s success_msg = "Site created successfully." 1265s self.get_task_status_from_tasks_by_id(task_id, task_name, success_msg) 1265s 1265s for site in self.handle_config[each_type]: 1265s if "name" in site: 1265s self.created_site_list.append(str(each_type) + ": " + str(site.get("name"))) 1265s 1265s self.log("Site '{}' created successfully".format(self.created_site_list), "INFO") 1265s 1265s for site in self.handle_config[each_type]: 1265s if site.get("type") == "floor": 1265s floor_name = site.get("name") 1265s self.log("Floor '{}' has been created successfully.".format(floor_name), "INFO") 1265s 1265s upload_path = site.get("upload_floor_image_path", None) 1265s if upload_path: 1265s self.log("Upload path found for floor '{}'. Starting upload floor map from '{}.'". 1265s format(floor_name, upload_path), "INFO") 1265s 1265s map_details, map_status, success_message = self.upload_floor_image(site) 1265s if map_details: 1265s self.log("Floor map for '{}' uploaded successfully: {}". 1265s format(floor_name, success_message), "INFO") 1265s else: 1265s self.log("Floor map upload failed for '{}'. Please check the upload path and retry.". 1265s format(floor_name), "ERROR") 1265s else: 1265s self.log("No upload path provided for '{}'. Floor created without floor map.". 1265s format(floor_name), "INFO") 1265s else: 1265s self.log("No valid task ID received from the 'creating_bulk_site' response.", "WARNING") 1265s return None 1265s else: 1265s self.log("No response received from the 'creating_bulk_site' API call.", "WARNING") 1265s return None 1265s 1265s task_detail_list = [] 1265s for each_config in self.have: 1265s site_name_hierarchy = each_config.get("site_name_hierarchy") 1265s 1265s if each_config.get("site_exists"): 1265s self.log("Processing site: {}".format(site_name_hierarchy), "DEBUG") 1265s payload_new = self.change_payload_data(each_config.get("want")) 1265s if payload_new.get("type") == "area": 1265s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1265s self.log(self.msg, "INFO") 1265s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy) 1265s elif payload_new.get("type") in ("building", "floor"): 1265s site_params = each_config.get("site_params") 1265s site_params["site_id"] = each_config.get("site_id") 1265s site_type = site_params.get("type") 1265s 1265s if self.site_requires_update(each_config): 1265s self.log("Site requires update, starting update for type: {}".format(site_type), "DEBUG") 1265s response = (self.update_floor(site_params, payload_new) if site_type == "floor" 1265s else self.update_area(site_params) if site_type == "area" 1265s else self.update_building(site_params) if site_type == "building" 1265s else self.log("Unknown site type: {0}".format(site_type), "ERROR")) 1265s 1265s self.log("Received API response from 'update_site': {0}". 1265s format(str(response)), "DEBUG") 1265s 1265s if response and isinstance(response, dict): 1265s taskid = response["response"]["taskId"] 1265s 1265s while True: 1265s task_details = self.get_task_details(taskid) 1265s if site_type != "floor": 1265s if task_details.get("progress") == "Group is updated successfully": 1265s task_detail_list.append(task_details) 1265s self.updated_site_list.append(site_type + ": " + site_name_hierarchy) 1265s self.log("Site '{}' updated successfully.".format(site_name_hierarchy), "INFO") 1265s break 1265s else: 1265s if task_details.get("progress") == "Service domain is updated successfully.": 1265s task_detail_list.append(task_details) 1265s self.updated_site_list.append(site_type + ": " + site_name_hierarchy) 1265s break 1265s 1265s if task_details.get("bapiError"): 1265s msg = task_details.get("bapiError") 1265s self.set_operation_result("failed", False, msg, "ERROR", 1265s task_details).check_return_status() 1265s break 1265s else: 1265s self.msg = "Unable to execute the update the site: {0} ".format(site_name_hierarchy) 1265s self.log(self.msg, "INFO") 1265s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1265s else: 1265s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1265s self.log(self.msg, "INFO") 1265s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy) 1265s except Exception as e: 1265s self.log("Yaml is not available for bulk: {}".format(str(e)), "ERROR") 1265s 1265s return self 1265s 1265s else: 1265s site_params = self.want.get("site_params") 1265s site_type = site_params.get("type") 1265s if self.have.get("site_exists"): 1265s site_name_hierarchy = self.want.get("site_name_hierarchy") 1265s if not self.site_requires_update(): 1265s self.update_not_needed_sites.append(site_type + ": " + site_name_hierarchy) 1265s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1265s self.log(self.msg, "INFO") 1265s else: 1265s try: 1265s site_params["site_id"] = self.have.get("site_id") 1265s self.log("Site parameters prepared for update: {}".format(site_params)) 1265s self.log("Site update process started.", "INFO") 1265s 1265s if site_params['site'].get('building'): 1265s building_details = {} 1265s for key, value in site_params['site']['building'].items(): 1265s if value is not None: 1265s building_details[key] = value 1265s 1265s site_params['site']['building'] = building_details 1265s 1265s response = self.dnac._exec( 1265s family="sites", 1265s function='update_site', 1265s op_modifies=True, 1265s params=site_params, 1265s ) 1265s self.log("Received API response from 'update_site': {0}".format(str(response)), "DEBUG") 1265s 1265s if response and isinstance(response, dict): 1265s execution_id = response.get("executionId") 1265s while True: 1265s execution_details = self.get_execution_details(execution_id) 1265s if execution_details.get("status") == "SUCCESS": 1265s self.result['changed'] = True 1265s site_updated = True 1265s self.updated_site_list.append(str(site_type) + ": " + str(site_name_hierarchy)) 1265s self.log("Site - {0} Updated Successfully".format(site_name_hierarchy), "INFO") 1265s break 1265s elif execution_details.get("bapiError"): 1265s self.msg = "Unable to Update: " + execution_details.get("bapiError") 1265s self.set_operation_result("failed", False, self.msg, "ERROR", 1265s execution_details).check_return_status() 1265s 1265s except Exception as e: 1265s self.msg = "Unexpected error occurred while update: {0}".format(str(e)) 1265s self.log(self.msg, "ERROR") 1265s self.set_operation_result("failed", False, self.msg, "ERROR", 1265s site_name_hierarchy).check_return_status() 1265s 1265s else: 1265s try: 1265s try: 1265s if site_params['site'].get('building'): 1265s building_details = {} 1265s for key, value in site_params['site']['building'].items(): 1265s if value is not None: 1265s building_details[key] = value 1265s 1265s site_params['site']['building'] = building_details 1265s 1265s except Exception as e: 1265s site_type = site_params['type'] 1265s name = site_params['site'][site_type]['name'] 1265s self.log("The site '{0}' is not categorized as a building; no need to filter 'None' values.". 1265s format(name), "INFO") 1265s 1265s site_type = site_params['type'] 1265s parent_name = site_params.get('site').get(site_type).get('parentName') 1265s try: 1265s response = self.get_site_v1(parent_name) 1265s if not response: 1265s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name) 1265s self.log(self.msg, "DEBUG") 1265s self.site_absent_list.append(str(parent_name) + " does not exist ") 1265s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1265s except Exception as e: 1265s self.log("No response received from 'get_site_v1' API for site: {0}".format(parent_name + str(e)), "ERROR") 1265s 1265s > response = self.dnac._exec( 1265s family="sites", 1265s function='create_site', 1265s op_modifies=True, 1265s params=site_params, 1265s ) 1265s 1265s plugins/modules/site_workflow_manager.py:1868: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s /usr/lib/python3.13/unittest/mock.py:1169: in __call__ 1265s return self._mock_call(*args, **kwargs) 1265s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call 1265s return self._execute_mock_call(*args, **kwargs) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s self = , args = () 1265s kwargs = {'family': 'sites', 'function': 'create_site', 'op_modifies': True, 'params': {'site': {'area': {'name': 'japan8888', 'parentName': 'Global'}}, 'type': 'area'}} 1265s effect = , result = Exception() 1265s 1265s def _execute_mock_call(self, /, *args, **kwargs): 1265s # separate from _increment_mock_call so that awaited functions are 1265s # executed separately from their call, also AsyncMock overrides this method 1265s 1265s effect = self.side_effect 1265s if effect is not None: 1265s if _is_exception(effect): 1265s raise effect 1265s elif not _callable(effect): 1265s result = next(effect) 1265s if _is_exception(result): 1265s > raise result 1265s E Exception 1265s 1265s /usr/lib/python3.13/unittest/mock.py:1232: Exception 1265s 1265s During handling of the above exception, another exception occurred: 1265s 1265s self = 1265s 1265s def test_Site_workflow_manager_verify_diff_merged_site(self): 1265s """ 1265s Test case for verify parameters in site workflow manager after applying merged state. 1265s 1265s This test case checks the behavior of the site workflow manager after applying merged state Cisco Catalyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_version="2.3.5.3", 1265s dnac_log=True, 1265s state="merged", 1265s config_verify=True, 1265s config=self.playbook_config_site 1265s ) 1265s ) 1265s > result = self.execute_module(changed=False, failed=False) 1265s 1265s tests/unit/modules/dnac/test_site_workflow_manager.py:442: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/site_workflow_manager.py:2539: in main 1265s ccc_site.get_diff_state_apply[state](config).check_return_status() 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def get_diff_merged(self, config): 1265s """ 1265s Update/Create site information in Cisco Catalyst Center with fields 1265s provided in the playbook. 1265s Parameters: 1265s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1265s config (dict): A dictionary containing configuration information. 1265s Returns: 1265s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1265s Description: 1265s This method determines whether to update or create a site in Cisco Catalyst Center based on the provided 1265s configuration information. If the specified site exists, the method checks if it requires an update 1265s by calling the 'site_requires_update' method. If an update is required, it calls the 'update_site' 1265s function from the 'sites' family of the Cisco Catalyst Center API. If the site does not require an update, 1265s the method exits, indicating that the site is up to date. 1265s """ 1265s site_updated = False 1265s site_created = False 1265s 1265s if self.compare_dnac_versions(self.get_ccc_version(), "2.3.7.6") >= 0: 1265s self.handle_config['area'] = [] 1265s self.handle_config['building'] = [] 1265s self.handle_config['floor'] = [] 1265s try: 1265s create_site = copy.deepcopy(self.handle_config["create_site"]) 1265s if len(create_site) > 0: 1265s self.log("Starting site creation process.", "DEBUG") 1265s for each_config in create_site: 1265s payload_data = self.change_payload_data(each_config.get("want")) 1265s if payload_data: 1265s payload_data[self.keymap["parent_name_hierarchy"]] =\ 1265s payload_data.get(self.keymap["parent_name"]) 1265s del payload_data[self.keymap["parent_name"]] 1265s self.log("Payload data prepared for site creation: {}".format(payload_data), "DEBUG") 1265s 1265s if payload_data.get("type") == "area": 1265s self.handle_config["area"].append(payload_data) 1265s self.log("Added to area: {}".format(payload_data), "DEBUG") 1265s elif payload_data.get("type") == "building": 1265s self.handle_config["building"].append(payload_data) 1265s self.log("Added to building: {}".format(payload_data), "DEBUG") 1265s elif payload_data.get("type") == "floor": 1265s self.handle_config["floor"].append(payload_data) 1265s self.log("Added to floor: {}".format(payload_data), "DEBUG") 1265s for each_type in ("area", "building", "floor"): 1265s if self.handle_config[each_type]: 1265s self.log("Processing configurations for '{0}'.".format(each_type), "DEBUG") 1265s for create_config in self.handle_config[each_type]: 1265s self.log("Handling configuration: {0}".format(create_config), "DEBUG") 1265s parent_name = create_config.get(self.keymap.get("parent_name_hierarchy")) 1265s if not parent_name: 1265s self.msg = "No parent name found in configuration for '{0}'.".format(each_type) 1265s self.log(self.msg, "DEBUG") 1265s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1265s self.log("Checking if parent site '{0}' exists in the hierarchy.".format(parent_name), "DEBUG") 1265s 1265s site_exists = self.is_site_exist(parent_name) 1265s if not site_exists: 1265s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name) 1265s self.log(self.msg, "DEBUG") 1265s self.site_absent_list.append(str(parent_name) + " does not exist ") 1265s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1265s 1265s response = self.creating_bulk_site(self.handle_config[each_type]) 1265s self.log("Response from creating_bulk_site for {}: {}".format(each_type, response), "DEBUG") 1265s 1265s if response and isinstance(response, dict) and "response" in response: 1265s task_id = response["response"].get("taskId") 1265s if task_id: 1265s self.log("Task Id for the 'site_creation' task is {}".format(task_id), "INFO") 1265s 1265s task_name = "create_sites" 1265s success_msg = "Site created successfully." 1265s self.get_task_status_from_tasks_by_id(task_id, task_name, success_msg) 1265s 1265s for site in self.handle_config[each_type]: 1265s if "name" in site: 1265s self.created_site_list.append(str(each_type) + ": " + str(site.get("name"))) 1265s 1265s self.log("Site '{}' created successfully".format(self.created_site_list), "INFO") 1265s 1265s for site in self.handle_config[each_type]: 1265s if site.get("type") == "floor": 1265s floor_name = site.get("name") 1265s self.log("Floor '{}' has been created successfully.".format(floor_name), "INFO") 1265s 1265s upload_path = site.get("upload_floor_image_path", None) 1265s if upload_path: 1265s self.log("Upload path found for floor '{}'. Starting upload floor map from '{}.'". 1265s format(floor_name, upload_path), "INFO") 1265s 1265s map_details, map_status, success_message = self.upload_floor_image(site) 1265s if map_details: 1265s self.log("Floor map for '{}' uploaded successfully: {}". 1265s format(floor_name, success_message), "INFO") 1265s else: 1265s self.log("Floor map upload failed for '{}'. Please check the upload path and retry.". 1265s format(floor_name), "ERROR") 1265s else: 1265s self.log("No upload path provided for '{}'. Floor created without floor map.". 1265s format(floor_name), "INFO") 1265s else: 1265s self.log("No valid task ID received from the 'creating_bulk_site' response.", "WARNING") 1265s return None 1265s else: 1265s self.log("No response received from the 'creating_bulk_site' API call.", "WARNING") 1265s return None 1265s 1265s task_detail_list = [] 1265s for each_config in self.have: 1265s site_name_hierarchy = each_config.get("site_name_hierarchy") 1265s 1265s if each_config.get("site_exists"): 1265s self.log("Processing site: {}".format(site_name_hierarchy), "DEBUG") 1265s payload_new = self.change_payload_data(each_config.get("want")) 1265s if payload_new.get("type") == "area": 1265s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1265s self.log(self.msg, "INFO") 1265s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy) 1265s elif payload_new.get("type") in ("building", "floor"): 1265s site_params = each_config.get("site_params") 1265s site_params["site_id"] = each_config.get("site_id") 1265s site_type = site_params.get("type") 1265s 1265s if self.site_requires_update(each_config): 1265s self.log("Site requires update, starting update for type: {}".format(site_type), "DEBUG") 1265s response = (self.update_floor(site_params, payload_new) if site_type == "floor" 1265s else self.update_area(site_params) if site_type == "area" 1265s else self.update_building(site_params) if site_type == "building" 1265s else self.log("Unknown site type: {0}".format(site_type), "ERROR")) 1265s 1265s self.log("Received API response from 'update_site': {0}". 1265s format(str(response)), "DEBUG") 1265s 1265s if response and isinstance(response, dict): 1265s taskid = response["response"]["taskId"] 1265s 1265s while True: 1265s task_details = self.get_task_details(taskid) 1265s if site_type != "floor": 1265s if task_details.get("progress") == "Group is updated successfully": 1265s task_detail_list.append(task_details) 1265s self.updated_site_list.append(site_type + ": " + site_name_hierarchy) 1265s self.log("Site '{}' updated successfully.".format(site_name_hierarchy), "INFO") 1265s break 1265s else: 1265s if task_details.get("progress") == "Service domain is updated successfully.": 1265s task_detail_list.append(task_details) 1265s self.updated_site_list.append(site_type + ": " + site_name_hierarchy) 1265s break 1265s 1265s if task_details.get("bapiError"): 1265s msg = task_details.get("bapiError") 1265s self.set_operation_result("failed", False, msg, "ERROR", 1265s task_details).check_return_status() 1265s break 1265s else: 1265s self.msg = "Unable to execute the update the site: {0} ".format(site_name_hierarchy) 1265s self.log(self.msg, "INFO") 1265s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1265s else: 1265s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1265s self.log(self.msg, "INFO") 1265s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy) 1265s except Exception as e: 1265s self.log("Yaml is not available for bulk: {}".format(str(e)), "ERROR") 1265s 1265s return self 1265s 1265s else: 1265s site_params = self.want.get("site_params") 1265s site_type = site_params.get("type") 1265s if self.have.get("site_exists"): 1265s site_name_hierarchy = self.want.get("site_name_hierarchy") 1265s if not self.site_requires_update(): 1265s self.update_not_needed_sites.append(site_type + ": " + site_name_hierarchy) 1265s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1265s self.log(self.msg, "INFO") 1265s else: 1265s try: 1265s site_params["site_id"] = self.have.get("site_id") 1265s self.log("Site parameters prepared for update: {}".format(site_params)) 1265s self.log("Site update process started.", "INFO") 1265s 1265s if site_params['site'].get('building'): 1265s building_details = {} 1265s for key, value in site_params['site']['building'].items(): 1265s if value is not None: 1265s building_details[key] = value 1265s 1265s site_params['site']['building'] = building_details 1265s 1265s response = self.dnac._exec( 1265s family="sites", 1265s function='update_site', 1265s op_modifies=True, 1265s params=site_params, 1265s ) 1265s self.log("Received API response from 'update_site': {0}".format(str(response)), "DEBUG") 1265s 1265s if response and isinstance(response, dict): 1265s execution_id = response.get("executionId") 1265s while True: 1265s execution_details = self.get_execution_details(execution_id) 1265s if execution_details.get("status") == "SUCCESS": 1265s self.result['changed'] = True 1265s site_updated = True 1265s self.updated_site_list.append(str(site_type) + ": " + str(site_name_hierarchy)) 1265s self.log("Site - {0} Updated Successfully".format(site_name_hierarchy), "INFO") 1265s break 1265s elif execution_details.get("bapiError"): 1265s self.msg = "Unable to Update: " + execution_details.get("bapiError") 1265s self.set_operation_result("failed", False, self.msg, "ERROR", 1265s execution_details).check_return_status() 1265s 1265s except Exception as e: 1265s self.msg = "Unexpected error occurred while update: {0}".format(str(e)) 1265s self.log(self.msg, "ERROR") 1265s self.set_operation_result("failed", False, self.msg, "ERROR", 1265s site_name_hierarchy).check_return_status() 1265s 1265s else: 1265s try: 1265s try: 1265s if site_params['site'].get('building'): 1265s building_details = {} 1265s for key, value in site_params['site']['building'].items(): 1265s if value is not None: 1265s building_details[key] = value 1265s 1265s site_params['site']['building'] = building_details 1265s 1265s except Exception as e: 1265s site_type = site_params['type'] 1265s name = site_params['site'][site_type]['name'] 1265s self.log("The site '{0}' is not categorized as a building; no need to filter 'None' values.". 1265s format(name), "INFO") 1265s 1265s site_type = site_params['type'] 1265s parent_name = site_params.get('site').get(site_type).get('parentName') 1265s try: 1265s response = self.get_site_v1(parent_name) 1265s if not response: 1265s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name) 1265s self.log(self.msg, "DEBUG") 1265s self.site_absent_list.append(str(parent_name) + " does not exist ") 1265s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1265s except Exception as e: 1265s self.log("No response received from 'get_site_v1' API for site: {0}".format(parent_name + str(e)), "ERROR") 1265s 1265s response = self.dnac._exec( 1265s family="sites", 1265s function='create_site', 1265s op_modifies=True, 1265s params=site_params, 1265s ) 1265s self.log("Received API response from 'create_site': {0}".format(str(response)), "DEBUG") 1265s 1265s if response and isinstance(response, dict): 1265s executionid = response.get("executionId") 1265s while True: 1265s execution_details = self.get_execution_details(executionid) 1265s if execution_details.get("status") == "SUCCESS": 1265s self.result['changed'] = True 1265s break 1265s elif execution_details.get("bapiError"): 1265s self.msg = "Unable to Create: " + str(execution_details.get("bapiError")) 1265s self.set_operation_result("failed", False, self.msg, "ERROR", 1265s execution_details).check_return_status() 1265s break 1265s 1265s site_exists, current_site = self.site_exists() 1265s if site_exists: 1265s site_name_hierarchy = self.want.get("site_name_hierarchy") 1265s self.created_site_list.append(str(site_type) + ": " + str(site_name_hierarchy)) 1265s self.log("Site '{0}' created successfully".format(site_name_hierarchy), "INFO") 1265s return self 1265s 1265s except Exception as e: 1265s self.msg = "Unexpected error occurred while create: {0}".format(str(e)) 1265s self.log(self.msg, "ERROR") 1265s self.set_operation_result("failed", False, self.msg, "ERROR", 1265s > site_name_hierarchy).check_return_status() 1265s E UnboundLocalError: cannot access local variable 'site_name_hierarchy' where it is not associated with a value 1265s 1265s plugins/modules/site_workflow_manager.py:1900: UnboundLocalError 1265s ------------------------------ Captured log call ------------------------------- 1265s ERROR logger:dnac.py:294 Site: get_site_v1: 619: An error occurred in 'get_sites': 1265s 1265s ERROR logger:dnac.py:294 Site: site_exists: 676: No response received from 'get_site' API for site: Global/japan8888 1265s 1265s ERROR logger:dnac.py:294 Site: get_diff_merged: 1898: Unexpected error occurred while create: 1265s ___ TestDnacSiteWorkflow.test_Site_workflow_manager_create_site_bulk_invalid ___ 1265s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Site_workflow_manager_create_site_bulk_invalid(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_version="2.3.7.6", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_site 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "An error occurred while executing GET API call to Function: 'get_sites' " 1265s "from Family: 'site_design'. " 1265s "Parameters: {'name_hierarchy': 'Global/japan8888'}. " 1265s "Exception: ." 1265s ) 1265s E AssertionError: "An e[106 chars]: {'name_hierarchy': 'Global/japan8888/blossom'}. Exception: ." != "An e[106 chars]: {'name_hierarchy': 'Global/japan8888'}. Exception: ." 1265s E - An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/japan8888/blossom'}. Exception: . 1265s E ? -------- 1265s E + An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/japan8888'}. Exception: . 1265s 1265s tests/unit/modules/dnac/test_site_workflow_manager.py:416: AssertionError 1265s ------------------------------ Captured log call ------------------------------- 1265s ERROR logger:dnac.py:294 Site: set_operation_result: 1780: An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/japan8888'}. Exception: . 1265s 1265s WARNING logger:dnac.py:294 Site: get_have: 1072: Error fetching site for name 'Global/japan8888': {'msg': "An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/japan8888'}. Exception: .", 'response': "An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/japan8888'}. Exception: .", 'failed': True} 1265s 1265s ERROR logger:dnac.py:294 Site: set_operation_result: 1780: An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/japan8888/blossom'}. Exception: . 1265s 1265s WARNING logger:dnac.py:294 Site: get_have: 1072: Error fetching site for name 'Global/japan8888/blossom': {'msg': "An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/japan8888/blossom'}. Exception: .", 'response': "An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/japan8888/blossom'}. Exception: .", 'failed': True} 1265s 1265s WARNING logger:dnac.py:294 Site: execute_get_request: 1857: No response received from GET API call to Function: 'get_sites' from Family: 'site_design'. 1265s 1265s ERROR logger:dnac.py:294 Site: get_have: 1037: Unexpected response received: 1265s ________ TestDnacSiteWorkflow.test_Site_workflow_manager_delete_a_site _________ 1265s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Site_workflow_manager_delete_a_site(self): 1265s """ 1265s Test case for site workflow manager when deleting a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_version="2.3.7.6", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_delete 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "This version : '2.3.7.6' given yaml format is not applicable to create a site' " 1265s ) 1265s E AssertionError: 'Exception occurred while creating site due to: ' != "This version : '2.3.7.6' given yaml form[35 chars]te' " 1265s E - Exception occurred while creating site due to: 1265s E + This version : '2.3.7.6' given yaml format is not applicable to create a site' 1265s 1265s tests/unit/modules/dnac/test_site_workflow_manager.py:467: AssertionError 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 Site: execute_get_request: 1866: Empty 'response' key in the API response from GET API call to Function: 'get_sites' from Family: 'site_design'. 1265s 1265s ERROR logger:dnac.py:294 Site: get_have: 1037: Unexpected response received: 1265s 1265s ERROR logger:dnac.py:294 Site: set_operation_result: 1780: Exception occurred while creating site due to: 1265s 1265s ERROR logger:dnac.py:294 Site: get_diff_merged: 1783: Yaml is not available for bulk: {'msg': 'Exception occurred while creating site due to: ', 'response': 'Exception occurred while creating site due to: ', 'failed': True} 1265s _ TestswimWorkflowManager.test_swim_workflow_manager_playbook_swim_image_golden_already_tagged _ 1265s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_swim_workflow_manager_playbook_swim_image_golden_already_tagged(self): 1265s """ 1265s Test case for swim workflow manager when givingswim image golden already tagged 1265s This test case checks the behavior of the swim workflow when giving swim image golden already tagged 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_version='2.3.5.3', 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config_verify=True, 1265s config=self.playbook_swim_image_golden_already_tagged 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=False) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "SWIM Image 'cat9k_iosxe.17.12.02.SPA.bin' already tagged as Golden image in Cisco Catalyst Center" 1265s ) 1265s E AssertionError: "SWIM[52 chars] as Golden image in Cisco Catalyst Center for the roles - ALL." != "SWIM[52 chars] as Golden image in Cisco Catalyst Center" 1265s E - SWIM Image 'cat9k_iosxe.17.12.02.SPA.bin' already tagged as Golden image in Cisco Catalyst Center for the roles - ALL. 1265s E ? --------------------- 1265s E + SWIM Image 'cat9k_iosxe.17.12.02.SPA.bin' already tagged as Golden image in Cisco Catalyst Center 1265s 1265s tests/unit/modules/dnac/test_swim_workflow_manager.py:580: AssertionError 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 1265s _ TestswimWorkflowManager.test_swim_workflow_manager_playbook_import_image_already_exist _ 1265s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_swim_workflow_manager_playbook_import_image_already_exist(self): 1265s """ 1265s Test case for swim workflow manager when giving import image already exist 1265s This test case checks the behavior of the swim workflow when giving import image already exist 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_version='2.3.5.3', 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_import_image_already_exist 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=False) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "Image(s) cat9k_iosxe.17.12.02.SPA.bin were skipped as they already exist in Cisco Catalyst Center. No new images were imported." 1265s ) 1265s E AssertionError: 'Imag[61 chars]y exist in Cisco Catalyst Center.' != 'Imag[61 chars]y exist in Cisco Catalyst Center. No new images were imported.' 1265s E - Image(s) cat9k_iosxe.17.12.02.SPA.bin were skipped as they already exist in Cisco Catalyst Center. 1265s E + Image(s) cat9k_iosxe.17.12.02.SPA.bin were skipped as they already exist in Cisco Catalyst Center. No new images were imported. 1265s E ? +++++++++++++++++++++++++++++ 1265s 1265s tests/unit/modules/dnac/test_swim_workflow_manager.py:465: AssertionError 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 Swim: get_diff_import: 1355: image_type - remote 1265s 1265s WARNING logger:dnac.py:294 Swim: get_diff_import: 1372: cat9k_iosxe.17.12.02.SPA.bin 1265s _ TestswimWorkflowManager.test_swim_workflow_playbook_image_distribution_successfull _ 1265s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_swim_workflow_playbook_image_distribution_successfull(self): 1265s """ 1265s Test case for SWIM workflow manager image distribution. 1265s This test case verifies the successful distribution of an image to all specified devices in the Cisco Catalyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_version='2.3.5.3', 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config_verify=True, 1265s config=self.playbook_image_distribution_successfull 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_swim_workflow_manager.py:395: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/swim_workflow_manager.py:2415: in main 1265s ccc_swims.get_diff_state_apply[state](config).check_return_status() 1265s plugins/modules/swim_workflow_manager.py:2110: in get_diff_merged 1265s self.get_diff_distribution().check_return_status() 1265s plugins/modules/swim_workflow_manager.py:1828: in get_diff_distribution 1265s device_uuid_list = self.get_device_uuids(site_name, device_family, device_role, device_series_name) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def get_device_uuids(self, site_name, device_family, device_role, device_series_name=None): 1265s """ 1265s Retrieve a list of device UUIDs based on the specified criteria. 1265s Parameters: 1265s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1265s site_name (str): The name of the site for which device UUIDs are requested. 1265s device_family (str): The family/type of devices to filter on. 1265s device_role (str): The role of devices to filter on. If None, 'ALL' roles are considered. 1265s device_series_name(str): Specifies the name of the device series. 1265s Returns: 1265s list: A list of device UUIDs that match the specified criteria. 1265s Description: 1265s The function checks the reachability status and role of devices in the given site. 1265s Only devices with "Reachable" status are considered, and filtering is based on the specified 1265s device family and role (if provided). 1265s """ 1265s 1265s device_uuid_list = [] 1265s device_id_list, site_response_list = [], [] 1265s if not site_name: 1265s site_name = "Global" 1265s self.log("Site name not specified; defaulting to 'Global' to fetch all devices under this category", "INFO") 1265s 1265s (site_exists, site_id) = self.site_exists(site_name) 1265s if not site_exists: 1265s self.log("""Site '{0}' is not found in the Cisco Catalyst Center, hence unable to fetch associated 1265s devices.""".format(site_name), "INFO") 1265s return device_uuid_list 1265s 1265s if device_series_name: 1265s if device_series_name.startswith(".*") and device_series_name.endswith(".*"): 1265s self.log("Device series name '{0}' is already in the regex format".format(device_series_name), "INFO") 1265s else: 1265s device_series_name = ".*" + device_series_name + ".*" 1265s 1265s if self.dnac_version <= self.version_2_3_5_3: 1265s site_params = { 1265s "site_id": site_id, 1265s "device_family": device_family 1265s } 1265s 1265s try: 1265s response = self.dnac._exec( 1265s family="sites", 1265s function='get_membership', 1265s op_modifies=True, 1265s params=site_params, 1265s ) 1265s 1265s except Exception as e: 1265s self.log("Unable to fetch the device(s) associated to the site '{0}' due to '{1}'".format(site_name, str(e)), "WARNING") 1265s return device_uuid_list 1265s 1265s self.log("Received API response from 'get_membership': {0}".format(str(response)), "DEBUG") 1265s response = response.get("device") 1265s 1265s > for item in response: 1265s E TypeError: 'NoneType' object is not iterable 1265s 1265s plugins/modules/swim_workflow_manager.py:935: TypeError 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 1265s ________ TestDnacSiteWorkflow.test_Site_workflow_manager_update_a_site _________ 1265s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_Site_workflow_manager_update_a_site(self): 1265s """ 1265s Test case for site workflow manager when creating a site. 1265s 1265s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_version="2.3.7.6", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_site 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_site_workflow_manager.py:611: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:136: in changed 1265s self.assertEqual(result["changed"], changed, result) 1265s E AssertionError: False != True : {'changed': False, 'diff': [], 'response': [], 'warnings': []} 1265s ------------------------------ Captured log call ------------------------------- 1265s ERROR logger:dnac.py:294 Site: get_diff_merged: 1783: Yaml is not available for bulk: list indices must be integers or slices, not str 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_create_1_role _ 1265s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_create_1_role(self): 1265s """ 1265s Test case for user role workflow manager when creating a role. 1265s 1265s This test case checks the behavior of the role workflow when creating a new role in the specified Cisco Calyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_1_role 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:510: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/user_role_workflow_manager.py:3458: in main 1265s ccc_user_role.check_return_status() 1265s plugins/module_utils/dnac.py:307: in check_return_status 1265s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def fail_json(*args, **kwargs): 1265s kwargs["failed"] = True 1265s > raise AnsibleFailJson(kwargs) 1265s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s 1265s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1265s _ TestswimWorkflowManager.test_swim_workflow_manager_playbook_swim_image_golden_tag _ 1265s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_swim_workflow_manager_playbook_swim_image_golden_tag(self): 1265s """ 1265s Test case for swim workflow manager when givingswim image golden already tagged 1265s This test case checks the behavior of the swim workflow when giving swim image golden tagged 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_version='2.3.5.3', 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config_verify=True, 1265s config=self.playbook_swim_image_golden_tag 1265s ) 1265s ) 1265s result = self.execute_module(changed=True, failed=False) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "Tagging image cat9k_iosxe.17.12.02.SPA.bin golden for site Global for family Cisco Catalyst 9300 Switch for device deviceTag ALL successful." 1265s ) 1265s E AssertionError: 'Tagging image cat9k_iosxe.17.12.02.SPA.bin golden for s[76 chars]ful.' != 'Tagging image cat9k_iosxe.17.12.02.SPA.bin golden for[85 chars]ful.' 1265s E - Tagging image cat9k_iosxe.17.12.02.SPA.bin golden for site Global for family Cisco Catalyst 9300 Switch for device role ALL successful. 1265s E ? ^^^ 1265s E + Tagging image cat9k_iosxe.17.12.02.SPA.bin golden for site Global for family Cisco Catalyst 9300 Switch for device deviceTag ALL successful. 1265s E ? + + + + ^ +++++++ 1265s 1265s tests/unit/modules/dnac/test_swim_workflow_manager.py:557: AssertionError 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 1265s 1265s WARNING logger:dnac.py:294 Swim: get_have: 1154: Site Name not given by user. Using global site. 1265s 1265s WARNING logger:dnac.py:294 Swim: get_have: 1154: Site Name not given by user. Using global site. 1265s _ TestswimWorkflowManager.test_swim_workflow_manager_playbook_untag_image_as_golden_and_load_on_device _ 1265s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_swim_workflow_manager_playbook_untag_image_as_golden_and_load_on_device(self): 1265s """ 1265s Test case for swim workflow manager when giving untag image as golden and load on device 1265s This test case checks the behavior of the swim workflow when giving untag image as golden and load on device 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_version='2.3.5.3', 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_untag_image_as_golden_and_load_on_device 1265s ) 1265s ) 1265s result = self.execute_module(changed=True, failed=False) 1265s print(result) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "Untagging of image cat9k_iosxe.17.12.02.SPA.bin for site LTTS for family Cisco \ 1265s Catalyst 9000 UADP 8 Port Virtual Switch for device deviceTag ALL successful." 1265s ) 1265s E AssertionError: 'Un-Tagging image cat9k_iosxe.17.12.02.SPA.b[116 chars]ful.' != 'Untagging of image cat9k_iosxe.17.12.02.SP[112 chars]ful.' 1265s E - Un-Tagging image cat9k_iosxe.17.12.02.SPA.bin golden for site Global/LTTS for family Cisco Catalyst 9000 UADP 8 Port Virtual Switch for device role ALL successful. 1265s E ? ^^ ------- ^^^^^^^ ^^^ 1265s E + Untagging of image cat9k_iosxe.17.12.02.SPA.bin for site LTTS for family Cisco Catalyst 9000 UADP 8 Port Virtual Switch for device deviceTag ALL successful. 1265s E ? ^ +++ + ^ + ^ +++++++ 1265s 1265s tests/unit/modules/dnac/test_swim_workflow_manager.py:442: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'changed': True, 'diff': [], 'response': 'Un-Tagging image cat9k_iosxe.17.12.02.SPA.bin golden for site Global/LTTS for family Cisco Catalyst 9000 UADP 8 Port Virtual Switch for device role ALL successful.', 'warnings': [], 'msg': 'Un-Tagging image cat9k_iosxe.17.12.02.SPA.bin golden for site Global/LTTS for family Cisco Catalyst 9000 UADP 8 Port Virtual Switch for device role ALL successful.'} 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_create_user __ 1265s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_create_user(self): 1265s """ 1265s Test case for user role workflow manager when creating a user. 1265s 1265s This test case checks the behavior of the user workflow when creating a new user in the specified Cisco Catalyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_user 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:228: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/user_role_workflow_manager.py:3458: in main 1265s ccc_user_role.check_return_status() 1265s plugins/module_utils/dnac.py:307: in check_return_status 1265s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def fail_json(*args, **kwargs): 1265s kwargs["failed"] = True 1265s > raise AnsibleFailJson(kwargs) 1265s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s 1265s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_delete_non_existing_role _ 1265s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_delete_non_existing_role(self): 1265s """ 1265s Test case for user role workflow manager when deleting a non existing role. 1265s 1265s This test case checks the behavior of the role workflow when deleting a non existing role in the specified Cisco Calyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="deleted", 1265s config=self.playbook_config_role 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "Please provide a valid role_name for role deletion" 1265s ) 1265s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'Please provide a valid role_name for role deletion' 1265s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 1265s E + Please provide a valid role_name for role deletion 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:604: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_delete_non_existing_user _ 1265s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_delete_non_existing_user(self): 1265s """ 1265s Test case for user role workflow manager when deleting a non existing user. 1265s 1265s This test case checks the behavior of the user workflow when deleting a non existing user in the specified Cisco Catalyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="deleted", 1265s config=self.playbook_config_user 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get("msg"), 1265s "Please provide a valid 'username' or 'email' for user deletion" 1265s ) 1265s E AssertionError: "The specified version '2.2.3.3' does not [315 chars]les." != "Please provide a valid 'username' or 'ema[17 chars]tion" 1265s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 1265s E + Please provide a valid 'username' or 'email' for user deletion 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:322: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_create_role __ 1265s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_create_role(self): 1265s """ 1265s Test case for user role workflow manager when creating a role. 1265s 1265s This test case checks the behavior of the role workflow when creating a new role in the specified Cisco Calyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_role 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:487: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/user_role_workflow_manager.py:3458: in main 1265s ccc_user_role.check_return_status() 1265s plugins/module_utils/dnac.py:307: in check_return_status 1265s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def fail_json(*args, **kwargs): 1265s kwargs["failed"] = True 1265s > raise AnsibleFailJson(kwargs) 1265s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s 1265s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1265s _ TestswimWorkflowManager.test_swim_workflow_manager_playbook_image_distribution_failed _ 1265s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s def get_device_ip_from_id(self, device_id): 1265s """ 1265s Retrieve the management IP address of a device from Cisco Catalyst Center using its ID. 1265s Parameters: 1265s - self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1265s - device_id (str): The unique identifier of the device in Cisco Catalyst Center. 1265s Returns: 1265s str: The management IP address of the specified device. 1265s Raises: 1265s Exception: If there is an error while retrieving the response from Cisco Catalyst Center. 1265s Description: 1265s This method queries Cisco Catalyst Center for the device details based on its unique identifier (ID). 1265s It uses the 'get_device_list' function in the 'devices' family, extracts the management IP address 1265s from the response, and returns it. If any error occurs during the process, an exception is raised 1265s with an appropriate error message logged. 1265s """ 1265s 1265s try: 1265s response = self.dnac._exec( 1265s family="devices", 1265s function='get_device_list', 1265s op_modifies=True, 1265s params={"id": device_id} 1265s ) 1265s self.log("Received API response from 'get_device_list': {0}".format(str(response)), "DEBUG") 1265s > response = response.get('response')[0] 1265s E KeyError: 0 1265s 1265s plugins/modules/swim_workflow_manager.py:1746: KeyError 1265s 1265s During handling of the above exception, another exception occurred: 1265s 1265s self = 1265s 1265s def test_swim_workflow_manager_playbook_image_distribution_failed(self): 1265s """ 1265s Test case for swim workflow manager when giving image distribution failed 1265s This test case checks the behavior of the swim workflow when giving image distribution failed 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_version='2.3.5.3', 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config_verify=True, 1265s config=self.playbook_image_distribution_failed 1265s ) 1265s ) 1265s > result = self.execute_module(changed=False, failed=True) 1265s 1265s tests/unit/modules/dnac/test_swim_workflow_manager.py:533: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:107: in execute_module 1265s result = self.failed() 1265s tests/unit/modules/dnac/dnac_module.py:125: in failed 1265s self.module.main() 1265s plugins/modules/swim_workflow_manager.py:2415: in main 1265s ccc_swims.get_diff_state_apply[state](config).check_return_status() 1265s plugins/modules/swim_workflow_manager.py:2110: in get_diff_merged 1265s self.get_diff_distribution().check_return_status() 1265s plugins/modules/swim_workflow_manager.py:1834: in get_diff_distribution 1265s device_ip = self.get_device_ip_from_id(distribution_device_id) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def get_device_ip_from_id(self, device_id): 1265s """ 1265s Retrieve the management IP address of a device from Cisco Catalyst Center using its ID. 1265s Parameters: 1265s - self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1265s - device_id (str): The unique identifier of the device in Cisco Catalyst Center. 1265s Returns: 1265s str: The management IP address of the specified device. 1265s Raises: 1265s Exception: If there is an error while retrieving the response from Cisco Catalyst Center. 1265s Description: 1265s This method queries Cisco Catalyst Center for the device details based on its unique identifier (ID). 1265s It uses the 'get_device_list' function in the 'devices' family, extracts the management IP address 1265s from the response, and returns it. If any error occurs during the process, an exception is raised 1265s with an appropriate error message logged. 1265s """ 1265s 1265s try: 1265s response = self.dnac._exec( 1265s family="devices", 1265s function='get_device_list', 1265s op_modifies=True, 1265s params={"id": device_id} 1265s ) 1265s self.log("Received API response from 'get_device_list': {0}".format(str(response)), "DEBUG") 1265s response = response.get('response')[0] 1265s device_ip = response.get("managementIpAddress") 1265s 1265s return device_ip 1265s except Exception as e: 1265s error_message = "Error occurred while getting the response of device from Cisco Catalyst Center: {0}".format(str(e)) 1265s self.log(error_message, "ERROR") 1265s > raise Exception(error_message) 1265s E Exception: Error occurred while getting the response of device from Cisco Catalyst Center: 0 1265s 1265s plugins/modules/swim_workflow_manager.py:1753: Exception 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 1265s 1265s ERROR logger:dnac.py:294 Swim: get_device_uuids: 1058: An exception occured while fetching the device uuids from Cisco Catalyst Center: string indices must be integers, not 'str' 1265s 1265s ERROR logger:dnac.py:294 Swim: get_device_ip_from_id: 1752: Error occurred while getting the response of device from Cisco Catalyst Center: 0 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_invalid_param_role_invalid_permission _ 1265s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_invalid_param_role_invalid_permission(self): 1265s """ 1265s Test case for user workflow manager when invalid role param given. 1265s 1265s This test case checks the behavior of the user workflow when invalid role param given in the specified Cisco Catalyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_invalid_param_role_invalid_permission 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get("msg"), 1265s "Invalid permission aaa for assurance resource overall" 1265s ) 1265s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'Invalid permission aaa for assurance resource overall' 1265s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 1265s E + Invalid permission aaa for assurance resource overall 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:743: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s __ TestswimWorkflowManager.test_swim_workflow_manager_playbook_site_not_exist __ 1265s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_swim_workflow_manager_playbook_site_not_exist(self): 1265s """ 1265s Test case for swim workflow manager when giving site not exist 1265s This test case checks the behavior of the swim workflow when giving site not exist 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_version='2.3.5.3', 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config_verify=True, 1265s config=self.playbook_site_not_exist 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "An exception occurred: Site 'Global/ltts/flor1' does not exist in the Cisco Catalyst Center" 1265s ) 1265s E AssertionError: "An e[26 chars]lobal/ltts/flor1' does not exist in the Cisco Catalyst Center." != "An e[26 chars]lobal/ltts/flor1' does not exist in the Cisco Catalyst Center" 1265s E - An exception occurred: Site 'Global/ltts/flor1' does not exist in the Cisco Catalyst Center. 1265s E ? - 1265s E + An exception occurred: Site 'Global/ltts/flor1' does not exist in the Cisco Catalyst Center 1265s 1265s tests/unit/modules/dnac/test_swim_workflow_manager.py:488: AssertionError 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 1265s 1265s ERROR logger:dnac.py:294 Swim: set_operation_result: 1780: An error occurred while executing GET API call to Function: 'get_site' from Family: 'sites'. Parameters: {'name': 'Global/ltts/flor1'}. Exception: . 1265s 1265s ERROR logger:dnac.py:294 Swim: site_exists: 671: An exception occurred: Site 'Global/ltts/flor1' does not exist in the Cisco Catalyst Center. 1265s _ TestswimWorkflowManager.test_swim_workflow_playbook_image_distribution_successfull_v2_3_7_6 _ 1265s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s def site_exists(self, site_name): 1265s """ 1265s Parameters: 1265s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1265s Returns: 1265s tuple: A tuple containing two values: 1265s - site_exists (bool): A boolean indicating whether the site exists (True) or not (False). 1265s - site_id (str or None): The ID of the site if it exists, or None if the site is not found. 1265s Description: 1265s This method checks the existence of a site in the Catalyst Center. If the site is found,it sets 'site_exists' to True, 1265s retrieves the site's ID, and returns both values in a tuple. If the site does not exist, 'site_exists' is set 1265s to False, and 'site_id' is None. If an exception occurs during the site lookup, an exception is raised. 1265s """ 1265s 1265s site_exists = False 1265s site_id = None 1265s response = None 1265s 1265s try: 1265s response = self.get_site(site_name) 1265s if response is None: 1265s > raise ValueError 1265s E ValueError 1265s 1265s plugins/modules/swim_workflow_manager.py:662: ValueError 1265s 1265s During handling of the above exception, another exception occurred: 1265s 1265s self = 1265s 1265s def test_swim_workflow_playbook_image_distribution_successfull_v2_3_7_6(self): 1265s """ 1265s Test case for SWIM workflow manager image distribution with DNAC version 2.3.7.6. 1265s This test case verifies the successful distribution of an image to all specified devices in the Cisco Catalyst Center for DNAC version 2.3.7.6. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_version='2.3.7.6', 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config_verify=True, 1265s config=self.playbook_image_distribution_successfull_v2_3_7_6 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_swim_workflow_manager.py:418: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/swim_workflow_manager.py:2417: in main 1265s ccc_swims.verify_diff_state_apply[state](config).check_return_status() 1265s plugins/modules/swim_workflow_manager.py:2314: in verify_diff_merged 1265s self.get_have() 1265s plugins/modules/swim_workflow_manager.py:1167: in get_have 1265s (site_exists, site_id) = self.site_exists(site_name) 1265s plugins/modules/swim_workflow_manager.py:672: in site_exists 1265s self.check_return_status() 1265s plugins/module_utils/dnac.py:307: in check_return_status 1265s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def fail_json(*args, **kwargs): 1265s kwargs["failed"] = True 1265s > raise AnsibleFailJson(kwargs) 1265s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "An exception occurred: Site 'Global/LTTS/FLOOR1' does not exist in the Cisco Catalyst Center.", 'response': "An exception occurred: Site 'Global/LTTS/FLOOR1' does not exist in the Cisco Catalyst Center.", 'failed': True} 1265s 1265s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1265s ------------------------------ Captured log call ------------------------------- 1265s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 1265s 1265s WARNING logger:dnac.py:294 Swim: get_diff_distribution: 1892: The SWIM image distribution task could not proceed because no eligible devices were found 1265s 1265s WARNING logger:dnac.py:294 Swim: execute_get_request: 1866: Empty 'response' key in the API response from GET API call to Function: 'get_sites' from Family: 'site_design'. 1265s 1265s ERROR logger:dnac.py:294 Swim: site_exists: 671: An exception occurred: Site 'Global/LTTS/FLOOR1' does not exist in the Cisco Catalyst Center. 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_role_invalid_param_rolename_not_correct_formate _ 1265s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_role_invalid_param_rolename_not_correct_formate(self): 1265s """ 1265s Test case for user workflow manager when invalid role param given. 1265s 1265s This test case checks the behavior of the user workflow when invalid role param given in the specified Cisco Catalyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_invalid_param_rolename_not_correct_formate 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get("msg"), 1265s "Invalid parameters in playbook config: role_name: 'Test_Role_1 ' must only contain letters, numbers, underscores \ 1265s and hyphens and should not contain spaces or other special characters." 1265s ) 1265s E AssertionError: "The specified version '2.2.3.3' does not [315 chars]les." != "Invalid parameters in playbook config: ro[138 chars]ers." 1265s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 1265s E + Invalid parameters in playbook config: role_name: 'Test_Role_1 ' must only contain letters, numbers, underscores and hyphens and should not contain spaces or other special characters. 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:696: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_invalid_param_role_update_invalid_permission _ 1265s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_invalid_param_role_update_invalid_permission(self): 1265s """ 1265s Test case for user workflow manager when invalid role param given. 1265s 1265s This test case checks the behavior of the user workflow when invalid role param given in the specified Cisco Catalyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_invalid_param_role_invalid_permission 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get("msg"), 1265s "Invalid permission aaa for assurance resource overall" 1265s ) 1265s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'Invalid permission aaa for assurance resource overall' 1265s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 1265s E + Invalid permission aaa for assurance resource overall 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:766: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_invalid_param_type_list_missing _ 1265s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_invalid_param_type_list_missing(self): 1265s """ 1265s Test case for user workflow manager when invalid role param given. 1265s 1265s This test case checks the behavior of the user workflow when invalid role param given in the specified Cisco Catalyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_invalid_param_type_list_missing 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get("msg"), 1265s "Configuration is not available in the playbook for validation or user/role details are not type list" 1265s ) 1265s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'Configuration is not available in the pl[56 chars]list' 1265s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 1265s E + Configuration is not available in the playbook for validation or user/role details are not type list 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:720: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_role_invalid_param_rolename_not_present _ 1265s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_role_invalid_param_rolename_not_present(self): 1265s """ 1265s Test case for user role workflow manager when invalid role param given. 1265s 1265s This test case checks the behavior of the role workflow when invalid role param given in the specified Cisco Calyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_invalid_param_rolename_not_present 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "Configuration params like 'username' or 'email' or 'role_name' is not available in the playbook" 1265s ) 1265s E AssertionError: "The specified version '2.2.3.3' does not [315 chars]les." != "Configuration params like 'username' or '[50 chars]book" 1265s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 1265s E + Configuration params like 'username' or 'email' or 'role_name' is not available in the playbook 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:627: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_create_default_role _ 1265s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_create_default_role(self): 1265s """ 1265s Test case for user role workflow manager when update is not needed for a role . 1265s 1265s This test case checks the behavior of the role workflow when update is not needed for a role in the specified Cisco Calyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_for_creating_default_role 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:787: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/user_role_workflow_manager.py:3458: in main 1265s ccc_user_role.check_return_status() 1265s plugins/module_utils/dnac.py:307: in check_return_status 1265s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def fail_json(*args, **kwargs): 1265s kwargs["failed"] = True 1265s > raise AnsibleFailJson(kwargs) 1265s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s 1265s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_invalid_param_not_type_list _ 1265s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_user_invalid_param_not_type_list(self): 1265s """ 1265s Test case for user role workflow manager when invalid user param given. 1265s 1265s This test case checks the behavior of the role workflow when invalid user param given in the specified Cisco Calyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_invalid_param_user_rolelist_not_type_list 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "Invalid parameter(s) found in playbook: Super-Admin-Role : is not a valid list" 1265s ) 1265s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'Invalid parameter(s) found in playbook: [34 chars]list' 1265s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 1265s E + Invalid parameter(s) found in playbook: Super-Admin-Role : is not a valid list 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:420: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_role_param_with_all_permision_deny _ 1265s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_role_param_with_all_permision_deny(self): 1265s """ 1265s Test case for user role workflow manager when invalid role param given. 1265s 1265s This test case checks the behavior of the role workflow when invalid role param given in the specified Cisco Calyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_invalid_param_with_all_permision_deny 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "An error occurred while creating the role without access-level parameters and permissions" 1265s ) 1265s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'An error occurred while creating the rol[45 chars]ions' 1265s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 1265s E + An error occurred while creating the role without access-level parameters and permissions 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:673: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_delete_existing_user _ 1265s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_delete_existing_user(self): 1265s """ 1265s Test case for user role workflow manager when deleting a user. 1265s 1265s This test case checks the behavior of the user workflow when deleting a user in the specified Cisco Catalyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="deleted", 1265s config=self.playbook_config_delete_existing_user 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:297: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/user_role_workflow_manager.py:3458: in main 1265s ccc_user_role.check_return_status() 1265s plugins/module_utils/dnac.py:307: in check_return_status 1265s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def fail_json(*args, **kwargs): 1265s kwargs["failed"] = True 1265s > raise AnsibleFailJson(kwargs) 1265s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s 1265s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_invalid_param_not_correct_formate _ 1265s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_user_invalid_param_not_correct_formate(self): 1265s """ 1265s Test case for user workflow manager when invalid user param given. 1265s 1265s This test case checks the behavior of the user workflow when invalid user param given in the specified Cisco Catalyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_invalid_param_username_not_correct_formate 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get("msg"), 1265s "Invalid parameters in playbook config: first_name: 'ajith ' must only contain letters, \ 1265s numbers, underscores and hyphens and should not contain spaces or other \ 1265s special characters., last_name: 'andrew ' must only contain letters, numbers, underscores \ 1265s and hyphens and should not contain spaces or other special characters., email: Invalid email format for 'email': ajith.andrewexample.com, \ 1265s password: 'Password' does not meet complexity requirements for password: \ 1265s Ajith123, username: 'ajithandrewj ' must only contain letters, numbers, underscores \ 1265s and hyphens and should not contain spaces or other special characters." 1265s ) 1265s E AssertionError: "The specified version '2.2.3.3' does not [315 chars]les." != "Invalid parameters in playbook config: fi[569 chars]ers." 1265s E Diff is 981 characters long. Set self.maxDiff to None to see it. 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:391: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_delete_existing_role _ 1265s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_delete_existing_role(self): 1265s """ 1265s Test case for user role workflow manager when deleting a role. 1265s 1265s This test case checks the behavior of the role workflow when deleting a role in the specified Cisco Calyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="deleted", 1265s config=self.playbook_config_role 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:579: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/user_role_workflow_manager.py:3458: in main 1265s ccc_user_role.check_return_status() 1265s plugins/module_utils/dnac.py:307: in check_return_status 1265s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def fail_json(*args, **kwargs): 1265s kwargs["failed"] = True 1265s > raise AnsibleFailJson(kwargs) 1265s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s 1265s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_role_invalid_param_not_type_list _ 1265s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_role_invalid_param_not_type_list(self): 1265s """ 1265s Test case for user role workflow manager when invalid role param given. 1265s 1265s This test case checks the behavior of the role workflow when invalid role param given in the specified Cisco Calyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_invalid_param_role_not_type_list 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "Invalid parameter(s) found in playbook: {'overall': 'read'} : is not a valid list" 1265s ) 1265s E AssertionError: "The specified version '2.2.3.3' does not [315 chars]les." != "Invalid parameter(s) found in playbook: {[36 chars]list" 1265s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 1265s E + Invalid parameter(s) found in playbook: {'overall': 'read'} : is not a valid list 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:650: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_invalid_username_email_not_present_param _ 1265s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_user_invalid_username_email_not_present_param(self): 1265s """ 1265s Test case for user workflow manager when invalid user param given. 1265s 1265s This test case checks the behavior of the user workflow when invalid user param given in the specified Cisco Catalyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_invalid_param_username_email_not_present 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get("msg"), 1265s "Configuration params like 'username' or 'email' or 'role_name' is not available in the playbook" 1265s ) 1265s E AssertionError: "The specified version '2.2.3.3' does not [315 chars]les." != "Configuration params like 'username' or '[50 chars]book" 1265s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 1265s E + Configuration params like 'username' or 'email' or 'role_name' is not available in the playbook 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:368: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_invalid_param_update_rolelist_not_found _ 1265s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_user_invalid_param_update_rolelist_not_found(self): 1265s """ 1265s Test case for user role workflow manager when invalid user param given. 1265s 1265s This test case checks the behavior of the role workflow when invalid user param given in the specified Cisco Calyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_user_invalid_param_rolelist_not_found 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "The role name in the user details role_list is not present in the Cisco Catalyst Center, Please provide a valid role name" 1265s ) 1265s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'The role name in the user details role_l[77 chars]name' 1265s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 1265s E + The role name in the user details role_list is not present in the Cisco Catalyst Center, Please provide a valid role name 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:466: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_invalid_mandatory_field_not_present_param _ 1265s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_user_invalid_mandatory_field_not_present_param(self): 1265s """ 1265s Test case for user workflow manager when invalid user param given. 1265s 1265s This test case checks the behavior of the user workflow when invalid user param given in the specified Cisco Catalyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_invalid_param_mandatory_field_not_present 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get("msg"), 1265s "Mandatory field not present: An error occurred while creating the user" 1265s ) 1265s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'Mandatory field not present: An error oc[26 chars]user' 1265s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 1265s E + Mandatory field not present: An error occurred while creating the user 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:345: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_role_update_not_needed _ 1265s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_role_update_not_needed(self): 1265s """ 1265s Test case for user role workflow manager when update is not needed for a role . 1265s 1265s This test case checks the behavior of the role workflow when update is not needed for a role in the specified Cisco Calyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_role 1265s ) 1265s ) 1265s > result = self.execute_module(changed=False, failed=False) 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:556: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/user_role_workflow_manager.py:3458: in main 1265s ccc_user_role.check_return_status() 1265s plugins/module_utils/dnac.py:307: in check_return_status 1265s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def fail_json(*args, **kwargs): 1265s kwargs["failed"] = True 1265s > raise AnsibleFailJson(kwargs) 1265s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s 1265s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_invalid_param_rolelist_not_found _ 1265s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_user_invalid_param_rolelist_not_found(self): 1265s """ 1265s Test case for user role workflow manager when invalid user param given. 1265s 1265s This test case checks the behavior of the role workflow when invalid user param given in the specified Cisco Calyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_user_invalid_param_rolelist_not_found 1265s ) 1265s ) 1265s result = self.execute_module(changed=False, failed=True) 1265s print(result) 1265s > self.assertEqual( 1265s result.get('msg'), 1265s "The role name in the user details role_list is not present in the Cisco Catalyst Center, Please provide a valid role name" 1265s ) 1265s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'The role name in the user details role_l[77 chars]name' 1265s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 1265s E + The role name in the user details role_list is not present in the Cisco Catalyst Center, Please provide a valid role name 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:443: AssertionError 1265s ----------------------------- Captured stdout call ----------------------------- 1265s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_role_update_needed _ 1265s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_role_update_needed(self): 1265s """ 1265s Test case for user role workflow manager when update for a role is needed. 1265s 1265s This test case checks the behavior of the role workflow when updating a existing role in the specified Cisco Calyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_role 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:533: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/user_role_workflow_manager.py:3458: in main 1265s ccc_user_role.check_return_status() 1265s plugins/module_utils/dnac.py:307: in check_return_status 1265s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def fail_json(*args, **kwargs): 1265s kwargs["failed"] = True 1265s > raise AnsibleFailJson(kwargs) 1265s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s 1265s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_update_needed _ 1265s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_user_update_needed(self): 1265s """ 1265s Test case for user role workflow manager when updating a user. 1265s 1265s This test case checks the behavior of the user workflow when updating a user in the specified Cisco Catalyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_user 1265s ) 1265s ) 1265s > result = self.execute_module(changed=True, failed=False) 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:251: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/user_role_workflow_manager.py:3458: in main 1265s ccc_user_role.check_return_status() 1265s plugins/module_utils/dnac.py:307: in check_return_status 1265s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def fail_json(*args, **kwargs): 1265s kwargs["failed"] = True 1265s > raise AnsibleFailJson(kwargs) 1265s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s 1265s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1265s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_update_not_needed _ 1265s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1265s 1265s self = 1265s 1265s def test_user_role_workflow_manager_user_update_not_needed(self): 1265s """ 1265s Test case for user role workflow manager when user update not needed. 1265s 1265s This test case checks the behavior of the user workflow when user update not needed in the specified Cisco Catalyst Center. 1265s """ 1265s set_module_args( 1265s dict( 1265s dnac_host="1.1.1.1", 1265s dnac_username="dummy", 1265s dnac_password="dummy", 1265s dnac_log=True, 1265s state="merged", 1265s config=self.playbook_config_user 1265s ) 1265s ) 1265s > result = self.execute_module(changed=False, failed=False) 1265s 1265s tests/unit/modules/dnac/test_user_role_workflow_manager.py:274: 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1265s result = self.changed(changed) 1265s tests/unit/modules/dnac/dnac_module.py:133: in changed 1265s self.module.main() 1265s plugins/modules/user_role_workflow_manager.py:3458: in main 1265s ccc_user_role.check_return_status() 1265s plugins/module_utils/dnac.py:307: in check_return_status 1265s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1265s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1265s 1265s def fail_json(*args, **kwargs): 1265s kwargs["failed"] = True 1265s > raise AnsibleFailJson(kwargs) 1265s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 1265s 1265s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1265s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/dnac/tests/output/junit/python3.13-controller-units.xml - 1265s =========================== short test summary info ============================ 1265s ERROR tests/unit/modules/dnac/test_discovery_intent.py::TestDnacDiscoveryIntent 1265s ERROR tests/unit/modules/dnac/test_discovery_intent.py::TestDnacDiscoveryIntent 1265s ERROR tests/unit/modules/dnac/test_discovery_intent.py::TestDnacDiscoveryIntent 1265s ERROR tests/unit/modules/dnac/test_discovery_intent.py::TestDnacDiscoveryIntent 1265s ERROR tests/unit/modules/dnac/test_pnp_intent.py::TestDnacPnPIntent - TypeErr... 1265s ERROR tests/unit/modules/dnac/test_pnp_intent.py::TestDnacPnPIntent - TypeErr... 1265s ERROR tests/unit/modules/dnac/test_site_intent.py::TestDnacSiteIntent - TypeE... 1265s ERROR tests/unit/modules/dnac/test_site_intent.py::TestDnacSiteIntent - TypeE... 1265s ERROR tests/unit/modules/dnac/test_pnp_intent.py::TestDnacPnPIntent - TypeErr... 1265s ERROR tests/unit/modules/dnac/test_pnp_intent.py::TestDnacPnPIntent - TypeErr... 1265s ERROR tests/unit/modules/dnac/test_discovery_intent.py::TestDnacDiscoveryIntent 1265s ERROR tests/unit/modules/dnac/test_swim_intent.py::TestDnacSwimIntent - TypeE... 1265s ERROR tests/unit/modules/dnac/test_swim_intent.py::TestDnacSwimIntent - TypeE... 1265s ERROR tests/unit/modules/dnac/test_site_intent.py::TestDnacSiteIntent - TypeE... 1265s ERROR tests/unit/modules/dnac/test_discovery_intent.py::TestDnacDiscoveryIntent 1265s ERROR tests/unit/modules/dnac/test_site_intent.py::TestDnacSiteIntent - TypeE... 1265s ERROR tests/unit/modules/dnac/test_swim_intent.py::TestDnacSwimIntent - TypeE... 1265s ERROR tests/unit/modules/dnac/test_template_intent.py::TestDnacTemplateIntent 1265s ERROR tests/unit/modules/dnac/test_discovery_intent.py::TestDnacDiscoveryIntent 1265s ERROR tests/unit/modules/dnac/test_template_intent.py::TestDnacTemplateIntent 1265s ERROR tests/unit/modules/dnac/test_swim_intent.py::TestDnacSwimIntent - TypeE... 1265s ERROR tests/unit/modules/dnac/test_pnp_intent.py::TestDnacPnPIntent - TypeErr... 1265s ERROR tests/unit/modules/dnac/test_template_intent.py::TestDnacTemplateIntent 1265s ERROR tests/unit/modules/dnac/test_pnp_intent.py::TestDnacPnPIntent - TypeErr... 1265s ERROR tests/unit/modules/dnac/test_template_intent.py::TestDnacTemplateIntent 1265s ERROR tests/unit/modules/dnac/test_site_intent.py::TestDnacSiteIntent - TypeE... 1265s ERROR tests/unit/modules/dnac/test_site_intent.py::TestDnacSiteIntent - TypeE... 1265s ERROR tests/unit/modules/dnac/test_pnp_intent.py::TestDnacPnPIntent - TypeErr... 1265s ERROR tests/unit/modules/dnac/test_swim_intent.py::TestDnacSwimIntent - TypeE... 1265s ERROR tests/unit/modules/dnac/test_swim_intent.py::TestDnacSwimIntent - TypeE... 1265s ERROR tests/unit/modules/dnac/test_site_intent.py::TestDnacSiteIntent - TypeE... 1265s ERROR tests/unit/modules/dnac/test_template_intent.py::TestDnacTemplateIntent 1265s ERROR tests/unit/modules/dnac/test_template_intent.py::TestDnacTemplateIntent 1265s ERROR tests/unit/modules/dnac/test_swim_intent.py::TestDnacSwimIntent - TypeE... 1265s ERROR tests/unit/modules/dnac/test_discovery_intent.py::TestDnacDiscoveryIntent 1265s ERROR tests/unit/modules/dnac/test_template_intent.py::TestDnacTemplateIntent 1265s ERROR tests/unit/modules/dnac/test_pnp_intent.py::TestDnacPnPIntent - TypeErr... 1265s ERROR tests/unit/modules/dnac/test_site_intent.py::TestDnacSiteIntent - TypeE... 1265s ERROR tests/unit/modules/dnac/test_swim_intent.py::TestDnacSwimIntent - TypeE... 1265s ERROR tests/unit/modules/dnac/test_template_intent.py::TestDnacTemplateIntent 1265s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_already_sync_cred 1265s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_null_sync_status 1265s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_update_mgmt_ip 1265s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_deletion 1265s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_add_udf 1265s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_accesspoint_workflow_manager_some_error_data_update_accesspoint 1265s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_invalid_site 1265s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_prov_device_2353 1265s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_del_provisioned_device_2353 1265s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_invalid_site_response 1265s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_accesspoint_workflow_manager_negative_config_input 1265s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_update_verify 1265s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_invalid_site_response_2 1265s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_categories_iplist 1265s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_provision_device 1265s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist_failure_2 1265s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_apply_sync 1265s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_delete_a_device 1265s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_provision_failed_for_site 1265s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist 1265s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_accesspoint_workflow_manager_task_error_update_accesspoint 1265s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_add_existing_devices 1265s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist_failure_3 1265s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site_failure_1 1265s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_invalid_get_site_device 1265s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist_failure_1 1265s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_invalid_site_exists 1265s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_delete_device_udf 1265s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_accesspoint_workflow_manager_provision_device 1265s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist_failure_4 1265s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site_failure_2 1265s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_delete_provisioned_device 1265s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site_failure_3 1265s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_sync_device_config_site 1265s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_assign_cred_1 1265s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist_failure_5 1265s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_global_pool_Updation_not_req 1265s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_invalid_wlc_device 1265s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_scale_run_compliance 1265s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site_failure_4 1265s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_telemetry_get 1265s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_banner_get 1265s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_global_pool_creation 1265s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_timezone_get 1265s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site_failure_5 1265s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_assign_cred_2 1265s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_dhcp_gett 1265s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site_failure_6 1265s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_global_pool_deletion 1265s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_sync_device_config_iplist 1265s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_dns_get 1265s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_creation 1265s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist_site 1265s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_aaa_get 1265s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_ntp_get 1265s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_sync_device_config_iplist_failure_1 1265s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site 1265s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_accesspoint_workflow_manager_provision_old_version 1265s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_update_aaa 1265s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_update_dns 1265s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_sync_device_config_iplist_failure_2 1265s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_mandatory_aaa_param 1265s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_network_not_need_update 1265s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_update_ntp 1265s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_site_not_exist 1265s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_update_banner 1265s FAILED tests/unit/modules/dnac/test_provision_workflow_manager.py::TestDnacProvisionWorkflow::test_provision_workflow_manager_playbook_assign_wired_device_to_site 1265s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_sync_device_config_iplist_site 1265s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_null_network_params 1265s FAILED tests/unit/modules/dnac/test_pnp_workflow_manager.py::TestDnacPnpWorkflow::test_pnp_workflow_manager_claim_switch 1265s FAILED tests/unit/modules/dnac/test_provision_workflow_manager.py::TestDnacProvisionWorkflow::test_provision_workflow_manager_playbook_del_provision_device 1265s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_not_verified 1265s FAILED tests/unit/modules/dnac/test_provision_workflow_manager.py::TestDnacProvisionWorkflow::test_provision_workflow_manager_playbook_force_provision_device 1265s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_update_telemetry 1265s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_sync_device_config_iplist_site_nr 1265s FAILED tests/unit/modules/dnac/test_rma_workflow_manager.py::TestDnacRmaIntent::test_rma_workflow_manager_mark_device_for_replacement_exception 1265s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_reserve_pool_creation 1265s FAILED tests/unit/modules/dnac/test_provision_workflow_manager.py::TestDnacProvisionWorkflow::test_provision_workflow_manager_playbook_provision_device 1265s FAILED tests/unit/modules/dnac/test_rma_workflow_manager.py::TestDnacRmaIntent::test_rma_workflow_manager_deploy_workflow_failure_unmark_failure 1265s FAILED tests/unit/modules/dnac/test_provision_workflow_manager.py::TestDnacProvisionWorkflow::test_provision_workflow_manager_playbook_wireless_provision 1265s FAILED tests/unit/modules/dnac/test_rma_workflow_manager.py::TestDnacRmaIntent::test_rma_workflow_manager_mark_device_failure 1265s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_reserve_pool_deletion 1265s FAILED tests/unit/modules/dnac/test_rma_workflow_manager.py::TestDnacRmaIntent::test_rma_workflow_manager_replacement_device_not_found 1265s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_update 1265s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_update_timezone 1265s FAILED tests/unit/modules/dnac/test_rma_workflow_manager.py::TestDnacRmaIntent::test_rma_workflow_manager_deploy_workflow_failure_unmark_success 1265s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_create_bulk_site 1265s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_update_not_needed_site 1265s FAILED tests/unit/modules/dnac/test_rma_workflow_manager.py::TestDnacRmaIntent::test_rma_workflow_manager_deploy_workflow_success 1265s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_delete_a_new_site 1265s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_upload_floor_map 1265s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_create_site 1265s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_activate_image 1265s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_invalid_delete_site 1265s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_invalid_delete_config 1265s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_update_site 1265s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_import_cco_image 1265s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_verify_diff_merged_site 1265s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_create_site_bulk_invalid 1265s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_delete_a_site 1265s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_swim_image_golden_already_tagged 1265s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_import_image_already_exist 1265s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_playbook_image_distribution_successfull 1265s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_update_a_site 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_create_1_role 1265s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_swim_image_golden_tag 1265s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_untag_image_as_golden_and_load_on_device 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_create_user 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_delete_non_existing_role 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_delete_non_existing_user 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_create_role 1265s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_image_distribution_failed 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_invalid_param_role_invalid_permission 1265s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_site_not_exist 1265s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_playbook_image_distribution_successfull_v2_3_7_6 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_role_invalid_param_rolename_not_correct_formate 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_invalid_param_role_update_invalid_permission 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_invalid_param_type_list_missing 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_role_invalid_param_rolename_not_present 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_create_default_role 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_invalid_param_not_type_list 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_role_param_with_all_permision_deny 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_delete_existing_user 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_invalid_param_not_correct_formate 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_delete_existing_role 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_role_invalid_param_not_type_list 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_invalid_username_email_not_present_param 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_invalid_param_update_rolelist_not_found 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_invalid_mandatory_field_not_present_param 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_role_update_not_needed 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_invalid_param_rolelist_not_found 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_role_update_needed 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_update_needed 1265s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_update_not_needed 1265s ================== 134 failed, 33 passed, 40 errors in 7.60s =================== 1265s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/dnac/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/dnac --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/dnac tests/unit/modules/dnac/test_accesspoint_workflow_manager.py tests/unit/modules/dnac/test_device_credential_workflow_manager.py tests/unit/modules/dnac/test_discovery_intent.py tests/unit/modules/dnac/test_inventory_workflow_manager.py tests/unit/modules/dnac/test_network_compliance_workflow_manager.py tests/unit/modules/dnac/test_network_settings_workflow_manager.py tests/unit/modules/dnac/test_pnp_intent.py tests/unit/modules/dnac/test_pnp_workflow_manager.py tests/unit/modules/dnac/test_provision_workflow_manager.py tests/unit/modules/dnac/test_rma_workflow_manager.py tests/unit/modules/dnac/test_site_intent.py tests/unit/modules/dnac/test_site_workflow_manager.py tests/unit/modules/dnac/test_swim_intent.py tests/unit/modules/dnac/test_swim_workflow_manager.py tests/unit/modules/dnac/test_template_intent.py tests/unit/modules/dnac/test_user_role_workflow_manager.py" returned exit status 1. 1265s ## return code is 1 1265s 1265s 1265s 1265s ############################################################ 1265s ############################################################ 1265s #### Running FLAKY tests in ansible_collections/community/dns 1265s ############################################################ 1265s ############################################################ 1265s Unit test modules with Python 3.13 1267s ============================= test session starts ============================== 1267s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1267s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/dns 1267s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1267s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 1267s created: 8/8 workers 1267s 8 workers [0 items] 1267s 1267s 1267s ==================================== ERRORS ==================================== 1267s ____ ERROR collecting tests/unit/plugins/modules/test_hetzner_dns_record.py ____ 1267s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hetzner_dns_record.py'. 1267s Hint: make sure your test modules/packages have valid Python names. 1267s Traceback: 1267s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1267s return _bootstrap._gcd_import(name[level:], package, level) 1267s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1267s assertion_rewriting_hook.exec_module(module) 1267s tests/unit/plugins/modules/test_hetzner_dns_record.py:9: in 1267s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1267s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1267s _ ERROR collecting tests/unit/plugins/modules/test_hetzner_dns_record_info.py __ 1267s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hetzner_dns_record_info.py'. 1267s Hint: make sure your test modules/packages have valid Python names. 1267s Traceback: 1267s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1267s return _bootstrap._gcd_import(name[level:], package, level) 1267s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1267s assertion_rewriting_hook.exec_module(module) 1267s tests/unit/plugins/modules/test_hetzner_dns_record_info.py:9: in 1267s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import patch 1267s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1267s __ ERROR collecting tests/unit/plugins/modules/test_hetzner_dns_record_set.py __ 1267s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hetzner_dns_record_set.py'. 1267s Hint: make sure your test modules/packages have valid Python names. 1267s Traceback: 1267s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1267s return _bootstrap._gcd_import(name[level:], package, level) 1267s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1267s assertion_rewriting_hook.exec_module(module) 1267s tests/unit/plugins/modules/test_hetzner_dns_record_set.py:9: in 1267s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1267s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1267s _ ERROR collecting tests/unit/plugins/modules/test_hetzner_dns_record_set_info.py _ 1267s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hetzner_dns_record_set_info.py'. 1267s Hint: make sure your test modules/packages have valid Python names. 1267s Traceback: 1267s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1267s return _bootstrap._gcd_import(name[level:], package, level) 1267s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1267s assertion_rewriting_hook.exec_module(module) 1267s tests/unit/plugins/modules/test_hetzner_dns_record_set_info.py:9: in 1267s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import patch 1267s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1267s _ ERROR collecting tests/unit/plugins/modules/test_hetzner_dns_record_sets.py __ 1267s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hetzner_dns_record_sets.py'. 1267s Hint: make sure your test modules/packages have valid Python names. 1267s Traceback: 1267s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1267s return _bootstrap._gcd_import(name[level:], package, level) 1267s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1267s assertion_rewriting_hook.exec_module(module) 1267s tests/unit/plugins/modules/test_hetzner_dns_record_sets.py:9: in 1267s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1267s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1267s __ ERROR collecting tests/unit/plugins/modules/test_hetzner_dns_zone_info.py ___ 1267s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hetzner_dns_zone_info.py'. 1267s Hint: make sure your test modules/packages have valid Python names. 1267s Traceback: 1267s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1267s return _bootstrap._gcd_import(name[level:], package, level) 1267s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1267s assertion_rewriting_hook.exec_module(module) 1267s tests/unit/plugins/modules/test_hetzner_dns_zone_info.py:9: in 1267s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1267s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1267s ___ ERROR collecting tests/unit/plugins/modules/test_hosttech_dns_record.py ____ 1267s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hosttech_dns_record.py'. 1267s Hint: make sure your test modules/packages have valid Python names. 1267s Traceback: 1267s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1267s return _bootstrap._gcd_import(name[level:], package, level) 1267s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1267s assertion_rewriting_hook.exec_module(module) 1267s tests/unit/plugins/modules/test_hosttech_dns_record.py:11: in 1267s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1267s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1267s _ ERROR collecting tests/unit/plugins/modules/test_hosttech_dns_record_info.py _ 1267s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hosttech_dns_record_info.py'. 1267s Hint: make sure your test modules/packages have valid Python names. 1267s Traceback: 1267s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1267s return _bootstrap._gcd_import(name[level:], package, level) 1267s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1267s assertion_rewriting_hook.exec_module(module) 1267s tests/unit/plugins/modules/test_hosttech_dns_record_info.py:11: in 1267s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import patch 1267s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1267s _ ERROR collecting tests/unit/plugins/modules/test_hosttech_dns_record_set.py __ 1267s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hosttech_dns_record_set.py'. 1267s Hint: make sure your test modules/packages have valid Python names. 1267s Traceback: 1267s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1267s return _bootstrap._gcd_import(name[level:], package, level) 1267s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1267s assertion_rewriting_hook.exec_module(module) 1267s tests/unit/plugins/modules/test_hosttech_dns_record_set.py:11: in 1267s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1267s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1267s _ ERROR collecting tests/unit/plugins/modules/test_hosttech_dns_record_set_info.py _ 1267s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hosttech_dns_record_set_info.py'. 1267s Hint: make sure your test modules/packages have valid Python names. 1267s Traceback: 1267s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1267s return _bootstrap._gcd_import(name[level:], package, level) 1267s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1267s assertion_rewriting_hook.exec_module(module) 1267s tests/unit/plugins/modules/test_hosttech_dns_record_set_info.py:11: in 1267s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import patch 1267s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1267s _ ERROR collecting tests/unit/plugins/modules/test_hosttech_dns_record_sets.py _ 1267s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hosttech_dns_record_sets.py'. 1267s Hint: make sure your test modules/packages have valid Python names. 1267s Traceback: 1267s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1267s return _bootstrap._gcd_import(name[level:], package, level) 1267s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1267s assertion_rewriting_hook.exec_module(module) 1267s tests/unit/plugins/modules/test_hosttech_dns_record_sets.py:11: in 1267s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1267s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1267s __ ERROR collecting tests/unit/plugins/modules/test_hosttech_dns_zone_info.py __ 1267s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hosttech_dns_zone_info.py'. 1267s Hint: make sure your test modules/packages have valid Python names. 1267s Traceback: 1267s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1267s return _bootstrap._gcd_import(name[level:], package, level) 1267s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1267s assertion_rewriting_hook.exec_module(module) 1267s tests/unit/plugins/modules/test_hosttech_dns_zone_info.py:11: in 1267s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1267s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1267s _____ ERROR collecting tests/unit/plugins/modules/test_nameserver_info.py ______ 1267s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_nameserver_info.py'. 1267s Hint: make sure your test modules/packages have valid Python names. 1267s Traceback: 1267s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1267s return _bootstrap._gcd_import(name[level:], package, level) 1267s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1267s assertion_rewriting_hook.exec_module(module) 1267s tests/unit/plugins/modules/test_nameserver_info.py:14: in 1267s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import MagicMock, patch 1267s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1267s __ ERROR collecting tests/unit/plugins/modules/test_nameserver_record_info.py __ 1267s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_nameserver_record_info.py'. 1267s Hint: make sure your test modules/packages have valid Python names. 1267s Traceback: 1267s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1267s return _bootstrap._gcd_import(name[level:], package, level) 1267s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1267s assertion_rewriting_hook.exec_module(module) 1267s tests/unit/plugins/modules/test_nameserver_record_info.py:14: in 1267s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import MagicMock, patch 1267s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1267s _______ ERROR collecting tests/unit/plugins/modules/test_wait_for_txt.py _______ 1267s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_wait_for_txt.py'. 1267s Hint: make sure your test modules/packages have valid Python names. 1267s Traceback: 1267s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1267s return _bootstrap._gcd_import(name[level:], package, level) 1267s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1267s assertion_rewriting_hook.exec_module(module) 1267s tests/unit/plugins/modules/test_wait_for_txt.py:14: in 1267s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import MagicMock, patch 1267s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1267s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/dns/tests/output/junit/python3.13-modules-units.xml - 1267s =========================== short test summary info ============================ 1267s ERROR tests/unit/plugins/modules/test_hetzner_dns_record.py 1267s ERROR tests/unit/plugins/modules/test_hetzner_dns_record_info.py 1267s ERROR tests/unit/plugins/modules/test_hetzner_dns_record_set.py 1267s ERROR tests/unit/plugins/modules/test_hetzner_dns_record_set_info.py 1267s ERROR tests/unit/plugins/modules/test_hetzner_dns_record_sets.py 1267s ERROR tests/unit/plugins/modules/test_hetzner_dns_zone_info.py 1267s ERROR tests/unit/plugins/modules/test_hosttech_dns_record.py 1267s ERROR tests/unit/plugins/modules/test_hosttech_dns_record_info.py 1267s ERROR tests/unit/plugins/modules/test_hosttech_dns_record_set.py 1267s ERROR tests/unit/plugins/modules/test_hosttech_dns_record_set_info.py 1267s ERROR tests/unit/plugins/modules/test_hosttech_dns_record_sets.py 1267s ERROR tests/unit/plugins/modules/test_hosttech_dns_zone_info.py 1267s ERROR tests/unit/plugins/modules/test_nameserver_info.py 1267s ERROR tests/unit/plugins/modules/test_nameserver_record_info.py 1267s ERROR tests/unit/plugins/modules/test_wait_for_txt.py 1267s ============================== 15 errors in 1.57s ============================== 1267s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/dns/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/dns --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/dns tests/unit/plugins/modules/test_hetzner_dns_record.py tests/unit/plugins/modules/test_hetzner_dns_record_info.py tests/unit/plugins/modules/test_hetzner_dns_record_set.py tests/unit/plugins/modules/test_hetzner_dns_record_set_info.py tests/unit/plugins/modules/test_hetzner_dns_record_sets.py tests/unit/plugins/modules/test_hetzner_dns_zone_info.py tests/unit/plugins/modules/test_hosttech_dns_record.py tests/unit/plugins/modules/test_hosttech_dns_record_info.py tests/unit/plugins/modules/test_hosttech_dns_record_set.py tests/unit/plugins/modules/test_hosttech_dns_record_set_info.py tests/unit/plugins/modules/test_hosttech_dns_record_sets.py tests/unit/plugins/modules/test_hosttech_dns_zone_info.py tests/unit/plugins/modules/test_nameserver_info.py tests/unit/plugins/modules/test_nameserver_record_info.py tests/unit/plugins/modules/test_wait_for_txt.py" returned exit status 1. 1267s ## return code is 1 1267s 1267s 1267s 1267s ############################################################ 1267s ############################################################ 1267s #### Running FLAKY tests in ansible_collections/community/general 1267s ############################################################ 1267s ############################################################ 1267s Unit test modules with Python 3.13 1274s ============================= test session starts ============================== 1274s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1274s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/general 1274s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1274s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 1274s created: 8/8 workers 1274s 8 workers [1282 items] 1274s 1274s .............F.............F......F..........F........F.......F......F.. [ 5%] 1274s .......F................................................................ [ 11%] 1275s ........................................................................ [ 16%] 1275s ...................................................................s.... [ 22%] 1275s ..........................F...........F.........F........F.......F...... [ 28%] 1276s ...F.................................................................... [ 33%] 1276s ........................................................................ [ 39%] 1277s ........................................................................ [ 44%] 1277s ........................................................................ [ 50%] 1277s ........................................................................ [ 56%] 1278s ........................................................................ [ 61%] 1278s ........................................................................ [ 67%] 1278s ........................................................................ [ 73%] 1279s .........................s..................s.............s...s..s...... [ 78%] 1279s ........................................................................ [ 84%] 1280s ........................................................................ [ 89%] 1284s ........................................................................ [ 95%] 1340s ......................................s................... [100%] 1340s ==================================== ERRORS ==================================== 1340s _______ ERROR collecting tests/unit/plugins/modules/test_jenkins_node.py _______ 1340s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/general/tests/unit/plugins/modules/test_jenkins_node.py'. 1340s Hint: make sure your test modules/packages have valid Python names. 1340s Traceback: 1340s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1340s return _bootstrap._gcd_import(name[level:], package, level) 1340s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1340s assertion_rewriting_hook.exec_module(module) 1340s tests/unit/plugins/modules/test_jenkins_node.py:8: in 1340s import jenkins 1340s E ModuleNotFoundError: No module named 'jenkins' 1340s _______ ERROR collecting tests/unit/plugins/modules/test_nomad_token.py ________ 1340s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/general/tests/unit/plugins/modules/test_nomad_token.py'. 1340s Hint: make sure your test modules/packages have valid Python names. 1340s Traceback: 1340s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1340s return _bootstrap._gcd_import(name[level:], package, level) 1340s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1340s assertion_rewriting_hook.exec_module(module) 1340s tests/unit/plugins/modules/test_nomad_token.py:11: in 1340s import nomad 1340s E ModuleNotFoundError: No module named 'nomad' 1340s =================================== FAILURES =================================== 1340s ___________________ TestGithubRepo.test_create_new_org_repo ____________________ 1340s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1340s 1340s self = 1340s 1340s @with_httmock(get_orgs_mock) 1340s @with_httmock(get_repo_notfound_mock) 1340s @with_httmock(create_new_org_repo_mock) 1340s def test_create_new_org_repo(self): 1340s > result = github_repo.run_module({ 1340s 'username': None, 1340s 'password': None, 1340s "access_token": "mytoken", 1340s "organization": "MyOrganization", 1340s "name": "myrepo", 1340s "description": "Just for fun", 1340s "private": False, 1340s "state": "present", 1340s "api_url": "https://api.github.com", 1340s "force_defaults": False, 1340s }) 1340s 1340s tests/unit/plugins/modules/test_github_repo.py:179: 1340s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1340s plugins/modules/github_repo.py:222: in run_module 1340s gh = authenticate( 1340s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1340s 1340s username = None, password = None, access_token = 'mytoken' 1340s api_url = 'https://api.github.com' 1340s 1340s def authenticate(username=None, password=None, access_token=None, api_url=None): 1340s if not api_url: 1340s return None 1340s 1340s if access_token: 1340s > return Github(base_url=api_url, login_or_token=access_token) 1340s E NameError: name 'Github' is not defined 1340s 1340s plugins/modules/github_repo.py:150: NameError 1340s ______________ TestGithubRepo.test_create_new_org_repo_incomplete ______________ 1340s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1340s 1340s self = 1340s 1340s @with_httmock(get_orgs_mock) 1340s @with_httmock(get_repo_notfound_mock) 1340s @with_httmock(create_new_org_repo_mock) 1340s def test_create_new_org_repo_incomplete(self): 1340s > result = github_repo.run_module({ 1340s 'username': None, 1340s 'password': None, 1340s "access_token": "mytoken", 1340s "organization": "MyOrganization", 1340s "name": "myrepo", 1340s "description": None, 1340s "private": None, 1340s "state": "present", 1340s "api_url": "https://api.github.com", 1340s "force_defaults": False, 1340s }) 1340s 1340s tests/unit/plugins/modules/test_github_repo.py:200: 1340s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1340s plugins/modules/github_repo.py:222: in run_module 1340s gh = authenticate( 1340s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1340s 1340s username = None, password = None, access_token = 'mytoken' 1340s api_url = 'https://api.github.com' 1340s 1340s def authenticate(username=None, password=None, access_token=None, api_url=None): 1340s if not api_url: 1340s return None 1340s 1340s if access_token: 1340s > return Github(base_url=api_url, login_or_token=access_token) 1340s E NameError: name 'Github' is not defined 1340s 1340s plugins/modules/github_repo.py:150: NameError 1340s ___________________ TestGithubRepo.test_create_new_user_repo ___________________ 1340s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1340s 1340s self = 1340s 1340s @with_httmock(get_user_mock) 1340s @with_httmock(get_repo_notfound_mock) 1340s @with_httmock(create_new_user_repo_mock) 1340s def test_create_new_user_repo(self): 1340s > result = github_repo.run_module({ 1340s 'username': None, 1340s 'password': None, 1340s "access_token": "mytoken", 1340s "organization": None, 1340s "name": "myrepo", 1340s "description": "Just for fun", 1340s "private": True, 1340s "state": "present", 1340s "api_url": "https://api.github.com", 1340s "force_defaults": False, 1340s }) 1340s 1340s tests/unit/plugins/modules/test_github_repo.py:221: 1340s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1340s plugins/modules/github_repo.py:222: in run_module 1340s gh = authenticate( 1340s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1340s 1340s username = None, password = None, access_token = 'mytoken' 1340s api_url = 'https://api.github.com' 1340s 1340s def authenticate(username=None, password=None, access_token=None, api_url=None): 1340s if not api_url: 1340s return None 1340s 1340s if access_token: 1340s > return Github(base_url=api_url, login_or_token=access_token) 1340s E NameError: name 'Github' is not defined 1340s 1340s plugins/modules/github_repo.py:150: NameError 1340s _____________________ TestGithubRepo.test_delete_org_repo ______________________ 1340s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1340s 1340s self = 1340s 1340s @with_httmock(get_orgs_mock) 1340s @with_httmock(get_repo_mock) 1340s @with_httmock(delete_repo_mock) 1340s def test_delete_org_repo(self): 1340s > result = github_repo.run_module({ 1340s 'username': None, 1340s 'password': None, 1340s "access_token": "mytoken", 1340s "organization": "MyOrganization", 1340s "name": "myrepo", 1340s "description": "Just for fun", 1340s "private": False, 1340s "state": "absent", 1340s "api_url": "https://api.github.com", 1340s "force_defaults": False, 1340s }) 1340s 1340s tests/unit/plugins/modules/test_github_repo.py:278: 1340s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1340s plugins/modules/github_repo.py:222: in run_module 1340s gh = authenticate( 1340s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1340s 1340s username = None, password = None, access_token = 'mytoken' 1340s api_url = 'https://api.github.com' 1340s 1340s def authenticate(username=None, password=None, access_token=None, api_url=None): 1340s if not api_url: 1340s return None 1340s 1340s if access_token: 1340s > return Github(base_url=api_url, login_or_token=access_token) 1340s E NameError: name 'Github' is not defined 1340s 1340s plugins/modules/github_repo.py:150: NameError 1340s _________________ TestGithubRepo.test_delete_org_repo_notfound _________________ 1340s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1340s 1340s self = 1340s 1340s @with_httmock(get_orgs_mock) 1340s @with_httmock(get_repo_notfound_mock) 1340s @with_httmock(delete_repo_notfound_mock) 1340s def test_delete_org_repo_notfound(self): 1340s > result = github_repo.run_module({ 1340s 'username': None, 1340s 'password': None, 1340s "access_token": "mytoken", 1340s "organization": "MyOrganization", 1340s "name": "myrepo", 1340s "description": "Just for fun", 1340s "private": True, 1340s "state": "absent", 1340s "api_url": "https://api.github.com", 1340s "force_defaults": False, 1340s }) 1340s 1340s tests/unit/plugins/modules/test_github_repo.py:314: 1340s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1340s plugins/modules/github_repo.py:222: in run_module 1340s gh = authenticate( 1340s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1340s 1340s username = None, password = None, access_token = 'mytoken' 1340s api_url = 'https://api.github.com' 1340s 1340s def authenticate(username=None, password=None, access_token=None, api_url=None): 1340s if not api_url: 1340s return None 1340s 1340s if access_token: 1340s > return Github(base_url=api_url, login_or_token=access_token) 1340s E NameError: name 'Github' is not defined 1340s 1340s plugins/modules/github_repo.py:150: NameError 1340s _____________________ TestGithubRepo.test_delete_user_repo _____________________ 1340s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1340s 1340s self = 1340s 1340s @with_httmock(get_user_mock) 1340s @with_httmock(get_repo_mock) 1340s @with_httmock(delete_repo_mock) 1340s def test_delete_user_repo(self): 1340s > result = github_repo.run_module({ 1340s 'username': None, 1340s 'password': None, 1340s "access_token": "mytoken", 1340s "organization": None, 1340s "name": "myrepo", 1340s "description": "Just for fun", 1340s "private": False, 1340s "state": "absent", 1340s "api_url": "https://api.github.com", 1340s "force_defaults": False, 1340s }) 1340s 1340s tests/unit/plugins/modules/test_github_repo.py:296: 1340s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1340s plugins/modules/github_repo.py:222: in run_module 1340s gh = authenticate( 1340s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1340s 1340s username = None, password = None, access_token = 'mytoken' 1340s api_url = 'https://api.github.com' 1340s 1340s def authenticate(username=None, password=None, access_token=None, api_url=None): 1340s if not api_url: 1340s return None 1340s 1340s if access_token: 1340s > return Github(base_url=api_url, login_or_token=access_token) 1340s E NameError: name 'Github' is not defined 1340s 1340s plugins/modules/github_repo.py:150: NameError 1340s __________ TestGithubRepo.test_idempotency_existing_org_private_repo ___________ 1340s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1340s 1340s self = 1340s 1340s @with_httmock(get_orgs_mock) 1340s @with_httmock(get_private_repo_mock) 1340s def test_idempotency_existing_org_private_repo(self): 1340s > result = github_repo.run_module({ 1340s 'username': None, 1340s 'password': None, 1340s "access_token": "mytoken", 1340s "organization": "MyOrganization", 1340s "name": "myrepo", 1340s "description": None, 1340s "private": None, 1340s "state": "present", 1340s "api_url": "https://api.github.com", 1340s "force_defaults": False, 1340s }) 1340s 1340s tests/unit/plugins/modules/test_github_repo.py:258: 1340s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1340s plugins/modules/github_repo.py:222: in run_module 1340s gh = authenticate( 1340s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1340s 1340s username = None, password = None, access_token = 'mytoken' 1340s api_url = 'https://api.github.com' 1340s 1340s def authenticate(username=None, password=None, access_token=None, api_url=None): 1340s if not api_url: 1340s return None 1340s 1340s if access_token: 1340s > return Github(base_url=api_url, login_or_token=access_token) 1340s E NameError: name 'Github' is not defined 1340s 1340s plugins/modules/github_repo.py:150: NameError 1340s _________________ TestGithubRepo.test_patch_existing_org_repo __________________ 1340s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1340s 1340s self = 1340s 1340s @with_httmock(get_orgs_mock) 1340s @with_httmock(get_repo_mock) 1340s @with_httmock(patch_repo_mock) 1340s def test_patch_existing_org_repo(self): 1340s > result = github_repo.run_module({ 1340s 'username': None, 1340s 'password': None, 1340s "access_token": "mytoken", 1340s "organization": "MyOrganization", 1340s "name": "myrepo", 1340s "description": "Just for fun", 1340s "private": True, 1340s "state": "present", 1340s "api_url": "https://api.github.com", 1340s "force_defaults": False, 1340s }) 1340s 1340s tests/unit/plugins/modules/test_github_repo.py:240: 1340s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1340s plugins/modules/github_repo.py:222: in run_module 1340s gh = authenticate( 1340s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1340s 1340s username = None, password = None, access_token = 'mytoken' 1340s api_url = 'https://api.github.com' 1340s 1340s def authenticate(username=None, password=None, access_token=None, api_url=None): 1340s if not api_url: 1340s return None 1340s 1340s if access_token: 1340s > return Github(base_url=api_url, login_or_token=access_token) 1340s E NameError: name 'Github' is not defined 1340s 1340s plugins/modules/github_repo.py:150: NameError 1340s _________________ test_find_version_by_spec[None-(,3.9]-3.8.2] _________________ 1340s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1340s 1340s mocker = 1340s version_by_spec = '(,3.9]', version_choosed = '3.8.2' 1340s 1340s @pytest.mark.parametrize('patch_ansible_module, version_by_spec, version_choosed', [ 1340s (None, "(,3.9]", "3.8.2"), 1340s (None, "3.0", "3.8.2"), 1340s (None, "[3.7]", "3.7"), 1340s (None, "[4.10, 4.12]", "4.12"), 1340s (None, "[4.10, 4.12)", "4.11"), 1340s (None, "[2.0,)", "4.13-beta-2"), 1340s ]) 1340s def test_find_version_by_spec(mocker, version_by_spec, version_choosed): 1340s _getContent = mocker.patch('ansible_collections.community.general.plugins.modules.maven_artifact.MavenDownloader._getContent') 1340s _getContent.return_value = maven_metadata_example 1340s 1340s artifact = maven_artifact.Artifact("junit", "junit", None, version_by_spec, "jar") 1340s mvn_downloader = maven_artifact.MavenDownloader(basic.AnsibleModule, "https://repo1.maven.org/maven2") 1340s 1340s > assert mvn_downloader.find_version_by_spec(artifact) == version_choosed 1340s 1340s tests/unit/plugins/modules/test_maven_artifact.py:71: 1340s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1340s 1340s self = 1340s artifact = 1340s 1340s def find_version_by_spec(self, artifact): 1340s path = "/%s/%s" % (artifact.path(False), self.metadata_file_name) 1340s content = self._getContent(self.base + path, "Failed to retrieve the maven metadata file: " + path) 1340s xml = etree.fromstring(content) 1340s original_versions = xml.xpath("/metadata/versioning/versions/version/text()") 1340s versions = [] 1340s for version in original_versions: 1340s try: 1340s > versions.append(Version.coerce(version)) 1340s E NameError: name 'Version' is not defined 1340s 1340s plugins/modules/maven_artifact.py:407: NameError 1340s __________________ test_find_version_by_spec[None-3.0-3.8.2] ___________________ 1340s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1340s 1340s mocker = 1340s version_by_spec = '3.0', version_choosed = '3.8.2' 1340s 1340s @pytest.mark.parametrize('patch_ansible_module, version_by_spec, version_choosed', [ 1340s (None, "(,3.9]", "3.8.2"), 1340s (None, "3.0", "3.8.2"), 1340s (None, "[3.7]", "3.7"), 1340s (None, "[4.10, 4.12]", "4.12"), 1340s (None, "[4.10, 4.12)", "4.11"), 1340s (None, "[2.0,)", "4.13-beta-2"), 1340s ]) 1340s def test_find_version_by_spec(mocker, version_by_spec, version_choosed): 1340s _getContent = mocker.patch('ansible_collections.community.general.plugins.modules.maven_artifact.MavenDownloader._getContent') 1340s _getContent.return_value = maven_metadata_example 1340s 1340s artifact = maven_artifact.Artifact("junit", "junit", None, version_by_spec, "jar") 1340s mvn_downloader = maven_artifact.MavenDownloader(basic.AnsibleModule, "https://repo1.maven.org/maven2") 1340s 1340s > assert mvn_downloader.find_version_by_spec(artifact) == version_choosed 1340s 1340s tests/unit/plugins/modules/test_maven_artifact.py:71: 1340s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1340s 1340s self = 1340s artifact = 1340s 1340s def find_version_by_spec(self, artifact): 1340s path = "/%s/%s" % (artifact.path(False), self.metadata_file_name) 1340s content = self._getContent(self.base + path, "Failed to retrieve the maven metadata file: " + path) 1340s xml = etree.fromstring(content) 1340s original_versions = xml.xpath("/metadata/versioning/versions/version/text()") 1340s versions = [] 1340s for version in original_versions: 1340s try: 1340s > versions.append(Version.coerce(version)) 1340s E NameError: name 'Version' is not defined 1340s 1340s plugins/modules/maven_artifact.py:407: NameError 1340s __________________ test_find_version_by_spec[None-[3.7]-3.7] ___________________ 1340s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1340s 1340s mocker = 1340s version_by_spec = '[3.7]', version_choosed = '3.7' 1340s 1340s @pytest.mark.parametrize('patch_ansible_module, version_by_spec, version_choosed', [ 1340s (None, "(,3.9]", "3.8.2"), 1340s (None, "3.0", "3.8.2"), 1340s (None, "[3.7]", "3.7"), 1340s (None, "[4.10, 4.12]", "4.12"), 1340s (None, "[4.10, 4.12)", "4.11"), 1340s (None, "[2.0,)", "4.13-beta-2"), 1340s ]) 1340s def test_find_version_by_spec(mocker, version_by_spec, version_choosed): 1340s _getContent = mocker.patch('ansible_collections.community.general.plugins.modules.maven_artifact.MavenDownloader._getContent') 1340s _getContent.return_value = maven_metadata_example 1340s 1340s artifact = maven_artifact.Artifact("junit", "junit", None, version_by_spec, "jar") 1340s mvn_downloader = maven_artifact.MavenDownloader(basic.AnsibleModule, "https://repo1.maven.org/maven2") 1340s 1340s > assert mvn_downloader.find_version_by_spec(artifact) == version_choosed 1340s 1340s tests/unit/plugins/modules/test_maven_artifact.py:71: 1340s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1340s 1340s self = 1340s artifact = 1340s 1340s def find_version_by_spec(self, artifact): 1340s path = "/%s/%s" % (artifact.path(False), self.metadata_file_name) 1340s content = self._getContent(self.base + path, "Failed to retrieve the maven metadata file: " + path) 1340s xml = etree.fromstring(content) 1340s original_versions = xml.xpath("/metadata/versioning/versions/version/text()") 1340s versions = [] 1340s for version in original_versions: 1340s try: 1340s > versions.append(Version.coerce(version)) 1340s E NameError: name 'Version' is not defined 1340s 1340s plugins/modules/maven_artifact.py:407: NameError 1340s ______________ test_find_version_by_spec[None-[4.10, 4.12]-4.12] _______________ 1340s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1340s 1340s mocker = 1340s version_by_spec = '[4.10, 4.12]', version_choosed = '4.12' 1340s 1340s @pytest.mark.parametrize('patch_ansible_module, version_by_spec, version_choosed', [ 1340s (None, "(,3.9]", "3.8.2"), 1340s (None, "3.0", "3.8.2"), 1340s (None, "[3.7]", "3.7"), 1340s (None, "[4.10, 4.12]", "4.12"), 1340s (None, "[4.10, 4.12)", "4.11"), 1340s (None, "[2.0,)", "4.13-beta-2"), 1340s ]) 1340s def test_find_version_by_spec(mocker, version_by_spec, version_choosed): 1340s _getContent = mocker.patch('ansible_collections.community.general.plugins.modules.maven_artifact.MavenDownloader._getContent') 1340s _getContent.return_value = maven_metadata_example 1340s 1340s artifact = maven_artifact.Artifact("junit", "junit", None, version_by_spec, "jar") 1340s mvn_downloader = maven_artifact.MavenDownloader(basic.AnsibleModule, "https://repo1.maven.org/maven2") 1340s 1340s > assert mvn_downloader.find_version_by_spec(artifact) == version_choosed 1340s 1340s tests/unit/plugins/modules/test_maven_artifact.py:71: 1340s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1340s 1340s self = 1340s artifact = 1340s 1340s def find_version_by_spec(self, artifact): 1340s path = "/%s/%s" % (artifact.path(False), self.metadata_file_name) 1340s content = self._getContent(self.base + path, "Failed to retrieve the maven metadata file: " + path) 1340s xml = etree.fromstring(content) 1340s original_versions = xml.xpath("/metadata/versioning/versions/version/text()") 1340s versions = [] 1340s for version in original_versions: 1340s try: 1340s > versions.append(Version.coerce(version)) 1340s E NameError: name 'Version' is not defined 1340s 1340s plugins/modules/maven_artifact.py:407: NameError 1340s ______________ test_find_version_by_spec[None-[4.10, 4.12)-4.11] _______________ 1340s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1340s 1340s mocker = 1340s version_by_spec = '[4.10, 4.12)', version_choosed = '4.11' 1340s 1340s @pytest.mark.parametrize('patch_ansible_module, version_by_spec, version_choosed', [ 1340s (None, "(,3.9]", "3.8.2"), 1340s (None, "3.0", "3.8.2"), 1340s (None, "[3.7]", "3.7"), 1340s (None, "[4.10, 4.12]", "4.12"), 1340s (None, "[4.10, 4.12)", "4.11"), 1340s (None, "[2.0,)", "4.13-beta-2"), 1340s ]) 1340s def test_find_version_by_spec(mocker, version_by_spec, version_choosed): 1340s _getContent = mocker.patch('ansible_collections.community.general.plugins.modules.maven_artifact.MavenDownloader._getContent') 1340s _getContent.return_value = maven_metadata_example 1340s 1340s artifact = maven_artifact.Artifact("junit", "junit", None, version_by_spec, "jar") 1340s mvn_downloader = maven_artifact.MavenDownloader(basic.AnsibleModule, "https://repo1.maven.org/maven2") 1340s 1340s > assert mvn_downloader.find_version_by_spec(artifact) == version_choosed 1340s 1340s tests/unit/plugins/modules/test_maven_artifact.py:71: 1340s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1340s 1340s self = 1340s artifact = 1340s 1340s def find_version_by_spec(self, artifact): 1340s path = "/%s/%s" % (artifact.path(False), self.metadata_file_name) 1340s content = self._getContent(self.base + path, "Failed to retrieve the maven metadata file: " + path) 1340s xml = etree.fromstring(content) 1340s original_versions = xml.xpath("/metadata/versioning/versions/version/text()") 1340s versions = [] 1340s for version in original_versions: 1340s try: 1340s > versions.append(Version.coerce(version)) 1340s E NameError: name 'Version' is not defined 1340s 1340s plugins/modules/maven_artifact.py:407: NameError 1340s ______________ test_find_version_by_spec[None-[2.0,)-4.13-beta-2] ______________ 1340s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1340s 1340s mocker = 1340s version_by_spec = '[2.0,)', version_choosed = '4.13-beta-2' 1340s 1340s @pytest.mark.parametrize('patch_ansible_module, version_by_spec, version_choosed', [ 1340s (None, "(,3.9]", "3.8.2"), 1340s (None, "3.0", "3.8.2"), 1340s (None, "[3.7]", "3.7"), 1340s (None, "[4.10, 4.12]", "4.12"), 1340s (None, "[4.10, 4.12)", "4.11"), 1340s (None, "[2.0,)", "4.13-beta-2"), 1340s ]) 1340s def test_find_version_by_spec(mocker, version_by_spec, version_choosed): 1340s _getContent = mocker.patch('ansible_collections.community.general.plugins.modules.maven_artifact.MavenDownloader._getContent') 1340s _getContent.return_value = maven_metadata_example 1340s 1340s artifact = maven_artifact.Artifact("junit", "junit", None, version_by_spec, "jar") 1340s mvn_downloader = maven_artifact.MavenDownloader(basic.AnsibleModule, "https://repo1.maven.org/maven2") 1340s 1340s > assert mvn_downloader.find_version_by_spec(artifact) == version_choosed 1340s 1340s tests/unit/plugins/modules/test_maven_artifact.py:71: 1340s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1340s 1340s self = 1340s artifact = 1340s 1340s def find_version_by_spec(self, artifact): 1340s path = "/%s/%s" % (artifact.path(False), self.metadata_file_name) 1340s content = self._getContent(self.base + path, "Failed to retrieve the maven metadata file: " + path) 1340s xml = etree.fromstring(content) 1340s original_versions = xml.xpath("/metadata/versioning/versions/version/text()") 1340s versions = [] 1340s for version in original_versions: 1340s try: 1340s > versions.append(Version.coerce(version)) 1340s E NameError: name 'Version' is not defined 1340s 1340s plugins/modules/maven_artifact.py:407: NameError 1340s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/general/tests/output/junit/python3.13-modules-units.xml - 1340s =========================== short test summary info ============================ 1340s SKIPPED [1] tests/unit/plugins/modules/test_datadog_downtime.py:19: could not import 'datadog_api_client': No module named 'datadog_api_client' 1340s SKIPPED [1] tests/unit/plugins/modules/test_dnsimple.py:17: could not import 'dnsimple': No module named 'dnsimple' 1340s SKIPPED [1] tests/unit/plugins/modules/test_linode_v4.py:14: could not import 'linode_api4': No module named 'linode_api4' 1340s SKIPPED [1] tests/unit/plugins/modules/helper.py:99: test helper does not support check mode yet 1340s SKIPPED [1] tests/unit/plugins/modules/test_redis_data.py:137: Redis version > 3.4.0 1340s SKIPPED [1] tests/unit/plugins/modules/test_redis_data_incr.py:107: Redis version > 3.4.0 1340s SKIPPED [1] tests/unit/plugins/modules/test_redis_data_info.py:68: Redis version > 3.4.0 1340s SKIPPED [1] tests/unit/plugins/modules/test_redis_data_info.py:85: Redis version > 3.4.0 1340s SKIPPED [1] tests/unit/plugins/modules/test_redis_data_info.py:101: Redis version > 3.4.0 1340s SKIPPED [1] tests/unit/plugins/modules/test_linode.py: test_linode.py requires the `linode-python` module 1340s ERROR tests/unit/plugins/modules/test_jenkins_node.py 1340s ERROR tests/unit/plugins/modules/test_nomad_token.py 1340s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_create_new_org_repo 1340s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_create_new_org_repo_incomplete 1340s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_create_new_user_repo 1340s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_delete_org_repo 1340s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_delete_org_repo_notfound 1340s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_delete_user_repo 1340s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_idempotency_existing_org_private_repo 1340s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_patch_existing_org_repo 1340s FAILED tests/unit/plugins/modules/test_maven_artifact.py::test_find_version_by_spec[None-(,3.9]-3.8.2] 1340s FAILED tests/unit/plugins/modules/test_maven_artifact.py::test_find_version_by_spec[None-3.0-3.8.2] 1340s FAILED tests/unit/plugins/modules/test_maven_artifact.py::test_find_version_by_spec[None-[3.7]-3.7] 1340s FAILED tests/unit/plugins/modules/test_maven_artifact.py::test_find_version_by_spec[None-[4.10, 4.12]-4.12] 1340s FAILED tests/unit/plugins/modules/test_maven_artifact.py::test_find_version_by_spec[None-[4.10, 4.12)-4.11] 1340s FAILED tests/unit/plugins/modules/test_maven_artifact.py::test_find_version_by_spec[None-[2.0,)-4.13-beta-2] 1340s ======= 14 failed, 1261 passed, 10 skipped, 2 errors in 72.48s (0:01:12) ======= 1340s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/general/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/general --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/general tests/unit/plugins/modules/interfaces_file/test_interfaces_file.py tests/unit/plugins/modules/test_alerta_customer.py tests/unit/plugins/modules/test_apache2_module.py tests/unit/plugins/modules/test_apk.py tests/unit/plugins/modules/test_archive.py tests/unit/plugins/modules/test_bitbucket_access_key.py tests/unit/plugins/modules/test_bitbucket_pipeline_key_pair.py tests/unit/plugins/modules/test_bitbucket_pipeline_known_host.py tests/unit/plugins/modules/test_bitbucket_pipeline_variable.py tests/unit/plugins/modules/test_bootc_manage.py tests/unit/plugins/modules/test_campfire.py tests/unit/plugins/modules/test_circonus_annotation.py tests/unit/plugins/modules/test_cpanm.py tests/unit/plugins/modules/test_datadog_downtime.py tests/unit/plugins/modules/test_dconf.py tests/unit/plugins/modules/test_discord.py tests/unit/plugins/modules/test_django_check.py tests/unit/plugins/modules/test_django_command.py tests/unit/plugins/modules/test_django_createcachetable.py tests/unit/plugins/modules/test_dnf_config_manager.py tests/unit/plugins/modules/test_dnsimple.py tests/unit/plugins/modules/test_dnsimple_info.py tests/unit/plugins/modules/test_facter_facts.py tests/unit/plugins/modules/test_gconftool2.py tests/unit/plugins/modules/test_gconftool2_info.py tests/unit/plugins/modules/test_gem.py tests/unit/plugins/modules/test_gio_mime.py tests/unit/plugins/modules/test_github_repo.py tests/unit/plugins/modules/test_gitlab_deploy_key.py tests/unit/plugins/modules/test_gitlab_group.py tests/unit/plugins/modules/test_gitlab_group_access_token.py tests/unit/plugins/modules/test_gitlab_hook.py tests/unit/plugins/modules/test_gitlab_project.py tests/unit/plugins/modules/test_gitlab_project_access_token.py tests/unit/plugins/modules/test_gitlab_protected_branch.py tests/unit/plugins/modules/test_gitlab_runner.py tests/unit/plugins/modules/test_gitlab_user.py tests/unit/plugins/modules/test_homebrew.py tests/unit/plugins/modules/test_homebrew_cask.py tests/unit/plugins/modules/test_icinga2_feature.py tests/unit/plugins/modules/test_ini_file.py tests/unit/plugins/modules/test_ipa_getkeytab.py tests/unit/plugins/modules/test_ipa_otpconfig.py tests/unit/plugins/modules/test_ipa_otptoken.py tests/unit/plugins/modules/test_ipa_pwpolicy.py tests/unit/plugins/modules/test_ipbase.py tests/unit/plugins/modules/test_java_keystore.py tests/unit/plugins/modules/test_jenkins_build.py tests/unit/plugins/modules/test_jenkins_build_info.py tests/unit/plugins/modules/test_jenkins_node.py tests/unit/plugins/modules/test_jenkins_plugin.py tests/unit/plugins/modules/test_keycloak_authentication.py tests/unit/plugins/modules/test_keycloak_authentication_required_actions.py tests/unit/plugins/modules/test_keycloak_client.py tests/unit/plugins/modules/test_keycloak_client_rolemapping.py tests/unit/plugins/modules/test_keycloak_clientscope.py tests/unit/plugins/modules/test_keycloak_component.py tests/unit/plugins/modules/test_keycloak_identity_provider.py tests/unit/plugins/modules/test_keycloak_realm.py tests/unit/plugins/modules/test_keycloak_realm_info.py tests/unit/plugins/modules/test_keycloak_realm_keys.py tests/unit/plugins/modules/test_keycloak_realm_keys_metadata_info.py tests/unit/plugins/modules/test_keycloak_role.py tests/unit/plugins/modules/test_keycloak_user.py tests/unit/plugins/modules/test_keycloak_user_federation.py tests/unit/plugins/modules/test_keycloak_userprofile.py tests/unit/plugins/modules/test_krb_ticket.py tests/unit/plugins/modules/test_linode.py tests/unit/plugins/modules/test_linode_v4.py tests/unit/plugins/modules/test_lvg_rename.py tests/unit/plugins/modules/test_lxca_cmms.py tests/unit/plugins/modules/test_lxca_nodes.py tests/unit/plugins/modules/test_macports.py tests/unit/plugins/modules/test_maven_artifact.py tests/unit/plugins/modules/test_modprobe.py tests/unit/plugins/modules/test_monit.py tests/unit/plugins/modules/test_nmcli.py tests/unit/plugins/modules/test_nomad_token.py tests/unit/plugins/modules/test_npm.py tests/unit/plugins/modules/test_ocapi_command.py tests/unit/plugins/modules/test_ocapi_info.py tests/unit/plugins/modules/test_one_vm.py tests/unit/plugins/modules/test_oneview_datacenter_info.py tests/unit/plugins/modules/test_oneview_enclosure_info.py tests/unit/plugins/modules/test_oneview_ethernet_network.py tests/unit/plugins/modules/test_oneview_ethernet_network_info.py tests/unit/plugins/modules/test_oneview_fc_network.py tests/unit/plugins/modules/test_oneview_fc_network_info.py tests/unit/plugins/modules/test_oneview_fcoe_network.py tests/unit/plugins/modules/test_oneview_fcoe_network_info.py tests/unit/plugins/modules/test_oneview_logical_interconnect_group.py tests/unit/plugins/modules/test_oneview_logical_interconnect_group_info.py tests/unit/plugins/modules/test_oneview_network_set.py tests/unit/plugins/modules/test_oneview_network_set_info.py tests/unit/plugins/modules/test_oneview_san_manager.py tests/unit/plugins/modules/test_oneview_san_manager_info.py tests/unit/plugins/modules/test_opkg.py tests/unit/plugins/modules/test_pacman.py tests/unit/plugins/modules/test_pacman_key.py tests/unit/plugins/modules/test_pagerduty.py tests/unit/plugins/modules/test_pagerduty_alert.py tests/unit/plugins/modules/test_pagerduty_change.py tests/unit/plugins/modules/test_pamd.py tests/unit/plugins/modules/test_parted.py tests/unit/plugins/modules/test_pkgin.py tests/unit/plugins/modules/test_pmem.py tests/unit/plugins/modules/test_pritunl_org.py tests/unit/plugins/modules/test_pritunl_org_info.py tests/unit/plugins/modules/test_pritunl_user.py tests/unit/plugins/modules/test_pritunl_user_info.py tests/unit/plugins/modules/test_proxmox_backup.py tests/unit/plugins/modules/test_proxmox_backup_info.py tests/unit/plugins/modules/test_proxmox_kvm.py tests/unit/plugins/modules/test_proxmox_snap.py tests/unit/plugins/modules/test_proxmox_storage_contents_info.py tests/unit/plugins/modules/test_proxmox_tasks_info.py tests/unit/plugins/modules/test_proxmox_template.py tests/unit/plugins/modules/test_proxmox_vm_info.py tests/unit/plugins/modules/test_puppet.py tests/unit/plugins/modules/test_redhat_subscription.py tests/unit/plugins/modules/test_redis_data.py tests/unit/plugins/modules/test_redis_data_incr.py tests/unit/plugins/modules/test_redis_data_info.py tests/unit/plugins/modules/test_redis_info.py tests/unit/plugins/modules/test_rhsm_release.py tests/unit/plugins/modules/test_rhsm_repository.py tests/unit/plugins/modules/test_rpm_ostree_pkg.py tests/unit/plugins/modules/test_scaleway_compute_private_network.py tests/unit/plugins/modules/test_scaleway_private_network.py tests/unit/plugins/modules/test_simpleinit_msb.py tests/unit/plugins/modules/test_slack.py tests/unit/plugins/modules/test_snap.py tests/unit/plugins/modules/test_solaris_zone.py tests/unit/plugins/modules/test_ss_3par_cpg.py tests/unit/plugins/modules/test_statsd.py tests/unit/plugins/modules/test_sysupgrade.py tests/unit/plugins/modules/test_terraform.py tests/unit/plugins/modules/test_ufw.py tests/unit/plugins/modules/test_usb_facts.py tests/unit/plugins/modules/test_wdc_redfish_command.py tests/unit/plugins/modules/test_wdc_redfish_info.py tests/unit/plugins/modules/test_xcc_redfish_command.py tests/unit/plugins/modules/test_xenserver_guest_info.py tests/unit/plugins/modules/test_xenserver_guest_powerstate.py tests/unit/plugins/modules/test_xfconf.py tests/unit/plugins/modules/test_xfconf_info.py" returned exit status 1. 1340s ## return code is 1 1340s 1340s 1340s 1340s ############################################################ 1340s ############################################################ 1340s #### Running FLAKY tests in ansible_collections/community/hrobot 1340s ############################################################ 1340s ############################################################ 1341s Unit test modules with Python 3.13 1342s ============================= test session starts ============================== 1342s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1342s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot 1342s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1342s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 1342s created: 8/8 workers 1342s 8 workers [0 items] 1342s 1342s 1342s ==================================== ERRORS ==================================== 1342s ___________ ERROR collecting tests/unit/plugins/modules/test_boot.py ___________ 1342s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_boot.py'. 1342s Hint: make sure your test modules/packages have valid Python names. 1342s Traceback: 1342s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1342s return _bootstrap._gcd_import(name[level:], package, level) 1342s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1342s assertion_rewriting_hook.exec_module(module) 1342s tests/unit/plugins/modules/test_boot.py:9: in 1342s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1342s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1342s _______ ERROR collecting tests/unit/plugins/modules/test_failover_ip.py ________ 1342s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_failover_ip.py'. 1342s Hint: make sure your test modules/packages have valid Python names. 1342s Traceback: 1342s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1342s return _bootstrap._gcd_import(name[level:], package, level) 1342s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1342s assertion_rewriting_hook.exec_module(module) 1342s tests/unit/plugins/modules/test_failover_ip.py:9: in 1342s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1342s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1342s _____ ERROR collecting tests/unit/plugins/modules/test_failover_ip_info.py _____ 1342s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_failover_ip_info.py'. 1342s Hint: make sure your test modules/packages have valid Python names. 1342s Traceback: 1342s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1342s return _bootstrap._gcd_import(name[level:], package, level) 1342s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1342s assertion_rewriting_hook.exec_module(module) 1342s tests/unit/plugins/modules/test_failover_ip_info.py:9: in 1342s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1342s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1342s _________ ERROR collecting tests/unit/plugins/modules/test_firewall.py _________ 1342s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_firewall.py'. 1342s Hint: make sure your test modules/packages have valid Python names. 1342s Traceback: 1342s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1342s return _bootstrap._gcd_import(name[level:], package, level) 1342s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1342s assertion_rewriting_hook.exec_module(module) 1342s tests/unit/plugins/modules/test_firewall.py:11: in 1342s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1342s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1342s ______ ERROR collecting tests/unit/plugins/modules/test_firewall_info.py _______ 1342s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_firewall_info.py'. 1342s Hint: make sure your test modules/packages have valid Python names. 1342s Traceback: 1342s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1342s return _bootstrap._gcd_import(name[level:], package, level) 1342s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1342s assertion_rewriting_hook.exec_module(module) 1342s tests/unit/plugins/modules/test_firewall_info.py:9: in 1342s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1342s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1342s __________ ERROR collecting tests/unit/plugins/modules/test_reset.py ___________ 1342s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_reset.py'. 1342s Hint: make sure your test modules/packages have valid Python names. 1342s Traceback: 1342s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1342s return _bootstrap._gcd_import(name[level:], package, level) 1342s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1342s assertion_rewriting_hook.exec_module(module) 1342s tests/unit/plugins/modules/test_reset.py:9: in 1342s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1342s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1342s _______ ERROR collecting tests/unit/plugins/modules/test_reverse_dns.py ________ 1342s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_reverse_dns.py'. 1342s Hint: make sure your test modules/packages have valid Python names. 1342s Traceback: 1342s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1342s return _bootstrap._gcd_import(name[level:], package, level) 1342s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1342s assertion_rewriting_hook.exec_module(module) 1342s tests/unit/plugins/modules/test_reverse_dns.py:9: in 1342s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1342s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1342s __________ ERROR collecting tests/unit/plugins/modules/test_server.py __________ 1342s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_server.py'. 1342s Hint: make sure your test modules/packages have valid Python names. 1342s Traceback: 1342s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1342s return _bootstrap._gcd_import(name[level:], package, level) 1342s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1342s assertion_rewriting_hook.exec_module(module) 1342s tests/unit/plugins/modules/test_server.py:9: in 1342s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1342s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1342s _______ ERROR collecting tests/unit/plugins/modules/test_server_info.py ________ 1342s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_server_info.py'. 1342s Hint: make sure your test modules/packages have valid Python names. 1342s Traceback: 1342s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1342s return _bootstrap._gcd_import(name[level:], package, level) 1342s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1342s assertion_rewriting_hook.exec_module(module) 1342s tests/unit/plugins/modules/test_server_info.py:9: in 1342s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1342s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1342s _________ ERROR collecting tests/unit/plugins/modules/test_ssh_key.py __________ 1342s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_ssh_key.py'. 1342s Hint: make sure your test modules/packages have valid Python names. 1342s Traceback: 1342s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1342s return _bootstrap._gcd_import(name[level:], package, level) 1342s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1342s assertion_rewriting_hook.exec_module(module) 1342s tests/unit/plugins/modules/test_ssh_key.py:9: in 1342s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1342s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1342s _______ ERROR collecting tests/unit/plugins/modules/test_ssh_key_info.py _______ 1342s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_ssh_key_info.py'. 1342s Hint: make sure your test modules/packages have valid Python names. 1342s Traceback: 1342s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1342s return _bootstrap._gcd_import(name[level:], package, level) 1342s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1342s assertion_rewriting_hook.exec_module(module) 1342s tests/unit/plugins/modules/test_ssh_key_info.py:9: in 1342s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1342s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1342s ________ ERROR collecting tests/unit/plugins/modules/test_storagebox.py ________ 1342s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_storagebox.py'. 1342s Hint: make sure your test modules/packages have valid Python names. 1342s Traceback: 1342s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1342s return _bootstrap._gcd_import(name[level:], package, level) 1342s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1342s assertion_rewriting_hook.exec_module(module) 1342s tests/unit/plugins/modules/test_storagebox.py:9: in 1342s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1342s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1342s _____ ERROR collecting tests/unit/plugins/modules/test_storagebox_info.py ______ 1342s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_storagebox_info.py'. 1342s Hint: make sure your test modules/packages have valid Python names. 1342s Traceback: 1342s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1342s return _bootstrap._gcd_import(name[level:], package, level) 1342s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1342s assertion_rewriting_hook.exec_module(module) 1342s tests/unit/plugins/modules/test_storagebox_info.py:9: in 1342s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1342s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1342s _ ERROR collecting tests/unit/plugins/modules/test_storagebox_set_password.py __ 1342s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_storagebox_set_password.py'. 1342s Hint: make sure your test modules/packages have valid Python names. 1342s Traceback: 1342s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1342s return _bootstrap._gcd_import(name[level:], package, level) 1342s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1342s assertion_rewriting_hook.exec_module(module) 1342s tests/unit/plugins/modules/test_storagebox_set_password.py:9: in 1342s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1342s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1342s _ ERROR collecting tests/unit/plugins/modules/test_storagebox_snapshot_plan.py _ 1342s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_storagebox_snapshot_plan.py'. 1342s Hint: make sure your test modules/packages have valid Python names. 1342s Traceback: 1342s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1342s return _bootstrap._gcd_import(name[level:], package, level) 1342s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1342s assertion_rewriting_hook.exec_module(module) 1342s tests/unit/plugins/modules/test_storagebox_snapshot_plan.py:9: in 1342s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1342s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1342s _ ERROR collecting tests/unit/plugins/modules/test_storagebox_snapshot_plan_info.py _ 1342s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_storagebox_snapshot_plan_info.py'. 1342s Hint: make sure your test modules/packages have valid Python names. 1342s Traceback: 1342s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1342s return _bootstrap._gcd_import(name[level:], package, level) 1342s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1342s assertion_rewriting_hook.exec_module(module) 1342s tests/unit/plugins/modules/test_storagebox_snapshot_plan_info.py:9: in 1342s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1342s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1342s _________ ERROR collecting tests/unit/plugins/modules/test_v_switch.py _________ 1342s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_v_switch.py'. 1342s Hint: make sure your test modules/packages have valid Python names. 1342s Traceback: 1342s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1342s return _bootstrap._gcd_import(name[level:], package, level) 1342s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1342s assertion_rewriting_hook.exec_module(module) 1342s tests/unit/plugins/modules/test_v_switch.py:12: in 1342s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1342s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1342s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot/tests/output/junit/python3.13-modules-units.xml - 1342s =========================== short test summary info ============================ 1342s ERROR tests/unit/plugins/modules/test_boot.py 1342s ERROR tests/unit/plugins/modules/test_failover_ip.py 1342s ERROR tests/unit/plugins/modules/test_failover_ip_info.py 1342s ERROR tests/unit/plugins/modules/test_firewall.py 1342s ERROR tests/unit/plugins/modules/test_firewall_info.py 1342s ERROR tests/unit/plugins/modules/test_reset.py 1342s ERROR tests/unit/plugins/modules/test_reverse_dns.py 1342s ERROR tests/unit/plugins/modules/test_server.py 1342s ERROR tests/unit/plugins/modules/test_server_info.py 1342s ERROR tests/unit/plugins/modules/test_ssh_key.py 1342s ERROR tests/unit/plugins/modules/test_ssh_key_info.py 1342s ERROR tests/unit/plugins/modules/test_storagebox.py 1342s ERROR tests/unit/plugins/modules/test_storagebox_info.py 1342s ERROR tests/unit/plugins/modules/test_storagebox_set_password.py 1342s ERROR tests/unit/plugins/modules/test_storagebox_snapshot_plan.py 1342s ERROR tests/unit/plugins/modules/test_storagebox_snapshot_plan_info.py 1342s ERROR tests/unit/plugins/modules/test_v_switch.py 1342s ============================== 17 errors in 1.30s ============================== 1342s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot tests/unit/plugins/modules/test_boot.py tests/unit/plugins/modules/test_failover_ip.py tests/unit/plugins/modules/test_failover_ip_info.py tests/unit/plugins/modules/test_firewall.py tests/unit/plugins/modules/test_firewall_info.py tests/unit/plugins/modules/test_reset.py tests/unit/plugins/modules/test_reverse_dns.py tests/unit/plugins/modules/test_server.py tests/unit/plugins/modules/test_server_info.py tests/unit/plugins/modules/test_ssh_key.py tests/unit/plugins/modules/test_ssh_key_info.py tests/unit/plugins/modules/test_storagebox.py tests/unit/plugins/modules/test_storagebox_info.py tests/unit/plugins/modules/test_storagebox_set_password.py tests/unit/plugins/modules/test_storagebox_snapshot_plan.py tests/unit/plugins/modules/test_storagebox_snapshot_plan_info.py tests/unit/plugins/modules/test_v_switch.py" returned exit status 1. 1343s ## return code is 1 1343s 1343s 1343s 1343s ############################################################ 1343s ############################################################ 1343s #### Running FLAKY tests in ansible_collections/community/library_inventory_filtering_v1 1343s ############################################################ 1343s ############################################################ 1343s Unit test controller with Python 3.13 1345s ============================= test session starts ============================== 1345s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1345s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/library_inventory_filtering_v1 1345s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1345s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 1345s created: 8/8 workers 1345s 8 workers [0 items] 1345s 1345s 1345s ==================================== ERRORS ==================================== 1345s __ ERROR collecting tests/unit/plugins/plugin_utils/test_inventory_filter.py ___ 1345s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/library_inventory_filtering_v1/tests/unit/plugins/plugin_utils/test_inventory_filter.py'. 1345s Hint: make sure your test modules/packages have valid Python names. 1345s Traceback: 1345s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1345s return _bootstrap._gcd_import(name[level:], package, level) 1345s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1345s assertion_rewriting_hook.exec_module(module) 1345s tests/unit/plugins/plugin_utils/test_inventory_filter.py:14: in 1345s from ansible_collections.community.internal_test_tools.tests.unit.mock.loader import DictDataLoader 1345s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1345s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/library_inventory_filtering_v1/tests/output/junit/python3.13-controller-units.xml - 1345s =========================== short test summary info ============================ 1345s ERROR tests/unit/plugins/plugin_utils/test_inventory_filter.py 1345s =============================== 1 error in 1.50s =============================== 1345s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/library_inventory_filtering_v1/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/library_inventory_filtering_v1 --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/library_inventory_filtering_v1 tests/unit/plugins/plugin_utils/test_inventory_filter.py" returned exit status 1. 1345s ## return code is 1 1345s 1345s 1345s 1345s ############################################################ 1345s ############################################################ 1345s #### Running FLAKY tests in ansible_collections/infoblox/nios_modules 1345s ############################################################ 1345s ############################################################ 1345s Unit test modules with Python 3.13 1347s ============================= test session starts ============================== 1347s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1347s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/infoblox/nios_modules 1347s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1347s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 1347s created: 8/8 workers 1347s 8 workers [91 items] 1347s 1348s FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF [ 79%] 1349s FFFFFFFFFFFFFFFFFFF [100%] 1349s =================================== FAILURES =================================== 1349s _______________ TestNiosARecordModule.test_nios_a_record_remove ________________ 1349s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosARecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_a_record.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _______________ TestNiosDnsViewModule.test_nios_dns_view_create ________________ 1349s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosDnsViewModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_dns_view.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ______ TestNiosExtensibleAttributeModule.test_create_extensible_attribute ______ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosExtensibleAttributeModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_extensible_attribute.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _________ TestNiosARecordModule.test_nios_a_record_update_record_name __________ 1349s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosARecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_a_record.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ______ TestNiosAAAARecordModule.test_nios_aaaa_record_update_record_name _______ 1349s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosAAAARecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_aaaa_record.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ___________ TestNiosCNameRecordModule.test_nios_cname_record_remove ____________ 1349s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosCNameRecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_cname_record.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ______ TestNiosExtensibleAttributeModule.test_remove_extensible_attribute ______ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosExtensibleAttributeModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_extensible_attribute.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ____________ TestNiosAAAARecordModule.test_nios_aaaa_record_remove _____________ 1349s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosAAAARecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = pFATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/infoblox/nios_modules/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/infoblox/nios_modules --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/infoblox/nios_modules tests/unit/plugins/modules/test_extensible_attribute.py tests/unit/plugins/modules/test_nios_a_record.py tests/unit/plugins/modules/test_nios_aaaa_record.py tests/unit/plugins/modules/test_nios_cname_record.py tests/unit/plugins/modules/test_nios_dns_view.py tests/unit/plugins/modules/test_nios_dtc_monitor_http.py tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py tests/unit/plugins/modules/test_nios_dtc_topology.py tests/unit/plugins/modules/test_nios_fixed_address.py tests/unit/plugins/modules/test_nios_host_record.py tests/unit/plugins/modules/test_nios_member.py tests/unit/plugins/modules/test_nios_module.py tests/unit/plugins/modules/test_nios_mx_record.py tests/unit/plugins/modules/test_nios_naptr_record.py tests/unit/plugins/modules/test_nios_network.py tests/unit/plugins/modules/test_nios_network_view.py tests/unit/plugins/modules/test_nios_nsgroup.py tests/unit/plugins/modules/test_nios_ptr_record.py tests/unit/plugins/modules/test_nios_srv_record.py tests/unit/plugins/modules/test_nios_zone.py" returned exit status 1. 1349s atch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_aaaa_record.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ____________ TestNiosAAAARecordModule.test_nios_aaaa_record_create _____________ 1349s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosAAAARecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_aaaa_record.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ___________ TestNiosCNameRecordModule.test_nios_cname_record_create ____________ 1349s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosCNameRecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_cname_record.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ________ TestNiosExtensibleAttributeModule.test_nios_ea_update_comment _________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosExtensibleAttributeModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_extensible_attribute.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ___________ TestNiosARecordModule.test_nios_a_record_update_comment ____________ 1349s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosARecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_a_record.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _______________ TestNiosDnsViewModule.test_nios_dns_view_remove ________________ 1349s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosDnsViewModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_dns_view.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _______ TestNiosCNameRecordModule.test_nios_cname_record_update_comment ________ 1349s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosCNameRecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_cname_record.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _______________ TestNiosARecordModule.test_nios_a_record_create ________________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosARecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_a_record.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ________ TestNiosAAAARecordModule.test_nios_aaaa_record_update_comment _________ 1349s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosAAAARecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_aaaa_record.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _____ TestNiosDtcTcpMonitorModule.test_nios_dtc_monitor_pdp_update_comment _____ 1349s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosDtcTcpMonitorModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ___________ TestNiosDnsViewModule.test_nios_dns_view_update_comment ____________ 1349s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosDnsViewModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_dns_view.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ____ TestNiosDtcIcmpMonitorModule.test_nios_dtc_monitor_icmp_update_comment ____ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosDtcIcmpMonitorModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ____ TestNiosDtcHttpMonitorModule.test_nios_dtc_monitor_http_update_comment ____ 1349s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosDtcHttpMonitorModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_dtc_monitor_http.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _____ TestNiosDtcSipMonitorModule.test_nios_dtc_monitor_sip_update_comment _____ 1349s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosDtcSipMonitorModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _________ TestNiosDtcTcpMonitorModule.test_nios_dtc_monitor_tcp_create _________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosDtcTcpMonitorModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ________ TestNiosDtcSnmpMonitorModule.test_nios_dtc_monitor_snmp_remove ________ 1349s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosDtcSnmpMonitorModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _____ TestNiosDtcTcpMonitorModule.test_nios_dtc_monitor_tcp_update_comment _____ 1349s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosDtcTcpMonitorModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ________ TestNiosDtcIcmpMonitorModule.test_nios_dtc_monitor_icmp_create ________ 1349s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosDtcIcmpMonitorModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ________ TestNiosDtcHttpMonitorModule.test_nios_dtc_monitor_http_create ________ 1349s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosDtcHttpMonitorModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_dtc_monitor_http.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _________ TestNiosDtcTcpMonitorModule.test_nios_dtc_monitor_pdp_create _________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosDtcTcpMonitorModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _________ TestNiosDtcSipMonitorModule.test_nios_dtc_monitor_sip_create _________ 1349s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosDtcSipMonitorModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ________ TestNiosDtcSnmpMonitorModule.test_nios_dtc_monitor_snmp_create ________ 1349s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosDtcSnmpMonitorModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ____ TestNiosDtcSnmpMonitorModule.test_nios_dtc_monitor_snmp_update_comment ____ 1349s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosDtcSnmpMonitorModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _________ TestNiosDtcTcpMonitorModule.test_nios_dtc_monitor_tcp_remove _________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosDtcTcpMonitorModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ___________ TestNiosDtcTopologyModule.test_nios_dtc_topology_create ____________ 1349s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosDtcTopologyModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_dtc_topology.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ________ TestNiosDtcHttpMonitorModule.test_nios_dtc_monitor_http_remove ________ 1349s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosDtcHttpMonitorModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_dtc_monitor_http.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _________ TestNiosDtcTcpMonitorModule.test_nios_dtc_monitor_pdp_remove _________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosDtcTcpMonitorModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _________ TestNiosDtcSipMonitorModule.test_nios_dtc_monitor_sip_remove _________ 1349s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosDtcSipMonitorModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ________ TestNiosDtcIcmpMonitorModule.test_nios_dtc_monitor_icmp_remove ________ 1349s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosDtcIcmpMonitorModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ___________ TestNiosDtcTopologyModule.test_nios_dtc_topology_remove ____________ 1349s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosDtcTopologyModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_dtc_topology.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ________ TestNiosFixedAddressModule.test_nios_fixed_address_ipv4_remove ________ 1349s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosFixedAddressModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_fixed_address.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ________ TestNiosFixedAddressModule.test_nios_fixed_address_ipv6_remove ________ 1349s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosFixedAddressModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_fixed_address.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ________ TestNiosFixedAddressModule.test_nios_fixed_address_ipv4_create ________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosFixedAddressModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_fixed_address.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _________________ TestNiosMemberModule.test_nios_member_create _________________ 1349s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosMemberModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_member.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ______ TestNiosHostRecordModule.test_nios_host_record_update_record_name _______ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s 1349s super(TestNiosHostRecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_host_record.py:43: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ________ TestNiosHostRecordModule.test_nios_host_record_update_comment _________ 1349s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s 1349s super(TestNiosHostRecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_host_record.py:43: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ____________ TestNiosHostRecordModule.test_nios_host_record_remove _____________ 1349s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s 1349s super(TestNiosHostRecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_host_record.py:43: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _______ TestNiosDtcTopologyModule.test_nios_dtc_topology_update_comment ________ 1349s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosDtcTopologyModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_dtc_topology.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ________ TestNiosFixedAddressModule.test_nios_fixed_address_ipv6_create ________ 1349s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosFixedAddressModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_fixed_address.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ____________ TestNiosHostRecordModule.test_nios_host_record_create _____________ 1349s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s 1349s super(TestNiosHostRecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_host_record.py:43: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _________________ TestNiosMemberModule.test_nios_member_update _________________ 1349s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosMemberModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_member.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _____ TestNiosFixedAddressModule.test_nios_fixed_address_ipv4_dhcp_update ______ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosFixedAddressModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_fixed_address.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _________________ TestNiosMemberModule.test_nios_member_remove _________________ 1349s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosMemberModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_member.py:40: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ______________ TestNiosMXRecordModule.test_nios_mx_record_create _______________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosMXRecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_mx_record.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s __________ TestNiosMXRecordModule.test_nios_mx_record_update_comment ___________ 1349s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosMXRecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_mx_record.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ___________ TestNiosNAPTRRecordModule.test_nios_naptr_record_create ____________ 1349s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosNAPTRRecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_naptr_record.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ______________ TestNiosMXRecordModule.test_nios_mx_record_remove _______________ 1349s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosMXRecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_mx_record.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ___________ TestNiosNAPTRRecordModule.test_nios_naptr_record_remove ____________ 1349s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosNAPTRRecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_naptr_record.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _____________ TestNiosNetworkModule.test_nios_network_ipv4_create ______________ 1349s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosNetworkModule, self).setUp() 1349s self.module = MagicMock( 1349s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1349s ) 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch( 1349s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1349s ) 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_network.py:44: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _______ TestNiosNAPTRRecordModule.test_nios_naptr_record_update_comment ________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosNAPTRRecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_naptr_record.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ___________ TestNiosNetworkModule.test_nios_network_ipv4_dhcp_update ___________ 1349s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosNetworkModule, self).setUp() 1349s self.module = MagicMock( 1349s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1349s ) 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch( 1349s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1349s ) 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_network.py:44: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _ TestNiosNetworkModule.test_nios_network_ipv4_create_with_use_logic_filter_rules _ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosNetworkModule, self).setUp() 1349s self.module = MagicMock( 1349s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1349s ) 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch( 1349s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1349s ) 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_network.py:44: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _____________ TestNiosNetworkModule.test_nios_network_ipv6_create ______________ 1349s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosNetworkModule, self).setUp() 1349s self.module = MagicMock( 1349s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1349s ) 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch( 1349s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1349s ) 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_network.py:44: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _ TestNiosNetworkModule.test_nios_network_ipv4_update_with_use_logic_filter_rules _ 1349s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosNetworkModule, self).setUp() 1349s self.module = MagicMock( 1349s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1349s ) 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch( 1349s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1349s ) 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_network.py:44: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _____________ TestNiosNetworkModule.test_nios_network_ipv4_remove ______________ 1349s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosNetworkModule, self).setUp() 1349s self.module = MagicMock( 1349s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1349s ) 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch( 1349s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1349s ) 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_network.py:44: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ___________ TestNiosNetworkModule.test_nios_network_ipv6_dhcp_update ___________ 1349s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosNetworkModule, self).setUp() 1349s self.module = MagicMock( 1349s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1349s ) 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch( 1349s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1349s ) 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_network.py:44: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _____________ TestNiosNetworkModule.test_nios_network_ipv6_remove ______________ 1349s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosNetworkModule, self).setUp() 1349s self.module = MagicMock( 1349s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1349s ) 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch( 1349s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1349s ) 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_network.py:44: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _________ TestNiosNetworkModule.test_nios_networkcontainer_ipv4_create _________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosNetworkModule, self).setUp() 1349s self.module = MagicMock( 1349s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1349s ) 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch( 1349s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1349s ) 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_network.py:44: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _________ TestNiosNetworkModule.test_nios_networkcontainer_ipv6_create _________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosNetworkModule, self).setUp() 1349s self.module = MagicMock( 1349s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1349s ) 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch( 1349s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1349s ) 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_network.py:44: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _________ TestNiosNetworkModule.test_nios_networkcontainer_ipv4_remove _________ 1349s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosNetworkModule, self).setUp() 1349s self.module = MagicMock( 1349s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1349s ) 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch( 1349s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1349s ) 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_network.py:44: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ___________ TestNiosNetworkViewModule.test_nios_network_view_create ____________ 1349s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosNetworkViewModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_network_view.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ___________ TestNiosNetworkViewModule.test_nios_network_view_remove ____________ 1349s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosNetworkViewModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_network_view.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _______ TestNiosNetworkViewModule.test_nios_network_view_update_comment ________ 1349s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosNetworkViewModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_network_view.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _________ TestNiosNetworkViewModule.test_nios_network_view_update_name _________ 1349s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosNetworkViewModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_network_view.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ________________ TestNiosNSGroupModule.test_nios_nsgroup_create ________________ 1349s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s 1349s super(TestNiosNSGroupModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_nsgroup.py:43: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ________________ TestNiosNSGroupModule.test_nios_nsgroup_remove ________________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s 1349s super(TestNiosNSGroupModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_nsgroup.py:43: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _____________ TestNiosPTRRecordModule.test_nios_ptr_record_remove ______________ 1349s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s 1349s super(TestNiosPTRRecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_ptr_record.py:43: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _____________ TestNiosPTRRecordModule.test_nios_ptr_record_create ______________ 1349s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s 1349s super(TestNiosPTRRecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_ptr_record.py:43: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _____________ TestNiosPTRRecordModule.test_nios_ptr6_record_create _____________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s 1349s super(TestNiosPTRRecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_ptr_record.py:43: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ____________ TestNiosNSGroupModule.test_nios_nsgroup_update_comment ____________ 1349s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s 1349s super(TestNiosNSGroupModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_nsgroup.py:43: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _________ TestNiosPTRRecordModule.test_nios_ptr_record_update_comment __________ 1349s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s 1349s super(TestNiosPTRRecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_ptr_record.py:43: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _____ TestNiosPTRRecordModule.test_nios_ptr_record_update_record_ptrdname ______ 1349s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s 1349s super(TestNiosPTRRecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_ptr_record.py:43: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _____________ TestNiosSRVRecordModule.test_nios_srv_record_create ______________ 1349s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosSRVRecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_srv_record.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _____________ TestNiosSRVRecordModule.test_nios_srv_record_remove ______________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosSRVRecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_srv_record.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ___ TestNiosZoneModule.test_nios_zone_create_using_grid_primary_secondaries ____ 1349s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosZoneModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_zone.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _________ TestNiosSRVRecordModule.test_nios_srv_record_update_comment __________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosSRVRecordModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_srv_record.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _______ TestNiosZoneModule.test_nios_zone_create_using_name_server_group _______ 1349s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosZoneModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_zone.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ___________________ TestNiosZoneModule.test_nios_zone_create ___________________ 1349s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosZoneModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_zone.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s __________ TestNiosZoneModule.test_nios_zone_create_using_zone_format __________ 1349s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosZoneModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_zone.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ___ TestNiosZoneModule.test_nios_zone_remove_using_grid_primary_secondaries ____ 1349s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosZoneModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_zone.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s ___________________ TestNiosZoneModule.test_nios_zone_remove ___________________ 1349s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosZoneModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_zone.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _______ TestNiosZoneModule.test_nios_zone_remove_using_using_zone_format _______ 1349s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosZoneModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_zone.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _______________ TestNiosZoneModule.test_nios_zone_update_comment _______________ 1349s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosZoneModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_zone.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s _______ TestNiosZoneModule.test_nios_zone_remove_using_name_server_group _______ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def setUp(self): 1349s super(TestNiosZoneModule, self).setUp() 1349s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1349s self.module.check_mode = False 1349s self.module.params = {'provider': None} 1349s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1349s self.exec_command = self.mock_wapi.start() 1349s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1349s self.mock_wapi_run.start() 1349s > self.load_config = self.mock_wapi_run.start() 1349s 1349s tests/unit/plugins/modules/test_nios_zone.py:42: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s /usr/lib/python3.13/unittest/mock.py:1654: in start 1349s result = self.__enter__() 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s self = 1349s 1349s def __enter__(self): 1349s """Perform the patch.""" 1349s if self.is_started: 1349s > raise RuntimeError("Patch is already started") 1349s E RuntimeError: Patch is already started 1349s 1349s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1349s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/infoblox/nios_modules/tests/output/junit/python3.13-modules-units.xml - 1349s =========================== short test summary info ============================ 1349s FAILED tests/unit/plugins/modules/test_nios_a_record.py::TestNiosARecordModule::test_nios_a_record_remove 1349s FAILED tests/unit/plugins/modules/test_nios_dns_view.py::TestNiosDnsViewModule::test_nios_dns_view_create 1349s FAILED tests/unit/plugins/modules/test_extensible_attribute.py::TestNiosExtensibleAttributeModule::test_create_extensible_attribute 1349s FAILED tests/unit/plugins/modules/test_nios_a_record.py::TestNiosARecordModule::test_nios_a_record_update_record_name 1349s FAILED tests/unit/plugins/modules/test_nios_aaaa_record.py::TestNiosAAAARecordModule::test_nios_aaaa_record_update_record_name 1349s FAILED tests/unit/plugins/modules/test_nios_cname_record.py::TestNiosCNameRecordModule::test_nios_cname_record_remove 1349s FAILED tests/unit/plugins/modules/test_extensible_attribute.py::TestNiosExtensibleAttributeModule::test_remove_extensible_attribute 1349s FAILED tests/unit/plugins/modules/test_nios_aaaa_record.py::TestNiosAAAARecordModule::test_nios_aaaa_record_remove 1349s FAILED tests/unit/plugins/modules/test_nios_aaaa_record.py::TestNiosAAAARecordModule::test_nios_aaaa_record_create 1349s FAILED tests/unit/plugins/modules/test_nios_cname_record.py::TestNiosCNameRecordModule::test_nios_cname_record_create 1349s FAILED tests/unit/plugins/modules/test_extensible_attribute.py::TestNiosExtensibleAttributeModule::test_nios_ea_update_comment 1349s FAILED tests/unit/plugins/modules/test_nios_a_record.py::TestNiosARecordModule::test_nios_a_record_update_comment 1349s FAILED tests/unit/plugins/modules/test_nios_dns_view.py::TestNiosDnsViewModule::test_nios_dns_view_remove 1349s FAILED tests/unit/plugins/modules/test_nios_cname_record.py::TestNiosCNameRecordModule::test_nios_cname_record_update_comment 1349s FAILED tests/unit/plugins/modules/test_nios_a_record.py::TestNiosARecordModule::test_nios_a_record_create 1349s FAILED tests/unit/plugins/modules/test_nios_aaaa_record.py::TestNiosAAAARecordModule::test_nios_aaaa_record_update_comment 1349s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py::TestNiosDtcTcpMonitorModule::test_nios_dtc_monitor_pdp_update_comment 1349s FAILED tests/unit/plugins/modules/test_nios_dns_view.py::TestNiosDnsViewModule::test_nios_dns_view_update_comment 1349s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py::TestNiosDtcIcmpMonitorModule::test_nios_dtc_monitor_icmp_update_comment 1349s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_http.py::TestNiosDtcHttpMonitorModule::test_nios_dtc_monitor_http_update_comment 1349s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py::TestNiosDtcSipMonitorModule::test_nios_dtc_monitor_sip_update_comment 1349s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py::TestNiosDtcTcpMonitorModule::test_nios_dtc_monitor_tcp_create 1349s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py::TestNiosDtcSnmpMonitorModule::test_nios_dtc_monitor_snmp_remove 1349s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py::TestNiosDtcTcpMonitorModule::test_nios_dtc_monitor_tcp_update_comment 1349s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py::TestNiosDtcIcmpMonitorModule::test_nios_dtc_monitor_icmp_create 1349s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_http.py::TestNiosDtcHttpMonitorModule::test_nios_dtc_monitor_http_create 1349s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py::TestNiosDtcTcpMonitorModule::test_nios_dtc_monitor_pdp_create 1349s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py::TestNiosDtcSipMonitorModule::test_nios_dtc_monitor_sip_create 1349s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py::TestNiosDtcSnmpMonitorModule::test_nios_dtc_monitor_snmp_create 1349s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py::TestNiosDtcSnmpMonitorModule::test_nios_dtc_monitor_snmp_update_comment 1349s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py::TestNiosDtcTcpMonitorModule::test_nios_dtc_monitor_tcp_remove 1349s FAILED tests/unit/plugins/modules/test_nios_dtc_topology.py::TestNiosDtcTopologyModule::test_nios_dtc_topology_create 1349s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_http.py::TestNiosDtcHttpMonitorModule::test_nios_dtc_monitor_http_remove 1349s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py::TestNiosDtcTcpMonitorModule::test_nios_dtc_monitor_pdp_remove 1349s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py::TestNiosDtcSipMonitorModule::test_nios_dtc_monitor_sip_remove 1349s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py::TestNiosDtcIcmpMonitorModule::test_nios_dtc_monitor_icmp_remove 1349s FAILED tests/unit/plugins/modules/test_nios_dtc_topology.py::TestNiosDtcTopologyModule::test_nios_dtc_topology_remove 1349s FAILED tests/unit/plugins/modules/test_nios_fixed_address.py::TestNiosFixedAddressModule::test_nios_fixed_address_ipv4_remove 1349s FAILED tests/unit/plugins/modules/test_nios_fixed_address.py::TestNiosFixedAddressModule::test_nios_fixed_address_ipv6_remove 1349s FAILED tests/unit/plugins/modules/test_nios_fixed_address.py::TestNiosFixedAddressModule::test_nios_fixed_address_ipv4_create 1349s FAILED tests/unit/plugins/modules/test_nios_member.py::TestNiosMemberModule::test_nios_member_create 1349s FAILED tests/unit/plugins/modules/test_nios_host_record.py::TestNiosHostRecordModule::test_nios_host_record_update_record_name 1349s FAILED tests/unit/plugins/modules/test_nios_host_record.py::TestNiosHostRecordModule::test_nios_host_record_update_comment 1349s FAILED tests/unit/plugins/modules/test_nios_host_record.py::TestNiosHostRecordModule::test_nios_host_record_remove 1349s FAILED tests/unit/plugins/modules/test_nios_dtc_topology.py::TestNiosDtcTopologyModule::test_nios_dtc_topology_update_comment 1349s FAILED tests/unit/plugins/modules/test_nios_fixed_address.py::TestNiosFixedAddressModule::test_nios_fixed_address_ipv6_create 1349s FAILED tests/unit/plugins/modules/test_nios_host_record.py::TestNiosHostRecordModule::test_nios_host_record_create 1349s FAILED tests/unit/plugins/modules/test_nios_member.py::TestNiosMemberModule::test_nios_member_update 1349s FAILED tests/unit/plugins/modules/test_nios_fixed_address.py::TestNiosFixedAddressModule::test_nios_fixed_address_ipv4_dhcp_update 1349s FAILED tests/unit/plugins/modules/test_nios_member.py::TestNiosMemberModule::test_nios_member_remove 1349s FAILED tests/unit/plugins/modules/test_nios_mx_record.py::TestNiosMXRecordModule::test_nios_mx_record_create 1349s FAILED tests/unit/plugins/modules/test_nios_mx_record.py::TestNiosMXRecordModule::test_nios_mx_record_update_comment 1349s FAILED tests/unit/plugins/modules/test_nios_naptr_record.py::TestNiosNAPTRRecordModule::test_nios_naptr_record_create 1349s FAILED tests/unit/plugins/modules/test_nios_mx_record.py::TestNiosMXRecordModule::test_nios_mx_record_remove 1349s FAILED tests/unit/plugins/modules/test_nios_naptr_record.py::TestNiosNAPTRRecordModule::test_nios_naptr_record_remove 1349s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv4_create 1349s FAILED tests/unit/plugins/modules/test_nios_naptr_record.py::TestNiosNAPTRRecordModule::test_nios_naptr_record_update_comment 1349s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv4_dhcp_update 1349s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv4_create_with_use_logic_filter_rules 1349s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv6_create 1349s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv4_update_with_use_logic_filter_rules 1349s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv4_remove 1349s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv6_dhcp_update 1349s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv6_remove 1349s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_networkcontainer_ipv4_create 1349s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_networkcontainer_ipv6_create 1349s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_networkcontainer_ipv4_remove 1349s FAILED tests/unit/plugins/modules/test_nios_network_view.py::TestNiosNetworkViewModule::test_nios_network_view_create 1349s FAILED tests/unit/plugins/modules/test_nios_network_view.py::TestNiosNetworkViewModule::test_nios_network_view_remove 1349s FAILED tests/unit/plugins/modules/test_nios_network_view.py::TestNiosNetworkViewModule::test_nios_network_view_update_comment 1349s FAILED tests/unit/plugins/modules/test_nios_network_view.py::TestNiosNetworkViewModule::test_nios_network_view_update_name 1349s FAILED tests/unit/plugins/modules/test_nios_nsgroup.py::TestNiosNSGroupModule::test_nios_nsgroup_create 1349s FAILED tests/unit/plugins/modules/test_nios_nsgroup.py::TestNiosNSGroupModule::test_nios_nsgroup_remove 1349s FAILED tests/unit/plugins/modules/test_nios_ptr_record.py::TestNiosPTRRecordModule::test_nios_ptr_record_remove 1349s FAILED tests/unit/plugins/modules/test_nios_ptr_record.py::TestNiosPTRRecordModule::test_nios_ptr_record_create 1349s FAILED tests/unit/plugins/modules/test_nios_ptr_record.py::TestNiosPTRRecordModule::test_nios_ptr6_record_create 1349s FAILED tests/unit/plugins/modules/test_nios_nsgroup.py::TestNiosNSGroupModule::test_nios_nsgroup_update_comment 1349s FAILED tests/unit/plugins/modules/test_nios_ptr_record.py::TestNiosPTRRecordModule::test_nios_ptr_record_update_comment 1349s FAILED tests/unit/plugins/modules/test_nios_ptr_record.py::TestNiosPTRRecordModule::test_nios_ptr_record_update_record_ptrdname 1349s FAILED tests/unit/plugins/modules/test_nios_srv_record.py::TestNiosSRVRecordModule::test_nios_srv_record_create 1349s FAILED tests/unit/plugins/modules/test_nios_srv_record.py::TestNiosSRVRecordModule::test_nios_srv_record_remove 1349s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_create_using_grid_primary_secondaries 1349s FAILED tests/unit/plugins/modules/test_nios_srv_record.py::TestNiosSRVRecordModule::test_nios_srv_record_update_comment 1349s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_create_using_name_server_group 1349s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_create 1349s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_create_using_zone_format 1349s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_remove_using_grid_primary_secondaries 1349s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_remove 1349s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_remove_using_using_zone_format 1349s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_update_comment 1349s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_remove_using_name_server_group 1349s ============================== 91 failed in 3.11s ============================== 1349s ## return code is 1 1349s 1349s 1349s 1349s ############################################################ 1349s ############################################################ 1349s #### Running FLAKY tests in ansible_collections/junipernetworks/junos 1349s ############################################################ 1349s ############################################################ 1349s Unit test controller with Python 3.13 1351s ============================= test session starts ============================== 1351s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1351s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/junipernetworks/junos 1351s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1351s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 1351s created: 8/8 workers 1351s 8 workers [305 items] 1351s 1352s ..F.FFFFFFFFFFF.F..FF..F.F.FF....FF..F.F.FFF.F.F.F.FF.F..F...FF.F..FFF.. [ 23%] 1353s .F.F..F.FFF....FF...F.FF.FF.FF.F.FFF.FF.F.F.F.FFFFFFFFF.F.FFF..FF.F.FFF. [ 47%] 1354s F.FF.FFF.FFFFFF.FFFFFF.FFFFFFFFFFFF.FFFFFFFF.FF..F...F.F...FF..FFFF.FFFF [ 70%] 1355s FFFFF....F..F..FF.F.FF...F.F...FF.F..F..FFFFF..FF..F.FF.FFFFFFFFFFFFF.FF [ 94%] 1355s FFFFFF..FFF...FFF [100%] 1355s =================================== FAILURES =================================== 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_001 __ 1355s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_001(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - af_type 1355s - afi 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="evpn", 1355s af_type=[dict(type="signaling", set=True)], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s 1355s commands = [ 1355s '' 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1654: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_007_001 _ 1355s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_007_001(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s defer_initial_multipath_build 1355s maximum_delay 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet6", 1355s af_type=[ 1355s dict( 1355s type="labeled-unicast", 1355s defer_initial_multipath_build=dict( 1355s maximum_delay=1200, 1355s ), 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "1200" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1991: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_globalModule.test_junos_bgp_global_merged_advertise_external ___ 1355s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_global_merged_advertise_external(self): 1355s """ 1355s configure advertise_external attributes: 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s advertise_external=dict(set=True, conditional=True), 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "", 1355s '', 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_global.py:554: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_global.py:1862: in main 1355s result = Bgp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1355s config_xmls = self.set_config(existing_bgp_global_facts) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_015 __ 1355s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_015(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - legacy_redirect_ip_action 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet", 1355s af_type=[ 1355s dict( 1355s type="flow", 1355s legacy_redirect_ip_action=dict( 1355s set=True, 1355s send=True, 1355s receive=True, 1355s ), 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2309: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _ TestJunosBgp_globalModule.test_junos_bgp_global_merged_optimal_route_reflection _ 1355s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_global_merged_optimal_route_reflection(self): 1355s """ 1355s configure optimal_route_reflection attributes: 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s groups=[ 1355s dict( 1355s name="internal", 1355s optimal_route_reflection=dict( 1355s igp_backup="test_igp", 1355s igp_primary="test_primary", 1355s ), 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "internal" 1355s "test_igptest_primary" 1355s "" 1355s "", 1355s '', 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_global.py:794: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_global.py:1862: in main 1355s result = Bgp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1355s config_xmls = self.set_config(existing_bgp_global_facts) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_deleted_031 __ 1355s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_deleted_031(self): 1355s """ 1355s This function generate the commands to to delete bgp_address family completely: 1355s """ 1355s set_module_args(dict(config=dict(), state="deleted")) 1355s commands = [ 1355s '' 1355s "internal" 1355s "ebgp" 1355s '' 1355s '' 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2861: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_023_001 _ 1355s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_023_001(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - prefix_limit 1355s forever: true 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet", 1355s af_type=[ 1355s dict( 1355s type="labeled-unicast", 1355s prefix_limit=dict( 1355s teardown=True, 1355s forever=True, 1355s ), 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2602: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ____________ TestJunosBgp_globalModule.test_junos_bgp_global_delete ____________ 1355s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_global_delete(self): 1355s set_module_args(dict(config=dict(), state="deleted")) 1355s 1355s commands = [ 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s "", 1355s '' 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_global.py:436: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_global.py:1862: in main 1355s result = Bgp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1355s config_xmls = self.set_config(existing_bgp_global_facts) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ____ TestJunosBgp_globalModule.test_junos_bgp_global_merged_routing_options ____ 1355s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_global_merged_routing_options(self): 1355s """ 1355s configure routing-options attributes: 1355s - loops 1355s - as_number 1355s - asdot_notation 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict(as_number="65432", loops=5, asdot_notation=True), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "", 1355s '' 1355s "654325" 1355s "", 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_global.py:469: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_global.py:1862: in main 1355s result = Bgp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1355s config_xmls = self.set_config(existing_bgp_global_facts) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _ TestJunosBgp_globalModule.test_junos_bgp_global_merged_bfd_liveness_detection _ 1355s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_global_merged_bfd_liveness_detection(self): 1355s """ 1355s configure bfd_liveness_detection attributes: 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s bfd_liveness_detection=dict( 1355s minimum_receive_interval=8, 1355s no_adaptation=True, 1355s authentication=dict( 1355s algorithm="keyed-md5", 1355s key_chain="junos", 1355s loose_check=True, 1355s ), 1355s detection_time=dict(threshold=1000000), 1355s transmit_interval=dict( 1355s minimum_interval=20, 1355s threshold=100000, 1355s ), 1355s holddown_interval=20, 1355s multiplier=20, 1355s session_mode="multihop", 1355s version="1", 1355s ), 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "keyed-md5junos" 1355s "" 1355s "1000000" 1355s "20" 1355s "208" 1355s "20" 1355s "multihop" 1355s "1" 1355s "", 1355s '', 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_global.py:600: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_global.py:1862: in main 1355s result = Bgp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1355s config_xmls = self.set_config(existing_bgp_global_facts) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_008 __ 1355s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_008(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - delay_route_advertisements 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet6", 1355s af_type=[ 1355s dict( 1355s type="labeled-unicast", 1355s delay_route_advertisements=dict( 1355s set=True, 1355s max_delay_route_age=12000, 1355s max_delay_routing_uptime=12000, 1355s min_delay_inbound_convergence=8000, 1355s min_delay_routing_uptime=8000, 1355s ), 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "1200012000" 1355s "8000" 1355s "8000" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2033: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_002 __ 1355s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_002(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - accepted_prefix_limit 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="evpn", 1355s af_type=[ 1355s dict( 1355s type="signaling", 1355s accepted_prefix_limit=dict( 1355s limit_threshold=98, 1355s idle_timeout_value=2001, 1355s maximum=20, 1355s ), 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "2098" 1355s "2001" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1693: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_deleted_032 __ 1355s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_deleted_032(self): 1355s """ 1355s This function generate the commands to to delete bgp_address family completely: 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s groups=[ 1355s dict( 1355s name="ebgp", 1355s address_family=[ 1355s dict( 1355s afi="inet", 1355s af_type=[ 1355s dict( 1355s type="unicast", 1355s topology=[ 1355s dict( 1355s name="voice", 1355s community=["target:40:40"], 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="overridden", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "internal" 1355s '' 1355s "ebgp" 1355s '' 1355s '' 1355s "ebgp" 1355s "voice" 1355s "target:40:40" 1355s "" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2911: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ________ TestJunosBgp_globalModule.test_junos_bgp_global_delete_purged _________ 1355s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_global_delete_purged(self): 1355s set_module_args(dict(config=dict(), state="purged")) 1355s 1355s commands = [ 1355s '', 1355s '', 1355s ] 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_global.py:446: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_global.py:1862: in main 1355s result = Bgp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1355s config_xmls = self.set_config(existing_bgp_global_facts) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_globalModule.test_junos_bgp_global_merged_bgp_error_tolerance __ 1355s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_global_merged_bgp_error_tolerance(self): 1355s """ 1355s configure bgp_error_tolerance attributes: 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s bgp_error_tolerance=dict( 1355s set=True, 1355s malformed_route_limit=10, 1355s malformed_update_log_interval=15, 1355s no_malformed_route_limit=True, 1355s ), 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "10" 1355s "15" 1355s "" 1355s "", 1355s '', 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_global.py:628: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_global.py:1862: in main 1355s result = Bgp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1355s config_xmls = self.set_config(existing_bgp_global_facts) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_016 __ 1355s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_016(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - loops 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict(afi="inet", af_type=[dict(type="flow", loops=3)]), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "3" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2334: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_009 __ 1355s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_009(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - entropy_label 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet", 1355s af_type=[ 1355s dict( 1355s type="labeled-unicast", 1355s entropy_label=dict( 1355s set=True, 1355s no_next_hop_validation=True, 1355s ), 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2070: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_024 __ 1355s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_024(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - resolve_vpn 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet", 1355s af_type=[ 1355s dict(type="labeled-unicast", resolve_vpn=True), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2632: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_002_001 _ 1355s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_002_001(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - accepted_prefix_limit 1355s forever: true 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="evpn", 1355s af_type=[ 1355s dict( 1355s type="signaling", 1355s accepted_prefix_limit=dict( 1355s maximum=20, 1355s limit_threshold=98, 1355s forever=True, 1355s ), 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "2098" 1355s "" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1733: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _________ TestJunosBgp_globalModule.test_junos_bgp_global_merge_groups _________ 1355s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_global_merge_groups(self): 1355s """ 1355s description: configure groups attributes: 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s groups=[ 1355s dict( 1355s name="internal", 1355s neighbors=[ 1355s dict( 1355s neighbor_address="11.11.11.11", 1355s peer_as="65534", 1355s out_delay=11, 1355s accept_remote_nexthop=True, 1355s ), 1355s dict( 1355s neighbor_address="11.11.11.12", 1355s peer_as="65534", 1355s out_delay=12, 1355s accept_remote_nexthop=True, 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "internal" 1355s "11.11.11.11" 1355s "65534" 1355s "11" 1355s "11.11.11.12" 1355s "6553412" 1355s "", 1355s '', 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_global.py:513: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_global.py:1862: in main 1355s result = Bgp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1355s config_xmls = self.set_config(existing_bgp_global_facts) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __________ TestJunosBgp_globalModule.test_junos_bgp_global_merged_bmp __________ 1355s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_global_merged_bmp(self): 1355s """ 1355s configure bmp attributes: 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s bmp=dict( 1355s monitor=True, 1355s route_monitoring=dict( 1355s none=True, 1355s post_policy=True, 1355s post_policy_exclude_non_eligible=True, 1355s pre_policy=True, 1355s post_policy_exclude_non_feasible=True, 1355s ), 1355s ), 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "enable" 1355s "" 1355s "", 1355s '', 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_global.py:659: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_global.py:1862: in main 1355s result = Bgp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1355s config_xmls = self.set_config(existing_bgp_global_facts) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_010 __ 1355s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_010(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - explicit_null 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet", 1355s af_type=[ 1355s dict( 1355s type="labeled-unicast", 1355s explicit_null=dict( 1355s set=True, 1355s connected_only=True, 1355s ), 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2107: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_003 __ 1355s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_003(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - add_path 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="evpn", 1355s af_type=[ 1355s dict( 1355s type="signaling", 1355s add_path=dict( 1355s receive=True, 1355s send=dict( 1355s multipath=True, 1355s include_backup_path=1, 1355s path_count=10, 1355s prefix_policy="customer65443", 1355s path_selection_mode=dict( 1355s all_paths=True, 1355s equal_cost_paths=True, 1355s ), 1355s ), 1355s ), 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "10" 1355s "1" 1355s "" 1355s "customer65443" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1782: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_025 __ 1355s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_025(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - rib 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet6", 1355s af_type=[ 1355s dict(type="labeled-unicast", rib="inet.3"), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2662: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_017 __ 1355s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_017(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - no_install 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet", 1355s af_type=[dict(type="flow", no_install=True)], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2362: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ____________ TestJunosBgp_globalModule.test_junos_bgp_global_merged ____________ 1355s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_global_merged(self): 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s damping=True, 1355s description="This is configured with Junos_bgp resource module", 1355s preference="2", 1355s bfd_liveness_detection=dict( 1355s minimum_receive_interval=4, 1355s multiplier=10, 1355s no_adaptation=True, 1355s version="automatic", 1355s ), 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "This is configured with Junos_bgp resource module" 1355s "2" 1355s "4" 1355s "10" 1355s "automatic", 1355s '', 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_global.py:119: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_global.py:1862: in main 1355s result = Bgp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1355s config_xmls = self.set_config(existing_bgp_global_facts) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _________ TestJunosBgp_globalModule.test_junos_bgp_global_merged_bmp_2 _________ 1355s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_global_merged_bmp_2(self): 1355s """ 1355s configure bmp attributes: 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s bmp=dict( 1355s monitor=False, 1355s route_monitoring=dict( 1355s none=False, 1355s post_policy=False, 1355s post_policy_exclude_non_eligible=False, 1355s pre_policy=False, 1355s post_policy_exclude_non_feasible=False, 1355s ), 1355s ), 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "disable" 1355s "", 1355s '', 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_global.py:689: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_global.py:1862: in main 1355s result = Bgp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1355s config_xmls = self.set_config(existing_bgp_global_facts) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_011 __ 1355s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_011(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - extended_nexthop 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet", 1355s af_type=[ 1355s dict(type="unicast", extended_nexthop=True), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2137: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ___________ TestJunosBgp_globalModule.test_junos_bgp_global_rendered ___________ 1355s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_global_rendered(self): 1355s """ 1355s :return: 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s description="This is configured with Junos_bgp resource module", 1355s groups=[dict(name="internal", out_delay=22)], 1355s hold_time=4, 1355s holddown_all_stale_labels=True, 1355s include_mp_next_hop=True, 1355s log_updown=True, 1355s loops=5, 1355s keep="all", 1355s mtu_discovery=True, 1355s out_delay=10, 1355s preference="2", 1355s ), 1355s state="rendered", 1355s ), 1355s ) 1355s 1355s rendered = ( 1355s '' 1355s "" 1355s "" 1355s "This is configured with Junos_bgp resource module" 1355s "4all2" 1355s "10" 1355s "internal22" 1355s "" 1355s ) 1355s > result = self.execute_module(changed=False) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_global.py:295: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_global.py:1862: in main 1355s result = Bgp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:94: in execute_module 1355s config_xmls = self.set_config(existing_bgp_global_facts) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_026 __ 1355s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_026(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - ribgroup_name 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet6", 1355s af_type=[ 1355s dict( 1355s type="labeled-unicast", 1355s ribgroup_name="inet3", 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "inet3" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2695: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _ TestJunosBgp_globalModule.test_junos_bgp_global_merged_advertise_bgp_static __ 1355s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_global_merged_advertise_bgp_static(self): 1355s """ 1355s configure advertise_bgp_static attributes: 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict(advertise_bgp_static=dict(policy="static-to-bgp")), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "static-to-bgp" 1355s "" 1355s "", 1355s '', 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_global.py:533: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_global.py:1862: in main 1355s result = Bgp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1355s config_xmls = self.set_config(existing_bgp_global_facts) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_004 __ 1355s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_004(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - aggregate_label 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="evpn", 1355s af_type=[ 1355s dict( 1355s type="signaling", 1355s aggregate_label=dict( 1355s set=True, 1355s community="cuastomerapn1", 1355s ), 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "cuastomerapn1" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1819: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _______ TestJunosBgp_globalModule.test_junos_bgp_global_merged_egress_te _______ 1355s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_global_merged_egress_te(self): 1355s """ 1355s configure egress_te attributes: 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict(egress_te=dict(set=True, backup_path="sample")), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "sample" 1355s "", 1355s '', 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_global.py:708: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_global.py:1862: in main 1355s result = Bgp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1355s config_xmls = self.set_config(existing_bgp_global_facts) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_018 __ 1355s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_018(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - no_validate 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet", 1355s af_type=[dict(type="flow", no_validate="sample")], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "sample" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2390: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modulFATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/junipernetworks/junos/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/junipernetworks/junos --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/junipernetworks/junos tests/unit/modules/network/junos/test_junos_bgp_address_family.py tests/unit/modules/network/junos/test_junos_bgp_global.py tests/unit/modules/network/junos/test_junos_command.py tests/unit/modules/network/junos/test_junos_config.py tests/unit/modules/network/junos/test_junos_facts.py tests/unit/modules/network/junos/test_junos_hostname.py tests/unit/modules/network/junos/test_junos_interfaces.py tests/unit/modules/network/junos/test_junos_l2_interfaces.py tests/unit/modules/network/junos/test_junos_l3_interfaces.py tests/unit/modules/network/junos/test_junos_logging_global.py tests/unit/modules/network/junos/test_junos_netconf.py tests/unit/modules/network/junos/test_junos_ntp_global.py tests/unit/modules/network/junos/test_junos_ospf_interfaces.py tests/unit/modules/network/junos/test_junos_ospfv2.py tests/unit/modules/network/junos/test_junos_ospfv3.py tests/unit/modules/network/junos/test_junos_package.py tests/unit/modules/network/junos/test_junos_ping.py tests/unit/modules/network/junos/test_junos_prefix_lists.py tests/unit/modules/network/junos/test_junos_routing_instances.py tests/unit/modules/network/junos/test_junos_routing_options.py tests/unit/modules/network/junos/test_junos_rpc.py tests/unit/modules/network/junos/test_junos_scp.py tests/unit/modules/network/junos/test_junos_security_policies.py tests/unit/modules/network/junos/test_junos_security_policies_global.py tests/unit/modules/network/junos/test_junos_security_zones.py tests/unit/modules/network/junos/test_junos_snmp_server.py tests/unit/modules/network/junos/test_junos_vlans.py tests/unit/plugins/terminal/test_junos.py" returned exit status 1. 1355s es/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_012 __ 1355s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_012(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - extended_nexthop_color 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet6", 1355s af_type=[ 1355s dict( 1355s type="unicast", 1355s extended_nexthop_color=True, 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2170: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ________ TestJunosBgp_globalModule.test_junos_bgp_global_rendered_empty ________ 1355s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_global_rendered_empty(self): 1355s """ 1355s :return: 1355s """ 1355s set_module_args(dict(config=dict(description=""), state="rendered")) 1355s rendered = "" 1355s > result = self.execute_module(changed=False) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_global.py:304: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_global.py:1862: in main 1355s result = Bgp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:94: in execute_module 1355s config_xmls = self.set_config(existing_bgp_global_facts) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_005 __ 1355s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_005(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - aigp 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet6", 1355s af_type=[ 1355s dict( 1355s type="labeled-unicast", 1355s aigp=dict(set=True), 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1852: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _ TestJunosBgp_globalModule.test_junos_bgp_global_merged_egress_te_backup_paths _ 1355s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_global_merged_egress_te_backup_paths(self): 1355s """ 1355s configure egress_te_backup_paths attributes: 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s egress_te_backup_paths=dict( 1355s templates=[ 1355s dict( 1355s path_name="temp", 1355s ip_forward=dict(set=True, rti_name="sample"), 1355s peers=["10.10.10.10", "11.11.11.11"], 1355s remote_nexthop="11.1.1.1", 1355s ), 1355s ], 1355s ), 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "temp" 1355s "10.10.10.1011.11.11.11" 1355s "11.1.1.1" 1355s "" 1355s "", 1355s '', 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_global.py:741: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_global.py:1862: in main 1355s result = Bgp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1355s config_xmls = self.set_config(existing_bgp_global_facts) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_027 __ 1355s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_027(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - route_refresh_priority_expedited 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet6", 1355s af_type=[ 1355s dict( 1355s type="labeled-unicast", 1355s route_refresh_priority_expedited=True, 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2729: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ___________ TestJunosBgp_globalModule.test_junos_bgp_global_replaced ___________ 1355s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_global_replaced(self): 1355s """ 1355s :return: 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s accept_remote_nexthop=True, 1355s advertise_from_main_vpn_tables=True, 1355s advertise_inactive=True, 1355s as_number="65432", 1355s authentication_algorithm="md5", 1355s bgp_error_tolerance=dict(malformed_route_limit=20000000), 1355s damping=True, 1355s description="This is configured with Junos_bgp resource module", 1355s groups=[ 1355s dict(name="internal", out_delay=22), 1355s dict(name="external", out_delay=20), 1355s ], 1355s hold_time=4, 1355s holddown_all_stale_labels=True, 1355s log_updown=True, 1355s keep="all", 1355s mtu_discovery=True, 1355s no_precision_timers=True, 1355s no_advertise_peer_as=True, 1355s no_aggregator_id=True, 1355s out_delay=10, 1355s preference="2", 1355s ), 1355s state="replaced", 1355s ), 1355s ) 1355s 1355s commands = [ 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s '' 1355s "" 1355s "" 1355s "" 1355s "" 1355s "md5" 1355s "This is configured with Junos_bgp resource module" 1355s "4all2" 1355s "10" 1355s "20000000" 1355s "internal" 1355s "22external" 1355s "20", 1355s '' 1355s '' 1355s "65432", 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_global.py:233: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_global.py:1862: in main 1355s result = Bgp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1355s config_xmls = self.set_config(existing_bgp_global_facts) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_013 __ 1355s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_013(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - graceful_restart_forwarding_state_bit: from-fib 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet", 1355s af_type=[ 1355s dict( 1355s type="unicast", 1355s graceful_restart_forwarding_state_bit="from-fib", 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "from-fib" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2204: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_005_001 _ 1355s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_005_001(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - aigp 1355s disable: true 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet6", 1355s af_type=[ 1355s dict( 1355s type="labeled-unicast", 1355s aigp=dict(disable=True), 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1887: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _____ TestJunosBgp_globalModule.test_junos_bgp_global_merged_groups_allow ______ 1355s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_global_merged_groups_allow(self): 1355s """ 1355s configure allow attributes: 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s groups=[dict(name="internal", allow=["all", "1.1.1.0/24"])], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "internalall" 1355s "1.1.1.0/24" 1355s "", 1355s '', 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_global.py:763: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_global.py:1862: in main 1355s result = Bgp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1355s config_xmls = self.set_config(existing_bgp_global_facts) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_028 __ 1355s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_028(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - route_refresh_priority_priority 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet6", 1355s af_type=[ 1355s dict( 1355s type="labeled-unicast", 1355s route_refresh_priority_priority=15, 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "15" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2763: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_019 __ 1355s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_019(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - output_queue_priority_expedited 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet", 1355s af_type=[ 1355s dict( 1355s type="flow", 1355s output_queue_priority_expedited=True, 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2423: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _____ TestJunosBgp_globalModule.test_junos_bgp_global_replaced_idempotent ______ 1355s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_global_replaced_idempotent(self): 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s accept_remote_nexthop=True, 1355s advertise_from_main_vpn_tables=True, 1355s advertise_inactive=True, 1355s as_number="65432", 1355s authentication_algorithm="md5", 1355s bgp_error_tolerance=dict(malformed_route_limit=30000000), 1355s damping=True, 1355s description="This is configured with Junos_bgp resource module", 1355s hold_time=5, 1355s holddown_all_stale_labels=True, 1355s log_updown=True, 1355s no_advertise_peer_as=True, 1355s no_aggregator_id=True, 1355s out_delay=10, 1355s preference="2", 1355s ), 1355s state="replaced", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_global.py:259: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_global.py:1862: in main 1355s result = Bgp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1355s config_xmls = self.set_config(existing_bgp_global_facts) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_013_001 _ 1355s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_013_001(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - graceful_restart_forwarding_state_bit: set 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet", 1355s af_type=[ 1355s dict( 1355s type="unicast", 1355s graceful_restart_forwarding_state_bit="set", 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "set" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2238: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_029 __ 1355s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_029(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - secondary_independent_resolution 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet", 1355s af_type=[ 1355s dict( 1355s type="flow", 1355s secondary_independent_resolution=True, 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2796: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_006 __ 1355s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_006(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - aigp 1355s damping: true 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet6", 1355s af_type=[ 1355s dict(type="labeled-unicast", damping=True), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1918: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ______ TestJunosBgp_globalModule.test_junos_bgp_global_merged_idempotent _______ 1355s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_global_merged_idempotent(self): 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s accept_remote_nexthop=True, 1355s advertise_from_main_vpn_tables=True, 1355s advertise_inactive=True, 1355s as_number="65432", 1355s authentication_algorithm="md5", 1355s bgp_error_tolerance=dict(malformed_route_limit=30000000), 1355s damping=True, 1355s description="This is configured with Junos_bgp resource module", 1355s hold_time=5, 1355s holddown_all_stale_labels=True, 1355s log_updown=True, 1355s no_advertise_peer_as=True, 1355s no_aggregator_id=True, 1355s out_delay=10, 1355s preference="2", 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_global.py:145: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_global.py:1862: in main 1355s result = Bgp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1355s config_xmls = self.set_config(existing_bgp_global_facts) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _____________ TestJunosHostnameModule.test_junos_hostname_replaced _____________ 1355s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_hostname_replaced(self): 1355s set_module_args(dict(config=dict(hostname="vsrx12"), state="replaced")) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_hostname.py:144: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_hostname.py:356: in main 1355s result = Hostname(module).execute_module() 1355s plugins/module_utils/network/junos/config/hostname/hostname.py:102: in execute_module 1355s config_xmls = self.set_config(existing_hostname_facts) 1355s plugins/module_utils/network/junos/config/hostname/hostname.py:140: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/hostname/hostname.py:152: in set_state 1355s self.root = build_root_xml_node("system") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_020 __ 1355s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_020(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - output_queue_priority_priority 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet", 1355s af_type=[ 1355s dict( 1355s type="flow", 1355s output_queue_priority_priority=15, 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "15" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2457: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_014 __ 1355s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_014(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - local_ipv4_address 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet", 1355s af_type=[ 1355s dict( 1355s type="unicast", 1355s local_ipv4_address="11.11.11.11", 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "11.11.11.11" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2271: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ____________ TestJunosHostnameModule.test_junos_hostname_merged_01 _____________ 1355s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_hostname_merged_01(self): 1355s set_module_args(dict(config=dict(hostname="vsrx"), state="merged")) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_hostname.py:92: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_hostname.py:356: in main 1355s result = Hostname(module).execute_module() 1355s plugins/module_utils/network/junos/config/hostname/hostname.py:102: in execute_module 1355s config_xmls = self.set_config(existing_hostname_facts) 1355s plugins/module_utils/network/junos/config/hostname/hostname.py:140: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/hostname/hostname.py:152: in set_state 1355s self.root = build_root_xml_node("system") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_030 __ 1355s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_030(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - groups: 1355s address_family: 1355s topology 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s groups=[ 1355s dict( 1355s name="ebgp", 1355s address_family=[ 1355s dict( 1355s afi="inet", 1355s af_type=[ 1355s dict( 1355s type="unicast", 1355s topology=[ 1355s dict( 1355s name="voice", 1355s community=["target:40:40"], 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "ebgp" 1355s "voice" 1355s "target:40:40" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2843: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ___________ TestJunosInterfacesModule.test_junos_interfaces_rendered ___________ 1355s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_interfaces_rendered(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="ge-0/0/1", 1355s description="This is configured with ansible resource module", 1355s mtu=1024, 1355s speed="100m", 1355s ), 1355s ], 1355s state="rendered", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "ge-0/0/1" 1355s "This is configured with ansible resource module" 1355s "100m" 1355s "1024" 1355s "", 1355s ] 1355s > self.execute_module(changed=False, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_interfaces.py:255: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_interfaces.py:961: in main 1355s result = Interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:92: in execute_module 1355s config_xmls = self.set_config(existing_interfaces_facts) 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_007 __ 1355s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_007(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - aigp 1355s defer_initial_multipath_build 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet6", 1355s af_type=[ 1355s dict( 1355s type="labeled-unicast", 1355s defer_initial_multipath_build=dict( 1355s set=True, 1355s ), 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1954: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __________ TestJunosHostnameModule.test_junos_hostname_overridden_01 ___________ 1355s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_hostname_overridden_01(self): 1355s set_module_args( 1355s dict(config=dict(hostname="vsrx12"), state="overridden"), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_hostname.py:118: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_hostname.py:356: in main 1355s result = Hostname(module).execute_module() 1355s plugins/module_utils/network/junos/config/hostname/hostname.py:102: in execute_module 1355s config_xmls = self.set_config(existing_hostname_facts) 1355s plugins/module_utils/network/junos/config/hostname/hostname.py:140: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/hostname/hostname.py:152: in set_state 1355s self.root = build_root_xml_node("system") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ____________ TestJunosInterfacesModule.test_junos_interfaces_delete ____________ 1355s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_interfaces_delete(self): 1355s set_module_args(dict(config=[dict(name="ge-0/0/2")], state="deleted")) 1355s 1355s commands = [ 1355s '', 1355s ] 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_interfaces.py:226: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_interfaces.py:961: in main 1355s result = Interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 1355s config_xmls = self.set_config(existing_interfaces_facts) 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ___ TestJunosLogging_globalModule.test_junos_logging_global_merged_files_03 ____ 1355s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_logging_global_merged_files_03(self): 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s files=[dict(name="file101", allow_duplicates=True)], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "file101" 1355s "", 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_logging_global.py:160: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_logging_global.py:1738: in main 1355s result = Logging_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1355s config_xmls = self.set_config(existing_logging_global_facts) 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1355s self.root = build_root_xml_node("system") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ________ TestJunosL2InterfacesModule.test_junos_l2_interfaces_rendered _________ 1355s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_l2_interfaces_rendered(self): 1355s set_module_args( 1355s dict( 1355s config=[dict(name="ge-0/0/4", access=dict(vlan="vlan100"))], 1355s state="rendered", 1355s ), 1355s ) 1355s rendered = ( 1355s '' 1355s "ge-0/0/40" 1355s "access" 1355s "vlan100" 1355s "" 1355s ) 1355s > result = self.execute_module(changed=False) 1355s 1355s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:315: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_l2_interfaces.py:1057: in main 1355s result = L2_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:99: in execute_module 1355s config_xmls = self.set_config(existing_l2_interfaces_facts) 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_021 __ 1355s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_021(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - per_group_label 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet6", 1355s af_type=[ 1355s dict( 1355s type="labeled-unicast", 1355s per_group_label=True, 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2490: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ___________ TestJunosInterfacesModule.test_junos_interfaces_replaced ___________ 1355s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_interfaces_replaced(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="ge-0/0/2", 1355s description="This is configured with ansible", 1355s mtu=1024, 1355s speed="100m", 1355s ), 1355s ], 1355s state="replaced", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_interfaces.py:147: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_interfaces.py:961: in main 1355s result = Interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 1355s config_xmls = self.set_config(existing_interfaces_facts) 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ______ TestJunosInterfacesModule.test_junos_interfaces_delete_idempotent _______ 1355s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_interfaces_delete_idempotent(self): 1355s set_module_args(dict(config=[dict(name="ge-0/0/4")], state="deleted")) 1355s > self.execute_module(changed=False, commands=[]) 1355s 1355s tests/unit/modules/network/junos/test_junos_interfaces.py:231: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_interfaces.py:961: in main 1355s result = Interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 1355s config_xmls = self.set_config(existing_interfaces_facts) 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ___ TestJunosLogging_globalModule.test_junos_logging_global_merged_files_04 ____ 1355s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_logging_global_merged_files_04(self): 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s files=[ 1355s dict( 1355s name="file102", 1355s allow_duplicates=True, 1355s any=dict(level="any"), 1355s structured_data=dict(set=True), 1355s ), 1355s dict( 1355s name="file103", 1355s archive=dict( 1355s set=True, 1355s no_binary_data=True, 1355s files=10, 1355s file_size=65578, 1355s no_world_readable=True, 1355s ), 1355s explicit_priority=True, 1355s match="^set*", 1355s match_strings=["^delete", "^prompt"], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "file102" 1355s "any" 1355s "file103" 1355s "10" 1355s "65578" 1355s "^set*" 1355s "^delete" 1355s "^prompt", 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_logging_global.py:203: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_logging_global.py:1738: in main 1355s result = Logging_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1355s config_xmls = self.set_config(existing_logging_global_facts) 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1355s self.root = build_root_xml_node("system") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_033 __ 1355s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_033(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - groups: 1355s address_family: 1355s topology 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s groups=[ 1355s dict( 1355s name="ebgp", 1355s neighbors=[ 1355s dict( 1355s neighbor_address="14.14.14.14", 1355s address_family=[ 1355s dict( 1355s afi="inet", 1355s af_type=[ 1355s dict( 1355s type="unicast", 1355s no_install=True, 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "ebgp" 1355s "14.14.14.14" 1355s "" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2958: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ________ TestJunosL2InterfacesModule.test_junos_l2_interfaces_replaced _________ 1355s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_l2_interfaces_replaced(self): 1355s set_module_args( 1355s dict( 1355s config=[dict(name="ge-0/0/1", access=dict(vlan="vlan100"), enhanced_layer=False)], 1355s state="replaced", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "ge-0/0/10" 1355s "access" 1355s "vlan100" 1355s "", 1355s ] 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:163: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_l2_interfaces.py:1057: in main 1355s result = L2_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 1355s config_xmls = self.set_config(existing_l2_interfaces_facts) 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _____ TestJunosInterfacesModule.test_junos_interfaces_replaced_idempotent ______ 1355s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_interfaces_replaced_idempotent(self): 1355s self.get_config.return_value = load_fixture( 1355s "junos_interfaces_config.xml", 1355s ) 1355s src = load_fixture("junos_interfaces.cfg", content="str") 1355s set_module_args(dict(src=src)) 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="ge-0/0/0", 1355s description="Configured by Ansi-Team", 1355s ), 1355s ], 1355s state="replaced", 1355s ), 1355s ) 1355s 1355s > self.execute_module(changed=False, commands=[]) 1355s 1355s tests/unit/modules/network/junos/test_junos_interfaces.py:175: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_interfaces.py:961: in main 1355s result = Interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 1355s config_xmls = self.set_config(existing_interfaces_facts) 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _____ TestJunosLogging_globalModule.test_junos_logging_global_rendered_12 ______ 1355s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_logging_global_rendered_12(self): 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s archive=dict( 1355s set=True, 1355s files=10, 1355s file_size=65578, 1355s no_binary_data=True, 1355s no_world_readable=True, 1355s ), 1355s ), 1355s state="rendered", 1355s ), 1355s ) 1355s rendered = ( 1355s '' 1355s "10" 1355s "65578" 1355s ) 1355s > result = self.execute_module(changed=False) 1355s 1355s tests/unit/modules/network/junos/test_junos_logging_global.py:404: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_logging_global.py:1738: in main 1355s result = Logging_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:101: in execute_module 1355s config_xmls = self.set_config(existing_logging_global_facts) 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1355s self.root = build_root_xml_node("system") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _____________ TestJunosHostnameModule.test_junos_hostname_rendered _____________ 1355s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_hostname_rendered(self): 1355s set_module_args(dict(config=dict(hostname="vsrx10"), state="rendered")) 1355s rendered = ( 1355s '' 1355s "vsrx10" 1355s ) 1355s > result = self.execute_module(changed=False) 1355s 1355s tests/unit/modules/network/junos/test_junos_hostname.py:139: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_hostname.py:356: in main 1355s result = Hostname(module).execute_module() 1355s plugins/module_utils/network/junos/config/hostname/hostname.py:96: in execute_module 1355s config_xmls = self.set_config(existing_hostname_facts) 1355s plugins/module_utils/network/junos/config/hostname/hostname.py:140: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/hostname/hostname.py:152: in set_state 1355s self.root = build_root_xml_node("system") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ____________ TestJunosInterfacesModule.test_junos_interfaces_merged ____________ 1355s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_interfaces_merged(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="ge-0/0/1", 1355s description="This is configured with ansible resource module", 1355s mtu=1024, 1355s speed="100m", 1355s ), 1355s ], 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "ge-0/0/1This is configured with ansible resource module" 1355s "100m1024", 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_interfaces.py:111: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_interfaces.py:961: in main 1355s result = Interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 1355s config_xmls = self.set_config(existing_interfaces_facts) 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_022 __ 1355s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_022(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - per_prefix_label 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet", 1355s af_type=[ 1355s dict( 1355s type="labeled-unicast", 1355s per_prefix_label=True, 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2523: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ___ TestJunosLogging_globalModule.test_junos_logging_global_merged_hosts_05 ____ 1355s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_logging_global_merged_hosts_05(self): 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s hosts=[ 1355s dict( 1355s name="host222", 1355s exclude_hostname=True, 1355s allow_duplicates=True, 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "host222" 1355s "", 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_logging_global.py:226: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_logging_global.py:1738: in main 1355s result = Logging_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1355s config_xmls = self.set_config(existing_logging_global_facts) 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1355s self.root = build_root_xml_node("system") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _________ TestJunosL2InterfacesModule.test_junos_l2_interfaces_delete __________ 1355s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_l2_interfaces_delete(self): 1355s self.get_res_config.return_value = load_fixture( 1355s "junos_interfaces_config.xml", 1355s ) 1355s src = load_fixture("junos_l2_interfaces.cfg", content="str") 1355s set_module_args(dict(src=src)) 1355s set_module_args(dict(config=[dict(name="ge-0/0/1")], state="deleted")) 1355s commands = [ 1355s '' 1355s "ge-0/0/10" 1355s '' 1355s '' 1355s '', 1355s ] 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:234: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_l2_interfaces.py:1057: in main 1355s result = L2_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 1355s config_xmls = self.set_config(existing_l2_interfaces_facts) 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ___ TestJunosLogging_globalModule.test_junos_logging_global_replaced_user_09 ___ 1355s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_logging_global_replaced_user_09(self): 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s users=[ 1355s dict(name="user1", allow_duplicates=True), 1355s dict( 1355s name="user2", 1355s allow_duplicates=True, 1355s any=dict(level="any"), 1355s user=dict(level="info"), 1355s ), 1355s ], 1355s ), 1355s state="replaced", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_logging_global.py:326: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_logging_global.py:1738: in main 1355s result = Logging_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1355s config_xmls = self.set_config(existing_logging_global_facts) 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1355s self.root = build_root_xml_node("system") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ______ TestJunosInterfacesModule.test_junos_interfaces_merged_idempotent _______ 1355s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_interfaces_merged_idempotent(self): 1355s self.get_config.return_value = load_fixture( 1355s "junos_interfaces_config.xml", 1355s ) 1355s src = load_fixture("junos_interfaces.cfg", content="str") 1355s set_module_args(dict(src=src)) 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="ge-0/0/0", 1355s description="Configured by Ansi-Team", 1355s ), 1355s ], 1355s state="merged", 1355s ), 1355s ) 1355s > self.execute_module(changed=False, commands=[]) 1355s 1355s tests/unit/modules/network/junos/test_junos_interfaces.py:131: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_interfaces.py:961: in main 1355s result = Interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 1355s config_xmls = self.set_config(existing_interfaces_facts) 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ___ TestJunosL2InterfacesModule.test_junos_l2_interfaces_replaced_idempotent ___ 1355s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_l2_interfaces_replaced_idempotent(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict(name="ge-0/0/1", access=dict(vlan="vlan100"), unit=0, enhanced_layer=True), 1355s dict( 1355s name="ge-0/0/2", 1355s trunk=dict(allowed_vlans=["vlan200", "vlan300"], native_vlan="400"), 1355s unit=0, 1355s enhanced_layer=True, 1355s ), 1355s ], 1355s state="replaced", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:182: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_l2_interfaces.py:1057: in main 1355s result = L2_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 1355s config_xmls = self.set_config(existing_l2_interfaces_facts) 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _ TestJunosLogging_globalModule.test_junos_logging_global_merged_hosts_idempotent_06 _ 1355s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_logging_global_merged_hosts_idempotent_06(self): 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s hosts=[ 1355s dict( 1355s name="host111", 1355s exclude_hostname=True, 1355s allow_duplicates=True, 1355s any=dict(level="any"), 1355s structured_data=dict(set=True, brief=True), 1355s facility_override="ftp", 1355s log_prefix="field", 1355s match="^set*", 1355s match_strings=["^delete", "^prompt"], 1355s port=1231, 1355s routing_instance="inst11", 1355s source_address="11.11.11.11", 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_logging_global.py:253: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_logging_global.py:1738: in main 1355s result = Logging_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1355s config_xmls = self.set_config(existing_logging_global_facts) 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1355s self.root = build_root_xml_node("system") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ___ TestJunosL3InterfacesModule.test_junos_l3_interfaces_replaced_idempotent ___ 1355s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_l3_interfaces_replaced_idempotent(self): 1355s self.get_config.return_value = load_fixture( 1355s "junos_interfaces_config.xml", 1355s ) 1355s src = load_fixture("junos_l3_interfaces.cfg", content="str") 1355s set_module_args(dict(src=src)) 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="ge-0/0/1", 1355s ipv4=[ 1355s dict(address="100.64.0.1/10"), 1355s dict(address="100.64.0.2/10"), 1355s ], 1355s ), 1355s ], 1355s state="merged", 1355s ), 1355s ) 1355s > self.execute_module(changed=False, commands=[]) 1355s 1355s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:184: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_l3_interfaces.py:1021: in main 1355s result = L3_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:103: in execute_module 1355s config_xmls = self.set_config(existing_l3_interfaces_facts) 1355s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ____ TestJunosL2InterfacesModule.test_junos_l2_interfaces_delete_idempotent ____ 1355s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_l2_interfaces_delete_idempotent(self): 1355s set_module_args(dict(config=[dict(name="ge-0/0/3")], state="deleted")) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:239: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_l2_interfaces.py:1057: in main 1355s result = L2_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 1355s config_xmls = self.set_config(existing_l2_interfaces_facts) 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_023 __ 1355s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_bgp_address_family_config_023(self): 1355s """ 1355s This function generate the commands to configure attributes: 1355s - prefix_limit 1355s """ 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s address_family=[ 1355s dict( 1355s afi="inet", 1355s af_type=[ 1355s dict( 1355s type="labeled-unicast", 1355s prefix_limit=dict( 1355s maximum=4294967290, 1355s teardown=True, 1355s limit_threshold=22, 1355s idle_timeout=True, 1355s idle_timeout_value=2200, 1355s ), 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "" 1355s "4294967290222200" 1355s "" 1355s "", 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2564: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_bgp_address_family.py:2004: in main 1355s result = Bgp_address_family(module).execute_module() 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1355s config_xmls = self.set_config(existing_bgp_address_family_facts) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __________ TestJunosInterfacesModule.test_junos_interfaces_overridden __________ 1355s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_interfaces_overridden(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="ge-0/0/2", 1355s description="This is configured with ansible", 1355s mtu=1024, 1355s speed="100m", 1355s ), 1355s ], 1355s state="overridden", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "ge-0/0/2" 1355s "This is configured with ansible" 1355s "100m1024", 1355s ] 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_interfaces.py:197: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_interfaces.py:961: in main 1355s result = Interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 1355s config_xmls = self.set_config(existing_interfaces_facts) 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _________ TestJunosL3InterfacesModule.test_junos_l3_interfaces_merged __________ 1355s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_l3_interfaces_merged(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="ge-0/0/1", 1355s ipv4=[ 1355s dict(address="100.64.0.1/10"), 1355s dict(address="100.64.0.2/10"), 1355s ], 1355s ), 1355s ], 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "ge-0/0/10" 1355s "100.64.0.1/10" 1355s "100.64.0.2/10" 1355s "", 1355s ] 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:113: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_l3_interfaces.py:1021: in main 1355s result = L3_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:103: in execute_module 1355s config_xmls = self.set_config(existing_l3_interfaces_facts) 1355s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ____ TestJunosLogging_globalModule.test_junos_logging_global_merged_user_08 ____ 1355s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_logging_global_merged_user_08(self): 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s users=[ 1355s dict(name="user1", allow_duplicates=True), 1355s dict( 1355s name="user2", 1355s allow_duplicates=True, 1355s any=dict(level="any"), 1355s user=dict(level="info"), 1355s ), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_logging_global.py:295: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_logging_global.py:1738: in main 1355s result = Logging_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1355s config_xmls = self.set_config(existing_logging_global_facts) 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1355s self.root = build_root_xml_node("system") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ______ TestJunosOspfv3Module.test_junos_ospf_interfaces_merged_idempotent ______ 1355s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ospf_interfaces_merged_idempotent(self): 1355s self.get_connection.return_value = load_fixture( 1355s "junos_ospf_interfaces_config.cfg", 1355s ) 1355s src = load_fixture("junos_ospf_interfaces.cfg", content="str") 1355s set_module_args(dict(src=src)) 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s router_id="10.200.16.77", 1355s name="so-0/0/0.0", 1355s address_family=[ 1355s dict( 1355s afi="ipv4", 1355s processes=dict( 1355s area=dict(area_id="0.0.0.10"), 1355s priority=3, 1355s metric=5, 1355s ), 1355s ), 1355s ], 1355s ), 1355s ], 1355s state="merged", 1355s ), 1355s ) 1355s > self.execute_module(changed=False, commands=[]) 1355s 1355s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:159: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ospf_interfaces.py:607: in main 1355s result = Ospf_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 1355s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ___ TestJunosLogging_globalModule.test_junos_logging_global_deleted_user_11 ____ 1355s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_logging_global_deleted_user_11(self): 1355s set_module_args(dict(config=dict(), state="deleted")) 1355s commands = [ 1355s '' 1355s '', 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_logging_global.py:381: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_logging_global.py:1738: in main 1355s result = Logging_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1355s config_xmls = self.set_config(existing_logging_global_facts) 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1355s self.root = build_root_xml_node("system") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ____ TestJunosL3InterfacesModule.test_junos_l3_interfaces_merged_idempotent ____ 1355s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_l3_interfaces_merged_idempotent(self): 1355s self.get_config.return_value = load_fixture( 1355s "junos_interfaces_config.xml", 1355s ) 1355s src = load_fixture("junos_l3_interfaces.cfg", content="str") 1355s set_module_args(dict(src=src)) 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="ge-0/0/1", 1355s ipv4=[ 1355s dict(address="100.64.0.1/10"), 1355s dict(address="100.64.0.2/10"), 1355s ], 1355s ), 1355s ], 1355s state="merged", 1355s ), 1355s ) 1355s > self.execute_module(changed=False, commands=[]) 1355s 1355s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:136: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_l3_interfaces.py:1021: in main 1355s result = L3_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:103: in execute_module 1355s config_xmls = self.set_config(existing_l3_interfaces_facts) 1355s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ____ TestJunosInterfacesModule.test_junos_interfaces_overridden_idempotent _____ 1355s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_interfaces_overridden_idempotent(self): 1355s self.get_config.return_value = load_fixture( 1355s "junos_interfaces_config.xml", 1355s ) 1355s src = load_fixture("junos_interfaces.cfg", content="str") 1355s set_module_args(dict(src=src)) 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="ge-0/0/0", 1355s description="Configured by Ansi-Team", 1355s ), 1355s ], 1355s state="overridden", 1355s ), 1355s ) 1355s 1355s > self.execute_module(changed=False, commands=[]) 1355s 1355s tests/unit/modules/network/junos/test_junos_interfaces.py:218: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_interfaces.py:961: in main 1355s result = Interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 1355s config_xmls = self.set_config(existing_interfaces_facts) 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _________ TestJunosL2InterfacesModule.test_junos_l2_interfaces_merged __________ 1355s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_l2_interfaces_merged(self): 1355s set_module_args( 1355s dict( 1355s config=[dict(name="ge-0/0/1", access=dict(vlan="vlan100"))], 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "ge-0/0/10" 1355s "access" 1355s "vlan100" 1355s "" 1355s "", 1355s ] 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:109: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_l2_interfaces.py:1057: in main 1355s result = L2_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 1355s config_xmls = self.set_config(existing_l2_interfaces_facts) 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _________ TestJunosOspfv3Module.test_junos_ospf_interfaces_overridden __________ 1355s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ospf_interfaces_overridden(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s router_id="10.200.16.75", 1355s name="ge-0/0/2.0", 1355s address_family=[ 1355s dict( 1355s afi="ipv4", 1355s processes=dict( 1355s area=dict(area_id="0.0.0.1"), 1355s priority=6, 1355s metric=7, 1355s ), 1355s ), 1355s ], 1355s ), 1355s ], 1355s state="overridden", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "0.0.0.1ge-0/0/2.0" 1355s "67", 1355s '' 1355s "10.200.16.75", 1355s ] 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:252: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ospf_interfaces.py:607: in main 1355s result = Ospf_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 1355s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __________ TestJunosNtp_globalModule.test_junos_ntp_global_merged_01 ___________ 1355s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ntp_global_merged_01(self): 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s boot_server="78.46.194.186", 1355s broadcasts=[ 1355s dict( 1355s address="172.16.255.255", 1355s key="50", 1355s ttl=200, 1355s version=3, 1355s routing_instance_name="rt1", 1355s ), 1355s dict( 1355s address="192.16.255.255", 1355s key="50", 1355s ttl=200, 1355s version=3, 1355s routing_instance_name="rt1", 1355s ), 1355s ], 1355s broadcast_client=True, 1355s interval_range=2, 1355s multicast_client="224.0.0.1", 1355s peers=[ 1355s dict(peer="78.44.194.186"), 1355s dict( 1355s peer="172.44.194.186", 1355s key_id="10000", 1355s prefer=True, 1355s version=3, 1355s ), 1355s ], 1355s servers=[ 1355s dict( 1355s server="48.46.194.186", 1355s key_id=34, 1355s prefer=True, 1355s version=2, 1355s routing_instance="rt1", 1355s ), 1355s dict( 1355s server="48.45.194.186", 1355s key_id=34, 1355s prefer=True, 1355s version=2, 1355s ), 1355s ], 1355s source_addresses=[ 1355s dict( 1355s source_address="172.45.194.186", 1355s routing_instance="rt1", 1355s ), 1355s dict( 1355s source_address="171.45.194.186", 1355s routing_instance="rt2", 1355s ), 1355s ], 1355s threshold=dict(action="accept", value=300), 1355s trusted_keys=[dict(key_id=3000), dict(key_id=2000)], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_ntp_global.py:154: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ntp_global.py:1014: in main 1355s result = Ntp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:102: in execute_module 1355s config_xmls = self.set_config(existing_ntp_global_facts) 1355s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:140: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:152: in set_state 1355s self.root = build_root_xml_node("system") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ___________ TestJunosNtp_globalModule.test_junos_ntp_global_rendered ___________ 1355s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ntp_global_rendered(self): 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s boot_server="78.46.194.186", 1355s authentication_keys=[ 1355s dict(id="2", algorithm="md5", key="asdfghd"), 1355s dict(id="5", algorithm="sha1", key="aasdad"), 1355s ], 1355s ), 1355s state="rendered", 1355s ), 1355s ) 1355s rendered = ( 1355s '' 1355s "2md5" 1355s "asdfghd" 1355s "5sha1aasdad" 1355s "78.46.194.186" 1355s ) 1355s > result = self.execute_module(changed=False) 1355s 1355s tests/unit/modules/network/junos/test_junos_ntp_global.py:631: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ntp_global.py:1014: in main 1355s result = Ntp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:96: in execute_module 1355s config_xmls = self.set_config(existing_ntp_global_facts) 1355s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:140: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:152: in set_state 1355s self.root = build_root_xml_node("system") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosLogging_globalModule.test_junos_logging_global_overridden_user_10 __ 1355s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_logging_global_overridden_user_10(self): 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s users=[ 1355s dict(name="user1", allow_duplicates=True), 1355s dict( 1355s name="user2", 1355s allow_duplicates=True, 1355s any=dict(level="any"), 1355s user=dict(level="info"), 1355s ), 1355s ], 1355s ), 1355s state="overridden", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_logging_global.py:361: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_logging_global.py:1738: in main 1355s result = Logging_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1355s config_xmls = self.set_config(existing_logging_global_facts) 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1355s self.root = build_root_xml_node("system") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _______________ TestJunosOspfv2Module.test_junos_ospfv2_deleted ________________ 1355s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ospfv2_deleted(self): 1355s set_module_args( 1355s dict( 1355s config=[], 1355s state="deleted", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s '0.0.0.1000.0.0.200' 1355s '' 1355s '' 1355s '', 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_ospfv2.py:585: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ospfv2.py:1168: in main 1355s result = Ospfv2(module).execute_module() 1355s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:113: in execute_module 1355s config_xmls = self.set_config(existing_ospf_facts) 1355s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:150: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:163: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ____ TestJunosL2InterfacesModule.test_junos_l2_interfaces_merged_idempotent ____ 1355s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_l2_interfaces_merged_idempotent(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict(name="ge-0/0/1", access=dict(vlan="vlan100"), unit=0, enhanced_layer=True), 1355s dict( 1355s name="ge-0/0/2", 1355s trunk=dict(allowed_vlans=["vlan200", "vlan300"], native_vlan="400"), 1355s unit=0, 1355s enhanced_layer=True, 1355s ), 1355s ], 1355s state="merged", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:146: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_l2_interfaces.py:1057: in main 1355s result = L2_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 1355s config_xmls = self.set_config(existing_l2_interfaces_facts) 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _______ TestJunosL3InterfacesModule.test_junos_l3_interfaces_overridden ________ 1355s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_l3_interfaces_overridden(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="ge-0/0/1", 1355s ipv4=[ 1355s dict(address="100.64.0.1/10"), 1355s dict(address="100.64.0.2/10"), 1355s ], 1355s ), 1355s ], 1355s state="overridden", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "ge-0/0/10" 1355s "100.64.0.1/10" 1355s "100.64.0.2/10" 1355s "", 1355s ] 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:208: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_l3_interfaces.py:1021: in main 1355s result = L3_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:103: in execute_module 1355s config_xmls = self.set_config(existing_l3_interfaces_facts) 1355s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ____ TestJunosOspfv3Module.test_junos_ospf_interfaces_overridden_idempotent ____ 1355s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ospf_interfaces_overridden_idempotent(self): 1355s self.get_connection.return_value = load_fixture( 1355s "junos_ospf_interfaces_config.cfg", 1355s ) 1355s src = load_fixture("junos_ospf_interfaces.cfg", content="str") 1355s set_module_args(dict(src=src)) 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s router_id="10.200.16.75", 1355s name="ge-0/0/2.0", 1355s address_family=[ 1355s dict( 1355s afi="ipv4", 1355s processes=dict( 1355s area=dict(area_id="0.0.0.1"), 1355s priority=6, 1355s metric=7, 1355s ), 1355s ), 1355s ], 1355s ), 1355s ], 1355s state="overridden", 1355s ), 1355s ) 1355s 1355s > self.execute_module(changed=False, commands=[]) 1355s 1355s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:283: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ospf_interfaces.py:607: in main 1355s result = Ospf_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 1355s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ______ TestJunosLogging_globalModule.test_junos_logging_global_merged_07 _______ 1355s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_logging_global_merged_07(self): 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s allow_duplicates=True, 1355s routing_instance="inst11", 1355s log_rotate_frequency=45, 1355s source_address="33.33.33.33", 1355s time_format=dict(millisecond=True, year=True), 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "45" 1355s "inst1133.33.33.33" 1355s "", 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_logging_global.py:275: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_logging_global.py:1738: in main 1355s result = Logging_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1355s config_xmls = self.set_config(existing_logging_global_facts) 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1355s self.root = build_root_xml_node("system") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _________ TestJunosNtp_globalModule.test_junos_ntp_global_replaced_01 __________ 1355s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ntp_global_replaced_01(self): 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s boot_server="78.46.194.186", 1355s broadcasts=[ 1355s dict( 1355s address="172.16.255.255", 1355s key="50", 1355s ttl=200, 1355s version=3, 1355s routing_instance_name="rt1", 1355s ), 1355s dict( 1355s address="192.16.255.255", 1355s key="50", 1355s ttl=200, 1355s version=3, 1355s routing_instance_name="rt1", 1355s ), 1355s ], 1355s broadcast_client=True, 1355s interval_range=2, 1355s multicast_client="224.0.0.1", 1355s peers=[ 1355s dict(peer="78.44.194.186"), 1355s dict( 1355s peer="172.44.194.186", 1355s key_id="10000", 1355s prefer=True, 1355s version=3, 1355s ), 1355s ], 1355s servers=[ 1355s dict( 1355s server="48.46.194.186", 1355s key_id=34, 1355s prefer=True, 1355s version=2, 1355s routing_instance="rt1", 1355s ), 1355s dict( 1355s server="48.45.194.186", 1355s key_id=34, 1355s prefer=True, 1355s version=2, 1355s ), 1355s ], 1355s source_addresses=[ 1355s dict( 1355s source_address="172.45.194.186", 1355s routing_instance="rt1", 1355s ), 1355s dict( 1355s source_address="171.45.194.186", 1355s routing_instance="rt2", 1355s ), 1355s ], 1355s threshold=dict(action="accept", value=300), 1355s trusted_keys=[dict(key_id=3000), dict(key_id=2000)], 1355s ), 1355s state="replaced", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_ntp_global.py:698: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ntp_global.py:1014: in main 1355s result = Ntp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:102: in execute_module 1355s config_xmls = self.set_config(existing_ntp_global_facts) 1355s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:140: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:152: in set_state 1355s self.root = build_root_xml_node("system") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __________ TestJunosNtp_globalModule.test_junos_ntp_global_merged_02 ___________ 1355s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ntp_global_merged_02(self): 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s boot_server="78.46.194.186", 1355s authentication_keys=[ 1355s dict(id="2", algorithm="md5", key="asdfghd"), 1355s dict(id="5", algorithm="sha1", key="aasdad"), 1355s ], 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_ntp_global.py:189: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ntp_global.py:1014: in main 1355s result = Ntp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:102: in execute_module 1355s config_xmls = self.set_config(existing_ntp_global_facts) 1355s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:140: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:152: in set_state 1355s self.root = build_root_xml_node("system") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _______________ TestJunosOspfv2Module.test_junos_ospfv2_rendered _______________ 1355s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ospfv2_rendered(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s router_id="10.200.16.75", 1355s rfc1583compatibility="False", 1355s external_preference=10, 1355s overload=dict( 1355s allow_route_leaking=True, 1355s as_external=True, 1355s stub_network=True, 1355s timeout=1200, 1355s ), 1355s spf_options=dict( 1355s delay=3000, 1355s holddown=4000, 1355s rapid_runs=9, 1355s no_ignore_our_externals=True, 1355s ), 1355s prefix_export_limit=30000, 1355s areas=[ 1355s dict( 1355s area_id="0.0.0.100", 1355s stub=dict(default_metric=200, set=True), 1355s area_ranges=[ 1355s dict( 1355s address="10.200.17.0/24", 1355s exact=True, 1355s restrict=True, 1355s override_metric=2000, 1355s ), 1355s ], 1355s interfaces=[ 1355s dict( 1355s name="so-0/0/0.0", 1355s priority=3, 1355s metric=5, 1355s flood_reduction=False, 1355s passive=True, 1355s bandwidth_based_metrics=[ 1355s dict( 1355s bandwidth="1g", 1355s metric=5, 1355s ), 1355s ], 1355s timers=dict( 1355s dead_interval=4, 1355s hello_interval=2, 1355s poll_interval=2, 1355s retransmit_interval=2, 1355s ), 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s ], 1355s state="rendered", 1355s ), 1355s ) 1355s rendered = ( 1355s '' 1355s "30004000" 1355s "9" 1355s "1200" 1355s "" 1355s "10" 1355s "30000" 1355s "0.0.0.100" 1355s "10.200.17.0/24" 1355s "2000" 1355s "so-0/0/0.0" 1355s "35" 1355s "1g" 1355s "5" 1355s "42" 1355s "2" 1355s "2" 1355s "200" 1355s "" 1355s ) 1355s > result = self.execute_module(changed=False) 1355s 1355s tests/unit/modules/network/junos/test_junos_ospfv2.py:807: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ospfv2.py:1168: in main 1355s result = Ospfv2(module).execute_module() 1355s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:106: in execute_module 1355s config_xmls = self.set_config(existing_ospf_facts) 1355s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:150: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:163: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _______ TestJunosL2InterfacesModule.test_junos_l2_interfaces_overridden ________ 1355s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_l2_interfaces_overridden(self): 1355s set_module_args( 1355s dict( 1355s config=[dict(name="ge-0/0/1", access=dict(vlan="vlan100"), enhanced_layer=False)], 1355s state="overridden", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "ge-0/0/10" 1355s "access" 1355s "vlan100" 1355s "", 1355s ] 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:199: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_l2_interfaces.py:1057: in main 1355s result = L2_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 1355s config_xmls = self.set_config(existing_l2_interfaces_facts) 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosL3InterfacesModule.test_junos_l3_interfaces_overridden_idempotent __ 1355s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_l3_interfaces_overridden_idempotent(self): 1355s self.get_config.return_value = load_fixture( 1355s "junos_interfaces_config.xml", 1355s ) 1355s src = load_fixture("junos_l3_interfaces.cfg", content="str") 1355s set_module_args(dict(src=src)) 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="ge-0/0/1", 1355s ipv4=[ 1355s dict(address="100.64.0.1/10"), 1355s dict(address="100.64.0.2/10"), 1355s ], 1355s ), 1355s ], 1355s state="overridden", 1355s ), 1355s ) 1355s > self.execute_module(changed=False, commands=[]) 1355s 1355s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:232: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_l3_interfaces.py:1021: in main 1355s result = L3_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:103: in execute_module 1355s config_xmls = self.set_config(existing_l3_interfaces_facts) 1355s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ___________ TestJunosOspfv3Module.test_junos_ospf_interfaces_delete ____________ 1355s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ospf_interfaces_delete(self): 1355s self.get_connection.return_value = load_fixture( 1355s "junos_ospf_interfaces_config.cfg", 1355s ) 1355s src = load_fixture("junos_ospf_interfaces.cfg", content="str") 1355s set_module_args(dict(src=src)) 1355s set_module_args( 1355s dict( 1355s config=[dict(router_id="10.200.16.75", name="ge-0/0/2.0")], 1355s state="deleted", 1355s ), 1355s ) 1355s 1355s commands = [ 1355s '', 1355s '', 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:303: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ospf_interfaces.py:607: in main 1355s result = Ospf_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 1355s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __________ TestJunosOspfv3Module.test_junos_ospf_interfaces_rendered ___________ 1355s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ospf_interfaces_rendered(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s router_id="10.200.16.75", 1355s name="ge-0/0/2.0", 1355s address_family=[ 1355s dict( 1355s afi="ipv4", 1355s processes=dict( 1355s area=dict(area_id="0.0.0.1"), 1355s priority=6, 1355s metric=7, 1355s ), 1355s ), 1355s ], 1355s ), 1355s ], 1355s state="rendered", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "0.0.0.1ge-0/0/2.0" 1355s "67", 1355s '' 1355s "10.200.16.75", 1355s ] 1355s > self.execute_module(changed=False, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:344: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ospf_interfaces.py:607: in main 1355s result = Ospf_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:100: in execute_module 1355s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosLogging_globalModule.test_junos_logging_global_merged_archive_01 ___ 1355s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_logging_global_merged_archive_01(self): 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s archive=dict( 1355s set=True, 1355s files=10, 1355s file_size=65578, 1355s no_binary_data=True, 1355s no_world_readable=True, 1355s ), 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "10" 1355s "65578" 1355s "", 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_logging_global.py:111: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_logging_global.py:1738: in main 1355s result = Logging_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1355s config_xmls = self.set_config(existing_logging_global_facts) 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1355s self.root = build_root_xml_node("system") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ________________ TestJunosOspfv2Module.test_junos_ospfv2_merged ________________ 1355s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ospfv2_merged(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s router_id="10.200.16.75", 1355s rfc1583compatibility="False", 1355s external_preference=10, 1355s overload=dict( 1355s allow_route_leaking=True, 1355s as_external=True, 1355s stub_network=True, 1355s timeout=1200, 1355s ), 1355s spf_options=dict( 1355s delay=3000, 1355s holddown=4000, 1355s rapid_runs=9, 1355s no_ignore_our_externals=True, 1355s ), 1355s prefix_export_limit=30000, 1355s areas=[ 1355s dict( 1355s area_id="0.0.0.100", 1355s stub=dict(default_metric=200, set=True), 1355s area_ranges=[ 1355s dict( 1355s address="10.200.17.0/24", 1355s exact=True, 1355s restrict=True, 1355s override_metric=2000, 1355s ), 1355s ], 1355s interfaces=[ 1355s dict( 1355s name="so-0/0/0.0", 1355s priority=3, 1355s metric=5, 1355s flood_reduction=False, 1355s passive=True, 1355s bandwidth_based_metrics=[ 1355s dict( 1355s bandwidth="1g", 1355s metric=5, 1355s ), 1355s ], 1355s timers=dict( 1355s dead_interval=4, 1355s hello_interval=2, 1355s poll_interval=2, 1355s retransmit_interval=2, 1355s ), 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s ], 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "30004000" 1355s "9" 1355s "1200" 1355s "10" 1355s "30000" 1355s "" 1355s "0.0.0.10010.200.17.0/24" 1355s "2000" 1355s "so-0/0/0.035" 1355s "1g5" 1355s "42" 1355s "22" 1355s "200", 1355s '' 1355s "10.200.16.75", 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_ospfv2.py:188: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ospfv2.py:1168: in main 1355s result = Ospfv2(module).execute_module() 1355s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:113: in execute_module 1355s config_xmls = self.set_config(existing_ospf_facts) 1355s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:150: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:163: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _______________ TestJunosOspfv2Module.test_junos_ospfv2_replaced _______________ 1355s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ospfv2_replaced(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s router_id="10.200.16.75", 1355s rfc1583compatibility="False", 1355s external_preference=10, 1355s overload=dict( 1355s allow_route_leaking=True, 1355s as_external=True, 1355s stub_network=True, 1355s timeout=1200, 1355s ), 1355s spf_options=dict( 1355s delay=3000, 1355s holddown=4000, 1355s rapid_runs=9, 1355s no_ignore_our_externals=True, 1355s ), 1355s prefix_export_limit=30000, 1355s areas=[ 1355s dict( 1355s area_id="0.0.0.100", 1355s stub=dict(default_metric=200, set=True), 1355s area_ranges=[ 1355s dict( 1355s address="10.200.17.0/24", 1355s exact=True, 1355s restrict=True, 1355s override_metric=2000, 1355s ), 1355s ], 1355s interfaces=[ 1355s dict( 1355s name="so-0/0/0.0", 1355s priority=3, 1355s metric=5, 1355s flood_reduction=False, 1355s passive=True, 1355s bandwidth_based_metrics=[ 1355s dict( 1355s bandwidth="1g", 1355s metric=5, 1355s ), 1355s ], 1355s timers=dict( 1355s dead_interval=4, 1355s hello_interval=2, 1355s poll_interval=2, 1355s retransmit_interval=2, 1355s ), 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s ], 1355s state="replaced", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s '0.0.0.1000.0.0.200' 1355s '' 1355s '' 1355s '' 1355s "300040009" 1355s "1200" 1355s "" 1355s "1030000" 1355s "0.0.0.10010.200.17.0/24" 1355s "2000" 1355s "so-0/0/0.035" 1355s "1g5" 1355s "42" 1355s "22" 1355s "200", 1355s '' 1355s "10.200.16.75", 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_ospfv2.py:478: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ospfv2.py:1168: in main 1355s result = Ospfv2(module).execute_module() 1355s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:113: in execute_module 1355s config_xmls = self.set_config(existing_ospf_facts) 1355s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:150: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:163: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ________ TestJunosL3InterfacesModule.test_junos_l3_interfaces_rendered _________ 1355s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_l3_interfaces_rendered(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="ge-0/0/1", 1355s ipv4=[ 1355s dict(address="100.64.0.1/10"), 1355s dict(address="100.64.0.2/10"), 1355s ], 1355s ), 1355s ], 1355s state="rendered", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "ge-0/0/10" 1355s "100.64.0.1/10" 1355s "100.64.0.2/10" 1355s "", 1355s ] 1355s > self.execute_module(changed=False, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:256: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_l3_interfaces.py:1021: in main 1355s result = L3_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:96: in execute_module 1355s config_xmls = self.set_config(existing_l3_interfaces_facts) 1355s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ________ TestJunosNtp_globalModule.test_junos_ntp_global_overridden_01 _________ 1355s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ntp_global_overridden_01(self): 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s boot_server="78.46.194.186", 1355s broadcasts=[ 1355s dict( 1355s address="172.16.255.255", 1355s key="50", 1355s ttl=200, 1355s version=3, 1355s routing_instance_name="rt1", 1355s ), 1355s dict( 1355s address="192.16.255.255", 1355s key="50", 1355s ttl=200, 1355s version=3, 1355s routing_instance_name="rt1", 1355s ), 1355s ], 1355s broadcast_client=True, 1355s interval_range=2, 1355s multicast_client="224.0.0.1", 1355s peers=[ 1355s dict(peer="78.44.194.186"), 1355s dict( 1355s peer="172.44.194.186", 1355s key_id="10000", 1355s prefer=True, 1355s version=3, 1355s ), 1355s ], 1355s servers=[ 1355s dict( 1355s server="48.46.194.186", 1355s key_id=34, 1355s prefer=True, 1355s version=2, 1355s routing_instance="rt1", 1355s ), 1355s dict( 1355s server="48.45.194.186", 1355s key_id=34, 1355s prefer=True, 1355s version=2, 1355s ), 1355s ], 1355s source_addresses=[ 1355s dict( 1355s source_address="172.45.194.186", 1355s routing_instance="rt1", 1355s ), 1355s dict( 1355s source_address="171.45.194.186", 1355s routing_instance="rt2", 1355s ), 1355s ], 1355s threshold=dict(action="accept", value=300), 1355s trusted_keys=[dict(key_id=3000), dict(key_id=2000)], 1355s ), 1355s state="overridden", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_ntp_global.py:567: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ntp_global.py:1014: in main 1355s result = Ntp_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:102: in execute_module 1355s config_xmls = self.set_config(existing_ntp_global_facts) 1355s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:140: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:152: in set_state 1355s self.root = build_root_xml_node("system") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosL2InterfacesModule.test_junos_l2_interfaces_overridden_idempotent __ 1355s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_l2_interfaces_overridden_idempotent(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict(name="ge-0/0/1", access=dict(vlan="vlan100"), unit=0, enhanced_layer=True), 1355s dict( 1355s name="ge-0/0/2", 1355s trunk=dict(allowed_vlans=["vlan200", "vlan300"], native_vlan="400"), 1355s unit=0, 1355s enhanced_layer=True, 1355s ), 1355s ], 1355s state="overridden", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:217: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_l2_interfaces.py:1057: in main 1355s result = L2_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 1355s config_xmls = self.set_config(existing_l2_interfaces_facts) 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ______ TestJunosOspfv3Module.test_junos_ospf_interfaces_delete_idempotent ______ 1355s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ospf_interfaces_delete_idempotent(self): 1355s set_module_args( 1355s dict( 1355s config=[dict(router_id="10.200.16.75", name="ge-0/0/2.0")], 1355s state="deleted", 1355s ), 1355s ) 1355s > self.execute_module(changed=False, commands=[]) 1355s 1355s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:313: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ospf_interfaces.py:607: in main 1355s result = Ospf_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 1355s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __________ TestJunosOspfv3Module.test_junos_ospf_interfaces_replaced ___________ 1355s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ospf_interfaces_replaced(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s router_id="10.200.16.75", 1355s name="ge-0/0/2.0", 1355s address_family=[ 1355s dict( 1355s afi="ipv4", 1355s processes=dict( 1355s area=dict(area_id="0.0.0.1"), 1355s priority=6, 1355s metric=7, 1355s ), 1355s ), 1355s ], 1355s ), 1355s ], 1355s state="replaced", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:183: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ospf_interfaces.py:607: in main 1355s result = Ospf_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 1355s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _____________ TestJunosOspfv2Module.test_junos_ospfv2_merged_areas _____________ 1355s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ospfv2_merged_areas(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s areas=[ 1355s dict( 1355s area_id="0.0.0.100", 1355s stub=dict(default_metric=200, set=True), 1355s area_ranges=[ 1355s dict( 1355s address="10.200.17.0/24", 1355s ), 1355s dict( 1355s address="10.200.18.0/24", 1355s ), 1355s ], 1355s interfaces=[ 1355s dict( 1355s name="so-0/1/0.0", 1355s bandwidth_based_metrics=[ 1355s dict( 1355s bandwidth="1g", 1355s metric=5, 1355s ), 1355s dict( 1355s bandwidth="10g", 1355s metric=5, 1355s ), 1355s ], 1355s ), 1355s dict( 1355s name="so-0/1/0.0", 1355s priority=3, 1355s ), 1355s ], 1355s ), 1355s dict( 1355s area_id="0.0.0.200", 1355s area_range="10.200.20.0/24", 1355s interfaces=[ 1355s dict( 1355s name="so-0/1/0.0", 1355s bandwidth_based_metrics=[ 1355s dict( 1355s bandwidth="1g", 1355s metric=5, 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s ], 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "0.0.0.100" 1355s "10.200.17.0/24" 1355s "10.200.18.0/24" 1355s "so-0/1/0.0" 1355s "1g5" 1355s "10g5" 1355s "so-0/1/0.03" 1355s "200" 1355s "0.0.0.20010.200.20.0/24" 1355s "so-0/1/0.0" 1355s "1g5" 1355s "", 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_ospfv2.py:264: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ospfv2.py:1168: in main 1355s result = Ospfv2(module).execute_module() 1355s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:113: in execute_module 1355s config_xmls = self.set_config(existing_ospf_facts) 1355s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:150: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:163: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ________ TestJunosL3InterfacesModule.test_junos_l3_interfaces_replaced _________ 1355s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_l3_interfaces_replaced(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="ge-0/0/2", 1355s ipv4=[ 1355s dict(address="100.64.0.1/10"), 1355s dict(address="100.64.0.2/10"), 1355s ], 1355s ), 1355s ], 1355s state="replaced", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "ge-0/0/20" 1355s "100.64.0.1/10" 1355s "100.64.0.2/10" 1355s "", 1355s ] 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:160: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_l3_interfaces.py:1021: in main 1355s result = L3_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:103: in execute_module 1355s config_xmls = self.set_config(existing_l3_interfaces_facts) 1355s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 1355s root = build_root_xml_node("interfaces") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ________________ TestJunosOspfv3Module.test_junos_ospfv3_delete ________________ 1355s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ospfv3_delete(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s router_id="10.200.16.75", 1355s areas=[ 1355s dict( 1355s area_id="0.0.0.100", 1355s stub=dict(default_metric=200, set=True), 1355s interfaces=[dict(name="so-0/0/0.0")], 1355s ), 1355s ], 1355s ), 1355s ], 1355s state="deleted", 1355s ), 1355s ) 1355s 1355s commands = [ 1355s '' 1355s "0.0.0.100so-0/0/0.0" 1355s "200", 1355s '' 1355s "10.200.16.75", 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_ospfv3.py:332: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ospfv3.py:748: in main 1355s result = Ospfv3(module).execute_module() 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 1355s config_xmls = self.set_config(existing_ospfv3_facts) 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __________ TestJunosOspfv3Module.test_junos_ospfv3_merged_idempotent ___________ 1355s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ospfv3_merged_idempotent(self): 1355s self.get_connection.return_value = load_fixture( 1355s "junos_ospfv3_config.cfg", 1355s ) 1355s src = load_fixture("junos_ospfv3.cfg", content="str") 1355s set_module_args(dict(src=src)) 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s router_id="30", 1355s areas=[ 1355s dict( 1355s area_id="100", 1355s stub=dict(default_metric=10, set=True), 1355s interfaces=[ 1355s dict( 1355s name="so-0/0/0.0", 1355s priority=3, 1355s metric=5, 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s ], 1355s state="merged", 1355s ), 1355s ) 1355s > self.execute_module(changed=False, commands=[]) 1355s 1355s tests/unit/modules/network/junos/test_junos_ospfv3.py:163: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ospfv3.py:748: in main 1355s result = Ospfv3(module).execute_module() 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 1355s config_xmls = self.set_config(existing_ospfv3_facts) 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ___________ TestJunosOspfv3Module.test_junos_ospf_interfaces_merged ____________ 1355s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ospf_interfaces_merged(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s router_id="10.200.16.75", 1355s name="ge-0/0/2.0", 1355s address_family=[ 1355s dict( 1355s afi="ipv4", 1355s processes=dict( 1355s area=dict(area_id="0.0.0.2"), 1355s priority=3, 1355s metric=5, 1355s ), 1355s ), 1355s ], 1355s ), 1355s ], 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "0.0.0.2ge-0/0/2.0" 1355s "35", 1355s '' 1355s "10.200.16.75", 1355s ] 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:129: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ospf_interfaces.py:607: in main 1355s result = Ospf_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 1355s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ______ TestJunosPrefix_listsModule.test_junos_prefix_lists_overridden_01 _______ 1355s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_prefix_lists_overridden_01(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="customer_65500", 1355s address_prefixes=["172.16.2.16/28", "172.16.1.32/28"], 1355s ), 1355s ], 1355s state="overridden", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s 'customer_64510' 1355s 'customer_64500' 1355s "customer_65500" 1355s "172.16.2.16/28" 1355s "172.16.1.32/28" 1355s "", 1355s ] 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_prefix_lists.py:217: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_prefix_lists.py:653: in main 1355s result = Prefix_lists(module).execute_module() 1355s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:104: in execute_module 1355s config_xmls = self.set_config(existing_prefix_lists_facts) 1355s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 1355s self.root = build_root_xml_node("policy-options") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosLogging_globalModule.test_junos_logging_global_merged_console_02 ___ 1355s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_logging_global_merged_console_02(self): 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s console=dict( 1355s any=dict(level="info"), 1355s authorization=dict(level="any"), 1355s change_log=dict(level="critical"), 1355s ftp=dict(level="none"), 1355s ), 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_logging_global.py:128: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_logging_global.py:1738: in main 1355s result = Logging_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1355s config_xmls = self.set_config(existing_logging_global_facts) 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1355s self.root = build_root_xml_node("system") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ______________ TestJunosOspfv2Module.test_junos_ospfv2_overridden ______________ 1355s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ospfv2_overridden(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s router_id="10.200.16.75", 1355s rfc1583compatibility="False", 1355s external_preference=10, 1355s overload=dict( 1355s allow_route_leaking=True, 1355s as_external=True, 1355s stub_network=True, 1355s timeout=1200, 1355s ), 1355s spf_options=dict( 1355s delay=3000, 1355s holddown=4000, 1355s rapid_runs=9, 1355s no_ignore_our_externals=True, 1355s ), 1355s prefix_export_limit=30000, 1355s areas=[ 1355s dict( 1355s area_id="0.0.0.100", 1355s stub=dict(default_metric=200, set=True), 1355s area_ranges=[ 1355s dict( 1355s address="10.200.17.0/24", 1355s exact=True, 1355s restrict=True, 1355s override_metric=2000, 1355s ), 1355s ], 1355s interfaces=[ 1355s dict( 1355s name="so-0/0/0.0", 1355s priority=3, 1355s metric=5, 1355s flood_reduction=False, 1355s passive=True, 1355s bandwidth_based_metrics=[ 1355s dict( 1355s bandwidth="1g", 1355s metric=5, 1355s ), 1355s ], 1355s timers=dict( 1355s dead_interval=4, 1355s hello_interval=2, 1355s poll_interval=2, 1355s retransmit_interval=2, 1355s ), 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s ], 1355s state="overridden", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s '0.0.0.100' 1355s '0.0.0.200' 1355s '' 1355s '' 1355s '' 1355s "30004000" 1355s "9" 1355s "1200" 1355s "" 1355s "10" 1355s "30000" 1355s "0.0.0.100" 1355s "10.200.17.0/24" 1355s "2000" 1355s "so-0/0/0.035" 1355s "" 1355s "1g5" 1355s "42" 1355s "22" 1355s "200" 1355s "", 1355s '' 1355s "10.200.16.75", 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_ospfv2.py:568: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ospfv2.py:1168: in main 1355s result = Ospfv2(module).execute_module() 1355s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:113: in execute_module 1355s config_xmls = self.set_config(existing_ospf_facts) 1355s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:150: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:163: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _____ TestJunosOspfv3Module.test_junos_ospf_interfaces_replaced_idempotent _____ 1355s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ospf_interfaces_replaced_idempotent(self): 1355s self.get_connection.return_value = load_fixture( 1355s "junos_ospf_interfaces_config.cfg", 1355s ) 1355s src = load_fixture("junos_ospf_interfaces.cfg", content="str") 1355s set_module_args(dict(src=src)) 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s router_id="10.200.16.75", 1355s name="ge-0/0/2.0", 1355s address_family=[ 1355s dict( 1355s afi="ipv4", 1355s processes=dict( 1355s area=dict(area_id="0.0.0.1"), 1355s priority=6, 1355s metric=7, 1355s ), 1355s ), 1355s ], 1355s ), 1355s ], 1355s state="replaced", 1355s ), 1355s ) 1355s 1355s > self.execute_module(changed=False, commands=[]) 1355s 1355s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:221: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ospf_interfaces.py:607: in main 1355s result = Ospf_interfaces(module).execute_module() 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 1355s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __________ TestJunosOspfv3Module.test_junos_ospfv3_delete_idempotent ___________ 1355s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ospfv3_delete_idempotent(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s router_id="10.200.16.70", 1355s areas=[ 1355s dict( 1355s area_id="0.0.0.100", 1355s stub=dict(default_metric=200, set=True), 1355s interfaces=[dict(name="so-0/0/0.0")], 1355s ), 1355s ], 1355s ), 1355s ], 1355s state="deleted", 1355s ), 1355s ) 1355s > self.execute_module(changed=False, commands=[]) 1355s 1355s tests/unit/modules/network/junos/test_junos_ospfv3.py:353: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ospfv3.py:748: in main 1355s result = Ospfv3(module).execute_module() 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 1355s config_xmls = self.set_config(existing_ospfv3_facts) 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ______________ TestJunosOspfv3Module.test_junos_ospfv3_overridden ______________ 1355s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ospfv3_overridden(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s router_id="10.200.16.75", 1355s areas=[ 1355s dict( 1355s area_id="0.0.0.100", 1355s stub=dict(default_metric=200, set=True), 1355s interfaces=[ 1355s dict( 1355s name="so-0/0/0.0", 1355s priority=3, 1355s metric=5, 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s ], 1355s state="overridden", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "0.0.0.100so-0/0/0.0" 1355s "3" 1355s "5" 1355s "200", 1355s '' 1355s "10.200.16.75", 1355s ] 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_ospfv3.py:270: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ospfv3.py:748: in main 1355s result = Ospfv3(module).execute_module() 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 1355s config_xmls = self.set_config(existing_ospfv3_facts) 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _ TestJunosPrefix_listsModule.test_junos_prefix_lists_overridden_idempotent_01 _ 1355s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_prefix_lists_overridden_idempotent_01(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict(name="customer_64510"), 1355s dict( 1355s name="customer_64500", 1355s dynamic_db=True, 1355s address_prefixes=["172.16.1.16/28", "172.16.1.32/28"], 1355s ), 1355s ], 1355s state="overridden", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_prefix_lists.py:234: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_prefix_lists.py:653: in main 1355s result = Prefix_lists(module).execute_module() 1355s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:104: in execute_module 1355s config_xmls = self.set_config(existing_prefix_lists_facts) 1355s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 1355s self.root = build_root_xml_node("policy-options") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _______________ TestJunosOspfv3Module.test_junos_ospfv3_replaced _______________ 1355s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ospfv3_replaced(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s router_id="10.200.16.75", 1355s areas=[ 1355s dict( 1355s area_id="0.0.0.100", 1355s stub=dict(default_metric=200, set=True), 1355s interfaces=[ 1355s dict( 1355s name="so-0/0/0.0", 1355s priority=3, 1355s metric=5, 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s ], 1355s state="replaced", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_ospfv3.py:189: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ospfv3.py:748: in main 1355s result = Ospfv3(module).execute_module() 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 1355s config_xmls = self.set_config(existing_ospfv3_facts) 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _______ TestJunosPrefix_listsModule.test_junos_prefix_lists_replaced_01 ________ 1355s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_prefix_lists_replaced_01(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="customer_64510", 1355s address_prefixes=["172.16.1.32/28", "172.16.3.32/28"], 1355s ), 1355s dict( 1355s name="customer_64500", 1355s address_prefixes=["172.16.2.16/28", "172.16.1.32/28"], 1355s ), 1355s ], 1355s state="replaced", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s 'customer_64510' 1355s '' 1355s "customer_64500" 1355s "customer_64510" 1355s "172.16.1.32/28" 1355s "" 1355s "172.16.3.32/28" 1355s "customer_64500" 1355s "172.16.2.16/28" 1355s "172.16.1.32/28" 1355s "", 1355s ] 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_prefix_lists.py:176: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_prefix_lists.py:653: in main 1355s result = Prefix_lists(module).execute_module() 1355s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:104: in execute_module 1355s config_xmls = self.set_config(existing_prefix_lists_facts) 1355s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 1355s self.root = build_root_xml_node("policy-options") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ________________ TestJunosOspfv3Module.test_junos_ospfv3_merged ________________ 1355s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ospfv3_merged(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s router_id="10.200.16.75", 1355s areas=[ 1355s dict( 1355s area_id="0.0.0.100", 1355s stub=dict(default_metric=200, set=True), 1355s interfaces=[ 1355s dict( 1355s name="so-0/0/0.0", 1355s priority=3, 1355s metric=5, 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s ], 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "0.0.0.100so-0/0/0.0" 1355s "35" 1355s "200", 1355s '' 1355s "10.200.16.75", 1355s ] 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_ospfv3.py:131: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ospfv3.py:748: in main 1355s result = Ospfv3(module).execute_module() 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 1355s config_xmls = self.set_config(existing_ospfv3_facts) 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ________ TestJunosOspfv3Module.test_junos_ospfv3_overridden_idempotent _________ 1355s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ospfv3_overridden_idempotent(self): 1355s self.get_connection.return_value = load_fixture( 1355s "junos_ospfv3_config.cfg", 1355s ) 1355s src = load_fixture("junos_ospfv3.cfg", content="str") 1355s set_module_args(dict(src=src)) 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s router_id="30", 1355s areas=[ 1355s dict( 1355s area_id="100", 1355s stub=dict(default_metric=10, set=True), 1355s interfaces=[ 1355s dict( 1355s name="so-0/0/0.0", 1355s priority=3, 1355s metric=5, 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s ], 1355s state="overridden", 1355s ), 1355s ) 1355s 1355s > self.execute_module(changed=False, commands=[]) 1355s 1355s tests/unit/modules/network/junos/test_junos_ospfv3.py:303: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ospfv3.py:748: in main 1355s result = Ospfv3(module).execute_module() 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 1355s config_xmls = self.set_config(existing_ospfv3_facts) 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ___ TestJunosRouting_instancesModule.test_junos_routing_instances_overridden ___ 1355s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_routing_instances_overridden(self): 1355s """ 1355s :return: 1355s """ 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="test1", 1355s type="vrf", 1355s route_distinguisher="10.58.255.1:37", 1355s vrf_imports=["test-policy"], 1355s vrf_exports=["test-policy", "test-policy-1"], 1355s interfaces=[ 1355s dict(name="sp-0/0/0.0"), 1355s dict(name="gr-0/0/0.0"), 1355s ], 1355s connector_id_advertise=True, 1355s ), 1355s ], 1355s state="overridden", 1355s ), 1355s ) 1355s 1355s commands = [ 1355s '' 1355s 'forwardinst' 1355s "test1" 1355s "vrfsp-0/0/0.0" 1355s "gr-0/0/0.0" 1355s "10.58.255.1:37" 1355s "test-policytest-policy" 1355s "test-policy-1", 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_routing_instances.py:293: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_routing_instances.py:796: in main 1355s result = Routing_instances(module).execute_module() 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1355s config_xmls = self.set_config(existing_routing_instances_facts) 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1355s self.root = build_root_xml_node("routing-instances") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ________ TestJunosPrefix_listsModule.test_junos_prefix_lists_merged_01 _________ 1355s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_prefix_lists_merged_01(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="Internal", 1355s address_prefixes=["172.16.1.32", "172.16.3.32"], 1355s ), 1355s dict(name="Test1", dynamic_db=True), 1355s dict( 1355s name="Test2", 1355s address_prefixes=[ 1355s "172.16.2.32", 1355s "172.16.7.32", 1355s "172.16.9.32", 1355s ], 1355s ), 1355s ], 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "Internal" 1355s "172.16.1.32" 1355s "172.16.3.32" 1355s "" 1355s "Test1" 1355s "Test2" 1355s "172.16.2.32" 1355s "172.16.7.32" 1355s "" 1355s "172.16.9.32" 1355s "", 1355s ] 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_prefix_lists.py:125: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_prefix_lists.py:653: in main 1355s result = Prefix_lists(module).execute_module() 1355s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:104: in execute_module 1355s config_xmls = self.set_config(existing_prefix_lists_facts) 1355s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 1355s self.root = build_root_xml_node("policy-options") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _______ TestJunosPrefix_listsModule.test_junos_prefix_lists_rendered_01 ________ 1355s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_prefix_lists_rendered_01(self): 1355s """ 1355s :return: 1355s """ 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="Internal", 1355s address_prefixes=["172.16.1.32", "172.16.3.32"], 1355s ), 1355s dict(name="Test1", dynamic_db=True), 1355s dict( 1355s name="Test2", 1355s address_prefixes=[ 1355s "172.16.2.32", 1355s "172.16.7.32", 1355s "172.16.9.32", 1355s ], 1355s ), 1355s ], 1355s state="rendered", 1355s ), 1355s ) 1355s 1355s rendered = ( 1355s '' 1355s "Internal" 1355s "172.16.1.32" 1355s "172.16.3.32" 1355s "" 1355s "Test1" 1355s "Test2" 1355s "172.16.2.32" 1355s "172.16.7.32" 1355s "" 1355s "172.16.9.32" 1355s "" 1355s ) 1355s > result = self.execute_module(changed=False) 1355s 1355s tests/unit/modules/network/junos/test_junos_prefix_lists.py:326: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_prefix_lists.py:653: in main 1355s result = Prefix_lists(module).execute_module() 1355s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:96: in execute_module 1355s config_xmls = self.set_config(existing_prefix_lists_facts) 1355s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 1355s self.root = build_root_xml_node("policy-options") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosPrefix_listsModule.test_junos_prefix_lists_replaced_idempotent_01 __ 1355s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_prefix_lists_replaced_idempotent_01(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict(name="customer_64510"), 1355s dict( 1355s name="customer_64500", 1355s dynamic_db=True, 1355s address_prefixes=["172.16.1.16/28", "172.16.1.32/28"], 1355s ), 1355s ], 1355s state="replaced", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_prefix_lists.py:193: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_prefix_lists.py:653: in main 1355s result = Prefix_lists(module).execute_module() 1355s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:104: in execute_module 1355s config_xmls = self.set_config(existing_prefix_lists_facts) 1355s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 1355s self.root = build_root_xml_node("policy-options") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosRouting_instancesModule.test_junos_routing_instances_rendered_02 ___ 1355s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_routing_instances_rendered_02(self): 1355s """ 1355s :return: 1355s """ 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="test", 1355s type="mac-vrf", 1355s route_distinguisher="10.58.255.1:37", 1355s vrf_imports=["test-policy"], 1355s vrf_exports=["test-policy", "test-policy-1"], 1355s interfaces=[ 1355s dict(name="sp-0/0/0.0"), 1355s dict(name="gr-0/0/0.0"), 1355s ], 1355s connector_id_advertise=True, 1355s ), 1355s ], 1355s state="rendered", 1355s ), 1355s ) 1355s 1355s rendered = ( 1355s '' 1355s "test" 1355s "mac-vrfsp-0/0/0.0" 1355s "gr-0/0/0.0" 1355s "10.58.255.1:37" 1355s "test-policy" 1355s "test-policytest-policy-1" 1355s "" 1355s ) 1355s > result = self.execute_module(changed=False) 1355s 1355s tests/unit/modules/network/junos/test_junos_routing_instances.py:383: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_routing_instances.py:796: in main 1355s result = Routing_instances(module).execute_module() 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:97: in execute_module 1355s config_xmls = self.set_config(existing_routing_instances_facts) 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1355s self.root = build_root_xml_node("routing-instances") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _________ TestJunosOspfv3Module.test_junos_ospfv3_replaced_idempotent __________ 1355s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ospfv3_replaced_idempotent(self): 1355s self.get_connection.return_value = load_fixture( 1355s "junos_ospfv3_config.cfg", 1355s ) 1355s src = load_fixture("junos_ospfv3.cfg", content="str") 1355s set_module_args(dict(src=src)) 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s router_id="30", 1355s areas=[ 1355s dict( 1355s area_id="100", 1355s stub=dict(default_metric=10, set=True), 1355s interfaces=[ 1355s dict( 1355s name="so-0/0/0.0", 1355s priority=3, 1355s metric=5, 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s ], 1355s state="replaced", 1355s ), 1355s ) 1355s 1355s > self.execute_module(changed=False, commands=[]) 1355s 1355s tests/unit/modules/network/junos/test_junos_ospfv3.py:235: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ospfv3.py:748: in main 1355s result = Ospfv3(module).execute_module() 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 1355s config_xmls = self.set_config(existing_ospfv3_facts) 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _ TestJunosRouting_instancesModule.test_junos_routing_instances_overridden_idempotent _ 1355s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_routing_instances_overridden_idempotent(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="forwardinst", 1355s type="forwarding", 1355s description="Configured by Ansible Content Team", 1355s ), 1355s ], 1355s state="overridden", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_routing_instances.py:309: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_routing_instances.py:796: in main 1355s result = Routing_instances(module).execute_module() 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1355s config_xmls = self.set_config(existing_routing_instances_facts) 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1355s self.root = build_root_xml_node("routing-instances") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _ TestJunosRouting_instancesModule.test_junos_routing_instances_domains_merged _ 1355s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_routing_instances_domains_merged(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="EVPN", 1355s type="virtual-switch", 1355s route_distinguisher="10.0.0.21:444", 1355s bridge_domains=[ 1355s dict( 1355s name="BD456", 1355s vlan_id=456, 1355s enable_mac_move_action=True, 1355s mcae_mac_flush=True, 1355s no_local_switching=True, 1355s service_id=20, 1355s ), 1355s dict( 1355s name="BD457", 1355s vlan_id=457, 1355s ), 1355s ], 1355s ), 1355s dict( 1355s name="mgmt_junos", 1355s ), 1355s ], 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "EVPN" 1355s "virtual-switch" 1355s "" 1355s "BD456" 1355s "20" 1355s "456" 1355s "" 1355s "" 1355s "" 1355s "" 1355s "BD457" 1355s "457" 1355s "10.0.0.21:444" 1355s "mgmt_junos", 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_routing_instances.py:145: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_routing_instances.py:796: in main 1355s result = Routing_instances(module).execute_module() 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1355s config_xmls = self.set_config(existing_routing_instances_facts) 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1355s self.root = build_root_xml_node("routing-instances") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ___ TestJunosPrefix_listsModule.test_junos_prefix_lists_merged_idempotent_01 ___ 1355s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_prefix_lists_merged_idempotent_01(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict(name="customer_64510"), 1355s dict( 1355s name="customer_64500", 1355s dynamic_db=True, 1355s address_prefixes=["172.16.1.16/28", "172.16.1.32/28"], 1355s ), 1355s ], 1355s state="merged", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_prefix_lists.py:142: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_prefix_lists.py:653: in main 1355s result = Prefix_lists(module).execute_module() 1355s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:104: in execute_module 1355s config_xmls = self.set_config(existing_prefix_lists_facts) 1355s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 1355s self.root = build_root_xml_node("policy-options") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _____ TestJunosRouting_optionsModule.test_junos_routing_options_merged_01 ______ 1355s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_routing_options_merged_01(self): 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s autonomous_system=dict( 1355s as_number="2", 1355s loops=4, 1355s asdot_notation=True, 1355s ), 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_routing_options.py:103: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_routing_options.py:397: in main 1355s result = Routing_options(module).execute_module() 1355s plugins/module_utils/network/junos/config/routing_options/routing_options.py:106: in execute_module 1355s config_xmls = self.set_config(existing_routing_options_facts) 1355s plugins/module_utils/network/junos/config/routing_options/routing_options.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/routing_options/routing_options.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _______________ TestJunosOspfv3Module.test_junos_ospfv3_rendered _______________ 1355s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_ospfv3_rendered(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s router_id="10.200.16.75", 1355s areas=[ 1355s dict( 1355s area_id="0.0.0.100", 1355s stub=dict(default_metric=200, set=True), 1355s interfaces=[ 1355s dict( 1355s name="so-0/0/0.0", 1355s priority=3, 1355s metric=5, 1355s ), 1355s ], 1355s ), 1355s ], 1355s ), 1355s ], 1355s state="rendered", 1355s ), 1355s ) 1355s commands = ( 1355s '' 1355s "0.0.0.100so-0/0/0.0" 1355s "35" 1355s "200" 1355s ) 1355s > self.execute_module(changed=False, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_ospfv3.py:403: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_ospfv3.py:748: in main 1355s result = Ospfv3(module).execute_module() 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:106: in execute_module 1355s config_xmls = self.set_config(existing_ospfv3_facts) 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ____ TestJunosRouting_instancesModule.test_junos_routing_instances_deleted _____ 1355s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_routing_instances_deleted(self): 1355s """ 1355s :return: 1355s """ 1355s set_module_args(dict(config=[], state="deleted")) 1355s 1355s commands = [ 1355s '' 1355s '', 1355s ] 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_routing_instances.py:411: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_routing_instances.py:796: in main 1355s result = Routing_instances(module).execute_module() 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1355s config_xmls = self.set_config(existing_routing_instances_facts) 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1355s self.root = build_root_xml_node("routing-instances") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ____ TestJunosRouting_instancesModule.test_junos_routing_instances_replaced ____ 1355s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_routing_instances_replaced(self): 1355s """ 1355s :return: 1355s """ 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="test", 1355s type="vrf", 1355s route_distinguisher="10.58.255.1:37", 1355s vrf_imports=["test-policy"], 1355s vrf_exports=["test-policy", "test-policy-1"], 1355s interfaces=[ 1355s dict(name="sp-0/0/0.0"), 1355s dict(name="gr-0/0/0.0"), 1355s ], 1355s connector_id_advertise=True, 1355s ), 1355s dict( 1355s name="forwardinst", 1355s type="forwarding", 1355s description="Replaced and Configured by Ansible Content Team", 1355s ), 1355s ], 1355s state="replaced", 1355s ), 1355s ) 1355s 1355s commands = [ 1355s '' 1355s 'forwardinst' 1355s "test" 1355s "vrfsp-0/0/0.0" 1355s "gr-0/0/0.0" 1355s "10.58.255.1:37" 1355s "test-policy" 1355s "test-policytest-policy-1" 1355s "forwardinst" 1355s "Replaced and Configured by Ansible Content Team" 1355s "forwarding" 1355s "", 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_routing_instances.py:240: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_routing_instances.py:796: in main 1355s result = Routing_instances(module).execute_module() 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1355s config_xmls = self.set_config(existing_routing_instances_facts) 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1355s self.root = build_root_xml_node("routing-instances") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _ TestJunosRouting_optionsModule.test_junos_routing_options_merged_idempotent __ 1355s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_routing_options_merged_idempotent(self): 1355s self.execute_show_command.return_value = load_fixture( 1355s "junos_routing_options_config.cfg", 1355s ) 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s router_id="12.12.12.13", 1355s autonomous_system=dict(as_number="1"), 1355s ), 1355s state="merged", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_routing_options.py:122: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_routing_options.py:397: in main 1355s result = Routing_options(module).execute_module() 1355s plugins/module_utils/network/junos/config/routing_options/routing_options.py:106: in execute_module 1355s config_xmls = self.set_config(existing_routing_options_facts) 1355s plugins/module_utils/network/junos/config/routing_options/routing_options.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/routing_options/routing_options.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _____ TestJunosRouting_instancesModule.test_junos_routing_instances_merged _____ 1355s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_routing_instances_merged(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="test", 1355s type="vrf", 1355s route_distinguisher="10.58.255.1:37", 1355s vrf_imports=["test-policy"], 1355s vrf_exports=["test-policy", "test-policy-1"], 1355s interfaces=[ 1355s dict(name="sp-0/0/0.0"), 1355s dict(name="gr-0/0/0.0"), 1355s ], 1355s connector_id_advertise=True, 1355s ), 1355s ], 1355s state="merged", 1355s ), 1355s ) 1355s commands = [ 1355s '' 1355s "test" 1355s "vrfsp-0/0/0.0" 1355s "gr-0/0/0.0" 1355s "10.58.255.1:37" 1355s "test-policy" 1355s "test-policytest-policy-1" 1355s "", 1355s ] 1355s > result = self.execute_module(changed=True, commands=commands) 1355s 1355s tests/unit/modules/network/junos/test_junos_routing_instances.py:178: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_routing_instances.py:796: in main 1355s result = Routing_instances(module).execute_module() 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1355s config_xmls = self.set_config(existing_routing_instances_facts) 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1355s self.root = build_root_xml_node("routing-instances") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ______ TestJunosRouting_optionsModule.test_junos_routing_options_rendered ______ 1355s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_routing_options_rendered(self): 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s autonomous_system=dict( 1355s as_number="2", 1355s loops=4, 1355s asdot_notation=True, 1355s ), 1355s router_id="12.12.12.12", 1355s ), 1355s state="rendered", 1355s ), 1355s ) 1355s rendered = ( 1355s '' 1355s "24" 1355s "12.12.12.12" 1355s ) 1355s > result = self.execute_module(changed=False) 1355s 1355s tests/unit/modules/network/junos/test_junos_routing_options.py:191: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_routing_options.py:397: in main 1355s result = Routing_options(module).execute_module() 1355s plugins/module_utils/network/junos/config/routing_options/routing_options.py:100: in execute_module 1355s config_xmls = self.set_config(existing_routing_options_facts) 1355s plugins/module_utils/network/junos/config/routing_options/routing_options.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/routing_options/routing_options.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ____ TestJunosRouting_instancesModule.test_junos_routing_instances_rendered ____ 1355s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_routing_instances_rendered(self): 1355s """ 1355s :return: 1355s """ 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="test", 1355s type="vrf", 1355s route_distinguisher="10.58.255.1:37", 1355s vrf_imports=["test-policy"], 1355s vrf_exports=["test-policy", "test-policy-1"], 1355s interfaces=[ 1355s dict(name="sp-0/0/0.0"), 1355s dict(name="gr-0/0/0.0"), 1355s ], 1355s connector_id_advertise=True, 1355s ), 1355s ], 1355s state="rendered", 1355s ), 1355s ) 1355s 1355s rendered = ( 1355s '' 1355s "test" 1355s "vrfsp-0/0/0.0" 1355s "gr-0/0/0.0" 1355s "10.58.255.1:37" 1355s "test-policy" 1355s "test-policytest-policy-1" 1355s "" 1355s ) 1355s > result = self.execute_module(changed=False) 1355s 1355s tests/unit/modules/network/junos/test_junos_routing_instances.py:346: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_routing_instances.py:796: in main 1355s result = Routing_instances(module).execute_module() 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:97: in execute_module 1355s config_xmls = self.set_config(existing_routing_instances_facts) 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1355s self.root = build_root_xml_node("routing-instances") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _ TestJunosRouting_instancesModule.test_junos_routing_instances_delted_single_entry _ 1355s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_routing_instances_delted_single_entry(self): 1355s """ 1355s :return: 1355s """ 1355s set_module_args( 1355s dict(config=[dict(name="forwardinst")], state="deleted"), 1355s ) 1355s 1355s commands = [ 1355s '' 1355s 'forwardinst', 1355s ] 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_routing_instances.py:426: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_routing_instances.py:796: in main 1355s result = Routing_instances(module).execute_module() 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1355s config_xmls = self.set_config(existing_routing_instances_facts) 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1355s self.root = build_root_xml_node("routing-instances") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _ TestJunosRouting_instancesModule.test_junos_routing_instances_replaced_idempotent _ 1355s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_routing_instances_replaced_idempotent(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="forwardinst", 1355s type="forwarding", 1355s description="Configured by Ansible Content Team", 1355s ), 1355s ], 1355s state="replaced", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_routing_instances.py:256: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_routing_instances.py:796: in main 1355s result = Routing_instances(module).execute_module() 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1355s config_xmls = self.set_config(existing_routing_instances_facts) 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1355s self.root = build_root_xml_node("routing-instances") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _____ TestJunosRouting_optionsModule.test_junos_routing_options_overridden _____ 1355s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_routing_options_overridden(self): 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s autonomous_system=dict( 1355s as_number="1", 1355s loops=4, 1355s asdot_notation=True, 1355s ), 1355s ), 1355s state="overridden", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_routing_options.py:207: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_routing_options.py:397: in main 1355s result = Routing_options(module).execute_module() 1355s plugins/module_utils/network/junos/config/routing_options/routing_options.py:106: in execute_module 1355s config_xmls = self.set_config(existing_routing_options_facts) 1355s plugins/module_utils/network/junos/config/routing_options/routing_options.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/routing_options/routing_options.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ___ TestJunosSecurity_policiesModule.test_junos_security_policies_merged_02 ____ 1355s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_security_policies_merged_02(self): 1355s set_module_args( 1355s dict( 1355s config={ 1355s "from_zones": [ 1355s { 1355s "name": "one", 1355s "to_zones": [ 1355s { 1355s "name": "two", 1355s "policies": [ 1355s { 1355s "match": { 1355s "application": {"any": True}, 1355s "destination_address": { 1355s "any_ipv4": True, 1355s "any_ipv6": True, 1355s "any": True, 1355s }, 1355s "dynamic_application": { 1355s "names": [ 1355s "test1", 1355s "test2", 1355s ], 1355s "none": True, 1355s }, 1355s "source_address": { 1355s "any_ipv4": True, 1355s "any_ipv6": True, 1355s "any": True, 1355s }, 1355s "source_identity": { 1355s "unknown_user": True, 1355s "unauthenticated_user": True, 1355s "authenticated_user": True, 1355s "names": ["test1"], 1355s }, 1355s "url_category": { 1355s "any": True, 1355s "none": True, 1355s }, 1355s }, 1355s "name": "test_policy_1", 1355s "then": { 1355s "count": True, 1355s "deny": True, 1355s "log": {"session_init": True}, 1355s }, 1355s }, 1355s ], 1355s }, 1355s { 1355s "name": "three", 1355s "policies": [ 1355s { 1355s "match": { 1355s "application": { 1355s "names": [ 1355s "junos-dhcp-relay", 1355s ], 1355s }, 1355s "destination_address": { 1355s "any": True, 1355s }, 1355s "source_address": { 1355s "any": True, 1355s }, 1355s }, 1355s "name": "test_policy_3", 1355s "then": { 1355s "permit": { 1355s "application_services": { 1355s "idp": True, 1355s "redirect_wx": True, 1355s "uac_policy": { 1355s "captive_portal": "test", 1355s }, 1355s }, 1355s "firewall_authentication": { 1355s "user_firewall": { 1355s "domain": "test", 1355s }, 1355s }, 1355s "destination_address": "drop-untranslated", 1355s "tunnel": { 1355s "ipsec_vpn": "test_vpn", 1355s "pair_policy": "test_policy", 1355s }, 1355s }, 1355s }, 1355s }, 1355s ], 1355s }, 1355s ], 1355s }, 1355s ], 1355s }, 1355s state="merged", 1355s ), 1355s ) 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_security_policies.py:450: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_security_policies.py:2700: in main 1355s result = Security_policies(module).execute_module() 1355s plugins/module_utils/network/junos/config/security_policies/security_policies.py:106: in execute_module 1355s config_xmls = self.set_config(existing_security_policies_facts) 1355s plugins/module_utils/network/junos/config/security_policies/security_policies.py:142: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/security_policies/security_policies.py:154: in set_state 1355s self.root = build_root_xml_node("security") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ____ TestJunosRouting_optionsModule.test_junos_routing_options_replaced_01 _____ 1355s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_routing_options_replaced_01(self): 1355s set_module_args( 1355s dict( 1355s config=dict( 1355s autonomous_system=dict( 1355s as_number="1", 1355s loops=4, 1355s asdot_notation=True, 1355s ), 1355s ), 1355s state="replaced", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_routing_options.py:166: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_routing_options.py:397: in main 1355s result = Routing_options(module).execute_module() 1355s plugins/module_utils/network/junos/config/routing_options/routing_options.py:106: in execute_module 1355s config_xmls = self.set_config(existing_routing_options_facts) 1355s plugins/module_utils/network/junos/config/routing_options/routing_options.py:144: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/routing_options/routing_options.py:156: in set_state 1355s self.root = build_root_xml_node("configuration") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _ TestJunosRouting_instancesModule.test_junos_routing_instances_merged_idempotent _ 1355s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_routing_instances_merged_idempotent(self): 1355s set_module_args( 1355s dict( 1355s config=[ 1355s dict( 1355s name="forwardinst", 1355s type="forwarding", 1355s description="Configured by Ansible Content Team", 1355s ), 1355s ], 1355s state="merged", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_routing_instances.py:194: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_routing_instances.py:796: in main 1355s result = Routing_instances(module).execute_module() 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1355s config_xmls = self.set_config(existing_routing_instances_facts) 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1355s self.root = build_root_xml_node("routing-instances") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ____ TestJunosSecurity_policiesModule.test_junos_security_policies_rendered ____ 1355s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_security_policies_rendered(self): 1355s set_module_args( 1355s dict( 1355s config={ 1355s "global": { 1355s "policies": [ 1355s { 1355s "description": "test update", 1355s "match": { 1355s "application": {"any": True}, 1355s "destination_address": {"any_ipv6": True}, 1355s "source_address": {"any": True}, 1355s }, 1355s "name": "test_glob_3", 1355s "then": {"deny": True}, 1355s }, 1355s ], 1355s }, 1355s }, 1355s state="rendered", 1355s ), 1355s ) 1355s rendered = ( 1355s '' 1355s "test_glob_3test update" 1355s "anyany-ipv6" 1355s "any" 1355s "" 1355s ) 1355s > result = self.execute_module(changed=False) 1355s 1355s tests/unit/modules/network/junos/test_junos_security_policies.py:1055: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_security_policies.py:2700: in main 1355s result = Security_policies(module).execute_module() 1355s plugins/module_utils/network/junos/config/security_policies/security_policies.py:100: in execute_module 1355s config_xmls = self.set_config(existing_security_policies_facts) 1355s plugins/module_utils/network/junos/config/security_policies/security_policies.py:142: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/security_policies/security_policies.py:154: in set_state 1355s self.root = build_root_xml_node("security") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_merged_03 _ 1355s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_security_policies_global_merged_03(self): 1355s set_module_args( 1355s dict( 1355s config={"traceoptions": {"flag": "compilation"}}, 1355s state="merged", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_security_policies_global.py:209: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_security_policies_global.py:989: in main 1355s result = Security_policies_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:108: in execute_module 1355s config_xmls = self.set_config( 1355s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 1355s self.root = build_root_xml_node("security") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_merged_01 _ 1355s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_security_policies_global_merged_01(self): 1355s set_module_args( 1355s dict( 1355s config={ 1355s "default_policy": "permit-all", 1355s "policy_rematch": {"enable": True, "extensive": True}, 1355s "policy_stats": {"enable": True, "system_wide": True}, 1355s "pre_id_default_policy_action": { 1355s "log": {"session_init": True, "session_close": True}, 1355s "session_timeout": {"icmp": 10, "others": 10}, 1355s }, 1355s "traceoptions": { 1355s "file": { 1355s "files": 3, 1355s "match": "/[A-Z]*/gm", 1355s "no_world_readable": True, 1355s "size": "10k", 1355s }, 1355s "flag": "all", 1355s "no_remote_trace": True, 1355s }, 1355s }, 1355s state="merged", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_security_policies_global.py:136: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_security_policies_global.py:989: in main 1355s result = Security_policies_global(module).execute_module() 1355s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:108: in execute_module 1355s config_xmls = self.set_config( 1355s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 1355s self.root = build_root_xml_node("security") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s __ TestJunosSecurity_policiesModule.test_junos_security_policies_replaced_01 ___ 1355s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_security_policies_replaced_01(self): 1355s set_module_args( 1355s dict( 1355s config={ 1355s "global": { 1355s "policies": [ 1355s { 1355s "description": "test update", 1355s "match": { 1355s "application": {"any": True}, 1355s "destination_address": {"any_ipv6": True}, 1355s "source_address": {"any": True}, 1355s }, 1355s "name": "test_glob_3", 1355s "then": {"deny": True}, 1355s }, 1355s ], 1355s }, 1355s }, 1355s state="replaced", 1355s ), 1355s ) 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_security_policies.py:1080: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1355s tests/unit/modules/network/junos/junos_module.py:97: in changed 1355s self.module.main() 1355s plugins/modules/junos_security_policies.py:2700: in main 1355s result = Security_policies(module).execute_module() 1355s plugins/module_utils/network/junos/config/security_policies/security_policies.py:106: in execute_module 1355s config_xmls = self.set_config(existing_security_policies_facts) 1355s plugins/module_utils/network/junos/config/security_policies/security_policies.py:142: in set_config 1355s resp = self.set_state(want, have) 1355s plugins/module_utils/network/junos/config/security_policies/security_policies.py:154: in set_state 1355s self.root = build_root_xml_node("security") 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s 1355s def build_root_xml_node(tag): 1355s > return new_ele(tag) 1355s E NameError: name 'new_ele' is not defined 1355s 1355s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1355s ___ TestJunosSecurity_policiesModule.test_junos_security_policies_merged_01 ____ 1355s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1355s 1355s self = 1355s 1355s def test_junos_security_policies_merged_01(self): 1355s set_module_args( 1355s dict( 1355s config={ 1355s "from_zones": [ 1355s { 1355s "name": "one", 1355s "to_zones": [ 1355s { 1355s "name": "two", 1355s "policies": [ 1355s { 1355s "match": { 1355s "application": { 1355s "names": [ 1355s "junos-dhcp-relay", 1355s "junos-finger", 1355s ], 1355s }, 1355s "destination_address": { 1355s "addresses": ["a2", "a4"], 1355s }, 1355s "destination_address_excluded": True, 1355s "dynamic_application": { 1355s "any": True, 1355s }, 1355s "source_address": { 1355s "addresses": ["a1", "a3"], 1355s }, 1355s "source_address_excluded": True, 1355s "source_end_user_profile": "test_end_user_profile", 1355s "source_identity": { 1355s "unknown_user": True, 1355s }, 1355s "url_category": { 1355s "names": [ 1355s "Enhanced_Web_Chat", 1355s "Enhanced_Web_Collaboration", 1355s ], 1355s }, 1355s }, 1355s "name": "test_policy_1", 1355s "then": { 1355s "count": True, 1355s "deny": True, 1355s "log": {"session_close": True}, 1355s }, 1355s }, 1355s { 1355s "match": { 1355s "application": { 1355s "names": [ 1355s "junos-dhcp-relay", 1355s ], 1355s }, 1355s "destination_address": { 1355s "addresses": ["a2"], 1355s }, 1355s "source_address": { 1355s "addresses": ["a1"], 1355s }, 1355s }, 1355s "name": "test_policy_2", 1355s "then": { 1355s "reject": { 1355s "enable": True, 1355s "profile": "test_dyn_app", 1355s "ssl_proxy": { 1355s "enable": True, 1355s "profile_name": "SECURITY-SSL-PROXY", 1355s }, 1355s }, 1355s }, 1355s }, 1355s ], 1355s }, 1355s { 1355s "name": "three", 1355s "policies": [ 1355s { 1355s "match": { 1355s "application": { 1355s "names": [ 1355s "junos-dhcp-relay", 1355s ], 1355s }, 1355s "destination_address": { 1355s "addresses": ["a2"], 1355s }, 1355s "source_address": { 1355s "addresses": ["a1"], 1355s }, 1355s }, 1355s "name": "test_policy_3", 1355s "then": { 1355s "permit": { 1355s "destination_address": "drop-translated", 1355s "application_services": { 1355s "advanced_anti_malware_policy": "test_anti_malware", 1355s "application_traffic_control_rule_set": "test_traffic_control", 1355s "gprs_gtp_profile": "gtp1", 1355s "gprs_sctp_profile": "sctp1", 1355s "icap_redirect": "test_icap", 1355s "idp_policy": "test_idp", 1355s "reverse_redirect_wx": True, 1355s "ssl_proxy": { 1355s "enable": True, 1355s "profile_name": "SECURITY-SSL-PROXY", 1355s }, 1355s "uac_policy": { 1355s "enable": True, 1355s }, 1355s "utm_policy": "test_utm", 1355s }, 1355s "firewall_authentication": { 1355s "pass_through": { 1355s "access_profile": "WEBAUTH", 1355s "auth_only_browser": True, 1355s "auth_user_agent": "Opera1", 1355s "client_match": "test-client", 1355s "ssl_termination_profile": "test_ssl_term", 1355s "web_redirect": True, 1355s "web_redirect_to_https": True, 1355s }, 1355s "push_to_identity_management": True, 1355s "user_firewall": { 1355s "access_profile": "WEBAUTH", 1355s "auth_only_browser": True, 1355s "auth_user_agent": "Opera1", 1355s "ssl_termination_profile": "test_ssl_term", 1355s "web_redirect": True, 1355s "web_redirect_to_https": True, 1355s }, 1355s "web_authentication": [ 1355s "FWClient1", 1355s "FWClient2", 1355s ], 1355s }, 1355s "tcp_options": { 1355s "initial_tcp_mss": 64, 1355s "reverse_tcp_mss": 64, 1355s "window_scale": True, 1355s }, 1355s }, 1355s }, 1355s }, 1355s ], 1355s }, 1355s ], 1355s }, 1355s ], 1355s "global": { 1355s "policies": [ 1355s { 1355s "match": { 1355s "application": { 1355s "names": ["junos-dhcp-relay"], 1355s }, 1355s "destination_address": { 1355s "addresses": ["a2"], 1355s }, 1355s "source_address": {"addresses": ["a1"]}, 1355s }, 1355s "name": "test_glob_1", 1355s "then": {"deny": True}, 1355s }, 1355s { 1355s "match": { 1355s "application": { 1355s "names": ["junos-dhcp-relay"], 1355s }, 1355s "destination_address": { 1355s "addresses": ["a2"], 1355s }, 1355s "source_address": {"addresses": ["a1"]}, 1355s }, 1355s "name": "test_glob_2", 1355s "then": {"deny": True}, 1355s }, 1355s ], 1355s }, 1355s }, 1355s state="merged", 1355s ), 1355s ) 1355s 1355s > result = self.execute_module(changed=True) 1355s 1355s tests/unit/modules/network/junos/test_junos_security_policies.py:295: 1355s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1355s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1355s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_security_policies.py:2700: in main 1356s result = Security_policies(module).execute_module() 1356s plugins/module_utils/network/junos/config/security_policies/security_policies.py:106: in execute_module 1356s config_xmls = self.set_config(existing_security_policies_facts) 1356s plugins/module_utils/network/junos/config/security_policies/security_policies.py:142: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/security_policies/security_policies.py:154: in set_state 1356s self.root = build_root_xml_node("security") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s _ TestJunosSecurity_policiesModule.test_junos_security_policies_overridden_01 __ 1356s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_security_policies_overridden_01(self): 1356s set_module_args( 1356s dict( 1356s config={ 1356s "global": { 1356s "policies": [ 1356s { 1356s "description": "test update", 1356s "match": { 1356s "application": {"any": True}, 1356s "destination_address": {"any_ipv6": True}, 1356s "source_address": {"any": True}, 1356s }, 1356s "name": "test_glob_3", 1356s "then": {"deny": True}, 1356s }, 1356s ], 1356s }, 1356s }, 1356s state="overridden", 1356s ), 1356s ) 1356s commands = ( 1356s '' 1356s "test_glob_3test updateany" 1356s "any-ipv6any" 1356s "" 1356s ) 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_security_policies.py:825: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_security_policies.py:2700: in main 1356s result = Security_policies(module).execute_module() 1356s plugins/module_utils/network/junos/config/security_policies/security_policies.py:106: in execute_module 1356s config_xmls = self.set_config(existing_security_policies_facts) 1356s plugins/module_utils/network/junos/config/security_policies/security_policies.py:142: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/security_policies/security_policies.py:154: in set_state 1356s self.root = build_root_xml_node("security") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_overridden_01 _ 1356s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_security_policies_global_overridden_01(self): 1356s set_module_args( 1356s dict( 1356s config={ 1356s "default_policy": "permit-all", 1356s "policy_rematch": {"enable": True, "extensive": True}, 1356s "policy_stats": {"enable": True, "system_wide": True}, 1356s "pre_id_default_policy_action": { 1356s "log": {"session_init": True}, 1356s "session_timeout": {"icmp": 10, "others": 10}, 1356s }, 1356s "traceoptions": { 1356s "file": { 1356s "files": 3, 1356s "match": "/[A-Z]*/gm", 1356s "no_world_readable": True, 1356s "size": "10k", 1356s }, 1356s "flag": "ipc", 1356s "no_remote_trace": True, 1356s }, 1356s }, 1356s state="overridden", 1356s ), 1356s ) 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_security_policies_global.py:509: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_security_policies_global.py:989: in main 1356s result = Security_policies_global(module).execute_module() 1356s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:108: in execute_module 1356s config_xmls = self.set_config( 1356s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 1356s self.root = build_root_xml_node("security") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_rendered _ 1356s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_security_policies_global_rendered(self): 1356s set_module_args( 1356s dict( 1356s config={ 1356s "default_policy": "permit-all", 1356s "policy_rematch": {"enable": True, "extensive": True}, 1356s "policy_stats": {"enable": True, "system_wide": True}, 1356s "pre_id_default_policy_action": { 1356s "log": {"session_init": True}, 1356s "session_timeout": {"icmp": 10, "others": 10}, 1356s }, 1356s "traceoptions": { 1356s "file": { 1356s "files": 3, 1356s "match": "/[A-Z]*/gm", 1356s "no_world_readable": True, 1356s "size": "10k", 1356s }, 1356s "flag": "routing-socket", 1356s "no_remote_trace": True, 1356s }, 1356s }, 1356s state="rendered", 1356s ), 1356s ) 1356s rendered = ( 1356s '' 1356s " " 1356s " enable" 1356s "" 1356s "1010" 1356s "3" 1356s "/[A-Z]*/gm10k" 1356s "routing-socket" 1356s "" 1356s ) 1356s > result = self.execute_module(changed=False) 1356s 1356s tests/unit/modules/network/junos/test_junos_security_policies_global.py:590: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_security_policies_global.py:989: in main 1356s result = Security_policies_global(module).execute_module() 1356s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:100: in execute_module 1356s config_xmls = self.set_config( 1356s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 1356s self.root = build_root_xml_node("security") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_replaced_01 _ 1356s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_security_policies_global_replaced_01(self): 1356s set_module_args( 1356s dict( 1356s config={ 1356s "default_policy": "permit-all", 1356s "policy_rematch": {"enable": True, "extensive": True}, 1356s "policy_stats": {"enable": True, "system_wide": True}, 1356s "pre_id_default_policy_action": { 1356s "log": {"session_init": True}, 1356s "session_timeout": {"icmp": 10, "others": 10}, 1356s }, 1356s "traceoptions": { 1356s "file": { 1356s "files": 3, 1356s "match": "/[A-Z]*/gm", 1356s "no_world_readable": True, 1356s "size": "10k", 1356s }, 1356s "flag": "rules", 1356s "no_remote_trace": True, 1356s }, 1356s }, 1356s state="replaced", 1356s ), 1356s ) 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_security_policies_global.py:623: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_security_policies_global.py:989: in main 1356s result = Security_policies_global(module).execute_module() 1356s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:108: in execute_module 1356s config_xmls = self.set_config( 1356s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 1356s self.root = build_root_xml_node("security") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_merged_04 _ 1356s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_security_policies_global_merged_04(self): 1356s set_module_args( 1356s dict(config={"traceoptions": {"flag": "lookup"}}, state="merged"), 1356s ) 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_security_policies_global.py:224: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_security_policies_global.py:989: in main 1356s result = Security_policies_global(module).execute_module() 1356s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:108: in execute_module 1356s config_xmls = self.set_config( 1356s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 1356s self.root = build_root_xml_node("security") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_merged_02 _ 1356s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_security_policies_global_merged_02(self): 1356s set_module_args( 1356s dict( 1356s config={ 1356s "default_policy": "deny-all", 1356s "policy_rematch": {"enable": True, "extensive": True}, 1356s "policy_stats": {"enable": True, "system_wide": False}, 1356s "pre_id_default_policy_action": { 1356s "log": {"session_init": True}, 1356s "session_timeout": { 1356s "icmp": 10, 1356s "others": 10, 1356s "icmp6": 10, 1356s "ospf": 10, 1356s "tcp": 10, 1356s "udp": 10, 1356s }, 1356s }, 1356s "traceoptions": { 1356s "file": { 1356s "files": 3, 1356s "match": "/[A-Z]*/gm", 1356s "world_readable": True, 1356s "size": "10k", 1356s }, 1356s "flag": "configuration", 1356s "no_remote_trace": True, 1356s }, 1356s }, 1356s state="merged", 1356s ), 1356s ) 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_security_policies_global.py:185: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_security_policies_global.py:989: in main 1356s result = Security_policies_global(module).execute_module() 1356s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:108: in execute_module 1356s config_xmls = self.set_config( 1356s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 1356s self.root = build_root_xml_node("security") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s _____ TestJunosSecurity_zonesModule.test_junos_security_zones_replaced_01 ______ 1356s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_security_zones_replaced_01(self): 1356s set_module_args( 1356s dict( 1356s config={ 1356s "functional_zone_management": { 1356s "description": "test description 2", 1356s "host_inbound_traffic": { 1356s "protocols": [{"name": "all"}], 1356s "system_services": [{"name": "all"}], 1356s }, 1356s "interfaces": ["ge-0/0/1.0", "ge-0/0/2.0"], 1356s "screen": "test_screen", 1356s }, 1356s "zones": [ 1356s { 1356s "address_book": { 1356s "address_sets": [ 1356s { 1356s "addresses": [ 1356s "test_adr1", 1356s "test_adr2", 1356s ], 1356s "name": "test_adrset1", 1356s }, 1356s { 1356s "addresses": [ 1356s "test_adr3", 1356s "test_adr4", 1356s ], 1356s "name": "test_adrset2", 1356s }, 1356s { 1356s "address_sets": [ 1356s "test_adrset1", 1356s "test_adrset2", 1356s ], 1356s "addresses": ["test_adr5"], 1356s "description": "test description", 1356s "name": "test_adrset3", 1356s }, 1356s ], 1356s "addresses": [ 1356s { 1356s "description": "test desc", 1356s "ip_prefix": "10.0.0.0/24", 1356s "name": "test_adr1", 1356s }, 1356s { 1356s "dns_name": { 1356s "ipv6_only": True, 1356s "name": "1.1.1.1", 1356s }, 1356s "name": "test_adr2", 1356s }, 1356s { 1356s "name": "test_adr3", 1356s "range_address": { 1356s "from": "10.2.0.1", 1356s "to": "10.2.0.2", 1356s }, 1356s }, 1356s { 1356s "name": "test_adr4", 1356s "wildcard_address": "10.3.0.1/24", 1356s }, 1356s { 1356s "description": "test desc", 1356s "ip_prefix": "10.1.0.0/24", 1356s "name": "test_adr5", 1356s }, 1356s ], 1356s }, 1356s "advance_policy_based_routing_profile": "test_profile", 1356s "application_tracking": True, 1356s "description": "test description", 1356s "enable_reverse_reroute": True, 1356s "host_inbound_traffic": { 1356s "protocols": [ 1356s {"name": "all"}, 1356s {"except": True, "name": "bgp"}, 1356s ], 1356s "system_services": [ 1356s {"name": "all"}, 1356s {"except": True, "name": "dhcp"}, 1356s ], 1356s }, 1356s "interfaces": ["ge-0/0/3.0", "ge-0/0/4.0"], 1356s "name": "test_sec_zone1", 1356s "screen": "test_screen", 1356s "source_identity_log": True, 1356s "tcp_rst": True, 1356s }, 1356s ], 1356s }, 1356s state="replaced", 1356s ), 1356s ) 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_security_zones.py:1217: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_security_zones.py:1997: in main 1356s result = Security_zones(module).execute_module() 1356s plugins/module_utils/network/junos/config/security_zones/security_zones.py:106: in execute_module 1356s config_xmls = self.set_config(existing_security_zones_facts) 1356s plugins/module_utils/network/junos/config/security_zones/security_zones.py:142: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/security_zones/security_zones.py:154: in set_state 1356s self.root = build_root_xml_node("security") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s __________ TestJunosSnmp_serverModule.test_junos_ntp_global_rendered ___________ 1356s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_ntp_global_rendered(self): 1356s set_module_args( 1356s dict( 1356s config=dict( 1356s client_lists=[ 1356s dict( 1356s name="cl2", 1356s addresses=[dict(address="192.16.4.0/24")], 1356s ), 1356s ], 1356s ), 1356s state="rendered", 1356s ), 1356s ) 1356s rendered = ( 1356s 'cl2' 1356s "192.16.4.0/24" 1356s "" 1356s ) 1356s > result = self.execute_module(changed=False) 1356s 1356s tests/unit/modules/network/junos/test_junos_snmp_server.py:1082: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_snmp_server.py:1579: in main 1356s result = Snmp_server(module).execute_module() 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:98: in execute_module 1356s config_xmls = self.set_config(existing_snmp_server_facts) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1356s self.root = build_root_xml_node("configuration") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s ____ TestJunosSecurity_zonesModule.test_junos_security_zones_overridden_01 _____ 1356s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_security_zones_overridden_01(self): 1356s set_module_args( 1356s dict( 1356s config={ 1356s "functional_zone_management": { 1356s "description": "test description 2", 1356s "host_inbound_traffic": { 1356s "protocols": [{"name": "all"}], 1356s "system_services": [{"name": "all"}], 1356s }, 1356s "interfaces": ["ge-0/0/1.0", "ge-0/0/2.0"], 1356s "screen": "test_screen", 1356s }, 1356s "zones": [ 1356s { 1356s "address_book": { 1356s "address_sets": [ 1356s { 1356s "addresses": [ 1356s "test_adr1", 1356s "test_adr2", 1356s ], 1356s "name": "test_adrset1", 1356s }, 1356s { 1356s "addresses": [ 1356s "test_adr3", 1356s "test_adr4", 1356s ], 1356s "name": "test_adrset2", 1356s }, 1356s { 1356s "address_sets": [ 1356s "test_adrset1", 1356s "test_adrset2", 1356s ], 1356s "addresses": ["test_adr5"], 1356s "description": "test description", 1356s "name": "test_adrset3", 1356s }, 1356s ], 1356s "addresses": [ 1356s { 1356s "description": "test desc", 1356s "ip_prefix": "10.0.0.0/24", 1356s "name": "test_adr1", 1356s }, 1356s { 1356s "dns_name": { 1356s "ipv6_only": True, 1356s "name": "1.1.1.1", 1356s }, 1356s "name": "test_adr2", 1356s }, 1356s { 1356s "name": "test_adr3", 1356s "range_address": { 1356s "from": "10.2.0.1", 1356s "to": "10.2.0.2", 1356s }, 1356s }, 1356s { 1356s "name": "test_adr4", 1356s "wildcard_address": "10.3.0.1/24", 1356s }, 1356s { 1356s "description": "test desc", 1356s "ip_prefix": "10.1.0.0/24", 1356s "name": "test_adr5", 1356s }, 1356s ], 1356s }, 1356s "advance_policy_based_routing_profile": "test_profile", 1356s "application_tracking": True, 1356s "description": "test description", 1356s "enable_reverse_reroute": True, 1356s "host_inbound_traffic": { 1356s "protocols": [ 1356s {"name": "all"}, 1356s {"except": True, "name": "bgp"}, 1356s ], 1356s "system_services": [ 1356s {"name": "all"}, 1356s {"except": True, "name": "dhcp"}, 1356s ], 1356s }, 1356s "interfaces": ["ge-0/0/3.0", "ge-0/0/4.0"], 1356s "name": "test_sec_zone1", 1356s "screen": "test_screen", 1356s "source_identity_log": True, 1356s "tcp_rst": True, 1356s }, 1356s ], 1356s }, 1356s state="overridden", 1356s ), 1356s ) 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_security_zones.py:850: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_security_zones.py:1997: in main 1356s result = Security_zones(module).execute_module() 1356s plugins/module_utils/network/junos/config/security_zones/security_zones.py:106: in execute_module 1356s config_xmls = self.set_config(existing_security_zones_facts) 1356s plugins/module_utils/network/junos/config/security_zones/security_zones.py:142: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/security_zones/security_zones.py:154: in set_state 1356s self.root = build_root_xml_node("security") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s ______ TestJunosSecurity_zonesModule.test_junos_security_zones_merged_01 _______ 1356s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_security_zones_merged_01(self): 1356s set_module_args( 1356s dict( 1356s config={ 1356s "functional_zone_management": { 1356s "description": "test description", 1356s "host_inbound_traffic": { 1356s "protocols": [ 1356s {"name": "all"}, 1356s {"except": True, "name": "bgp"}, 1356s ], 1356s "system_services": [ 1356s {"name": "all"}, 1356s {"except": True, "name": "dhcp"}, 1356s ], 1356s }, 1356s "interfaces": ["ge-0/0/1.0", "ge-0/0/2.0"], 1356s "screen": "test_screen", 1356s }, 1356s "zones": [ 1356s { 1356s "address_book": { 1356s "address_sets": [ 1356s { 1356s "addresses": [ 1356s "test_adr1", 1356s "test_adr2", 1356s ], 1356s "name": "test_adrset1", 1356s }, 1356s { 1356s "addresses": [ 1356s "test_adr3", 1356s "test_adr4", 1356s ], 1356s "name": "test_adrset2", 1356s }, 1356s { 1356s "address_sets": [ 1356s "test_adrset1", 1356s "test_adrset2", 1356s ], 1356s "addresses": ["test_adr5"], 1356s "description": "test description", 1356s "name": "test_adrset3", 1356s }, 1356s ], 1356s "addresses": [ 1356s { 1356s "description": "test desc", 1356s "ip_prefix": "10.0.0.0/24", 1356s "name": "test_adr1", 1356s }, 1356s { 1356s "dns_name": { 1356s "ipv6_only": True, 1356s "name": "1.1.1.1", 1356s }, 1356s "name": "test_adr2", 1356s }, 1356s { 1356s "name": "test_adr3", 1356s "range_address": { 1356s "from": "10.2.0.1", 1356s "to": "10.2.0.2", 1356s }, 1356s }, 1356s { 1356s "name": "test_adr4", 1356s "wildcard_address": "10.3.0.1/24", 1356s }, 1356s { 1356s "description": "test desc", 1356s "ip_prefix": "10.1.0.0/24", 1356s "name": "test_adr5", 1356s }, 1356s ], 1356s }, 1356s "advance_policy_based_routing_profile": "test_profile", 1356s "advanced_connection_tracking": { 1356s "mode": "allow-any-host", 1356s "timeout": "20", 1356s "track_all_policies_to_this_zone": True, 1356s }, 1356s "application_tracking": True, 1356s "description": "test description", 1356s "enable_reverse_reroute": True, 1356s "host_inbound_traffic": { 1356s "protocols": [ 1356s {"name": "all"}, 1356s {"except": True, "name": "bgp"}, 1356s ], 1356s "system_services": [ 1356s {"name": "all"}, 1356s {"except": True, "name": "dhcp"}, 1356s ], 1356s }, 1356s "interfaces": ["ge-0/0/3.0", "ge-0/0/4.0"], 1356s "name": "test_sec_zone1", 1356s "screen": "test_screen", 1356s "source_identity_log": True, 1356s "tcp_rst": True, 1356s "unidirectional_session_refreshing": True, 1356s }, 1356s ], 1356s }, 1356s state="merged", 1356s ), 1356s ) 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_security_zones.py:218: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_security_zones.py:1997: in main 1356s result = Security_zones(module).execute_module() 1356s plugins/module_utils/network/junos/config/security_zones/security_zones.py:106: in execute_module 1356s config_xmls = self.set_config(existing_security_zones_facts) 1356s plugins/module_utils/network/junos/config/security_zones/security_zones.py:142: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/security_zones/security_zones.py:154: in set_state 1356s self.root = build_root_xml_node("security") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s _________ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_06 __________ 1356s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_snmp_server_merged_06(self): 1356s set_module_args( 1356s dict( 1356s config=dict( 1356s communities=[ 1356s dict( 1356s name="comm1", 1356s clients=[ 1356s dict(address="24.0.0.0/32", restrict=True), 1356s dict(address="30.0.0.0/32", restrict=True), 1356s ], 1356s routing_instances=[ 1356s dict( 1356s name="clv1", 1356s clients=[ 1356s dict( 1356s address="13.13.13.13/24", 1356s restrict=True, 1356s ), 1356s dict(address="24.0.0.0/32"), 1356s dict(address="30.0.0.0/32"), 1356s ], 1356s ), 1356s dict( 1356s name="clv2", 1356s clients=[dict(address="15.15.15.15/24")], 1356s ), 1356s ], 1356s ), 1356s dict(name="comm2"), 1356s ], 1356s contact="rohitthakur2590", 1356s customization=dict(ether_stats_ifd_only=True), 1356s description="Local SNMP Server", 1356s engine_id=dict( 1356s local="local1", 1356s use_default_ip_address=True, 1356s use_mac_address=True, 1356s ), 1356s filter_duplicates=True, 1356s filter_interfaces=dict( 1356s all_internal_interfaces=True, 1356s interfaces=["eth1", "eth2"], 1356s ), 1356s health_monitor=dict( 1356s falling_threshold=50, 1356s idp=True, 1356s interval=100, 1356s rising_threshold=60, 1356s ), 1356s if_count_with_filter_interfaces=True, 1356s interfaces=["eth1", "eth2", "eth3"], 1356s location="inter_lab", 1356s logical_system_trap_filter=True, 1356s name="SNMP_LAB_SERVER", 1356s nonvolatile=dict(commit_delay=30), 1356s rmon=dict( 1356s alarms=[ 1356s dict( 1356s id=4, 1356s variable="1.x.y.z", 1356s sample_type="absolute-value", 1356s rising_threshold=1020, 1356s ), 1356s dict( 1356s id=5, 1356s variable="1.x.y.z", 1356s sample_type="absolute-value", 1356s rising_threshold=1020, 1356s ), 1356s ], 1356s events=[ 1356s dict(id=100, type="log"), 1356s dict(id=200, type="log"), 1356s ], 1356s ), 1356s routing_instance_access=dict( 1356s access_lists=["clv1", "clv2"], 1356s ), 1356s subagent=dict(tcp=dict(routing_instances_default=True)), 1356s snmp_v3=dict( 1356s notify=[dict(name="not1", type="inform", tag="tag2")], 1356s notify_filter=[ 1356s dict( 1356s name="not_fil_01", 1356s oids=[dict(include=True, oid="1.a.s.b.d")], 1356s ), 1356s dict( 1356s name="not_fil_02", 1356s oids=[ 1356s dict(include=True, oid="1.x.b.b.d"), 1356s dict(include=True, oid="1.a.c.b.d"), 1356s ], 1356s ), 1356s ], 1356s snmp_community=[ 1356s dict( 1356s community_index="v3_comm1", 1356s community_name="mycommu", 1356s security_name="sec101", 1356s context="cont1", 1356s tag="109", 1356s ), 1356s dict( 1356s community_index="v3_comm2", 1356s community_name="mycomm", 1356s security_name="sec102", 1356s context="cont1", 1356s tag="109", 1356s ), 1356s ], 1356s target_addresses=[ 1356s dict( 1356s name="tar201", 1356s address="162.12.10.2", 1356s port=23122, 1356s timeout=300, 1356s retry_count=200, 1356s tag_list="tag101", 1356s address_mask="24", 1356s routing_instance="clv2", 1356s target_parameters="tarparam2", 1356s ), 1356s dict( 1356s name="tar202", 1356s address="162.12.10.2", 1356s port=23122, 1356s timeout=300, 1356s retry_count=200, 1356s tag_list="tag101", 1356s address_mask="24", 1356s routing_instance="clv2", 1356s target_parameters="tarparam2", 1356s ), 1356s ], 1356s target_parameters=[ 1356s dict( 1356s name="param111", 1356s notify_filter="not121", 1356s parameters=dict( 1356s message_processing_model="v1", 1356s security_model="v1", 1356s security_level="none", 1356s security_name="secure111", 1356s ), 1356s ), 1356s ], 1356s ), 1356s traceoptions=dict( 1356s file=dict( 1356s files=20, 1356s match="snmp_cfg", 1356s no_world_readable=True, 1356s size=20000, 1356s ), 1356s flag=dict( 1356s all=True, 1356s general=True, 1356s interface_stats=True, 1356s nonvolatile_sets=True, 1356s pdu=True, 1356s protocol_timeouts=True, 1356s routing_socket=True, 1356s subagent=True, 1356s timer=True, 1356s varbind_error=True, 1356s ), 1356s memory_trace=dict(size=1350), 1356s ), 1356s trap_groups=[ 1356s dict( 1356s name="trgrp_01", 1356s destination_port=2346, 1356s categories=dict( 1356s authentication=True, 1356s chassis=True, 1356s otn_alarms=dict( 1356s oc_lof=True, 1356s otu_uas_threshold=True, 1356s ), 1356s ), 1356s targets=["11.11.11.11", "12.12.12.12"], 1356s routing_instance="clv1", 1356s ), 1356s ], 1356s ), 1356s state="merged", 1356s ), 1356s ) 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_snmp_server.py:616: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_snmp_server.py:1579: in main 1356s result = Snmp_server(module).execute_module() 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1356s config_xmls = self.set_config(existing_snmp_server_facts) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1356s self.root = build_root_xml_node("configuration") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s _______ TestJunosSecurity_zonesModule.test_junos_security_zones_rendered _______ 1356s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_security_zones_rendered(self): 1356s set_module_args( 1356s dict( 1356s config={ 1356s "functional_zone_management": { 1356s "description": "test description", 1356s "host_inbound_traffic": { 1356s "protocols": [ 1356s {"name": "all"}, 1356s {"except": True, "name": "bgp"}, 1356s ], 1356s "system_services": [ 1356s {"name": "all"}, 1356s {"except": True, "name": "dhcp"}, 1356s ], 1356s }, 1356s "interfaces": ["ge-0/0/1.0", "ge-0/0/2.0"], 1356s "screen": "test_screen", 1356s }, 1356s "zones": [ 1356s { 1356s "address_book": { 1356s "address_sets": [ 1356s { 1356s "addresses": [ 1356s "test_adr1", 1356s "test_adr2", 1356s ], 1356s "name": "test_adrset1", 1356s }, 1356s { 1356s "addresses": [ 1356s "test_adr3", 1356s "test_adr4", 1356s ], 1356s "name": "test_adrset2", 1356s }, 1356s { 1356s "address_sets": [ 1356s "test_adrset1", 1356s "test_adrset2", 1356s ], 1356s "addresses": ["test_adr5"], 1356s "description": "test description", 1356s "name": "test_adrset3", 1356s }, 1356s ], 1356s "addresses": [ 1356s { 1356s "description": "test desc", 1356s "ip_prefix": "10.0.0.0/24", 1356s "name": "test_adr1", 1356s }, 1356s { 1356s "dns_name": { 1356s "ipv6_only": True, 1356s "name": "1.1.1.1", 1356s }, 1356s "name": "test_adr2", 1356s }, 1356s { 1356s "name": "test_adr3", 1356s "range_address": { 1356s "from": "10.2.0.1", 1356s "to": "10.2.0.2", 1356s }, 1356s }, 1356s { 1356s "name": "test_adr4", 1356s "wildcard_address": "10.3.0.1/24", 1356s }, 1356s { 1356s "description": "test desc", 1356s "ip_prefix": "10.1.0.0/24", 1356s "name": "test_adr5", 1356s }, 1356s ], 1356s }, 1356s "advance_policy_based_routing_profile": "test_profile", 1356s "application_tracking": True, 1356s "description": "test description", 1356s "enable_reverse_reroute": True, 1356s "host_inbound_traffic": { 1356s "protocols": [ 1356s {"name": "all"}, 1356s {"except": True, "name": "bgp"}, 1356s ], 1356s "system_services": [ 1356s {"name": "all"}, 1356s {"except": True, "name": "dhcp"}, 1356s ], 1356s }, 1356s "interfaces": ["ge-0/0/3.0", "ge-0/0/4.0"], 1356s "name": "test_sec_zone1", 1356s "screen": "test_screen", 1356s "source_identity_log": True, 1356s "tcp_rst": True, 1356s }, 1356s ], 1356s }, 1356s state="rendered", 1356s ), 1356s ) 1356s rendered = ( 1356s 't' 1356s "est descriptionallbgpalldhcpge-0/0/1.0ge-0/0/2.0test_screentest_sec_zone1test_adr110.0.0.0/24test desctest_adr21.1.1.1test_adr310.2.0.110.2.0.2test_adr410.3.0.1/24test_adr510.1.0.0/24test desctest_adrset1test_adr1test" 1356s "_adr2test_adrset2test_adr3test_adr4test_adrset3test_adr5test_adrset1test_adrset2test descriptiontest_profiletest descriptionallbgpalldhcpge-0/0/3.0ge-0/0/4.0test_screen" 1356s ) 1356s > result = self.execute_module(changed=False) 1356s 1356s tests/unit/modules/network/junos/test_junos_security_zones.py:1114: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_security_zones.py:1997: in main 1356s result = Security_zones(module).execute_module() 1356s plugins/module_utils/network/junos/config/security_zones/security_zones.py:100: in execute_module 1356s config_xmls = self.set_config(existing_security_zones_facts) 1356s plugins/module_utils/network/junos/config/security_zones/security_zones.py:142: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/security_zones/security_zones.py:154: in set_state 1356s self.root = build_root_xml_node("security") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s ______ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_client_02 ______ 1356s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_snmp_server_merged_client_02(self): 1356s set_module_args( 1356s dict( 1356s config=dict( 1356s client_lists=[ 1356s dict( 1356s name="cl2", 1356s addresses=[dict(address="192.16.4.0/24")], 1356s ), 1356s ], 1356s ), 1356s state="merged", 1356s ), 1356s ) 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_snmp_server.py:314: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_snmp_server.py:1579: in main 1356s result = Snmp_server(module).execute_module() 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1356s config_xmls = self.set_config(existing_snmp_server_facts) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1356s self.root = build_root_xml_node("configuration") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s ____ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_trap_options _____ 1356s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_snmp_server_merged_trap_options(self): 1356s set_module_args( 1356s dict( 1356s config=dict( 1356s trap_options=dict( 1356s agent_address=dict( 1356s outgoing_interface=True, 1356s ), 1356s context_oid=True, 1356s ), 1356s ), 1356s state="merged", 1356s ), 1356s ) 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_snmp_server.py:149: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_snmp_server.py:1579: in main 1356s result = Snmp_server(module).execute_module() 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1356s config_xmls = self.set_config(existing_snmp_server_facts) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1356s self.root = build_root_xml_node("configuration") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s _____ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_clients_03 ______ 1356s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_snmp_server_merged_clients_03(self): 1356s set_module_args( 1356s dict( 1356s config=dict( 1356s client_lists=[ 1356s dict( 1356s name="cl3", 1356s addresses=[ 1356s dict(address="172.16.1.0/24"), 1356s dict(address="10.11.11.11", restrict=True), 1356s ], 1356s ), 1356s dict( 1356s name="cl4", 1356s addresses=[dict(address="172.16.4.0/24")], 1356s ), 1356s ], 1356s ), 1356s state="merged", 1356s ), 1356s ) 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_snmp_server.py:353: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_snmp_server.py:1579: in main 1356s result = Snmp_server(module).execute_module() 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1356s config_xmls = self.set_config(existing_snmp_server_facts) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1356s self.root = build_root_xml_node("configuration") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s _____ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_trap_groups _____ 1356s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_snmp_server_merged_trap_groups(self): 1356s set_module_args( 1356s dict( 1356s config=dict( 1356s trap_groups=[ 1356s dict( 1356s categories=dict( 1356s authentication=True, 1356s ), 1356s name="egress", 1356s ), 1356s ], 1356s ), 1356s state="merged", 1356s ), 1356s ) 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_snmp_server.py:179: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_snmp_server.py:1579: in main 1356s result = Snmp_server(module).execute_module() 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1356s config_xmls = self.set_config(existing_snmp_server_facts) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1356s self.root = build_root_xml_node("configuration") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s ___ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_communities_05 ____ 1356s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_snmp_server_merged_communities_05(self): 1356s set_module_args( 1356s dict( 1356s config=dict( 1356s communities=[ 1356s dict( 1356s name="comm1", 1356s clients=[ 1356s dict(address="24.0.0.0/32", restrict=True), 1356s ], 1356s routing_instances=[ 1356s dict( 1356s name="clv1", 1356s clients=[ 1356s dict( 1356s address="13.13.13.13/24", 1356s restrict=True, 1356s ), 1356s ], 1356s ), 1356s ], 1356s ), 1356s ], 1356s ), 1356s state="merged", 1356s ), 1356s ) 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_snmp_server.py:415: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_snmp_server.py:1579: in main 1356s result = Snmp_server(module).execute_module() 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1356s config_xmls = self.set_config(existing_snmp_server_facts) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1356s self.root = build_root_xml_node("configuration") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s _______ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_arp_01 ________ 1356s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_snmp_server_merged_arp_01(self): 1356s set_module_args( 1356s dict( 1356s config=dict(arp=dict(set=True, host_name_resolution=True)), 1356s state="merged", 1356s ), 1356s ) 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_snmp_server.py:97: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_snmp_server.py:1579: in main 1356s result = Snmp_server(module).execute_module() 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1356s config_xmls = self.set_config(existing_snmp_server_facts) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1356s self.root = build_root_xml_node("configuration") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s __ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_routing_access_04 __ 1356s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_snmp_server_merged_routing_access_04(self): 1356s set_module_args( 1356s dict( 1356s config=dict( 1356s routing_instance_access=dict( 1356s set=True, 1356s access_lists=["clv1"], 1356s ), 1356s ), 1356s state="merged", 1356s ), 1356s ) 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_snmp_server.py:379: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_snmp_server.py:1579: in main 1356s result = Snmp_server(module).execute_module() 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1356s config_xmls = self.set_config(existing_snmp_server_facts) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1356s self.root = build_root_xml_node("configuration") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s ___ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_trap_groups_02 ____ 1356s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_snmp_server_merged_trap_groups_02(self): 1356s set_module_args( 1356s dict( 1356s config=dict( 1356s trap_groups=[ 1356s dict( 1356s categories=dict( 1356s chassis=True, 1356s chassis_cluster=True, 1356s configuration=True, 1356s dot3oam_events=True, 1356s link=True, 1356s ), 1356s name="monitor", 1356s ), 1356s ], 1356s ), 1356s state="merged", 1356s ), 1356s ) 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_snmp_server.py:213: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_snmp_server.py:1579: in main 1356s result = Snmp_server(module).execute_module() 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1356s config_xmls = self.set_config(existing_snmp_server_facts) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1356s self.root = build_root_xml_node("configuration") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s ________ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_views ________ 1356s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_snmp_server_merged_views(self): 1356s set_module_args( 1356s dict( 1356s config=dict( 1356s views=[ 1356s dict( 1356s name="all", 1356s oids=[dict(oid=".1")], 1356s ), 1356s ], 1356s ), 1356s state="merged", 1356s ), 1356s ) 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_snmp_server.py:121: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_snmp_server.py:1579: in main 1356s result = Snmp_server(module).execute_module() 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1356s config_xmls = self.set_config(existing_snmp_server_facts) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1356s self.root = build_root_xml_node("configuration") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s ___ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_trap_options_02 ___ 1356s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_snmp_server_merged_trap_options_02(self): 1356s set_module_args( 1356s dict( 1356s config=dict( 1356s trap_options=dict( 1356s enterprise_oid=True, 1356s source_address=dict( 1356s address="192.168.2.0", 1356s ), 1356s ), 1356s ), 1356s state="merged", 1356s ), 1356s ) 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_snmp_server.py:286: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_snmp_server.py:1579: in main 1356s result = Snmp_server(module).execute_module() 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1356s config_xmls = self.set_config(existing_snmp_server_facts) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1356s self.root = build_root_xml_node("configuration") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s _ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_trap_groups_otn_alrams _ 1356s [gw4] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_snmp_server_merged_trap_groups_otn_alrams(self): 1356s set_module_args( 1356s dict( 1356s config=dict( 1356s trap_groups=[ 1356s dict( 1356s categories=dict( 1356s otn_alarms=dict( 1356s oc_lof=True, 1356s oc_lom=True, 1356s oc_los=True, 1356s ), 1356s ), 1356s name="monitor", 1356s ), 1356s ], 1356s ), 1356s state="merged", 1356s ), 1356s ) 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_snmp_server.py:243: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_snmp_server.py:1579: in main 1356s result = Snmp_server(module).execute_module() 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1356s config_xmls = self.set_config(existing_snmp_server_facts) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1356s self.root = build_root_xml_node("configuration") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s ________________ TestJunosVlansModule.test_junos_vlans_deleted _________________ 1356s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_vlans_deleted(self): 1356s """ 1356s :return: 1356s """ 1356s set_module_args(dict(config=[dict(name="vlan1")], state="deleted")) 1356s 1356s commands = [ 1356s '' 1356s 'vlan1', 1356s ] 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_vlans.py:193: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_vlans.py:462: in main 1356s result = Vlans(module).execute_module() 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 1356s config_xmls = self.set_config(existing_vlans_facts) 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1356s root = build_root_xml_node("vlans") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s _______________ TestJunosVlansModule.test_junos_vlans_deleted_01 _______________ 1356s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_vlans_deleted_01(self): 1356s """ 1356s :return: 1356s """ 1356s set_module_args(dict(config=[], state="deleted")) 1356s 1356s commands = [ 1356s '' 1356s 'vlan1', 1356s ] 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_vlans.py:206: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_vlans.py:462: in main 1356s result = Vlans(module).execute_module() 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 1356s config_xmls = self.set_config(existing_vlans_facts) 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1356s root = build_root_xml_node("vlans") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s __ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_trap_options_set ___ 1356s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_snmp_server_merged_trap_options_set(self): 1356s set_module_args( 1356s dict( 1356s config=dict( 1356s trap_options=dict( 1356s set=True, 1356s ), 1356s ), 1356s state="merged", 1356s ), 1356s ) 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_snmp_server.py:268: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_snmp_server.py:1579: in main 1356s result = Snmp_server(module).execute_module() 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1356s config_xmls = self.set_config(existing_snmp_server_facts) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1356s self.root = build_root_xml_node("configuration") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s _________ TestJunosVlansModule.test_junos_vlans_overridden_idempotent __________ 1356s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_vlans_overridden_idempotent(self): 1356s set_module_args( 1356s dict(config=[dict(name="vlan1", vlan_id=1)], state="overridden"), 1356s ) 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_vlans.py:171: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_vlans.py:462: in main 1356s result = Vlans(module).execute_module() 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 1356s config_xmls = self.set_config(existing_vlans_facts) 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1356s root = build_root_xml_node("vlans") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s _________________ TestJunosVlansModule.test_junos_vlans_merged _________________ 1356s [gw7] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_vlans_merged(self): 1356s set_module_args( 1356s dict( 1356s config=[dict(name="vlan2", vlan_id=2, l3_interface="irb.12")], 1356s state="merged", 1356s ), 1356s ) 1356s commands = [ 1356s '' 1356s "vlan22" 1356s "irb.12", 1356s ] 1356s > result = self.execute_module(changed=True, commands=commands) 1356s 1356s tests/unit/modules/network/junos/test_junos_vlans.py:105: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_vlans.py:462: in main 1356s result = Vlans(module).execute_module() 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 1356s config_xmls = self.set_config(existing_vlans_facts) 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1356s root = build_root_xml_node("vlans") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s _______________ TestJunosVlansModule.test_junos_vlans_overridden _______________ 1356s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_vlans_overridden(self): 1356s """ 1356s :return: 1356s """ 1356s set_module_args( 1356s dict( 1356s config=[dict(name="vlan3", vlan_id=3, l3_interface="irb.13")], 1356s state="overridden", 1356s ), 1356s ) 1356s 1356s commands = [ 1356s '' 1356s 'vlan1' 1356s "vlan33" 1356s "irb.13", 1356s ] 1356s > result = self.execute_module(changed=True, commands=commands) 1356s 1356s tests/unit/modules/network/junos/test_junos_vlans.py:164: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_vlans.py:462: in main 1356s result = Vlans(module).execute_module() 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 1356s config_xmls = self.set_config(existing_vlans_facts) 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1356s root = build_root_xml_node("vlans") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s ___________ TestJunosVlansModule.test_junos_vlans_merged_idempotent ____________ 1356s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_vlans_merged_idempotent(self): 1356s set_module_args( 1356s dict(config=[dict(name="vlan1", vlan_id=1)], state="merged"), 1356s ) 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_vlans.py:112: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_vlans.py:462: in main 1356s result = Vlans(module).execute_module() 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 1356s config_xmls = self.set_config(existing_vlans_facts) 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1356s root = build_root_xml_node("vlans") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s ________________ TestJunosVlansModule.test_junos_vlans_rendered ________________ 1356s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_vlans_rendered(self): 1356s """ 1356s :return: 1356s """ 1356s set_module_args( 1356s dict( 1356s config=[ 1356s dict(name="vlan1", vlan_id=1), 1356s dict(name="vlan2", vlan_id=2, l3_interface="irb.12"), 1356s ], 1356s state="rendered", 1356s ), 1356s ) 1356s rendered = ( 1356s '' 1356s "vlan11" 1356s "vlan22" 1356s "irb.12" 1356s ) 1356s > result = self.execute_module(changed=False) 1356s 1356s tests/unit/modules/network/junos/test_junos_vlans.py:228: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_vlans.py:462: in main 1356s result = Vlans(module).execute_module() 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:102: in execute_module 1356s config_xmls = self.set_config(existing_vlans_facts) 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1356s root = build_root_xml_node("vlans") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s ________________ TestJunosVlansModule.test_junos_vlans_replaced ________________ 1356s [gw3] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_vlans_replaced(self): 1356s """ 1356s :return: 1356s """ 1356s set_module_args( 1356s dict( 1356s config=[ 1356s dict(name="vlan1", vlan_id=1, l3_interface="irb.10"), 1356s dict(name="vlan2", vlan_id=2), 1356s ], 1356s state="replaced", 1356s ), 1356s ) 1356s 1356s commands = [ 1356s '' 1356s 'vlan1' 1356s 'vlan2' 1356s "vlan11" 1356s "irb.10" 1356s "vlan22", 1356s ] 1356s > result = self.execute_module(changed=True, commands=commands) 1356s 1356s tests/unit/modules/network/junos/test_junos_vlans.py:137: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_vlans.py:462: in main 1356s result = Vlans(module).execute_module() 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 1356s config_xmls = self.set_config(existing_vlans_facts) 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1356s root = build_root_xml_node("vlans") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s __________ TestJunosVlansModule.test_junos_vlans_replaced_idempotent ___________ 1356s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1356s 1356s self = 1356s 1356s def test_junos_vlans_replaced_idempotent(self): 1356s set_module_args( 1356s dict(config=[dict(name="vlan1", vlan_id=1)], state="replaced"), 1356s ) 1356s > result = self.execute_module(changed=True) 1356s 1356s tests/unit/modules/network/junos/test_junos_vlans.py:144: 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1356s result = self.changed(changed) 1356s tests/unit/modules/network/junos/junos_module.py:97: in changed 1356s self.module.main() 1356s plugins/modules/junos_vlans.py:462: in main 1356s result = Vlans(module).execute_module() 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 1356s config_xmls = self.set_config(existing_vlans_facts) 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1356s resp = self.set_state(want, have) 1356s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1356s root = build_root_xml_node("vlans") 1356s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1356s 1356s def build_root_xml_node(tag): 1356s > return new_ele(tag) 1356s E NameError: name 'new_ele' is not defined 1356s 1356s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1356s =============================== warnings summary =============================== 1356s tests/unit/modules/network/junos/test_junos_config.py::TestJunosConfigModule::test_junos_config_lines 1356s tests/unit/modules/network/junos/test_junos_config.py::TestJunosConfigModule::test_junos_config_src_json 1356s tests/unit/modules/network/junos/test_junos_config.py::TestJunosConfigModule::test_junos_config_src_set 1356s tests/unit/modules/network/junos/test_junos_config.py::TestJunosConfigModule::test_junos_config_src_text 1356s tests/unit/modules/network/junos/test_junos_config.py::TestJunosConfigModule::test_junos_config_src_xml 1356s tests/unit/modules/network/junos/test_junos_config.py::TestJunosConfigModule::test_junos_config_confirm 1356s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/junipernetworks/junos/plugins/modules/junos_config.py:497: FutureWarning: Truth-testing of elements was a source of confusion and will always return True in future versions. Use specific 'len(elem)' or 'elem is not None' test instead. 1356s if diff: 1356s 1356s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 1356s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/junipernetworks/junos/tests/output/junit/python3.13-controller-units.xml - 1356s =========================== short test summary info ============================ 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_001 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_007_001 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_advertise_external 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_015 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_optimal_route_reflection 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_deleted_031 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_023_001 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_delete 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_routing_options 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_bfd_liveness_detection 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_008 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_002 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_deleted_032 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_delete_purged 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_bgp_error_tolerance 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_016 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_009 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_024 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_002_001 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merge_groups 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_bmp 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_010 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_003 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_025 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_017 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_bmp_2 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_011 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_rendered 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_026 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_advertise_bgp_static 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_004 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_egress_te 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_018 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_012 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_rendered_empty 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_005 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_egress_te_backup_paths 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_027 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_replaced 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_013 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_005_001 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_groups_allow 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_028 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_019 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_replaced_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_013_001 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_029 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_006 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_hostname.py::TestJunosHostnameModule::test_junos_hostname_replaced 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_020 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_014 1356s FAILED tests/unit/modules/network/junos/test_junos_hostname.py::TestJunosHostnameModule::test_junos_hostname_merged_01 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_030 1356s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_rendered 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_007 1356s FAILED tests/unit/modules/network/junos/test_junos_hostname.py::TestJunosHostnameModule::test_junos_hostname_overridden_01 1356s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_delete 1356s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_files_03 1356s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_rendered 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_021 1356s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_replaced 1356s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_delete_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_files_04 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_033 1356s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_replaced 1356s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_replaced_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_rendered_12 1356s FAILED tests/unit/modules/network/junos/test_junos_hostname.py::TestJunosHostnameModule::test_junos_hostname_rendered 1356s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_merged 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_022 1356s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_hosts_05 1356s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_delete 1356s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_replaced_user_09 1356s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_merged_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_replaced_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_hosts_idempotent_06 1356s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_replaced_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_delete_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_023 1356s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_overridden 1356s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_merged 1356s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_user_08 1356s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_merged_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_deleted_user_11 1356s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_merged_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_overridden_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_merged 1356s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_overridden 1356s FAILED tests/unit/modules/network/junos/test_junos_ntp_global.py::TestJunosNtp_globalModule::test_junos_ntp_global_merged_01 1356s FAILED tests/unit/modules/network/junos/test_junos_ntp_global.py::TestJunosNtp_globalModule::test_junos_ntp_global_rendered 1356s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_overridden_user_10 1356s FAILED tests/unit/modules/network/junos/test_junos_ospfv2.py::TestJunosOspfv2Module::test_junos_ospfv2_deleted 1356s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_merged_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_overridden 1356s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_overridden_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_07 1356s FAILED tests/unit/modules/network/junos/test_junos_ntp_global.py::TestJunosNtp_globalModule::test_junos_ntp_global_replaced_01 1356s FAILED tests/unit/modules/network/junos/test_junos_ntp_global.py::TestJunosNtp_globalModule::test_junos_ntp_global_merged_02 1356s FAILED tests/unit/modules/network/junos/test_junos_ospfv2.py::TestJunosOspfv2Module::test_junos_ospfv2_rendered 1356s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_overridden 1356s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_overridden_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_delete 1356s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_rendered 1356s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_archive_01 1356s FAILED tests/unit/modules/network/junos/test_junos_ospfv2.py::TestJunosOspfv2Module::test_junos_ospfv2_merged 1356s FAILED tests/unit/modules/network/junos/test_junos_ospfv2.py::TestJunosOspfv2Module::test_junos_ospfv2_replaced 1356s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_rendered 1356s FAILED tests/unit/modules/network/junos/test_junos_ntp_global.py::TestJunosNtp_globalModule::test_junos_ntp_global_overridden_01 1356s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_overridden_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_delete_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_replaced 1356s FAILED tests/unit/modules/network/junos/test_junos_ospfv2.py::TestJunosOspfv2Module::test_junos_ospfv2_merged_areas 1356s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_replaced 1356s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_delete 1356s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_merged_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_merged 1356s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_overridden_01 1356s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_console_02 1356s FAILED tests/unit/modules/network/junos/test_junos_ospfv2.py::TestJunosOspfv2Module::test_junos_ospfv2_overridden 1356s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_replaced_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_delete_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_overridden 1356s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_overridden_idempotent_01 1356s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_replaced 1356s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_replaced_01 1356s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_merged 1356s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_overridden_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_overridden 1356s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_merged_01 1356s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_rendered_01 1356s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_replaced_idempotent_01 1356s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_rendered_02 1356s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_replaced_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_overridden_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_domains_merged 1356s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_merged_idempotent_01 1356s FAILED tests/unit/modules/network/junos/test_junos_routing_options.py::TestJunosRouting_optionsModule::test_junos_routing_options_merged_01 1356s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_rendered 1356s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_deleted 1356s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_replaced 1356s FAILED tests/unit/modules/network/junos/test_junos_routing_options.py::TestJunosRouting_optionsModule::test_junos_routing_options_merged_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_merged 1356s FAILED tests/unit/modules/network/junos/test_junos_routing_options.py::TestJunosRouting_optionsModule::test_junos_routing_options_rendered 1356s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_rendered 1356s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_delted_single_entry 1356s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_replaced_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_routing_options.py::TestJunosRouting_optionsModule::test_junos_routing_options_overridden 1356s FAILED tests/unit/modules/network/junos/test_junos_security_policies.py::TestJunosSecurity_policiesModule::test_junos_security_policies_merged_02 1356s FAILED tests/unit/modules/network/junos/test_junos_routing_options.py::TestJunosRouting_optionsModule::test_junos_routing_options_replaced_01 1356s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_merged_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_security_policies.py::TestJunosSecurity_policiesModule::test_junos_security_policies_rendered 1356s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_merged_03 1356s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_merged_01 1356s FAILED tests/unit/modules/network/junos/test_junos_security_policies.py::TestJunosSecurity_policiesModule::test_junos_security_policies_replaced_01 1356s FAILED tests/unit/modules/network/junos/test_junos_security_policies.py::TestJunosSecurity_policiesModule::test_junos_security_policies_merged_01 1356s FAILED tests/unit/modules/network/junos/test_junos_security_policies.py::TestJunosSecurity_policiesModule::test_junos_security_policies_overridden_01 1356s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_overridden_01 1356s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_rendered 1356s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_replaced_01 1356s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_merged_04 1356s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_merged_02 1356s FAILED tests/unit/modules/network/junos/test_junos_security_zones.py::TestJunosSecurity_zonesModule::test_junos_security_zones_replaced_01 1356s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_ntp_global_rendered 1356s FAILED tests/unit/modules/network/junos/test_junos_security_zones.py::TestJunosSecurity_zonesModule::test_junos_security_zones_overridden_01 1356s FAILED tests/unit/modules/network/junos/test_junos_security_zones.py::TestJunosSecurity_zonesModule::test_junos_security_zones_merged_01 1356s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_06 1356s FAILED tests/unit/modules/network/junos/test_junos_security_zones.py::TestJunosSecurity_zonesModule::test_junos_security_zones_rendered 1356s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_client_02 1356s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_trap_options 1356s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_clients_03 1356s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_trap_groups 1356s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_communities_05 1356s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_arp_01 1356s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_routing_access_04 1356s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_trap_groups_02 1356s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_views 1356s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_trap_options_02 1356s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_trap_groups_otn_alrams 1356s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_deleted 1356s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_deleted_01 1356s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_trap_options_set 1356s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_overridden_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_merged 1356s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_overridden 1356s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_merged_idempotent 1356s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_rendered 1356s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_replaced 1356s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_replaced_idempotent 1356s ================= 190 failed, 115 passed, 6 warnings in 5.81s ================== 1356s ## return code is 1 1356s 1356s 1356s 1356s ############################################################ 1356s ############################################################ 1356s #### Running FLAKY tests in ansible_collections/netapp_eseries/santricity 1356s ############################################################ 1356s ############################################################ 1356s Unit test controller with Python 3.13 1358s ============================= test session starts ============================== 1358s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1358s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity 1358s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1358s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 1358s created: 8/8 workers 1358s 8 workers [0 items] 1358s 1358s 1358s ==================================== ERRORS ==================================== 1358s _______ ERROR collecting tests/unit/modules/test_na_santricity_alerts.py _______ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_alerts.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_alerts.py:7: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s ___ ERROR collecting tests/unit/modules/test_na_santricity_alerts_syslog.py ____ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_alerts_syslog.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_alerts_syslog.py:7: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s ________ ERROR collecting tests/unit/modules/test_na_santricity_asup.py ________ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_asup.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_asup.py:8: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s ______ ERROR collecting tests/unit/modules/test_na_santricity_auditlog.py ______ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_auditlog.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_auditlog.py:7: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s ________ ERROR collecting tests/unit/modules/test_na_santricity_auth.py ________ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_auth.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_auth.py:7: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s _ ERROR collecting tests/unit/modules/test_na_santricity_client_certificate.py _ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_client_certificate.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_client_certificate.py:10: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s ______ ERROR collecting tests/unit/modules/test_na_santricity_discover.py ______ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_discover.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_discover.py:9: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s ___ ERROR collecting tests/unit/modules/test_na_santricity_drive_firmware.py ___ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_drive_firmware.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_drive_firmware.py:7: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s _______ ERROR collecting tests/unit/modules/test_na_santricity_facts.py ________ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_facts.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_facts.py:9: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s ______ ERROR collecting tests/unit/modules/test_na_santricity_firmware.py ______ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_firmware.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_firmware.py:10: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s _______ ERROR collecting tests/unit/modules/test_na_santricity_global.py _______ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_global.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_global.py:9: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s ________ ERROR collecting tests/unit/modules/test_na_santricity_host.py ________ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_host.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_host.py:9: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s _____ ERROR collecting tests/unit/modules/test_na_santricity_hostgroup.py ______ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_hostgroup.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_hostgroup.py:7: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s _ ERROR collecting tests/unit/modules/test_na_santricity_ib_iser_interface.py __ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_ib_iser_interface.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_ib_iser_interface.py:9: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s __ ERROR collecting tests/unit/modules/test_na_santricity_iscsi_interface.py ___ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_iscsi_interface.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_iscsi_interface.py:9: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s ____ ERROR collecting tests/unit/modules/test_na_santricity_iscsi_target.py ____ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_iscsi_target.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_iscsi_target.py:7: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s ________ ERROR collecting tests/unit/modules/test_na_santricity_ldap.py ________ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_ldap.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_ldap.py:7: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s ____ ERROR collecting tests/unit/modules/test_na_santricity_lun_mapping.py _____ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_lun_mapping.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_lun_mapping.py:7: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s ___ ERROR collecting tests/unit/modules/test_na_santricity_mgmt_interface.py ___ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_mgmt_interface.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_mgmt_interface.py:7: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s ___ ERROR collecting tests/unit/modules/test_na_santricity_nvme_interface.py ___ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_nvme_interface.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_nvme_interface.py:7: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s _ ERROR collecting tests/unit/modules/test_na_santricity_proxy_drive_firmware_upload.py _ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_proxy_drive_firmware_upload.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_proxy_drive_firmware_upload.py:7: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s _ ERROR collecting tests/unit/modules/test_na_santricity_proxy_firmware_upload.py _ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_proxy_firmware_upload.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_proxy_firmware_upload.py:7: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s ___ ERROR collecting tests/unit/modules/test_na_santricity_proxy_systems.py ____ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_proxy_systems.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_proxy_systems.py:9: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s ____ ERROR collecting tests/unit/modules/test_na_santricity_storagepool.py _____ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_storagepool.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_storagepool.py:9: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s _______ ERROR collecting tests/unit/modules/test_na_santricity_syslog.py _______ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_syslog.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_syslog.py:7: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s _______ ERROR collecting tests/unit/modules/test_na_santricity_volume.py _______ 1358s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_volume.py'. 1358s Hint: make sure your test modules/packages have valid Python names. 1358s Traceback: 1358s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1358s return _bootstrap._gcd_import(name[level:], package, level) 1358s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1358s assertion_rewriting_hook.exec_module(module) 1358s tests/unit/modules/test_na_santricity_volume.py:9: in 1358s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1358s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1358s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/output/junit/python3.13-controller-units.xml - 1358s =========================== short test summary info ============================ 1358s ERROR tests/unit/modules/test_na_santricity_alerts.py 1358s ERROR tests/unit/modules/test_na_santricity_alerts_syslog.py 1358s ERROR tests/unit/modules/test_na_santricity_asup.py 1358s ERROR tests/unit/modules/test_na_santricity_auditlog.py 1358s ERROR tests/unit/modules/test_na_santricity_auth.py 1358s ERROR tests/unit/modules/test_na_santricity_client_certificate.py 1358s ERROR tests/unit/modules/test_na_santricity_discover.py 1358s ERROR tests/unit/modules/test_na_santricity_drive_firmware.py 1358s ERROR tests/unit/modules/test_na_santricity_facts.py 1358s ERROR tests/unit/modules/test_na_santricity_firmware.py 1358s ERROR tests/unit/modules/test_na_santricity_global.py 1358s ERROR tests/unit/modules/test_na_santricity_host.py 1358s ERROR tests/unit/modules/test_na_santricity_hostgroup.py 1358s ERROR tests/unit/modules/test_na_santricity_ib_iser_interface.py 1358s ERROR tests/unit/modules/test_na_santricity_iscsi_interface.py 1358s ERROR tests/unit/modules/test_na_santricity_iscsi_target.py 1358s ERROR tests/unit/modules/test_na_santricity_ldap.py 1358s ERROR tests/unit/modules/test_na_santricity_lun_mapping.py 1358s ERROR tests/unit/modules/test_na_santricity_mgmt_interface.py 1358s ERROR tests/unit/modules/test_na_santricity_nvme_interface.py 1358s ERROR tests/unit/modules/test_na_santricity_proxy_drive_firmware_upload.py 1358s ERROR tests/unit/modules/test_na_santricity_proxy_firmware_upload.py 1358s ERROR tests/unit/modules/test_na_santricity_proxy_systems.py 1358s ERROR tests/unit/modules/test_na_santricity_storagepool.py 1358s ERROR tests/unit/modules/test_na_santricity_syslog.py 1358s ERROR tests/unit/modules/test_na_santricity_volume.py 1358s ============================== 26 errors in 1.93s ============================== 1358s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity tests/unit/modules/test_na_santricity_alerts.py tests/unit/modules/test_na_santricity_alerts_syslog.py tests/unit/modules/test_na_santricity_asup.py tests/unit/modules/test_na_santricity_auditlog.py tests/unit/modules/test_na_santricity_auth.py tests/unit/modules/test_na_santricity_client_certificate.py tests/unit/modules/test_na_santricity_discover.py tests/unit/modules/test_na_santricity_drive_firmware.py tests/unit/modules/test_na_santricity_facts.py tests/unit/modules/test_na_santricity_firmware.py tests/unit/modules/test_na_santricity_global.py tests/unit/modules/test_na_santricity_host.py tests/unit/modules/test_na_santricity_hostgroup.py tests/unit/modules/test_na_santricity_ib_iser_interface.py tests/unit/modules/test_na_santricity_iscsi_interface.py tests/unit/modules/test_na_santricity_iscsi_target.py tests/unit/modules/test_na_santricity_ldap.py tests/unit/modules/test_na_santricity_lun_mapping.py tests/unit/modules/test_na_santricity_mgmt_interface.py tests/unit/modules/test_na_santricity_nvme_interface.py tests/unit/modules/test_na_santricity_proxy_drive_firmware_upload.py tests/unit/modules/test_na_santricity_proxy_firmware_upload.py tests/unit/modules/test_na_santricity_proxy_systems.py tests/unit/modules/test_na_santricity_storagepool.py tests/unit/modules/test_na_santricity_syslog.py tests/unit/modules/test_na_santricity_volume.py" returned exit status 1. 1358s ## return code is 1 1358s 1358s 1358s 1358s ############################################################ 1358s ############################################################ 1358s #### Running FLAKY tests in ansible_collections/netapp/ontap 1358s ############################################################ 1358s ############################################################ 1358s Unit test modules with Python 3.13 1366s ============================= test session starts ============================== 1366s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1366s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp/ontap 1366s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1366s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 1366s created: 8/8 workers 1366s 8 workers [3004 items] 1366s 1366s sss..s..s.sss..ss.s..s.s.ss...sss...ss.s.s..sss.ssss.sss.s.ss.s.s.sss.s. [ 2%] 1367s sss.ssss.sss.s.ssssss.s.s.ssssssss.sss.sssssssss.sss.ssssssss.ssssssssss [ 4%] 1367s ssssssssssssssssssssssssssssss.s.ssssssss.ss.sssssssss.sssssssssss.ssFss [ 7%] 1367s sssss.s.sssssss.ssssss.ss.sssssssss.ss.sssssss.s.sssss.sss.ssssss.ssssss [ 9%] 1367s ..ssssss.ssssss.sssssss.sss.ssss.ssss.sssssss..sssssssssss.ssssssssss.ss [ 11%] 1367s sssssss.sssss.sssssss.s.ssssss.ssssss.ssss.sssssss.ssss.sssss..sssssssss [ 14%] 1368s s...ss.ssss.ss..ss..sssss.ss.sss.ss..sssss...ssssss.ss.s.sss.ss..ssssss. [ 16%] 1368s ssss.s.ssssss.s.ssss.ss.s.ss.sssss..s.ssssss.ss..sssssss.s.s.ssssssss... [ 19%] 1368s sssss.ssss..ssss.s...ss.ss..s..ss.s...ss.ss.s....ssss.s....ssss..s...sss [ 21%] 1368s s.s...sss.ss.ss...ssss.s.ss..ss.ss.ss...s.sss...ss.s.s.ss..s.s.s.s.s.s.s [ 23%] 1369s .ssss.s.ss..ssss.s...ssss.s..ss..ss.s..ss.ss.s...ssss.s.sss.ssss..ssssss [ 26%] 1369s .ss..sssssss.sss.sssssssssssss..sssssssssss.sss.sss.ssssss.ssssss.ssssss [ 28%] 1370s .sss.sssssssssssss.sssssssssssssssss.sssssssssssssss.sssssssssssssss.sss [ 31%] 1370s ssssssssssssssssssssssss.sssssssssssss.sssssssssssssssss.sssssssssss.sss [ 33%] 1370s ssssssssss.ssssssssssssss.ssssssssssssss.sssssssssssssssssssssssssssssss [ 35%] 1370s ssssssss.ssssssss.ssssssssssss.sssssssss.sss.ssssss.s..ssssss...sssssss. [ 38%] 1370s .s.ssss.ss.s.ssss.ss.ss.sss.sssssss..sssssssssss.sss.sssssss.sss.ssss.ss [ 40%] 1370s sssss.s.sssssssss.ss.ssssss.ss.sssss.ssss..sss.ssss.s..sssssss.ssss.ssss [ 43%] 1370s sss..sssssss.sss.ssssssssssss.sssssssssss.sssssssssssssss.sssssssssssss. [ 45%] 1371s s.sssssssss.sss.sssssss..ssss.sssss..s.sssssss..s.sssssss..ss.sssssss... [ 47%] 1371s sssssssss..s.sss.ss.ss.sssss...ssss.sss.ssss.ssssss.sssss.sssssssss.ss.s [ 50%] 1371s sssss.ssssss.ssss.sssssss.ss.sssssssss.sssssssss.ssssssssss...sssssss.ss [ 52%] 1371s ..sssss.ss.sssssssssss.sssssssss.s.sssss.sss..sssssss.ss.s.sssss.sss..s. [ 55%] 1371s sssssss..sss.sssss..ssss.sss..ss..ssss..sss.s.ss..sss...sss..s.ss....sss [ 57%] 1372s ..s..s.ss.s.s..s.ss.s...s.ssss....sss.ssss...ss.ss..ss..ss.s.s...sss.... [ 59%] 1372s .sss.ss..s...s.s.ss......ss..s...s.s..ss.....s.s.s.s..s....ss..s..s.s... [ 62%] 1372s ss....s..s.s..s..s.s...s.ss.....ss...ss....ss.s..ss..ss..s.s.ss...s....s [ 64%] 1372s s...ss..s..s...ss...sss..s.ss...ss.s...sss.sss....ss.ss.ss....ss...ss.ss [ 67%] 1373s .s...s.sssss...ss.ssss.ssss.sssssssss.ssssssssssssssss.ssssss.sssss.ssss [ 69%] 1373s ss..sssss.s.sssssssss.ssssssssss.ssssssssssss.ssssssssssssssssssssssssss [ 71%] 1373s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 74%] 1373s ssssss.ssssss.sssssssssssssss.sssssss.ssssssss.ssssssss.sssss.ssssssss.s [ 76%] 1374s ssssssss.sssssss.ssssssssssssssssss.sssssssssssss.ssssssssssssssssssssss [ 79%] 1374s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 81%] 1375s sssssssssssssssssssssssssssssssssssssssssssssssssssssssssss.sssssssss.ss [ 83%] 1375s sss.sssss.sssss.ss.ssssssssssss.ss.ssssssss.s.sss.sss.ss.ss.sssssss.ssss [ 86%] 1375s ss.sss.ssssss.ssssssssssss.ssssssss.sssssssssssssssssss.sssssssss.ssssss [ 88%] 1375s sssssss.ssssssssss.ssssssssssss.sssssssss.sssssssssss.ssssssssssssssssss [ 91%] 1375s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 93%] 1375s sssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss.sss.ss [ 95%] 1375s ss..ssssssss.s.ssssss..ssssssssssss.sss.ssssssssss.sssssssssss.s.s..s..s [ 98%] 1377s .s...s..ssssssssssssssssss......s.ssssssssssss...... [100%] 1377s =================================== FAILURES =================================== 1377s ______________________ TestMyModule.test_zapi_send_error _______________________ 1377s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1377s 1377s self = 1377s 1377s def test_zapi_send_error(self): 1377s '''Test rest send error''' 1377s data = self.mock_args() 1377s data['use_rest'] = 'Never' 1377s set_module_args(data) 1377s with pytest.raises(AnsibleFailJson) as exc: 1377s self.get_invoke_mock_object(use_rest=False).apply() 1377s msg = "Error on sending autosupport message to node %s: NetApp API failed. Reason - test:Expected error." % data['name'] 1377s > assert exc.value.args[0]['msg'] == msg 1377s E assert "Error: the p... 'netapp_lib'" == 'Error on sen...pected error.' 1377s E 1377s E - Error on sending autosupport message to node test_node: NetApp API failed. Reason - test:Expected error. 1377s E + Error: the python NetApp-Lib module is required. Import error: No module named 'netapp_lib' 1377s 1377s tests/unit/plugins/modules/test_na_ontap_autosupport_invoke.py:103: AssertionError 1377s ----------------------------- Captured stdout call ----------------------------- 1377s WARNING: Error: "message" option conflicts with Ansible internal variable - please use "autosupport_message". 1377s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp/ontap/tests/output/junit/python3.13-modules-units.xml - 1377s =========================== short test summary info ============================ 1377s SKIPPED [9] tests/unit/plugins/modules/test_na_ontap_disks.py: skipping as missing required netapp_lib 1377s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_active_directory.py: skipping as missing required netapp_lib 1377s SKIPPED [34] tests/unit/plugins/modules/test_na_ontap_cifs.py: skipping as missing required netapp_lib 1377s SKIPPED [27] tests/unit/plugins/modules/test_na_ontap_cluster.py: skipping as missing required netapp_lib 1377s SKIPPED [17] tests/unit/plugins/modules/test_na_ontap_dns.py: skipping as missing required netapp_lib 1377s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_cifs_local_user_modify.py: skipping as missing required netapp_lib 1377s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_active_directory_domain_controllers.py: skipping as missing required netapp_lib 1377s SKIPPED [10] tests/unit/plugins/modules/test_na_ontap_autosupport.py: skipping as missing required netapp_lib 1377s SKIPPED [16] tests/unit/plugins/modules/test_na_ontap_firewall_policy.py: skipping as missing required netapp_lib 1377s SKIPPED [4] tests/unit/plugins/modules/test_na_ontap_cifs_local_user_set_password.py: skipping as missing required netapp_lib 1377s SKIPPED [11] tests/unit/plugins/modules/test_na_ontap_export_policy.py: skipping as missing required netapp_lib 1377s SKIPPED [39] tests/unit/plugins/modules/test_na_ontap_aggregate.py: skipping as missing required netapp_lib 1377s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_domain_tunnel.py: skipping as missing required netapp_lib 1377s SKIPPED [29] tests/unit/plugins/modules/test_na_ontap_efficiency_policy.py: skipping as missing required netapp_lib 1377s SKIPPED [25] tests/unit/plugins/modules/test_na_ontap_cifs_acl.py: skipping as missing required netapp_lib 1377s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_cluster_ha.py: skipping as missing required netapp_lib 1377s SKIPPED [18] tests/unit/plugins/modules/test_na_ontap_export_policy_rule.py: skipping as missing required netapp_lib 1377s SKIPPED [40] tests/unit/plugins/modules/test_na_ontap_firmware_upgrade.py: skipping as missing required netapp_lib 1377s SKIPPED [19] tests/unit/plugins/modules/test_na_ontap_cluster_peer.py: skipping as missing required netapp_lib 1377s SKIPPED [49] tests/unit/plugins/modules/test_na_ontap_cifs_server.py: skipping as missing required netapp_lib 1377s SKIPPED [12] tests/unit/plugins/modules/test_na_ontap_command.py: skipping as missing required netapp_lib 1377s SKIPPED [12] tests/unit/plugins/modules/test_na_ontap_cifs_local_group.py: skipping as missing required netapp_lib 1377s SKIPPED [32] tests/unit/plugins/modules/test_na_ontap_broadcast_domain.py: skipping as missing required netapp_lib 1377s SKIPPED [18] tests/unit/plugins/modules/test_na_ontap_cifs_local_group_member.py: skipping as missing required netapp_lib 1377s SKIPPED [15] tests/unit/plugins/modules/test_na_ontap_debug.py: skipping as missing required netapp_lib 1377s SKIPPED [43] tests/unit/plugins/modules/test_na_ontap_flexcache.py: skipping as missing required netapp_lib 1377s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_fpolicy_status.py: skipping as missing required netapp_lib 1377s SKIPPED [2] tests/unit/plugins/modules/test_na_ontap_cg_snapshot.py: skipping as missing required netapp_lib 1377s SKIPPED [77] tests/unit/plugins/modules/test_na_ontap_interface.py: skipping as missing required netapp_lib 1377s SKIPPED [27] tests/unit/plugins/modules/test_na_ontap_igroup.py: skipping as missing required netapp_lib 1377s SKIPPED [3] tests/unit/plugins/modules/test_na_ontap_file_directory_policy.py: skipping as missing required netapp_lib 1377s SKIPPED [30] tests/unit/plugins/modules/test_na_ontap_ldap_client.py: skipping as missing required netapp_lib 1377s SKIPPED [48] tests/unit/plugins/modules/test_na_ontap_info.py: skipping as missing required netapp_lib 1377s SKIPPED [20] tests/unit/plugins/modules/test_na_ontap_lun_app_rest.py: skipping as missing required netapp_lib 1377s SKIPPED [17] tests/unit/plugins/modules/test_na_ontap_igroup_initiator.py: skipping as missing required netapp_lib 1377s SKIPPED [19] tests/unit/plugins/modules/test_na_ontap_license.py: skipping as missing required netapp_lib 1377s SKIPPED [5] tests/unit/plugins/modules/test_na_ontap_lun_copy.py: skipping as missing required netapp_lib 1377s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_log_forward.py: skipping as missing required netapp_lib 1377s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_fpolicy_event.py: skipping as missing required netapp_lib 1377s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_lun_map.py: skipping as missing required netapp_lib 1377s SKIPPED [21] tests/unit/plugins/modules/test_na_ontap_iscsi.py: skipping as missing required netapp_lib 1377s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_lun_map_reporting_nodes.py: skipping as missing required netapp_lib 1377s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_ipspace.py: skipping as missing required netapp_lib 1377s SKIPPED [15] tests/unit/plugins/modules/test_na_ontap_login_messages.py: skipping as missing required netapp_lib 1377s SKIPPED [13] tests/unit/plugins/modules/test_na_ontap_fpolicy_ext_engine.py: skipping as missing required netapp_lib 1377s SKIPPED [12] tests/unit/plugins/modules/test_na_ontap_lun_map_rest.py: skipping as missing required netapp_lib 1377s SKIPPED [15] tests/unit/plugins/modules/test_na_ontap_license_nlf.py: skipping as missing required netapp_lib 1377s SKIPPED [30] tests/unit/plugins/modules/test_na_ontap_job_schedule.py: skipping as missing required netapp_lib 1377s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_fpolicy_policy.py: skipping as missing required netapp_lib 1377s SKIPPED [13] tests/unit/plugins/modules/test_na_ontap_lun.py: skipping as missing required netapp_lib 1377s SKIPPED [32] tests/unit/plugins/modules/test_na_ontap_net_ifgrp.py: skipping as missing required netapp_lib 1377s SKIPPED [23] tests/unit/plugins/modules/test_na_ontap_net_routes.py: skipping as missing required netapp_lib 1377s SKIPPED [13] tests/unit/plugins/modules/test_na_ontap_fpolicy_scope.py: skipping as missing required netapp_lib 1377s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_motd.py: skipping as missing required netapp_lib 1377s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_nvme.py: skipping as missing required netapp_lib 1377s SKIPPED [20] tests/unit/plugins/modules/test_na_ontap_object_store.py: skipping as missing required netapp_lib 1377s SKIPPED [30] tests/unit/plugins/modules/test_na_ontap_ports.py: skipping as missing required netapp_lib 1377s SKIPPED [13] tests/unit/plugins/modules/test_na_ontap_net_subnet.py: skipping as missing required netapp_lib 1377s SKIPPED [12] tests/unit/plugins/modules/test_na_ontap_kerberos_realm.py: skipping as missing required netapp_lib 1377s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_nvme_namespace.py: skipping as missing required netapp_lib 1377s SKIPPED [15] tests/unit/plugins/modules/test_na_ontap_name_mappings.py: skipping as missing required netapp_lib 1377s SKIPPED [17] tests/unit/plugins/modules/test_na_ontap_net_port.py: skipping as missing required netapp_lib 1377s SKIPPED [23] tests/unit/plugins/modules/test_na_ontap_portset.py: skipping as missing required netapp_lib 1377s SKIPPED [10] tests/unit/plugins/modules/test_na_ontap_partitions.py: skipping as missing required netapp_lib 1377s SKIPPED [11] tests/unit/plugins/modules/test_na_ontap_name_service_switch.py: skipping as missing required netapp_lib 1377s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_node.py: skipping as missing required netapp_lib 1377s SKIPPED [12] tests/unit/plugins/modules/test_na_ontap_nfs.py: skipping as missing required netapp_lib 1377s SKIPPED [39] tests/unit/plugins/modules/test_na_ontap_qos_policy_group.py: skipping as missing required netapp_lib 1377s SKIPPED [4] tests/unit/plugins/modules/test_na_ontap_ndmp.py: skipping as missing required netapp_lib 1377s SKIPPED [9] tests/unit/plugins/modules/test_na_ontap_ntfs_dacl.py: skipping as missing required netapp_lib 1377s SKIPPED [11] tests/unit/plugins/modules/test_na_ontap_nvme_subsystem.py: skipping as missing required netapp_lib 1377s SKIPPED [47] tests/unit/plugins/modules/test_na_ontap_quotas.py: skipping as missing required netapp_lib 1377s SKIPPED [16] tests/unit/plugins/modules/test_na_ontap_qos_adaptive_policy_group.py: skipping as missing required netapp_lib 1377s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_ntfs_sd.py: skipping as missing required netapp_lib 1377s SKIPPED [29] tests/unit/plugins/modules/test_na_ontap_qtree.py: skipping as missing required netapp_lib 1377s SKIPPED [9] tests/unit/plugins/modules/test_na_ontap_quota_policy.py: skipping as missing required netapp_lib 1377s SKIPPED [11] tests/unit/plugins/modules/test_na_ontap_restit.py: skipping as missing required netapp_lib 1377s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_security_config.py: skipping as missing required netapp_lib 1377s SKIPPED [27] tests/unit/plugins/modules/test_na_ontap_security_key_manager.py: skipping as missing required netapp_lib 1377s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_snaplock_clock.py: skipping as missing required netapp_lib 1377s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_security_ssh.py: skipping as missing required netapp_lib 1377s SKIPPED [79] tests/unit/plugins/modules/test_na_ontap_snapmirror.py: skipping as missing required netapp_lib 1377s SKIPPED [33] tests/unit/plugins/modules/test_na_ontap_snapmirror_policy.py: skipping as missing required netapp_lib 1377s SKIPPED [17] tests/unit/plugins/modules/test_na_ontap_service_processor_network.py: skipping as missing required netapp_lib 1377s SKIPPED [20] tests/unit/plugins/modules/test_na_ontap_snapshot_policy.py: skipping as missing required netapp_lib 1377s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_snmp_traphosts.py: skipping as missing required netapp_lib 1377s SKIPPED [30] tests/unit/plugins/modules/test_na_ontap_snapshot_policy_rest.py: skipping as missing required netapp_lib 1377s SKIPPED [19] tests/unit/plugins/modules/test_na_ontap_snapshot.py: skipping as missing required netapp_lib 1377s SKIPPED [44] tests/unit/plugins/modules/test_na_ontap_software_update.py: skipping as missing required netapp_lib 1377s SKIPPED [10] tests/unit/plugins/modules/test_na_ontap_storage_auto_giveback.py: skipping as missing required netapp_lib 1377s SKIPPED [15] tests/unit/plugins/modules/test_na_ontap_storage_failover.py: skipping as missing required netapp_lib 1377s SKIPPED [83] tests/unit/plugins/modules/test_na_ontap_svm.py: skipping as missing required netapp_lib 1377s SKIPPED [35] tests/unit/plugins/modules/test_na_ontap_unix_group.py: skipping as missing required netapp_lib 1377s SKIPPED [26] tests/unit/plugins/modules/test_na_ontap_unix_user.py: skipping as missing required netapp_lib 1377s SKIPPED [39] tests/unit/plugins/modules/test_na_ontap_user.py: skipping as missing required netapp_lib 1377s SKIPPED [2] tests/unit/plugins/modules/test_na_ontap_template.py: skipping as missing required netapp_lib 1377s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_ucadapter.py: skipping as missing required netapp_lib 1377s SKIPPED [25] tests/unit/plugins/modules/test_na_ontap_user_dicts.py: skipping as missing required netapp_lib 1377s SKIPPED [111] tests/unit/plugins/modules/test_na_ontap_volume.py: skipping as missing required netapp_lib 1377s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_user_role.py: skipping as missing required netapp_lib 1377s SKIPPED [20] tests/unit/plugins/modules/test_na_ontap_volume_autosize.py: skipping as missing required netapp_lib 1377s SKIPPED [11] tests/unit/plugins/modules/test_na_ontap_volume_clone.py: skipping as missing required netapp_lib 1377s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_volume_clone_rest.py: skipping as missing required netapp_lib 1377s SKIPPED [16] tests/unit/plugins/modules/test_na_ontap_volume_efficiency.py: skipping as missing required netapp_lib 1377s SKIPPED [94] tests/unit/plugins/modules/test_na_ontap_volume_rest.py: skipping as missing required netapp_lib 1377s SKIPPED [10] tests/unit/plugins/modules/test_na_ontap_vscan.py: skipping as missing required netapp_lib 1377s SKIPPED [21] tests/unit/plugins/modules/test_na_ontap_vscan_on_access_policy.py: skipping as missing required netapp_lib 1377s SKIPPED [4] tests/unit/plugins/modules/test_na_ontap_volume_snaplock.py: skipping as missing required netapp_lib 1377s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_vscan_on_demand_task.py: skipping as missing required netapp_lib 1377s SKIPPED [9] tests/unit/plugins/modules/test_na_ontap_vscan_on_demand_task_rest.py: skipping as missing required netapp_lib 1377s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_vserver_audit.py: skipping as missing required netapp_lib 1377s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_vscan_scanner_pool.py: skipping as missing required netapp_lib 1377s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_vserver_cifs_security.py: skipping as missing required netapp_lib 1377s SKIPPED [28] tests/unit/plugins/modules/test_na_ontap_vserver_peer.py: skipping as missing required netapp_lib 1377s SKIPPED [20] tests/unit/plugins/modules/test_na_ontap_wait_for_condition.py: skipping as missing required netapp_lib 1377s SKIPPED [13] tests/unit/plugins/modules/test_na_ontap_zapit.py: skipping as missing required netapp_lib 1377s FAILED tests/unit/plugins/modules/test_na_ontap_autosupport_invoke.py::TestMyModule::test_zapi_send_error 1377s ================= 1 failed, 645 passed, 2358 skipped in 18.10s ================= 1377s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp/ontap/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp/ontap --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp/ontap tests/unit/plugins/modules/test_na_ontap_active_directory.py tests/unit/plugins/modules/test_na_ontap_active_directory_domain_controllers.py tests/unit/plugins/modules/test_na_ontap_aggregate.py tests/unit/plugins/modules/test_na_ontap_aggregate_rest.py tests/unit/plugins/modules/test_na_ontap_autosupport.py tests/unit/plugins/modules/test_na_ontap_autosupport_invoke.py tests/unit/plugins/modules/test_na_ontap_bgp_config_rest.py tests/unit/plugins/modules/test_na_ontap_bgp_peer_group.py tests/unit/plugins/modules/test_na_ontap_broadcast_domain.py tests/unit/plugins/modules/test_na_ontap_cg_snapshot.py tests/unit/plugins/modules/test_na_ontap_cg_snapshot_rest.py tests/unit/plugins/modules/test_na_ontap_cifs.py tests/unit/plugins/modules/test_na_ontap_cifs_acl.py tests/unit/plugins/modules/test_na_ontap_cifs_local_group.py tests/unit/plugins/modules/test_na_ontap_cifs_local_group_member.py tests/unit/plugins/modules/test_na_ontap_cifs_local_user.py tests/unit/plugins/modules/test_na_ontap_cifs_local_user_modify.py tests/unit/plugins/modules/test_na_ontap_cifs_local_user_set_password.py tests/unit/plugins/modules/test_na_ontap_cifs_local_user_set_password_rest.py tests/unit/plugins/modules/test_na_ontap_cifs_privileges_rest.py tests/unit/plugins/modules/test_na_ontap_cifs_server.py tests/unit/plugins/modules/test_na_ontap_cifs_unix_symlink_mapping_rest.py tests/unit/plugins/modules/test_na_ontap_cli_timeout_rest.py tests/unit/plugins/modules/test_na_ontap_cluster.py tests/unit/plugins/modules/test_na_ontap_cluster_ha.py tests/unit/plugins/modules/test_na_ontap_cluster_peer.py tests/unit/plugins/modules/test_na_ontap_command.py tests/unit/plugins/modules/test_na_ontap_debug.py tests/unit/plugins/modules/test_na_ontap_disk_options.py tests/unit/plugins/modules/test_na_ontap_disks.py tests/unit/plugins/modules/test_na_ontap_dns.py tests/unit/plugins/modules/test_na_ontap_domain_tunnel.py tests/unit/plugins/modules/test_na_ontap_efficiency_policy.py tests/unit/plugins/modules/test_na_ontap_ems_config_rest.py tests/unit/plugins/modules/test_na_ontap_ems_destination.py tests/unit/plugins/modules/test_na_ontap_ems_filter.py tests/unit/plugins/modules/test_na_ontap_export_policy.py tests/unit/plugins/modules/test_na_ontap_export_policy_rule.py tests/unit/plugins/modules/test_na_ontap_export_policy_rule_rest.py tests/unit/plugins/modules/test_na_ontap_fcp_rest.py tests/unit/plugins/modules/test_na_ontap_fdsd.py tests/unit/plugins/modules/test_na_ontap_fdsp.py tests/unit/plugins/modules/test_na_ontap_fdss.py tests/unit/plugins/modules/test_na_ontap_file_directory_policy.py tests/unit/plugins/modules/test_na_ontap_file_security_permissions.py tests/unit/plugins/modules/test_na_ontap_file_security_permissions_acl.py tests/unit/plugins/modules/test_na_ontap_firewall_policy.py tests/unit/plugins/modules/test_na_ontap_firmware_upgrade.py tests/unit/plugins/modules/test_na_ontap_flexcache.py tests/unit/plugins/modules/test_na_ontap_fpolicy_event.py tests/unit/plugins/modules/test_na_ontap_fpolicy_ext_engine.py tests/unit/plugins/modules/test_na_ontap_fpolicy_policy.py tests/unit/plugins/modules/test_na_ontap_fpolicy_scope.py tests/unit/plugins/modules/test_na_ontap_fpolicy_status.py tests/unit/plugins/modules/test_na_ontap_igroup.py tests/unit/plugins/modules/test_na_ontap_igroup_initiator.py tests/unit/plugins/modules/test_na_ontap_info.py tests/unit/plugins/modules/test_na_ontap_interface.py tests/unit/plugins/modules/test_na_ontap_ipspace.py tests/unit/plugins/modules/test_na_ontap_iscsi.py tests/unit/plugins/modules/test_na_ontap_iscsi_security.py tests/unit/plugins/modules/test_na_ontap_job_schedule.py tests/unit/plugins/modules/test_na_ontap_kerberos_interface.py tests/unit/plugins/modules/test_na_ontap_kerberos_realm.py tests/unit/plugins/modules/test_na_ontap_ldap_client.py tests/unit/plugins/modules/test_na_ontap_license.py tests/unit/plugins/modules/test_na_ontap_license_nlf.py tests/unit/plugins/modules/test_na_ontap_local_hosts.py tests/unit/plugins/modules/test_na_ontap_log_forward.py tests/unit/plugins/modules/test_na_ontap_login_messages.py tests/unit/plugins/modules/test_na_ontap_lun.py tests/unit/plugins/modules/test_na_ontap_lun_app_rest.py tests/unit/plugins/modules/test_na_ontap_lun_copy.py tests/unit/plugins/modules/test_na_ontap_lun_map.py tests/unit/plugins/modules/test_na_ontap_lun_map_reporting_nodes.py tests/unit/plugins/modules/test_na_ontap_lun_map_rest.py tests/unit/plugins/modules/test_na_ontap_lun_rest.py tests/unit/plugins/modules/test_na_ontap_mcc_mediator.py tests/unit/plugins/modules/test_na_ontap_metrocluster.py tests/unit/plugins/modules/test_na_ontap_metrocluster_dr_group.py tests/unit/plugins/modules/test_na_ontap_motd.py tests/unit/plugins/modules/test_na_ontap_name_mappings.py tests/unit/plugins/modules/test_na_ontap_name_service_switch.py tests/unit/plugins/modules/test_na_ontap_ndmp.py tests/unit/plugins/modules/test_na_ontap_net_ifgrp.py tests/unit/plugins/modules/test_na_ontap_net_port.py tests/unit/plugins/modules/test_na_ontap_net_routes.py tests/unit/plugins/modules/test_na_ontap_net_subnet.py tests/unit/plugins/modules/test_na_ontap_net_vlan.py tests/unit/plugins/modules/test_na_ontap_nfs.py tests/unit/plugins/modules/test_na_ontap_nfs_rest.py tests/unit/plugins/modules/test_na_ontap_node.py tests/unit/plugins/modules/test_na_ontap_ntfs_dacl.py tests/unit/plugins/modules/test_na_ontap_ntfs_sd.py tests/unit/plugins/modules/test_na_ontap_ntp.py tests/unit/plugins/modules/test_na_ontap_ntp_key.py tests/unit/plugins/modules/test_na_ontap_nvme.py tests/unit/plugins/modules/test_na_ontap_nvme_namespace.py tests/unit/plugins/modules/test_na_ontap_nvme_namespace_rest.py tests/unit/plugins/modules/test_na_ontap_nvme_rest.py tests/unit/plugins/modules/test_na_ontap_nvme_subsystem.py tests/unit/plugins/modules/test_na_ontap_nvme_subsystem_rest.py tests/unit/plugins/modules/test_na_ontap_object_store.py tests/unit/plugins/modules/test_na_ontap_partitions.py tests/unit/plugins/modules/test_na_ontap_ports.py tests/unit/plugins/modules/test_na_ontap_portset.py tests/unit/plugins/modules/test_na_ontap_publickey.py tests/unit/plugins/modules/test_na_ontap_qos_adaptive_policy_group.py tests/unit/plugins/modules/test_na_ontap_qos_policy_group.py tests/unit/plugins/modules/test_na_ontap_qtree.py tests/unit/plugins/modules/test_na_ontap_quota_policy.py tests/unit/plugins/modules/test_na_ontap_quotas.py tests/unit/plugins/modules/test_na_ontap_rest_cli.py tests/unit/plugins/modules/test_na_ontap_rest_info.py tests/unit/plugins/modules/test_na_ontap_restit.py tests/unit/plugins/modules/test_na_ontap_s3_buckets.py tests/unit/plugins/modules/test_na_ontap_s3_groups.py tests/unit/plugins/modules/test_na_ontap_s3_policies.py tests/unit/plugins/modules/test_na_ontap_s3_services.py tests/unit/plugins/modules/test_na_ontap_s3_users.py tests/unit/plugins/modules/test_na_ontap_security_certificates.py tests/unit/plugins/modules/test_na_ontap_security_config.py tests/unit/plugins/modules/test_na_ontap_security_ipsec_ca_certificate.py tests/unit/plugins/modules/test_na_ontap_security_ipsec_config.py tests/unit/plugins/modules/test_na_ontap_security_ipsec_policy.py tests/unit/plugins/modules/test_na_ontap_security_key_manager.py tests/unit/plugins/modules/test_na_ontap_security_ssh.py tests/unit/plugins/modules/test_na_ontap_service_policy.py tests/unit/plugins/modules/test_na_ontap_service_processor_network.py tests/unit/plugins/modules/test_na_ontap_snaplock_clock.py tests/unit/plugins/modules/test_na_ontap_snapmirror.py tests/unit/plugins/modules/test_na_ontap_snapmirror_policy.py tests/unit/plugins/modules/test_na_ontap_snapshot.py tests/unit/plugins/modules/test_na_ontap_snapshot_policy.py tests/unit/plugins/modules/test_na_ontap_snapshot_policy_rest.py tests/unit/plugins/modules/test_na_ontap_snmp.py tests/unit/plugins/modules/test_na_ontap_snmp_config_rest.py tests/unit/plugins/modules/test_na_ontap_snmp_traphosts.py tests/unit/plugins/modules/test_na_ontap_software_update.py tests/unit/plugins/modules/test_na_ontap_storage_auto_giveback.py tests/unit/plugins/modules/test_na_ontap_storage_failover.py tests/unit/plugins/modules/test_na_ontap_svm.py tests/unit/plugins/modules/test_na_ontap_template.py tests/unit/plugins/modules/test_na_ontap_ucadapter.py tests/unit/plugins/modules/test_na_ontap_unix_group.py tests/unit/plugins/modules/test_na_ontap_unix_user.py tests/unit/plugins/modules/test_na_ontap_user.py tests/unit/plugins/modules/test_na_ontap_user_dicts.py tests/unit/plugins/modules/test_na_ontap_user_role.py tests/unit/plugins/modules/test_na_ontap_user_role_rest.py tests/unit/plugins/modules/test_na_ontap_volume.py tests/unit/plugins/modules/test_na_ontap_volume_autosize.py tests/unit/plugins/modules/test_na_ontap_volume_clone.py tests/unit/plugins/modules/test_na_ontap_volume_clone_rest.py tests/unit/plugins/modules/test_na_ontap_volume_efficiency.py tests/unit/plugins/modules/test_na_ontap_volume_rest.py tests/unit/plugins/modules/test_na_ontap_volume_snaplock.py tests/unit/plugins/modules/test_na_ontap_vscan.py tests/unit/plugins/modules/test_na_ontap_vscan_on_access_policy.py tests/unit/plugins/modules/test_na_ontap_vscan_on_demand_task.py tests/unit/plugins/modules/test_na_ontap_vscan_on_demand_task_rest.py tests/unit/plugins/modules/test_na_ontap_vscan_scanner_pool.py tests/unit/plugins/modules/test_na_ontap_vscan_scanner_pool_rest.py tests/unit/plugins/modules/test_na_ontap_vserver_audit.py tests/unit/plugins/modules/test_na_ontap_vserver_cifs_security.py tests/unit/plugins/modules/test_na_ontap_vserver_peer.py tests/unit/plugins/modules/test_na_ontap_vserver_peer_permissions.py tests/unit/plugins/modules/test_na_ontap_wait_for_condition.py tests/unit/plugins/modules/test_na_ontap_wwpn_alias.py tests/unit/plugins/modules/test_na_ontap_zapit.py tests/unit/plugins/modules/test_ontap_fdspt.py" returned exit status 1. 1377s ## return code is 1 1377s 1377s 1377s 1377s ############################################################ 1377s ############################################################ 1377s #### Running FLAKY tests in ansible_collections/ngine_io/cloudstack 1377s ############################################################ 1377s ############################################################ 1377s Unit test controller with Python 3.13 1378s ============================= test session starts ============================== 1378s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1378s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ngine_io/cloudstack 1378s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1378s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 1378s created: 8/8 workers 1378s 8 workers [0 items] 1378s 1378s 1378s ==================================== ERRORS ==================================== 1378s _________ ERROR collecting tests/unit/modules/test_cs_traffic_type.py __________ 1378s ImportError while importing test module '/tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ngine_io/cloudstack/tests/unit/modules/test_cs_traffic_type.py'. 1378s Hint: make sure your test modules/packages have valid Python names. 1378s Traceback: 1378s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1378s return _bootstrap._gcd_import(name[level:], package, level) 1378s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1378s assertion_rewriting_hook.exec_module(module) 1378s tests/unit/modules/test_cs_traffic_type.py:4: in 1378s from units.compat import unittest 1378s E ModuleNotFoundError: No module named 'units' 1378s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ngine_io/cloudstack/tests/output/junit/python3.13-controller-units.xml - 1378s =========================== short test summary info ============================ 1378s ERROR tests/unit/modules/test_cs_traffic_type.py 1378s =============================== 1 error in 0.84s =============================== 1379s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ngine_io/cloudstack/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ngine_io/cloudstack --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ngine_io/cloudstack tests/unit/modules/test_cs_traffic_type.py" returned exit status 1. 1379s ## return code is 1 1379s 1379s 1379s 1379s ############################################################ 1379s ############################################################ 1379s #### Running FLAKY tests in ansible_collections/sensu/sensu_go 1379s ############################################################ 1379s ############################################################ 1379s Unit test modules with Python 3.13 1381s ============================= test session starts ============================== 1381s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1381s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/sensu/sensu_go 1381s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1381s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 1381s created: 8/8 workers 1381s 8 workers [346 items] 1381s 1381s ........................................................................ [ 20%] 1381s ........................................................................ [ 41%] 1381s .................................F...................................... [ 62%] 1382s ........................................................................ [ 83%] 1382s .......................................................... [100%] 1382s =================================== FAILURES =================================== 1382s _ TestDatastoreParams.test_parameters_datastore[my_resource-absent--None-None-None-None-None-None-False-True-expected_payload2] _ 1382s [gw5] linux -- Python 3.13.3 /usr/bin/python3 1382s 1382s self = 1382s mocker = 1382s name = 'my_resource', state = 'absent', dsn = '', pool_size = None 1382s max_conn_lifetime = None, max_idle_conns = None, batch_workers = None 1382s batch_buffer = None, batch_size = None, enable_round_robin = False 1382s strict = True 1382s expected_payload = {'api_version': 'store/v1', 'metadata': {'name': 'my_resource'}, 'spec': {'dsn': '', 'enable_round_robin': False, 'strict': True}, 'type': 'PostgresConfig'} 1382s 1382s @pytest.mark.parametrize( 1382s # name ... Resource name 1382s # state ... Prefered resource state (Present/Absent) 1382s # dsn ... url or postgre connection string 1382s # pool_size ... max number of connections 1382s # max_conn_lifetime ... max time a connection can persist 1382s # max_idle_conns ... max number of idle connections 1382s # batch_workers ... number of GOroutines 1382s # batch_buffer ... max requests to buffer in memory 1382s # batch_size ... number of requests in each transaction 1382s # enable_round_robin ... round robin (True/False) 1382s # strict ... strict (True/False) 1382s # expected_payload ... expected payload 1382s ("name", "state", "dsn", "pool_size", "max_conn_lifetime", "max_idle_conns", "batch_workers", 1382s "batch_buffer", "batch_size", "enable_round_robin", "strict", "expected_payload"), 1382s [ 1382s # Present 1382s ("my_resource", "present", "postgresql://user:secret@host:port/dbname", 2, 1, 1, 1, 1, 1, 1382s False, True, 1382s {'type': 'PostgresConfig', 'api_version': 'store/v1', 'metadata': {'name': 'my_resource'}, 1382s 'spec': 1382s { 1382s 'dsn': 'postgresql://user:secret@host:port/dbname', 'pool_size': 2, 'max_conn_lifetime': '1', 1382s 'max_idle_conns': 1, 'batch_workers': 1, 'batch_buffer': 1, 'batch_size': 1, 1382s 'enable_round_robin': False, 'strict': True}}), 1382s 1382s ("another_resource", "present", "postgresql://user:secret@host:port/dbname", 0, 0, 0, 0, 0, 0, 1382s False, False, 1382s {'type': 'PostgresConfig', 'api_version': 'store/v1', 'metadata': {'name': 'another_resource'}, 1382s 'spec': 1382s { 1382s 'dsn': 'postgresql://user:secret@host:port/dbname', 'pool_size': 0, 'max_conn_lifetime': '0', 1382s 'max_idle_conns': 0, 'batch_workers': 0, 'batch_buffer': 0, 'batch_size': 0, 1382s 'enable_round_robin': False, 'strict': False}}), 1382s # Absent 1382s ("my_resource", "absent", "", None, None, None, None, None, None, 1382s False, True, 1382s {'type': 'PostgresConfig', 'api_version': 'store/v1', 'metadata': {'name': 'my_resource'}, 1382s 'spec': 1382s { 1382s 'dsn': '', 'enable_round_robin': False, 'strict': True}}), 1382s 1382s ("my_resource", "absent", "postgresql://user:secret@host:port/dbname", 2, 1, 1, 1, 2, 3, 1382s False, True, 1382s {'type': 'PostgresConfig', 'api_version': 'store/v1', 'metadata': {'name': 'my_resource'}, 1382s 'spec': 1382s { 1382s 'dsn': 'postgresql://user:secret@host:port/dbname', 'pool_size': 2, 'max_conn_lifetime': '1', 1382s 'max_idle_conns': 1, 'batch_workers': 1, 'batch_buffer': 2, 'batch_size': 3, 1382s 'enable_round_robin': False, 'strict': True}}), 1382s ], 1382s ) 1382s def test_parameters_datastore(self, mocker, name, state, dsn, pool_size, max_conn_lifetime, max_idle_conns, batch_workers, 1382s batch_buffer, batch_size, enable_round_robin, strict, expected_payload): 1382s sync_mock = mocker.patch.object(datastore, "sync") 1382s sync_mock.return_value = True, {} 1382s set_module_args( 1382s name=name, 1382s dsn=dsn, 1382s state=state, 1382s pool_size=pool_size, 1382s max_conn_lifetime=max_conn_lifetime, 1382s max_idle_conns=max_idle_conns, 1382s batch_workers=batch_workers, 1382s batch_buffer=batch_buffer, 1382s batch_size=batch_size, 1382s enable_round_robin=enable_round_robin, 1382s strict=strict, 1382s ) 1382s with pytest.raises(AnsibleExitJson): 1382s > datastore.main() 1382s 1382s tests/unit/plugins/modules/test_datastore.py:343: 1382s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1382s plugins/modules/datastore.py:184: in main 1382s module = AnsibleModule( 1382s /tmp/ansible-test-ctcr0_hz/ansible/module_utils/basic.py:445: in __init__ 1382s self.fail_json(msg=msg) 1382s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1382s 1382s args = (,) 1382s kwargs = {'failed': True, 'msg': 'argument \'pool_size\' is of type and we were unable to convert to int: "None" cannot be converted to an int'} 1382s 1382s def fail_json(*args, **kwargs): 1382s kwargs['failed'] = True 1382s > raise AnsibleFailJson(kwargs) 1382s E ansible_collections.sensu.sensu_go.tests.unit.plugins.modules.common.utils.AnsibleFailJson: {'msg': 'argument \'pool_size\' is of type and we were unable to convert to int: "None" cannot be converted to an int', 'failed': True} 1382s 1382s tests/unit/plugins/modules/common/utils.py:38: AnsibleFailJson 1382s =============================== warnings summary =============================== 1382s tests/unit/plugins/modules/test_user.py::TestUpdatePasswordHash::test_sensu_go_older_than_5_21_0[False] 1382s tests/unit/plugins/modules/test_user.py::TestUpdatePasswordHash::test_sensu_go_older_than_5_21_0[True] 1382s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/sensu/sensu_go/tests/unit/plugins/modules/test_user.py:120: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. 1382s client.version = version.StrictVersion("5.20.0") 1382s 1382s tests/unit/plugins/modules/test_user.py::TestUpdatePassword::test_password_is_invalid_older_than_5_21_0 1382s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/sensu/sensu_go/tests/unit/plugins/modules/test_user.py:39: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. 1382s client.version = version.StrictVersion("5.20.2") 1382s 1382s tests/unit/plugins/modules/test_user.py::TestUpdatePasswordHash::test_sensu_go_newer_than_5_21_0 1382s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/sensu/sensu_go/tests/unit/plugins/modules/test_user.py:129: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. 1382s client.version = version.StrictVersion("5.21.0") 1382s 1382s tests/unit/plugins/modules/test_user.py::TestUpdatePassword::test_missing_bcrypt_library[False-True-None] 1382s tests/unit/plugins/modules/test_user.py::TestUpdatePassword::test_missing_bcrypt_library[True-False-True] 1382s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/sensu/sensu_go/tests/unit/plugins/modules/test_user.py:105: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. 1382s client.version = version.StrictVersion("5.21.1") 1382s 1382s tests/unit/plugins/modules/test_user.py::TestUpdatePassword::test_password_is_invalid_5_21_0_or_newer 1382s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/sensu/sensu_go/tests/unit/plugins/modules/test_user.py:53: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. 1382s client.version = version.StrictVersion("5.21.0") 1382s 1382s tests/unit/plugins/modules/test_user.py::TestUpdatePasswordHash::test_sensu_go_newer_than_5_21_0_check_mode 1382s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/sensu/sensu_go/tests/unit/plugins/modules/test_user.py:146: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. 1382s client.version = version.StrictVersion("5.21.0") 1382s 1382s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 1382s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/sensu/sensu_go/tests/output/junit/python3.13-modules-units.xml - 1382s =========================== short test summary info ============================ 1382s FAILED tests/unit/plugins/modules/test_datastore.py::TestDatastoreParams::test_parameters_datastore[my_resource-absent--None-None-None-None-None-None-False-True-expected_payload2] 1382s ================== 1 failed, 345 passed, 8 warnings in 2.97s =================== 1382s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/sensu/sensu_go/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/sensu/sensu_go --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/sensu/sensu_go tests/unit/plugins/modules/test_ad_auth_provider.py tests/unit/plugins/modules/test_asset.py tests/unit/plugins/modules/test_asset_info.py tests/unit/plugins/modules/test_auth_provider_info.py tests/unit/plugins/modules/test_bonsai_asset.py tests/unit/plugins/modules/test_check.py tests/unit/plugins/modules/test_check_info.py tests/unit/plugins/modules/test_cluster.py tests/unit/plugins/modules/test_cluster_info.py tests/unit/plugins/modules/test_cluster_role.py tests/unit/plugins/modules/test_cluster_role_binding.py tests/unit/plugins/modules/test_cluster_role_binding_info.py tests/unit/plugins/modules/test_cluster_role_info.py tests/unit/plugins/modules/test_datastore.py tests/unit/plugins/modules/test_datastore_info.py tests/unit/plugins/modules/test_entity.py tests/unit/plugins/modules/test_entity_info.py tests/unit/plugins/modules/test_etcd_replicator.py tests/unit/plugins/modules/test_etcd_replicator_info.py tests/unit/plugins/modules/test_event.py tests/unit/plugins/modules/test_event_info.py tests/unit/plugins/modules/test_filter.py tests/unit/plugins/modules/test_filter_info.py tests/unit/plugins/modules/test_handler_set.py tests/unit/plugins/modules/test_hook.py tests/unit/plugins/modules/test_hook_info.py tests/unit/plugins/modules/test_ldap_auth_provider.py tests/unit/plugins/modules/test_mutator.py tests/unit/plugins/modules/test_mutator_info.py tests/unit/plugins/modules/test_namespace.py tests/unit/plugins/modules/test_namespace_info.py tests/unit/plugins/modules/test_oidc_auth_provider.py tests/unit/plugins/modules/test_pipe_handler.py tests/unit/plugins/modules/test_pipe_handler_info.py tests/unit/plugins/modules/test_pipeline.py tests/unit/plugins/modules/test_pipeline_info.py tests/unit/plugins/modules/test_role.py tests/unit/plugins/modules/test_role_binding.py tests/unit/plugins/modules/test_role_binding_info.py tests/unit/plugins/modules/test_role_info.py tests/unit/plugins/modules/test_secret.py tests/unit/plugins/modules/test_secret_info.py tests/unit/plugins/modules/test_secrets_provider_env.py tests/unit/plugins/modules/test_secrets_provider_info.py tests/unit/plugins/modules/test_secrets_provider_vault.py tests/unit/plugins/modules/test_silence.py tests/unit/plugins/modules/test_silence_info.py tests/unit/plugins/modules/test_socket_handler.py tests/unit/plugins/modules/test_tessen.py tests/unit/plugins/modules/test_user.py tests/unit/plugins/modules/test_user_info.py" returned exit status 1. 1382s ## return code is 1 1382s 1382s 1382s 1382s ############################################################ 1382s ############################################################ 1382s #### Running FLAKY tests in ansible_collections/splunk/es 1382s ############################################################ 1382s ############################################################ 1382s Unit test controller with Python 3.13 1384s ============================= test session starts ============================== 1384s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1384s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/splunk/es 1384s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1384s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 1384s created: 8/8 workers 1384s 8 workers [31 items] 1384s 1385s ..................F............ [100%] 1385s =================================== FAILURES =================================== 1385s _ TestSplunkEsCorrelationSearches.test_es_correlation_searches_replaced_idempotent _ 1385s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1385s 1385s self = 1385s conn = 1385s monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0xf2817a08> 1385s 1385s @patch("ansible.module_utils.connection.Connection.__rpc__") 1385s def test_es_correlation_searches_replaced_idempotent( 1385s self, 1385s conn, 1385s monkeypatch, 1385s ): 1385s self._plugin._connection.socket_path = tempfile.NamedTemporaryFile().name 1385s self._plugin._connection._shell = MagicMock() 1385s 1385s def create_update(self, rest_path, data=None): 1385s return RESPONSE_PAYLOAD 1385s 1385s def get_by_path(self, path): 1385s return RESPONSE_PAYLOAD 1385s 1385s def delete_by_path(self, path): 1385s return {} 1385s 1385s monkeypatch.setattr(SplunkRequest, "create_update", create_update) 1385s monkeypatch.setattr(SplunkRequest, "get_by_path", get_by_path) 1385s monkeypatch.setattr(SplunkRequest, "delete_by_path", delete_by_path) 1385s 1385s self._plugin._task.args = { 1385s "state": "replaced", 1385s "config": [REQUEST_PAYLOAD[0]], 1385s } 1385s result = self._plugin.run(task_vars=self._task_vars) 1385s 1385s > assert result["changed"] is True 1385s E assert False is True 1385s 1385s tests/unit/plugins/action/test_es_correlation_searches.py:309: AssertionError 1385s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/splunk/es/tests/output/junit/python3.13-controller-units.xml - 1385s =========================== short test summary info ============================ 1385s FAILED tests/unit/plugins/action/test_es_correlation_searches.py::TestSplunkEsCorrelationSearches::test_es_correlation_searches_replaced_idempotent 1385s ========================= 1 failed, 30 passed in 1.41s ========================= 1385s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/splunk/es/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/splunk/es --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/splunk/es tests/unit/plugins/action/test_es_adaptive_response_notable_events.py tests/unit/plugins/action/test_es_correlation_searches.py tests/unit/plugins/action/test_es_data_inputs_monitors.py tests/unit/plugins/action/test_es_data_inputs_network.py" returned exit status 1. 1385s ## return code is 1 1385s 1385s 1385s 1385s ############################################################ 1385s ############################################################ 1385s #### Running FLAKY tests in ansible_collections/vmware/vmware 1385s ############################################################ 1385s ############################################################ 1385s Unit test modules with Python 3.13 1386s ============================= test session starts ============================== 1386s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1386s rootdir: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/vmware/vmware 1386s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1386s plugins: typeguard-4.4.2, forked-1.6.0, mock-3.14.0, xdist-3.6.1 1386s created: 8/8 workers 1386s 8 workers [18 items] 1386s 1386s .............F..FF [100%] 1386s =================================== FAILURES =================================== 1386s ____________________ TestModuleRestBase.test_get_vm_by_name ____________________ 1386s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1386s 1386s self = 1386s mocker = 1386s 1386s def test_get_vm_by_name(self, mocker): 1386s > self.__prepare(mocker) 1386s 1386s tests/unit/plugins/modules/test_utils_module_rest_base.py:21: 1386s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1386s tests/unit/plugins/modules/test_utils_module_rest_base.py:16: in __prepare 1386s self.base = ModuleRestBase( 1386s plugins/module_utils/_module_rest_base.py:29: in __init__ 1386s super().__init__(connection_params=module.params) 1386s plugins/module_utils/clients/_rest.py:48: in __init__ 1386s self.check_requirements() 1386s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1386s 1386s self = 1386s 1386s def check_requirements(self): 1386s """ 1386s Check all requirements for this client are satisfied 1386s """ 1386s if REQUESTS_IMP_ERR: 1386s raise MissingLibError('requests', REQUESTS_IMP_ERR) 1386s if VSPHERE_IMP_ERR: 1386s > raise MissingLibError( 1386s 'vSphere Automation SDK', VSPHERE_IMP_ERR, 1386s url='https://code.vmware.com/web/sdk/7.0/vsphere-automation-python' 1386s ) 1386s E ansible_collections.vmware.vmware.plugins.module_utils.clients._errors.MissingLibError: Failed to import the required Python library (vSphere Automation SDK) on autopkgtest-lxd-onquhr's Python /usr/bin/python3. See https://code.vmware.com/web/sdk/7.0/vsphere-automation-python for more info. Please read the module documentation and install it in the appropriate location. If the required library is installed, but Ansible is using the wrong Python interpreter, please consult the documentation on ansible_python_interpreter 1386s 1386s plugins/module_utils/clients/_rest.py:65: MissingLibError 1386s _______________ TestModuleRestBase.test_get_content_library_ids ________________ 1386s [gw6] linux -- Python 3.13.3 /usr/bin/python3 1386s 1386s self = 1386s mocker = 1386s 1386s def test_get_content_library_ids(self, mocker): 1386s > self.__prepare(mocker) 1386s 1386s tests/unit/plugins/modules/test_utils_module_rest_base.py:29: 1386s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1386s tests/unit/plugins/modules/test_utils_module_rest_base.py:16: in __prepare 1386s self.base = ModuleRestBase( 1386s plugins/module_utils/_module_rest_base.py:29: in __init__ 1386s super().__init__(connection_params=module.params) 1386s plugins/module_utils/clients/_rest.py:48: in __init__ 1386s self.check_requirements() 1386s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1386s 1386s self = 1386s 1386s def check_requirements(self): 1386s """ 1386s Check all requirements for this client are satisfied 1386s """ 1386s if REQUESTS_IMP_ERR: 1386s raise MissingLibError('requests', REQUESTS_IMP_ERR) 1386s if VSPHERE_IMP_ERR: 1386s > raise MissingLibError( 1386s 'vSphere Automation SDK', VSPHERE_IMP_ERR, 1386s url='https://code.vmware.com/web/sdk/7.0/vsphere-automation-python' 1386s ) 1386s E ansible_collections.vmware.vmware.plugins.module_utils.clients._errors.MissingLibError: Failed to import the required Python library (vSphere Automation SDK) on autopkgtest-lxd-onquhr's Python /usr/bin/python3. See https://code.vmware.com/web/sdk/7.0/vsphere-automation-python for more info. Please read the module documentation and install it in the appropriate location. If the required library is installed, but Ansible is using the wrong Python interpreter, please consult the documentation on ansible_python_interpreter 1386s 1386s plugins/module_utils/clients/_rest.py:65: MissingLibError 1386s _____________________ TestRestClient.test_get_tags_by_moid _____________________ 1386s [gw2] linux -- Python 3.13.3 /usr/bin/python3 1386s 1386s self = 1386s mocker = 1386s 1386s def test_get_tags_by_moid(self, mocker): 1386s > self.__prepare(mocker) 1386s 1386s tests/unit/plugins/modules/test_utils_rest_client.py:21: 1386s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1386s tests/unit/plugins/modules/test_utils_rest_client.py:10: in __prepare 1386s client_mock = mocker.patch('ansible_collections.vmware.vmware.plugins.module_utils.clients._rest.create_vsphere_client') 1386s /usr/lib/python3/dist-packages/pytest_mock/plugin.py:440: in __call__ 1386s return self._start_patch( 1386s /usr/lib/python3/dist-packages/pytest_mock/plugin.py:258: in _start_patch 1386s mocked: MockType = p.start() 1386s /usr/lib/python3.13/unittest/mock.py:1654: in start 1386s result = self.__enter__() 1386s /usr/lib/python3.13/unittest/mock.py:1497: in __enter__ 1386s original, local = self.get_original() 1386s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1386s 1386s self = 1386s 1386s def get_original(self): 1386s target = self.getter() 1386s name = self.attribute 1386s 1386s original = DEFAULT 1386s local = False 1386s 1386s try: 1386s original = target.__dict__[name] 1386s except (AttributeError, KeyError): 1386s original = getattr(target, name, DEFAULT) 1386s else: 1386s local = True 1386s 1386s if name in _builtins and isinstance(target, ModuleType): 1386s self.create = True 1386s 1386s if not self.create and original is DEFAULT: 1386s > raise AttributeError( 1386s "%s does not have the attribute %r" % (target, name) 1386s ) 1386s E AttributeError: does not have the attribute 'create_vsphere_client' 1386s 1386s /usr/lib/python3.13/unittest/mock.py:1467: AttributeError 1386s =============================== warnings summary =============================== 1386s tests/unit/plugins/modules/test_utils_pyvmomi_client.py::TestPyvmomiClient::test_class_init 1386s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/vmware/vmware/plugins/module_utils/clients/_pyvmomi.py:125: DeprecationWarning: ssl.PROTOCOL_TLS is deprecated 1386s ssl_context = ssl.SSLContext(ssl.PROTOCOL_SSLv23) 1386s 1386s tests/unit/plugins/modules/test_utils_pyvmomi_client.py::TestPyvmomiClient::test_get_all_objs_by_type 1386s /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/vmware/vmware/plugins/module_utils/clients/_pyvmomi.py:130: DeprecationWarning: ssl.PROTOCOL_TLS is deprecated 1386s ssl_context = ssl.SSLContext(ssl.PROTOCOL_SSLv23) 1386s 1386s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 1386s - generated xml file: /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/vmware/vmware/tests/output/junit/python3.13-modules-units.xml - 1386s =========================== short test summary info ============================ 1386s FAILED tests/unit/plugins/modules/test_utils_module_rest_base.py::TestModuleRestBase::test_get_vm_by_name 1386s FAILED tests/unit/plugins/modules/test_utils_module_rest_base.py::TestModuleRestBase::test_get_content_library_ids 1386s FAILED tests/unit/plugins/modules/test_utils_rest_client.py::TestRestClient::test_get_tags_by_moid 1386s =================== 3 failed, 15 passed, 2 warnings in 1.43s =================== 1386s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/vmware/vmware/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/vmware/vmware --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/vmware/vmware tests/unit/plugins/modules/test_appliance_info.py tests/unit/plugins/modules/test_cluster.py tests/unit/plugins/modules/test_cluster_info.py tests/unit/plugins/modules/test_cluster_vcls.py tests/unit/plugins/modules/test_content_library_item_info.py tests/unit/plugins/modules/test_esxi_maintenance_mode.py tests/unit/plugins/modules/test_guest_info.py tests/unit/plugins/modules/test_license_info.py tests/unit/plugins/modules/test_utils_module_pyvmomi_base.py tests/unit/plugins/modules/test_utils_module_rest_base.py tests/unit/plugins/modules/test_utils_pyvmomi_client.py tests/unit/plugins/modules/test_utils_rest_client.py tests/unit/plugins/modules/test_vm_list_group_by_clusters_info.py" returned exit status 1. 1387s ## return code is 1 1387s ############################################################ 1387s ############################################################ 1387s #### failed tests are: 1387s #### ansible_collections/ansible/utils 1387s #### ansible_collections/cisco/aci 1387s #### ansible_collections/cisco/dnac 1387s #### ansible_collections/community/dns 1387s #### ansible_collections/community/general 1387s #### ansible_collections/community/hrobot 1387s #### ansible_collections/community/library_inventory_filtering_v1 1387s #### ansible_collections/infoblox/nios_modules 1387s #### ansible_collections/junipernetworks/junos 1387s #### ansible_collections/netapp_eseries/santricity 1387s #### ansible_collections/netapp/ontap 1387s #### ansible_collections/ngine_io/cloudstack 1387s #### ansible_collections/sensu/sensu_go 1387s #### ansible_collections/splunk/es 1387s #### ansible_collections/vmware/vmware 1387s ############################################################ 1387s ############################################################ 1387s autopkgtest [05:06:40]: test unit-tests-flaky.py: -----------------------] 1391s unit-tests-flaky.py FLAKY non-zero exit status 1 1391s autopkgtest [05:06:44]: test unit-tests-flaky.py: - - - - - - - - - - results - - - - - - - - - - 1391s autopkgtest [05:06:44]: test unit-tests-flaky.py: - - - - - - - - - - stderr - - - - - - - - - - 1391s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ansible/utils/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ansible/utils --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ansible/utils tests/unit/module_utils/test_argspec_validate.py tests/unit/module_utils/test_dict_merge.py tests/unit/module_utils/test_get_path.py tests/unit/module_utils/test_sort_list.py tests/unit/module_utils/test_to_paths.py tests/unit/plugins/action/test_cli_parse.py tests/unit/plugins/action/test_fact_diff.py tests/unit/plugins/action/test_update_fact.py tests/unit/plugins/action/test_validate.py tests/unit/plugins/filter/test_cidr_merge.py tests/unit/plugins/filter/test_consolidate.py tests/unit/plugins/filter/test_fact_diff.py tests/unit/plugins/filter/test_from_xml.py tests/unit/plugins/filter/test_hwaddr.py tests/unit/plugins/filter/test_ip4_hex.py tests/unit/plugins/filter/test_ipaddr.py tests/unit/plugins/filter/test_ipcut.py tests/unit/plugins/filter/test_ipmath.py tests/unit/plugins/filter/test_ipsubnet.py tests/unit/plugins/filter/test_ipv4.py tests/unit/plugins/filter/test_ipv6.py tests/unit/plugins/filter/test_ipv6form.py tests/unit/plugins/filter/test_ipwrap.py tests/unit/plugins/filter/test_keep_keys.py tests/unit/plugins/filter/test_macaddr.py tests/unit/plugins/filter/test_network_in_network.py tests/unit/plugins/filter/test_network_in_usable.py tests/unit/plugins/filter/test_next_nth_usable.py tests/unit/plugins/filter/test_nthhost.py tests/unit/plugins/filter/test_param_list_compare.py tests/unit/plugins/filter/test_previous_nth_usable.py tests/unit/plugins/filter/test_reduce_on_network.py tests/unit/plugins/filter/test_remove_keys.py tests/unit/plugins/filter/test_replace_keys.py tests/unit/plugins/filter/test_slaac.py tests/unit/plugins/filter/test_to_xml.py tests/unit/plugins/filter/test_usable_range.py tests/unit/plugins/filter/test_validate.py tests/unit/plugins/lookup/test_validate.py tests/unit/plugins/plugin_utils/test_index_of.py tests/unit/plugins/sub_plugins/cli_parsers/test_json_parser.py tests/unit/plugins/sub_plugins/cli_parsers/test_textfsm_parser.py tests/unit/plugins/sub_plugins/cli_parsers/test_ttp_parser.py tests/unit/plugins/sub_plugins/cli_parsers/test_xml_parser.py tests/unit/plugins/sub_plugins/validate/test_config.py tests/unit/plugins/test/test_in_any_network.py tests/unit/plugins/test/test_in_network.py tests/unit/plugins/test/test_in_one_network.py tests/unit/plugins/test/test_ip.py tests/unit/plugins/test/test_ip_address.py tests/unit/plugins/test/test_ipv4.py tests/unit/plugins/test/test_ipv4_address.py tests/unit/plugins/test/test_ipv4_hostmask.py tests/unit/plugins/test/test_ipv4_netmask.py tests/unit/plugins/test/test_ipv6.py tests/unit/plugins/test/test_ipv6_address.py tests/unit/plugins/test/test_ipv6_ipv4_mapped.py tests/unit/plugins/test/test_ipv6_sixtofour.py tests/unit/plugins/test/test_ipv6_teredo.py tests/unit/plugins/test/test_loopback.py tests/unit/plugins/test/test_mac.py tests/unit/plugins/test/test_multicast.py tests/unit/plugins/test/test_private.py tests/unit/plugins/test/test_public.py tests/unit/plugins/test/test_reserved.py tests/unit/plugins/test/test_resolvable.py tests/unit/plugins/test/test_subnet_of.py tests/unit/plugins/test/test_supernet_of.py tests/unit/plugins/test/test_unspecified.py tests/unit/plugins/test/test_validate.py" returned exit status 1. 1391s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/aci/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/aci --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/aci tests/unit/module_utils/test_aci.py" returned exit status 1. 1391s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/dnac/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/dnac --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/cisco/dnac tests/unit/modules/dnac/test_accesspoint_workflow_manager.py tests/unit/modules/dnac/test_device_credential_workflow_manager.py tests/unit/modules/dnac/test_discovery_intent.py tests/unit/modules/dnac/test_inventory_workflow_manager.py tests/unit/modules/dnac/test_network_compliance_workflow_manager.py tests/unit/modules/dnac/test_network_settings_workflow_manager.py tests/unit/modules/dnac/test_pnp_intent.py tests/unit/modules/dnac/test_pnp_workflow_manager.py tests/unit/modules/dnac/test_provision_workflow_manager.py tests/unit/modules/dnac/test_rma_workflow_manager.py tests/unit/modules/dnac/test_site_intent.py tests/unit/modules/dnac/test_site_workflow_manager.py tests/unit/modules/dnac/test_swim_intent.py tests/unit/modules/dnac/test_swim_workflow_manager.py tests/unit/modules/dnac/test_template_intent.py tests/unit/modules/dnac/test_user_role_workflow_manager.py" returned exit status 1. 1391s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/dns/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/dns --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/dns tests/unit/plugins/modules/test_hetzner_dns_record.py tests/unit/plugins/modules/test_hetzner_dns_record_info.py tests/unit/plugins/modules/test_hetzner_dns_record_set.py tests/unit/plugins/modules/test_hetzner_dns_record_set_info.py tests/unit/plugins/modules/test_hetzner_dns_record_sets.py tests/unit/plugins/modules/test_hetzner_dns_zone_info.py tests/unit/plugins/modules/test_hosttech_dns_record.py tests/unit/plugins/modules/test_hosttech_dns_record_info.py tests/unit/plugins/modules/test_hosttech_dns_record_set.py tests/unit/plugins/modules/test_hosttech_dns_record_set_info.py tests/unit/plugins/modules/test_hosttech_dns_record_sets.py tests/unit/plugins/modules/test_hosttech_dns_zone_info.py tests/unit/plugins/modules/test_nameserver_info.py tests/unit/plugins/modules/test_nameserver_record_info.py tests/unit/plugins/modules/test_wait_for_txt.py" returned exit status 1. 1391s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/general/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/general --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/general tests/unit/plugins/modules/interfaces_file/test_interfaces_file.py tests/unit/plugins/modules/test_alerta_customer.py tests/unit/plugins/modules/test_apache2_module.py tests/unit/plugins/modules/test_apk.py tests/unit/plugins/modules/test_archive.py tests/unit/plugins/modules/test_bitbucket_access_key.py tests/unit/plugins/modules/test_bitbucket_pipeline_key_pair.py tests/unit/plugins/modules/test_bitbucket_pipeline_known_host.py tests/unit/plugins/modules/test_bitbucket_pipeline_variable.py tests/unit/plugins/modules/test_bootc_manage.py tests/unit/plugins/modules/test_campfire.py tests/unit/plugins/modules/test_circonus_annotation.py tests/unit/plugins/modules/test_cpanm.py tests/unit/plugins/modules/test_datadog_downtime.py tests/unit/plugins/modules/test_dconf.py tests/unit/plugins/modules/test_discord.py tests/unit/plugins/modules/test_django_check.py tests/unit/plugins/modules/test_django_command.py tests/unit/plugins/modules/test_django_createcachetable.py tests/unit/plugins/modules/test_dnf_config_manager.py tests/unit/plugins/modules/test_dnsimple.py tests/unit/plugins/modules/test_dnsimple_info.py tests/unit/plugins/modules/test_facter_facts.py tests/unit/plugins/modules/test_gconftool2.py tests/unit/plugins/modules/test_gconftool2_info.py tests/unit/plugins/modules/test_gem.py tests/unit/plugins/modules/test_gio_mime.py tests/unit/plugins/modules/test_github_repo.py tests/unit/plugins/modules/test_gitlab_deploy_key.py tests/unit/plugins/modules/test_gitlab_group.py tests/unit/plugins/modules/test_gitlab_group_access_token.py tests/unit/plugins/modules/test_gitlab_hook.py tests/unit/plugins/modules/test_gitlab_project.py tests/unit/plugins/modules/test_gitlab_project_access_token.py tests/unit/plugins/modules/test_gitlab_protected_branch.py tests/unit/plugins/modules/test_gitlab_runner.py tests/unit/plugins/modules/test_gitlab_user.py tests/unit/plugins/modules/test_homebrew.py tests/unit/plugins/modules/test_homebrew_cask.py tests/unit/plugins/modules/test_icinga2_feature.py tests/unit/plugins/modules/test_ini_file.py tests/unit/plugins/modules/test_ipa_getkeytab.py tests/unit/plugins/modules/test_ipa_otpconfig.py tests/unit/plugins/modules/test_ipa_otptoken.py tests/unit/plugins/modules/test_ipa_pwpolicy.py tests/unit/plugins/modules/test_ipbase.py tests/unit/plugins/modules/test_java_keystore.py tests/unit/plugins/modules/test_jenkins_build.py tests/unit/plugins/modules/test_jenkins_build_info.py tests/unit/plugins/modules/test_jenkins_node.py tests/unit/plugins/modules/test_jenkins_plugin.py tests/unit/plugins/modules/test_keycloak_authentication.py tests/unit/plugins/modules/test_keycloak_authentication_required_actions.py tests/unit/plugins/modules/test_keycloak_client.py tests/unit/plugins/modules/test_keycloak_client_rolemapping.py tests/unit/plugins/modules/test_keycloak_clientscope.py tests/unit/plugins/modules/test_keycloak_component.py tests/unit/plugins/modules/test_keycloak_identity_provider.py tests/unit/plugins/modules/test_keycloak_realm.py tests/unit/plugins/modules/test_keycloak_realm_info.py tests/unit/plugins/modules/test_keycloak_realm_keys.py tests/unit/plugins/modules/test_keycloak_realm_keys_metadata_info.py tests/unit/plugins/modules/test_keycloak_role.py tests/unit/plugins/modules/test_keycloak_user.py tests/unit/plugins/modules/test_keycloak_user_federation.py tests/unit/plugins/modules/test_keycloak_userprofile.py tests/unit/plugins/modules/test_krb_ticket.py tests/unit/plugins/modules/test_linode.py tests/unit/plugins/modules/test_linode_v4.py tests/unit/plugins/modules/test_lvg_rename.py tests/unit/plugins/modules/test_lxca_cmms.py tests/unit/plugins/modules/test_lxca_nodes.py tests/unit/plugins/modules/test_macports.py tests/unit/plugins/modules/test_maven_artifact.py tests/unit/plugins/modules/test_modprobe.py tests/unit/plugins/modules/test_monit.py tests/unit/plugins/modules/test_nmcli.py tests/unit/plugins/modules/test_nomad_token.py tests/unit/plugins/modules/test_npm.py tests/unit/plugins/modules/test_ocapi_command.py tests/unit/plugins/modules/test_ocapi_info.py tests/unit/plugins/modules/test_one_vm.py tests/unit/plugins/modules/test_oneview_datacenter_info.py tests/unit/plugins/modules/test_oneview_enclosure_info.py tests/unit/plugins/modules/test_oneview_ethernet_network.py tests/unit/plugins/modules/test_oneview_ethernet_network_info.py tests/unit/plugins/modules/test_oneview_fc_network.py tests/unit/plugins/modules/test_oneview_fc_network_info.py tests/unit/plugins/modules/test_oneview_fcoe_network.py tests/unit/plugins/modules/test_oneview_fcoe_network_info.py tests/unit/plugins/modules/test_oneview_logical_interconnect_group.py tests/unit/plugins/modules/test_oneview_logical_interconnect_group_info.py tests/unit/plugins/modules/test_oneview_network_set.py tests/unit/plugins/modules/test_oneview_network_set_info.py tests/unit/plugins/modules/test_oneview_san_manager.py tests/unit/plugins/modules/test_oneview_san_manager_info.py tests/unit/plugins/modules/test_opkg.py tests/unit/plugins/modules/test_pacman.py tests/unit/plugins/modules/test_pacman_key.py tests/unit/plugins/modules/test_pagerduty.py tests/unit/plugins/modules/test_pagerduty_alert.py tests/unit/plugins/modules/test_pagerduty_change.py tests/unit/plugins/modules/test_pamd.py tests/unit/plugins/modules/test_parted.py tests/unit/plugins/modules/test_pkgin.py tests/unit/plugins/modules/test_pmem.py tests/unit/plugins/modules/test_pritunl_org.py tests/unit/plugins/modules/test_pritunl_org_info.py tests/unit/plugins/modules/test_pritunl_user.py tests/unit/plugins/modules/test_pritunl_user_info.py tests/unit/plugins/modules/test_proxmox_backup.py tests/unit/plugins/modules/test_proxmox_backup_info.py tests/unit/plugins/modules/test_proxmox_kvm.py tests/unit/plugins/modules/test_proxmox_snap.py tests/unit/plugins/modules/test_proxmox_storage_contents_info.py tests/unit/plugins/modules/test_proxmox_tasks_info.py tests/unit/plugins/modules/test_proxmox_template.py tests/unit/plugins/modules/test_proxmox_vm_info.py tests/unit/plugins/modules/test_puppet.py tests/unit/plugins/modules/test_redhat_subscription.py tests/unit/plugins/modules/test_redis_data.py tests/unit/plugins/modules/test_redis_data_incr.py tests/unit/plugins/modules/test_redis_data_info.py tests/unit/plugins/modules/test_redis_info.py tests/unit/plugins/modules/test_rhsm_release.py tests/unit/plugins/modules/test_rhsm_repository.py tests/unit/plugins/modules/test_rpm_ostree_pkg.py tests/unit/plugins/modules/test_scaleway_compute_private_network.py tests/unit/plugins/modules/test_scaleway_private_network.py tests/unit/plugins/modules/test_simpleinit_msb.py tests/unit/plugins/modules/test_slack.py tests/unit/plugins/modules/test_snap.py tests/unit/plugins/modules/test_solaris_zone.py tests/unit/plugins/modules/test_ss_3par_cpg.py tests/unit/plugins/modules/test_statsd.py tests/unit/plugins/modules/test_sysupgrade.py tests/unit/plugins/modules/test_terraform.py tests/unit/plugins/modules/test_ufw.py tests/unit/plugins/modules/test_usb_facts.py tests/unit/plugins/modules/test_wdc_redfish_command.py tests/unit/plugins/modules/test_wdc_redfish_info.py tests/unit/plugins/modules/test_xcc_redfish_command.py tests/unit/plugins/modules/test_xenserver_guest_info.py tests/unit/plugins/modules/test_xenserver_guest_powerstate.py tests/unit/plugins/modules/test_xfconf.py tests/unit/plugins/modules/test_xfconf_info.py" returned exit status 1. 1391s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/hrobot tests/unit/plugins/modules/test_boot.py tests/unit/plugins/modules/test_failover_ip.py tests/unit/plugins/modules/test_failover_ip_info.py tests/unit/plugins/modules/test_firewall.py tests/unit/plugins/modules/test_firewall_info.py tests/unit/plugins/modules/test_reset.py tests/unit/plugins/modules/test_reverse_dns.py tests/unit/plugins/modules/test_server.py tests/unit/plugins/modules/test_server_info.py tests/unit/plugins/modules/test_ssh_key.py tests/unit/plugins/modules/test_ssh_key_info.py tests/unit/plugins/modules/test_storagebox.py tests/unit/plugins/modules/test_storagebox_info.py tests/unit/plugins/modules/test_storagebox_set_password.py tests/unit/plugins/modules/test_storagebox_snapshot_plan.py tests/unit/plugins/modules/test_storagebox_snapshot_plan_info.py tests/unit/plugins/modules/test_v_switch.py" returned exit status 1. 1391s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/library_inventory_filtering_v1/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/library_inventory_filtering_v1 --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/community/library_inventory_filtering_v1 tests/unit/plugins/plugin_utils/test_inventory_filter.py" returned exit status 1. 1391s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/infoblox/nios_modules/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/infoblox/nios_modules --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/infoblox/nios_modules tests/unit/plugins/modules/test_extensible_attribute.py tests/unit/plugins/modules/test_nios_a_record.py tests/unit/plugins/modules/test_nios_aaaa_record.py tests/unit/plugins/modules/test_nios_cname_record.py tests/unit/plugins/modules/test_nios_dns_view.py tests/unit/plugins/modules/test_nios_dtc_monitor_http.py tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py tests/unit/plugins/modules/test_nios_dtc_topology.py tests/unit/plugins/modules/test_nios_fixed_address.py tests/unit/plugins/modules/test_nios_host_record.py tests/unit/plugins/modules/test_nios_member.py tests/unit/plugins/modules/test_nios_module.py tests/unit/plugins/modules/test_nios_mx_record.py tests/unit/plugins/modules/test_nios_naptr_record.py tests/unit/plugins/modules/test_nios_network.py tests/unit/plugins/modules/test_nios_network_view.py tests/unit/plugins/modules/test_nios_nsgroup.py tests/unit/plugins/modules/test_nios_ptr_record.py tests/unit/plugins/modules/test_nios_srv_record.py tests/unit/plugins/modules/test_nios_zone.py" returned exit status 1. 1391s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/junipernetworks/junos/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/junipernetworks/junos --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/junipernetworks/junos tests/unit/modules/network/junos/test_junos_bgp_address_family.py tests/unit/modules/network/junos/test_junos_bgp_global.py tests/unit/modules/network/junos/test_junos_command.py tests/unit/modules/network/junos/test_junos_config.py tests/unit/modules/network/junos/test_junos_facts.py tests/unit/modules/network/junos/test_junos_hostname.py tests/unit/modules/network/junos/test_junos_interfaces.py tests/unit/modules/network/junos/test_junos_l2_interfaces.py tests/unit/modules/network/junos/test_junos_l3_interfaces.py tests/unit/modules/network/junos/test_junos_logging_global.py tests/unit/modules/network/junos/test_junos_netconf.py tests/unit/modules/network/junos/test_junos_ntp_global.py tests/unit/modules/network/junos/test_junos_ospf_interfaces.py tests/unit/modules/network/junos/test_junos_ospfv2.py tests/unit/modules/network/junos/test_junos_ospfv3.py tests/unit/modules/network/junos/test_junos_package.py tests/unit/modules/network/junos/test_junos_ping.py tests/unit/modules/network/junos/test_junos_prefix_lists.py tests/unit/modules/network/junos/test_junos_routing_instances.py tests/unit/modules/network/junos/test_junos_routing_options.py tests/unit/modules/network/junos/test_junos_rpc.py tests/unit/modules/network/junos/test_junos_scp.py tests/unit/modules/network/junos/test_junos_security_policies.py tests/unit/modules/network/junos/test_junos_security_policies_global.py tests/unit/modules/network/junos/test_junos_security_zones.py tests/unit/modules/network/junos/test_junos_snmp_server.py tests/unit/modules/network/junos/test_junos_vlans.py tests/unit/plugins/terminal/test_junos.py" returned exit status 1. 1391s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp_eseries/santricity tests/unit/modules/test_na_santricity_alerts.py tests/unit/modules/test_na_santricity_alerts_syslog.py tests/unit/modules/test_na_santricity_asup.py tests/unit/modules/test_na_santricity_auditlog.py tests/unit/modules/test_na_santricity_auth.py tests/unit/modules/test_na_santricity_client_certificate.py tests/unit/modules/test_na_santricity_discover.py tests/unit/modules/test_na_santricity_drive_firmware.py tests/unit/modules/test_na_santricity_facts.py tests/unit/modules/test_na_santricity_firmware.py tests/unit/modules/test_na_santricity_global.py tests/unit/modules/test_na_santricity_host.py tests/unit/modules/test_na_santricity_hostgroup.py tests/unit/modules/test_na_santricity_ib_iser_interface.py tests/unit/modules/test_na_santricity_iscsi_interface.py tests/unit/modules/test_na_santricity_iscsi_target.py tests/unit/modules/test_na_santricity_ldap.py tests/unit/modules/test_na_santricity_lun_mapping.py tests/unit/modules/test_na_santricity_mgmt_interface.py tests/unit/modules/test_na_santricity_nvme_interface.py tests/unit/modules/test_na_santricity_proxy_drive_firmware_upload.py tests/unit/modules/test_na_santricity_proxy_firmware_upload.py tests/unit/modules/test_na_santricity_proxy_systems.py tests/unit/modules/test_na_santricity_storagepool.py tests/unit/modules/test_na_santricity_syslog.py tests/unit/modules/test_na_santricity_volume.py" returned exit status 1. 1391s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp/ontap/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp/ontap --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/netapp/ontap tests/unit/plugins/modules/test_na_ontap_active_directory.py tests/unit/plugins/modules/test_na_ontap_active_directory_domain_controllers.py tests/unit/plugins/modules/test_na_ontap_aggregate.py tests/unit/plugins/modules/test_na_ontap_aggregate_rest.py tests/unit/plugins/modules/test_na_ontap_autosupport.py tests/unit/plugins/modules/test_na_ontap_autosupport_invoke.py tests/unit/plugins/modules/test_na_ontap_bgp_config_rest.py tests/unit/plugins/modules/test_na_ontap_bgp_peer_group.py tests/unit/plugins/modules/test_na_ontap_broadcast_domain.py tests/unit/plugins/modules/test_na_ontap_cg_snapshot.py tests/unit/plugins/modules/test_na_ontap_cg_snapshot_rest.py tests/unit/plugins/modules/test_na_ontap_cifs.py tests/unit/plugins/modules/test_na_ontap_cifs_acl.py tests/unit/plugins/modules/test_na_ontap_cifs_local_group.py tests/unit/plugins/modules/test_na_ontap_cifs_local_group_member.py tests/unit/plugins/modules/test_na_ontap_cifs_local_user.py tests/unit/plugins/modules/test_na_ontap_cifs_local_user_modify.py tests/unit/plugins/modules/test_na_ontap_cifs_local_user_set_password.py tests/unit/plugins/modules/test_na_ontap_cifs_local_user_set_password_rest.py tests/unit/plugins/modules/test_na_ontap_cifs_privileges_rest.py tests/unit/plugins/modules/test_na_ontap_cifs_server.py tests/unit/plugins/modules/test_na_ontap_cifs_unix_symlink_mapping_rest.py tests/unit/plugins/modules/test_na_ontap_cli_timeout_rest.py tests/unit/plugins/modules/test_na_ontap_cluster.py tests/unit/plugins/modules/test_na_ontap_cluster_ha.py tests/unit/plugins/modules/test_na_ontap_cluster_peer.py tests/unit/plugins/modules/test_na_ontap_command.py tests/unit/plugins/modules/test_na_ontap_debug.py tests/unit/plugins/modules/test_na_ontap_disk_options.py tests/unit/plugins/modules/test_na_ontap_disks.py tests/unit/plugins/modules/test_na_ontap_dns.py tests/unit/plugins/modules/test_na_ontap_domain_tunnel.py tests/unit/plugins/modules/test_na_ontap_efficiency_policy.py tests/unit/plugins/modules/test_na_ontap_ems_config_rest.py tests/unit/plugins/modules/test_na_ontap_ems_destination.py tests/unit/plugins/modules/test_na_ontap_ems_filter.py tests/unit/plugins/modules/test_na_ontap_export_policy.py tests/unit/plugins/modules/test_na_ontap_export_policy_rule.py tests/unit/plugins/modules/test_na_ontap_export_policy_rule_rest.py tests/unit/plugins/modules/test_na_ontap_fcp_rest.py tests/unit/plugins/modules/test_na_ontap_fdsd.py tests/unit/plugins/modules/test_na_ontap_fdsp.py tests/unit/plugins/modules/test_na_ontap_fdss.py tests/unit/plugins/modules/test_na_ontap_file_directory_policy.py tests/unit/plugins/modules/test_na_ontap_file_security_permissions.py tests/unit/plugins/modules/test_na_ontap_file_security_permissions_acl.py tests/unit/plugins/modules/test_na_ontap_firewall_policy.py tests/unit/plugins/modules/test_na_ontap_firmware_upgrade.py tests/unit/plugins/modules/test_na_ontap_flexcache.py tests/unit/plugins/modules/test_na_ontap_fpolicy_event.py tests/unit/plugins/modules/test_na_ontap_fpolicy_ext_engine.py tests/unit/plugins/modules/test_na_ontap_fpolicy_policy.py tests/unit/plugins/modules/test_na_ontap_fpolicy_scope.py tests/unit/plugins/modules/test_na_ontap_fpolicy_status.py tests/unit/plugins/modules/test_na_ontap_igroup.py tests/unit/plugins/modules/test_na_ontap_igroup_initiator.py tests/unit/plugins/modules/test_na_ontap_info.py tests/unit/plugins/modules/test_na_ontap_interface.py tests/unit/plugins/modules/test_na_ontap_ipspace.py tests/unit/plugins/modules/test_na_ontap_iscsi.py tests/unit/plugins/modules/test_na_ontap_iscsi_security.py tests/unit/plugins/modules/test_na_ontap_job_schedule.py tests/unit/plugins/modules/test_na_ontap_kerberos_interface.py tests/unit/plugins/modules/test_na_ontap_kerberos_realm.py tests/unit/plugins/modules/test_na_ontap_ldap_client.py tests/unit/plugins/modules/test_na_ontap_license.py tests/unit/plugins/modules/test_na_ontap_license_nlf.py tests/unit/plugins/modules/test_na_ontap_local_hosts.py tests/unit/plugins/modules/test_na_ontap_log_forward.py tests/unit/plugins/modules/test_na_ontap_login_messages.py tests/unit/plugins/modules/test_na_ontap_lun.py tests/unit/plugins/modules/test_na_ontap_lun_app_rest.py tests/unit/plugins/modules/test_na_ontap_lun_copy.py tests/unit/plugins/modules/test_na_ontap_lun_map.py tests/unit/plugins/modules/test_na_ontap_lun_map_reporting_nodes.py tests/unit/plugins/modules/test_na_ontap_lun_map_rest.py tests/unit/plugins/modules/test_na_ontap_lun_rest.py tests/unit/plugins/modules/test_na_ontap_mcc_mediator.py tests/unit/plugins/modules/test_na_ontap_metrocluster.py tests/unit/plugins/modules/test_na_ontap_metrocluster_dr_group.py tests/unit/plugins/modules/test_na_ontap_motd.py tests/unit/plugins/modules/test_na_ontap_name_mappings.py tests/unit/plugins/modules/test_na_ontap_name_service_switch.py tests/unit/plugins/modules/test_na_ontap_ndmp.py tests/unit/plugins/modules/test_na_ontap_net_ifgrp.py tests/unit/plugins/modules/test_na_ontap_net_port.py tests/unit/plugins/modules/test_na_ontap_net_routes.py tests/unit/plugins/modules/test_na_ontap_net_subnet.py tests/unit/plugins/modules/test_na_ontap_net_vlan.py tests/unit/plugins/modules/test_na_ontap_nfs.py tests/unit/plugins/modules/test_na_ontap_nfs_rest.py tests/unit/plugins/modules/test_na_ontap_node.py tests/unit/plugins/modules/test_na_ontap_ntfs_dacl.py tests/unit/plugins/modules/test_na_ontap_ntfs_sd.py tests/unit/plugins/modules/test_na_ontap_ntp.py tests/unit/plugins/modules/test_na_ontap_ntp_key.py tests/unit/plugins/modules/test_na_ontap_nvme.py tests/unit/plugins/modules/test_na_ontap_nvme_namespace.py tests/unit/plugins/modules/test_na_ontap_nvme_namespace_rest.py tests/unit/plugins/modules/test_na_ontap_nvme_rest.py tests/unit/plugins/modules/test_na_ontap_nvme_subsystem.py tests/unit/plugins/modules/test_na_ontap_nvme_subsystem_rest.py tests/unit/plugins/modules/test_na_ontap_object_store.py tests/unit/plugins/modules/test_na_ontap_partitions.py tests/unit/plugins/modules/test_na_ontap_ports.py tests/unit/plugins/modules/test_na_ontap_portset.py tests/unit/plugins/modules/test_na_ontap_publickey.py tests/unit/plugins/modules/test_na_ontap_qos_adaptive_policy_group.py tests/unit/plugins/modules/test_na_ontap_qos_policy_group.py tests/unit/plugins/modules/test_na_ontap_qtree.py tests/unit/plugins/modules/test_na_ontap_quota_policy.py tests/unit/plugins/modules/test_na_ontap_quotas.py tests/unit/plugins/modules/test_na_ontap_rest_cli.py tests/unit/plugins/modules/test_na_ontap_rest_info.py tests/unit/plugins/modules/test_na_ontap_restit.py tests/unit/plugins/modules/test_na_ontap_s3_buckets.py tests/unit/plugins/modules/test_na_ontap_s3_groups.py tests/unit/plugins/modules/test_na_ontap_s3_policies.py tests/unit/plugins/modules/test_na_ontap_s3_services.py tests/unit/plugins/modules/test_na_ontap_s3_users.py tests/unit/plugins/modules/test_na_ontap_security_certificates.py tests/unit/plugins/modules/test_na_ontap_security_config.py tests/unit/plugins/modules/test_na_ontap_security_ipsec_ca_certificate.py tests/unit/plugins/modules/test_na_ontap_security_ipsec_config.py tests/unit/plugins/modules/test_na_ontap_security_ipsec_policy.py tests/unit/plugins/modules/test_na_ontap_security_key_manager.py tests/unit/plugins/modules/test_na_ontap_security_ssh.py tests/unit/plugins/modules/test_na_ontap_service_policy.py tests/unit/plugins/modules/test_na_ontap_service_processor_network.py tests/unit/plugins/modules/test_na_ontap_snaplock_clock.py tests/unit/plugins/modules/test_na_ontap_snapmirror.py tests/unit/plugins/modules/test_na_ontap_snapmirror_policy.py tests/unit/plugins/modules/test_na_ontap_snapshot.py tests/unit/plugins/modules/test_na_ontap_snapshot_policy.py tests/unit/plugins/modules/test_na_ontap_snapshot_policy_rest.py tests/unit/plugins/modules/test_na_ontap_snmp.py tests/unit/plugins/modules/test_na_ontap_snmp_config_rest.py tests/unit/plugins/modules/test_na_ontap_snmp_traphosts.py tests/unit/plugins/modules/test_na_ontap_software_update.py tests/unit/plugins/modules/test_na_ontap_storage_auto_giveback.py tests/unit/plugins/modules/test_na_ontap_storage_failover.py tests/unit/plugins/modules/test_na_ontap_svm.py tests/unit/plugins/modules/test_na_ontap_template.py tests/unit/plugins/modules/test_na_ontap_ucadapter.py tests/unit/plugins/modules/test_na_ontap_unix_group.py tests/unit/plugins/modules/test_na_ontap_unix_user.py tests/unit/plugins/modules/test_na_ontap_user.py tests/unit/plugins/modules/test_na_ontap_user_dicts.py tests/unit/plugins/modules/test_na_ontap_user_role.py tests/unit/plugins/modules/test_na_ontap_user_role_rest.py tests/unit/plugins/modules/test_na_ontap_volume.py tests/unit/plugins/modules/test_na_ontap_volume_autosize.py tests/unit/plugins/modules/test_na_ontap_volume_clone.py tests/unit/plugins/modules/test_na_ontap_volume_clone_rest.py tests/unit/plugins/modules/test_na_ontap_volume_efficiency.py tests/unit/plugins/modules/test_na_ontap_volume_rest.py tests/unit/plugins/modules/test_na_ontap_volume_snaplock.py tests/unit/plugins/modules/test_na_ontap_vscan.py tests/unit/plugins/modules/test_na_ontap_vscan_on_access_policy.py tests/unit/plugins/modules/test_na_ontap_vscan_on_demand_task.py tests/unit/plugins/modules/test_na_ontap_vscan_on_demand_task_rest.py tests/unit/plugins/modules/test_na_ontap_vscan_scanner_pool.py tests/unit/plugins/modules/test_na_ontap_vscan_scanner_pool_rest.py tests/unit/plugins/modules/test_na_ontap_vserver_audit.py tests/unit/plugins/modules/test_na_ontap_vserver_cifs_security.py tests/unit/plugins/modules/test_na_ontap_vserver_peer.py tests/unit/plugins/modules/test_na_ontap_vserver_peer_permissions.py tests/unit/plugins/modules/test_na_ontap_wait_for_condition.py tests/unit/plugins/modules/test_na_ontap_wwpn_alias.py tests/unit/plugins/modules/test_na_ontap_zapit.py tests/unit/plugins/modules/test_ontap_fdspt.py" returned exit status 1. 1391s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ngine_io/cloudstack/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ngine_io/cloudstack --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/ngine_io/cloudstack tests/unit/modules/test_cs_traffic_type.py" returned exit status 1. 1391s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/sensu/sensu_go/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/sensu/sensu_go --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/sensu/sensu_go tests/unit/plugins/modules/test_ad_auth_provider.py tests/unit/plugins/modules/test_asset.py tests/unit/plugins/modules/test_asset_info.py tests/unit/plugins/modules/test_auth_provider_info.py tests/unit/plugins/modules/test_bonsai_asset.py tests/unit/plugins/modules/test_check.py tests/unit/plugins/modules/test_check_info.py tests/unit/plugins/modules/test_cluster.py tests/unit/plugins/modules/test_cluster_info.py tests/unit/plugins/modules/test_cluster_role.py tests/unit/plugins/modules/test_cluster_role_binding.py tests/unit/plugins/modules/test_cluster_role_binding_info.py tests/unit/plugins/modules/test_cluster_role_info.py tests/unit/plugins/modules/test_datastore.py tests/unit/plugins/modules/test_datastore_info.py tests/unit/plugins/modules/test_entity.py tests/unit/plugins/modules/test_entity_info.py tests/unit/plugins/modules/test_etcd_replicator.py tests/unit/plugins/modules/test_etcd_replicator_info.py tests/unit/plugins/modules/test_event.py tests/unit/plugins/modules/test_event_info.py tests/unit/plugins/modules/test_filter.py tests/unit/plugins/modules/test_filter_info.py tests/unit/plugins/modules/test_handler_set.py tests/unit/plugins/modules/test_hook.py tests/unit/plugins/modules/test_hook_info.py tests/unit/plugins/modules/test_ldap_auth_provider.py tests/unit/plugins/modules/test_mutator.py tests/unit/plugins/modules/test_mutator_info.py tests/unit/plugins/modules/test_namespace.py tests/unit/plugins/modules/test_namespace_info.py tests/unit/plugins/modules/test_oidc_auth_provider.py tests/unit/plugins/modules/test_pipe_handler.py tests/unit/plugins/modules/test_pipe_handler_info.py tests/unit/plugins/modules/test_pipeline.py tests/unit/plugins/modules/test_pipeline_info.py tests/unit/plugins/modules/test_role.py tests/unit/plugins/modules/test_role_binding.py tests/unit/plugins/modules/test_role_binding_info.py tests/unit/plugins/modules/test_role_info.py tests/unit/plugins/modules/test_secret.py tests/unit/plugins/modules/test_secret_info.py tests/unit/plugins/modules/test_secrets_provider_env.py tests/unit/plugins/modules/test_secrets_provider_info.py tests/unit/plugins/modules/test_secrets_provider_vault.py tests/unit/plugins/modules/test_silence.py tests/unit/plugins/modules/test_silence_info.py tests/unit/plugins/modules/test_socket_handler.py tests/unit/plugins/modules/test_tessen.py tests/unit/plugins/modules/test_user.py tests/unit/plugins/modules/test_user_info.py" returned exit status 1. 1391s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/splunk/es/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/splunk/es --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/splunk/es tests/unit/plugins/action/test_es_adaptive_response_notable_events.py tests/unit/plugins/action/test_es_correlation_searches.py tests/unit/plugins/action/test_es_data_inputs_monitors.py tests/unit/plugins/action/test_es_data_inputs_network.py" returned exit status 1. 1391s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/vmware/vmware/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/vmware/vmware --confcutdir /tmp/autopkgtest.xgVBhN/build.Qr2/src/ansible_collections/vmware/vmware tests/unit/plugins/modules/test_appliance_info.py tests/unit/plugins/modules/test_cluster.py tests/unit/plugins/modules/test_cluster_info.py tests/unit/plugins/modules/test_cluster_vcls.py tests/unit/plugins/modules/test_content_library_item_info.py tests/unit/plugins/modules/test_esxi_maintenance_mode.py tests/unit/plugins/modules/test_guest_info.py tests/unit/plugins/modules/test_license_info.py tests/unit/plugins/modules/test_utils_module_pyvmomi_base.py tests/unit/plugins/modules/test_utils_module_rest_base.py tests/unit/plugins/modules/test_utils_pyvmomi_client.py tests/unit/plugins/modules/test_utils_rest_client.py tests/unit/plugins/modules/test_vm_list_group_by_clusters_info.py" returned exit status 1. 1395s autopkgtest [05:06:48]: @@@@@@@@@@@@@@@@@@@@ summary 1395s unit-tests-stable.py PASS 1395s unit-tests-flaky.py FLAKY non-zero exit status 1