0s autopkgtest [21:45:02]: starting date and time: 2025-05-03 21:45:02+0000 0s autopkgtest [21:45:02]: git checkout: 9986aa8c Merge branch 'skia/fix_network_interface' into 'ubuntu/production' 0s autopkgtest [21:45:02]: host juju-7f2275-prod-proposed-migration-environment-15; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.k2lolm29/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --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 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor builder-cpu2-ram4-disk20 --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-15@bos03-11.secgroup --name adt-questing-amd64-ansible-20250503-214502-juju-7f2275-prod-proposed-migration-environment-15-b3ee08dc-3783-4b96-a9f5-005736827d30 --image adt/ubuntu-questing-amd64-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-15 --net-id=net_prod-proposed-migration-amd64 -e TERM=linux --mirror=http://ftpmaster.internal/ubuntu/ 55s autopkgtest [21:45:57]: testbed dpkg architecture: amd64 55s autopkgtest [21:45:57]: testbed apt version: 3.0.0 56s autopkgtest [21:45:58]: @@@@@@@@@@@@@@@@@@@@ test bed setup 56s autopkgtest [21:45:58]: testbed release detected to be: None 57s autopkgtest [21:45:59]: updating testbed package index (apt update) 57s Get:1 http://ftpmaster.internal/ubuntu questing-proposed InRelease [110 kB] 57s Hit:2 http://ftpmaster.internal/ubuntu questing InRelease 57s Hit:3 http://ftpmaster.internal/ubuntu questing-updates InRelease 57s Hit:4 http://ftpmaster.internal/ubuntu questing-security InRelease 57s Get:5 http://ftpmaster.internal/ubuntu questing-proposed/multiverse Sources [33.7 kB] 57s Get:6 http://ftpmaster.internal/ubuntu questing-proposed/main Sources [149 kB] 57s Get:7 http://ftpmaster.internal/ubuntu questing-proposed/universe Sources [1430 kB] 58s Get:8 http://ftpmaster.internal/ubuntu questing-proposed/main i386 Packages [146 kB] 58s Get:9 http://ftpmaster.internal/ubuntu questing-proposed/main amd64 Packages [203 kB] 58s Get:10 http://ftpmaster.internal/ubuntu questing-proposed/universe i386 Packages [570 kB] 58s Get:11 http://ftpmaster.internal/ubuntu questing-proposed/universe amd64 Packages [1411 kB] 58s Get:12 http://ftpmaster.internal/ubuntu questing-proposed/multiverse amd64 Packages [48.6 kB] 58s Get:13 http://ftpmaster.internal/ubuntu questing-proposed/multiverse i386 Packages [23.1 kB] 58s Fetched 4124 kB in 1s (3769 kB/s) 59s Reading package lists... 59s autopkgtest [21:46:01]: upgrading testbed (apt dist-upgrade and autopurge) 60s Reading package lists... 60s Building dependency tree... 60s Reading state information... 60s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 60s Starting 2 pkgProblemResolver with broken count: 0 60s Done 61s Entering ResolveByKeep 61s 61s Calculating upgrade... 61s The following packages will be upgraded: 61s cloud-init cloud-init-base debianutils libmbim-glib4 libmbim-proxy 61s libnftnl11 libqmi-glib5 libqmi-proxy libsepol2 python3-lazr.restfulclient 61s sos 62s 11 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 62s Need to get 2693 kB of archives. 62s After this operation, 104 kB disk space will be freed. 62s Get:1 http://ftpmaster.internal/ubuntu questing/main amd64 debianutils amd64 5.22 [93.0 kB] 62s Get:2 http://ftpmaster.internal/ubuntu questing/main amd64 libsepol2 amd64 3.8.1-1 [327 kB] 62s Get:3 http://ftpmaster.internal/ubuntu questing/main amd64 libnftnl11 amd64 1.2.9-1 [69.1 kB] 62s Get:4 http://ftpmaster.internal/ubuntu questing/main amd64 cloud-init-base all 25.2~1g7a0265d3-0ubuntu1 [619 kB] 62s Get:5 http://ftpmaster.internal/ubuntu questing/main amd64 libmbim-proxy amd64 1.32.0-1 [6276 B] 62s Get:6 http://ftpmaster.internal/ubuntu questing/main amd64 libmbim-glib4 amd64 1.32.0-1 [233 kB] 62s Get:7 http://ftpmaster.internal/ubuntu questing/main amd64 libqmi-proxy amd64 1.36.0-1 [6220 B] 62s Get:8 http://ftpmaster.internal/ubuntu questing/main amd64 libqmi-glib5 amd64 1.36.0-1 [920 kB] 62s Get:9 http://ftpmaster.internal/ubuntu questing/main amd64 python3-lazr.restfulclient all 0.14.6-3 [51.0 kB] 62s Get:10 http://ftpmaster.internal/ubuntu questing/main amd64 sos all 4.9.1-1 [367 kB] 62s Get:11 http://ftpmaster.internal/ubuntu questing/main amd64 cloud-init all 25.2~1g7a0265d3-0ubuntu1 [2106 B] 62s Preconfiguring packages ... 62s Fetched 2693 kB in 1s (4426 kB/s) 63s (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 ... 80514 files and directories currently installed.) 63s Preparing to unpack .../debianutils_5.22_amd64.deb ... 63s Unpacking debianutils (5.22) over (5.21) ... 63s Setting up debianutils (5.22) ... 63s (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 ... 80514 files and directories currently installed.) 63s Preparing to unpack .../libsepol2_3.8.1-1_amd64.deb ... 63s Unpacking libsepol2:amd64 (3.8.1-1) over (3.7-1) ... 63s Setting up libsepol2:amd64 (3.8.1-1) ... 63s (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 ... 80514 files and directories currently installed.) 63s Preparing to unpack .../0-libnftnl11_1.2.9-1_amd64.deb ... 63s Unpacking libnftnl11:amd64 (1.2.9-1) over (1.2.8-1) ... 63s Preparing to unpack .../1-cloud-init-base_25.2~1g7a0265d3-0ubuntu1_all.deb ... 63s Unpacking cloud-init-base (25.2~1g7a0265d3-0ubuntu1) over (25.1.1-0ubuntu2) ... 63s Preparing to unpack .../2-libmbim-proxy_1.32.0-1_amd64.deb ... 63s Unpacking libmbim-proxy (1.32.0-1) over (1.31.2-0ubuntu4) ... 63s Preparing to unpack .../3-libmbim-glib4_1.32.0-1_amd64.deb ... 63s Unpacking libmbim-glib4:amd64 (1.32.0-1) over (1.31.2-0ubuntu4) ... 63s Preparing to unpack .../4-libqmi-proxy_1.36.0-1_amd64.deb ... 63s Unpacking libqmi-proxy (1.36.0-1) over (1.35.6-1) ... 63s Preparing to unpack .../5-libqmi-glib5_1.36.0-1_amd64.deb ... 63s Unpacking libqmi-glib5:amd64 (1.36.0-1) over (1.35.6-1) ... 64s Preparing to unpack .../6-python3-lazr.restfulclient_0.14.6-3_all.deb ... 64s Unpacking python3-lazr.restfulclient (0.14.6-3) over (0.14.6-2) ... 64s Preparing to unpack .../7-sos_4.9.1-1_all.deb ... 64s Unpacking sos (4.9.1-1) over (4.9.0-6) ... 64s Preparing to unpack .../8-cloud-init_25.2~1g7a0265d3-0ubuntu1_all.deb ... 64s Unpacking cloud-init (25.2~1g7a0265d3-0ubuntu1) over (25.1.1-0ubuntu2) ... 64s Setting up sos (4.9.1-1) ... 65s Setting up libnftnl11:amd64 (1.2.9-1) ... 65s Setting up cloud-init-base (25.2~1g7a0265d3-0ubuntu1) ... 66s Setting up python3-lazr.restfulclient (0.14.6-3) ... 66s Setting up libmbim-glib4:amd64 (1.32.0-1) ... 66s Setting up cloud-init (25.2~1g7a0265d3-0ubuntu1) ... 66s Setting up libmbim-proxy (1.32.0-1) ... 66s Setting up libqmi-glib5:amd64 (1.36.0-1) ... 66s Setting up libqmi-proxy (1.36.0-1) ... 66s Processing triggers for libc-bin (2.41-6ubuntu1) ... 66s Processing triggers for rsyslog (8.2412.0-2ubuntu2) ... 66s Processing triggers for man-db (2.13.0-1) ... 68s Reading package lists... 68s Building dependency tree... 68s Reading state information... 69s Starting pkgProblemResolver with broken count: 0 69s Starting 2 pkgProblemResolver with broken count: 0 69s Done 69s Solving dependencies... 69s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 69s autopkgtest [21:46:11]: rebooting testbed after setup commands that affected boot 92s autopkgtest [21:46:34]: testbed running kernel: Linux 6.14.0-15-generic #15-Ubuntu SMP PREEMPT_DYNAMIC Sun Apr 6 15:05:05 UTC 2025 95s autopkgtest [21:46:37]: @@@@@@@@@@@@@@@@@@@@ apt-source ansible 97s Get:1 http://ftpmaster.internal/ubuntu questing/universe ansible 11.2.0+dfsg-1 (dsc) [3353 B] 97s Get:2 http://ftpmaster.internal/ubuntu questing/universe ansible 11.2.0+dfsg-1 (tar) [26.7 MB] 97s Get:3 http://ftpmaster.internal/ubuntu questing/universe ansible 11.2.0+dfsg-1 (diff) [32.9 kB] 97s gpgv: Signature made Thu Feb 27 17:38:46 2025 UTC 97s gpgv: using RSA key D847C62510A9C2FF242CE02CD604A1C4823EE0F8 97s gpgv: Can't check signature: No public key 97s dpkg-source: warning: cannot verify inline signature for ./ansible_11.2.0+dfsg-1.dsc: no acceptable signature found 102s autopkgtest [21:46:44]: testing package ansible version 11.2.0+dfsg-1 103s autopkgtest [21:46:45]: build not needed 117s autopkgtest [21:46:59]: test unit-tests-stable.py: preparing testbed 117s Reading package lists... 117s Building dependency tree... 117s Reading state information... 118s Starting pkgProblemResolver with broken count: 0 118s Starting 2 pkgProblemResolver with broken count: 0 118s Done 118s The following NEW packages will be installed: 118s ansible ansible-core fontconfig-config fonts-dejavu-core fonts-dejavu-mono 118s gir1.2-secret-1 git git-man libcairo-gobject2 libcairo2 liberror-perl 118s libfontconfig1 libpixman-1-0 libsecret-1-0 libsecret-common libsodium23 118s libxcb-render0 libxcb-shm0 libxrender1 libxslt1.1 python3-adal 118s python3-aiohappyeyeballs python3-aiohttp python3-aiosignal 118s python3-async-timeout python3-avro python3-azure python3-azure-storage 118s python3-cachetools python3-cairo python3-click python3-colorama 118s python3-dnspython python3-execnet python3-flake8 python3-freezegun 118s python3-frozenlist python3-gi-cairo python3-gitlab python3-google-auth 118s python3-httmock python3-hvac python3-iniconfig python3-isodate 118s python3-joblib python3-kubernetes python3-lxml python3-marshmallow 118s python3-mccabe python3-mock python3-msal python3-msal-extensions 118s python3-msrest python3-msrestazure python3-multidict python3-nacl 118s python3-nltk python3-paramiko python3-pathspec python3-pluggy 118s python3-portalocker python3-proxmoxer python3-psutil python3-py 118s python3-pyasn1 python3-pyasn1-modules python3-pycodestyle python3-pydash 118s python3-pyflakes python3-pyhcl python3-pytest python3-pytest-forked 118s python3-pytest-mock python3-pytest-xdist python3-pyu2f python3-pyvmomi 118s python3-redis python3-regex python3-requests-oauthlib 118s python3-requests-toolbelt python3-resolvelib python3-responses python3-rsa 118s python3-ruamel.yaml python3-ruamel.yaml.clib python3-strictyaml 118s python3-textfsm python3-tqdm python3-websocket python3-xmltodict 118s python3-yarl yamllint 118s 0 upgraded, 92 newly installed, 0 to remove and 0 not upgraded. 118s Need to get 52.6 MB of archives. 118s After this operation, 889 MB of additional disk space will be used. 118s Get:1 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-resolvelib all 1.1.0-1 [25.8 kB] 118s Get:2 http://ftpmaster.internal/ubuntu questing/main amd64 libsodium23 amd64 1.0.18-1build3 [161 kB] 119s Get:3 http://ftpmaster.internal/ubuntu questing/main amd64 python3-nacl amd64 1.5.0-7 [61.0 kB] 119s Get:4 http://ftpmaster.internal/ubuntu questing/main amd64 python3-paramiko all 3.5.1-2ubuntu1 [147 kB] 119s Get:5 http://ftpmaster.internal/ubuntu questing/main amd64 python3-dnspython all 2.7.0-1ubuntu1 [167 kB] 119s Get:6 http://ftpmaster.internal/ubuntu questing/universe amd64 ansible-core all 2.18.1-4ubuntu1 [1273 kB] 119s Get:7 http://ftpmaster.internal/ubuntu questing/universe amd64 ansible all 11.2.0+dfsg-1 [18.1 MB] 119s Get:8 http://ftpmaster.internal/ubuntu questing/main amd64 fonts-dejavu-mono all 2.37-8 [502 kB] 119s Get:9 http://ftpmaster.internal/ubuntu questing/main amd64 fonts-dejavu-core all 2.37-8 [835 kB] 119s Get:10 http://ftpmaster.internal/ubuntu questing/main amd64 fontconfig-config amd64 2.15.0-2.2ubuntu1 [37.8 kB] 119s Get:11 http://ftpmaster.internal/ubuntu questing/main amd64 libsecret-common all 0.21.7-1 [5160 B] 119s Get:12 http://ftpmaster.internal/ubuntu questing/main amd64 libsecret-1-0 amd64 0.21.7-1 [118 kB] 119s Get:13 http://ftpmaster.internal/ubuntu questing/main amd64 gir1.2-secret-1 amd64 0.21.7-1 [9388 B] 119s Get:14 http://ftpmaster.internal/ubuntu questing/main amd64 liberror-perl all 0.17030-1 [23.5 kB] 119s Get:15 http://ftpmaster.internal/ubuntu questing/main amd64 git-man all 1:2.48.1-0ubuntu1 [1148 kB] 119s Get:16 http://ftpmaster.internal/ubuntu questing/main amd64 git amd64 1:2.48.1-0ubuntu1 [4759 kB] 120s Get:17 http://ftpmaster.internal/ubuntu questing/main amd64 libfontconfig1 amd64 2.15.0-2.2ubuntu1 [164 kB] 120s Get:18 http://ftpmaster.internal/ubuntu questing/main amd64 libpixman-1-0 amd64 0.44.0-3 [427 kB] 120s Get:19 http://ftpmaster.internal/ubuntu questing/main amd64 libxcb-render0 amd64 1.17.0-2 [16.2 kB] 120s Get:20 http://ftpmaster.internal/ubuntu questing/main amd64 libxcb-shm0 amd64 1.17.0-2 [5758 B] 120s Get:21 http://ftpmaster.internal/ubuntu questing/main amd64 libxrender1 amd64 1:0.9.10-1.1build1 [19.0 kB] 120s Get:22 http://ftpmaster.internal/ubuntu questing/main amd64 libcairo2 amd64 1.18.4-1 [662 kB] 120s Get:23 http://ftpmaster.internal/ubuntu questing/main amd64 libcairo-gobject2 amd64 1.18.4-1 [127 kB] 120s Get:24 http://ftpmaster.internal/ubuntu questing/main amd64 libxslt1.1 amd64 1.1.39-0exp1ubuntu4 [176 kB] 120s Get:25 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-adal all 1.2.7-5 [33.0 kB] 120s Get:26 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-aiohappyeyeballs all 2.6.1-1 [11.1 kB] 120s Get:27 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-multidict amd64 6.2.0-2 [35.6 kB] 120s Get:28 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-yarl amd64 1.13.1-1build2 [99.7 kB] 120s Get:29 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-async-timeout all 5.0.1-1 [6830 B] 120s Get:30 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-frozenlist amd64 1.5.0-1build2 [51.6 kB] 120s Get:31 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-aiosignal all 1.3.2-1 [5182 B] 120s Get:32 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-aiohttp amd64 3.10.11-1build1 [316 kB] 120s Get:33 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-avro all 1.12.0+dfsg-1 [75.3 kB] 120s Get:34 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-isodate all 0.7.0-1 [18.6 kB] 120s Get:35 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-requests-oauthlib all 1.3.1-1 [18.8 kB] 120s Get:36 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-msrest all 0.6.21-5 [48.7 kB] 120s Get:37 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-msrestazure all 0.6.4-4 [27.1 kB] 120s Get:38 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-azure-storage all 20250304+git-1 [300 kB] 120s Get:39 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-colorama all 0.4.6-4 [32.1 kB] 120s Get:40 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-marshmallow all 3.26.1-0.2 [47.5 kB] 120s Get:41 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-msal all 1.32.3-1 [101 kB] 120s Get:42 http://ftpmaster.internal/ubuntu questing/main amd64 python3-cairo amd64 1.27.0-2 [124 kB] 120s Get:43 http://ftpmaster.internal/ubuntu questing/main amd64 python3-gi-cairo amd64 3.50.0-4build1 [8232 B] 120s Get:44 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-portalocker all 2.2.1-1 [17.2 kB] 120s Get:45 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-msal-extensions all 1.3.1-1 [18.2 kB] 120s Get:46 http://ftpmaster.internal/ubuntu questing/main amd64 python3-click all 8.2.0+0.really.8.1.8-1 [80.0 kB] 120s Get:47 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-joblib all 1.4.2-3 [205 kB] 120s Get:48 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-regex amd64 0.1.20241106-1build1 [304 kB] 120s Get:49 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-tqdm all 4.67.1-3 [91.6 kB] 120s Get:50 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-nltk all 3.9.1-2 [1006 kB] 120s Get:51 http://ftpmaster.internal/ubuntu questing/main amd64 python3-psutil amd64 5.9.8-2build3 [196 kB] 120s Get:52 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pydash all 8.0.5-1 [79.2 kB] 120s Get:53 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-ruamel.yaml.clib amd64 0.2.12+ds-1build1 [164 kB] 120s Get:54 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-ruamel.yaml all 0.18.10+ds-1 [127 kB] 120s Get:55 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-strictyaml all 1.6.1-3 [89.1 kB] 120s Get:56 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-websocket all 1.8.0-2 [38.5 kB] 120s Get:57 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-azure all 20250304+git-1 [15.9 MB] 121s Get:58 http://ftpmaster.internal/ubuntu questing/main amd64 python3-cachetools all 5.3.3-1 [10.3 kB] 121s Get:59 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-execnet all 2.1.1-1 [33.4 kB] 121s Get:60 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-mccabe all 0.7.0-1 [8678 B] 121s Get:61 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pycodestyle all 2.12.1-2 [30.2 kB] 121s Get:62 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pyflakes all 3.2.0-3 [53.0 kB] 121s Get:63 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-flake8 all 7.1.1-3 [44.0 kB] 121s Get:64 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-freezegun all 1.5.1-1.2 [15.9 kB] 121s Get:65 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-requests-toolbelt all 1.0.0-4 [37.0 kB] 121s Get:66 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-gitlab all 1:4.9.0-1 [75.0 kB] 121s Get:67 http://ftpmaster.internal/ubuntu questing/main amd64 python3-pyasn1 all 0.6.1-1 [56.4 kB] 121s Get:68 http://ftpmaster.internal/ubuntu questing/main amd64 python3-pyasn1-modules all 0.4.1-2 [80.3 kB] 121s Get:69 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pyu2f all 0.1.5-4 [22.9 kB] 121s Get:70 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-responses all 0.25.6-1 [40.5 kB] 121s Get:71 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-rsa all 4.9-2 [28.2 kB] 121s Get:72 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-google-auth all 2.28.2-3 [91.0 kB] 121s Get:73 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-httmock all 1.4.0-5 [6544 B] 121s Get:74 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pyhcl all 0.4.4-6 [43.1 kB] 121s Get:75 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-hvac all 2.3.0-3 [88.1 kB] 121s Get:76 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-iniconfig all 1.1.1-2 [6024 B] 121s Get:77 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-kubernetes all 30.1.0-2 [385 kB] 121s Get:78 http://ftpmaster.internal/ubuntu questing/main amd64 python3-lxml amd64 5.3.2-1 [1407 kB] 121s Get:79 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pathspec all 0.12.1-1 [24.5 kB] 121s Get:80 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pluggy all 1.5.0-1 [21.0 kB] 121s Get:81 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-proxmoxer all 2.2.0-1 [16.2 kB] 121s Get:82 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-py all 1.11.0-4 [72.7 kB] 121s Get:83 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pytest all 8.3.5-1 [252 kB] 121s Get:84 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pytest-forked all 1.6.0-3 [7470 B] 121s Get:85 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pytest-mock all 3.14.0-2 [11.7 kB] 121s Get:86 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pytest-xdist all 3.6.1-1 [33.8 kB] 121s Get:87 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pyvmomi all 8.0.3.0.1-1 [532 kB] 121s Get:88 http://ftpmaster.internal/ubuntu questing-proposed/universe amd64 python3-redis all 5.2.1-1 [221 kB] 121s Get:89 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-textfsm all 2.1.0-1 [30.0 kB] 121s Get:90 http://ftpmaster.internal/ubuntu questing/main amd64 python3-xmltodict all 0.13.0-1 [13.4 kB] 121s Get:91 http://ftpmaster.internal/ubuntu questing/universe amd64 yamllint all 1.35.1-2 [43.6 kB] 121s Get:92 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-mock all 5.1.0-1 [64.1 kB] 122s Fetched 52.6 MB in 3s (17.4 MB/s) 122s Selecting previously unselected package python3-resolvelib. 122s (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 ... 80518 files and directories currently installed.) 122s Preparing to unpack .../00-python3-resolvelib_1.1.0-1_all.deb ... 122s Unpacking python3-resolvelib (1.1.0-1) ... 122s Selecting previously unselected package libsodium23:amd64. 122s Preparing to unpack .../01-libsodium23_1.0.18-1build3_amd64.deb ... 122s Unpacking libsodium23:amd64 (1.0.18-1build3) ... 122s Selecting previously unselected package python3-nacl. 122s Preparing to unpack .../02-python3-nacl_1.5.0-7_amd64.deb ... 122s Unpacking python3-nacl (1.5.0-7) ... 122s Selecting previously unselected package python3-paramiko. 122s Preparing to unpack .../03-python3-paramiko_3.5.1-2ubuntu1_all.deb ... 122s Unpacking python3-paramiko (3.5.1-2ubuntu1) ... 122s Selecting previously unselected package python3-dnspython. 122s Preparing to unpack .../04-python3-dnspython_2.7.0-1ubuntu1_all.deb ... 122s Unpacking python3-dnspython (2.7.0-1ubuntu1) ... 122s Selecting previously unselected package ansible-core. 122s Preparing to unpack .../05-ansible-core_2.18.1-4ubuntu1_all.deb ... 122s Unpacking ansible-core (2.18.1-4ubuntu1) ... 122s Selecting previously unselected package ansible. 122s Preparing to unpack .../06-ansible_11.2.0+dfsg-1_all.deb ... 122s Unpacking ansible (11.2.0+dfsg-1) ... 125s Selecting previously unselected package fonts-dejavu-mono. 125s Preparing to unpack .../07-fonts-dejavu-mono_2.37-8_all.deb ... 125s Unpacking fonts-dejavu-mono (2.37-8) ... 125s Selecting previously unselected package fonts-dejavu-core. 125s Preparing to unpack .../08-fonts-dejavu-core_2.37-8_all.deb ... 125s Unpacking fonts-dejavu-core (2.37-8) ... 125s Selecting previously unselected package fontconfig-config. 125s Preparing to unpack .../09-fontconfig-config_2.15.0-2.2ubuntu1_amd64.deb ... 125s Unpacking fontconfig-config (2.15.0-2.2ubuntu1) ... 125s Selecting previously unselected package libsecret-common. 126s Preparing to unpack .../10-libsecret-common_0.21.7-1_all.deb ... 126s Unpacking libsecret-common (0.21.7-1) ... 126s Selecting previously unselected package libsecret-1-0:amd64. 126s Preparing to unpack .../11-libsecret-1-0_0.21.7-1_amd64.deb ... 126s Unpacking libsecret-1-0:amd64 (0.21.7-1) ... 126s Selecting previously unselected package gir1.2-secret-1:amd64. 126s Preparing to unpack .../12-gir1.2-secret-1_0.21.7-1_amd64.deb ... 126s Unpacking gir1.2-secret-1:amd64 (0.21.7-1) ... 126s Selecting previously unselected package liberror-perl. 126s Preparing to unpack .../13-liberror-perl_0.17030-1_all.deb ... 126s Unpacking liberror-perl (0.17030-1) ... 126s Selecting previously unselected package git-man. 126s Preparing to unpack .../14-git-man_1%3a2.48.1-0ubuntu1_all.deb ... 126s Unpacking git-man (1:2.48.1-0ubuntu1) ... 126s Selecting previously unselected package git. 126s Preparing to unpack .../15-git_1%3a2.48.1-0ubuntu1_amd64.deb ... 126s Unpacking git (1:2.48.1-0ubuntu1) ... 126s Selecting previously unselected package libfontconfig1:amd64. 126s Preparing to unpack .../16-libfontconfig1_2.15.0-2.2ubuntu1_amd64.deb ... 126s Unpacking libfontconfig1:amd64 (2.15.0-2.2ubuntu1) ... 126s Selecting previously unselected package libpixman-1-0:amd64. 126s Preparing to unpack .../17-libpixman-1-0_0.44.0-3_amd64.deb ... 126s Unpacking libpixman-1-0:amd64 (0.44.0-3) ... 126s Selecting previously unselected package libxcb-render0:amd64. 126s Preparing to unpack .../18-libxcb-render0_1.17.0-2_amd64.deb ... 126s Unpacking libxcb-render0:amd64 (1.17.0-2) ... 126s Selecting previously unselected package libxcb-shm0:amd64. 126s Preparing to unpack .../19-libxcb-shm0_1.17.0-2_amd64.deb ... 126s Unpacking libxcb-shm0:amd64 (1.17.0-2) ... 126s Selecting previously unselected package libxrender1:amd64. 126s Preparing to unpack .../20-libxrender1_1%3a0.9.10-1.1build1_amd64.deb ... 126s Unpacking libxrender1:amd64 (1:0.9.10-1.1build1) ... 126s Selecting previously unselected package libcairo2:amd64. 126s Preparing to unpack .../21-libcairo2_1.18.4-1_amd64.deb ... 126s Unpacking libcairo2:amd64 (1.18.4-1) ... 126s Selecting previously unselected package libcairo-gobject2:amd64. 126s Preparing to unpack .../22-libcairo-gobject2_1.18.4-1_amd64.deb ... 126s Unpacking libcairo-gobject2:amd64 (1.18.4-1) ... 126s Selecting previously unselected package libxslt1.1:amd64. 126s Preparing to unpack .../23-libxslt1.1_1.1.39-0exp1ubuntu4_amd64.deb ... 126s Unpacking libxslt1.1:amd64 (1.1.39-0exp1ubuntu4) ... 126s Selecting previously unselected package python3-adal. 126s Preparing to unpack .../24-python3-adal_1.2.7-5_all.deb ... 126s Unpacking python3-adal (1.2.7-5) ... 126s Selecting previously unselected package python3-aiohappyeyeballs. 126s Preparing to unpack .../25-python3-aiohappyeyeballs_2.6.1-1_all.deb ... 126s Unpacking python3-aiohappyeyeballs (2.6.1-1) ... 126s Selecting previously unselected package python3-multidict. 126s Preparing to unpack .../26-python3-multidict_6.2.0-2_amd64.deb ... 126s Unpacking python3-multidict (6.2.0-2) ... 126s Selecting previously unselected package python3-yarl. 126s Preparing to unpack .../27-python3-yarl_1.13.1-1build2_amd64.deb ... 126s Unpacking python3-yarl (1.13.1-1build2) ... 126s Selecting previously unselected package python3-async-timeout. 126s Preparing to unpack .../28-python3-async-timeout_5.0.1-1_all.deb ... 126s Unpacking python3-async-timeout (5.0.1-1) ... 126s Selecting previously unselected package python3-frozenlist. 126s Preparing to unpack .../29-python3-frozenlist_1.5.0-1build2_amd64.deb ... 126s Unpacking python3-frozenlist (1.5.0-1build2) ... 126s Selecting previously unselected package python3-aiosignal. 126s Preparing to unpack .../30-python3-aiosignal_1.3.2-1_all.deb ... 126s Unpacking python3-aiosignal (1.3.2-1) ... 126s Selecting previously unselected package python3-aiohttp. 126s Preparing to unpack .../31-python3-aiohttp_3.10.11-1build1_amd64.deb ... 126s Unpacking python3-aiohttp (3.10.11-1build1) ... 126s Selecting previously unselected package python3-avro. 126s Preparing to unpack .../32-python3-avro_1.12.0+dfsg-1_all.deb ... 126s Unpacking python3-avro (1.12.0+dfsg-1) ... 126s Selecting previously unselected package python3-isodate. 126s Preparing to unpack .../33-python3-isodate_0.7.0-1_all.deb ... 126s Unpacking python3-isodate (0.7.0-1) ... 126s Selecting previously unselected package python3-requests-oauthlib. 127s Preparing to unpack .../34-python3-requests-oauthlib_1.3.1-1_all.deb ... 127s Unpacking python3-requests-oauthlib (1.3.1-1) ... 127s Selecting previously unselected package python3-msrest. 127s Preparing to unpack .../35-python3-msrest_0.6.21-5_all.deb ... 127s Unpacking python3-msrest (0.6.21-5) ... 127s Selecting previously unselected package python3-msrestazure. 127s Preparing to unpack .../36-python3-msrestazure_0.6.4-4_all.deb ... 127s Unpacking python3-msrestazure (0.6.4-4) ... 127s Selecting previously unselected package python3-azure-storage. 127s Preparing to unpack .../37-python3-azure-storage_20250304+git-1_all.deb ... 127s Unpacking python3-azure-storage (20250304+git-1) ... 127s Selecting previously unselected package python3-colorama. 127s Preparing to unpack .../38-python3-colorama_0.4.6-4_all.deb ... 127s Unpacking python3-colorama (0.4.6-4) ... 127s Selecting previously unselected package python3-marshmallow. 127s Preparing to unpack .../39-python3-marshmallow_3.26.1-0.2_all.deb ... 127s Unpacking python3-marshmallow (3.26.1-0.2) ... 127s Selecting previously unselected package python3-msal. 127s Preparing to unpack .../40-python3-msal_1.32.3-1_all.deb ... 127s Unpacking python3-msal (1.32.3-1) ... 127s Selecting previously unselected package python3-cairo. 127s Preparing to unpack .../41-python3-cairo_1.27.0-2_amd64.deb ... 127s Unpacking python3-cairo (1.27.0-2) ... 127s Selecting previously unselected package python3-gi-cairo. 127s Preparing to unpack .../42-python3-gi-cairo_3.50.0-4build1_amd64.deb ... 127s Unpacking python3-gi-cairo (3.50.0-4build1) ... 127s Selecting previously unselected package python3-portalocker. 127s Preparing to unpack .../43-python3-portalocker_2.2.1-1_all.deb ... 127s Unpacking python3-portalocker (2.2.1-1) ... 127s Selecting previously unselected package python3-msal-extensions. 127s Preparing to unpack .../44-python3-msal-extensions_1.3.1-1_all.deb ... 127s Unpacking python3-msal-extensions (1.3.1-1) ... 127s Selecting previously unselected package python3-click. 127s Preparing to unpack .../45-python3-click_8.2.0+0.really.8.1.8-1_all.deb ... 127s Unpacking python3-click (8.2.0+0.really.8.1.8-1) ... 127s Selecting previously unselected package python3-joblib. 127s Preparing to unpack .../46-python3-joblib_1.4.2-3_all.deb ... 127s Unpacking python3-joblib (1.4.2-3) ... 127s Selecting previously unselected package python3-regex. 127s Preparing to unpack .../47-python3-regex_0.1.20241106-1build1_amd64.deb ... 127s Unpacking python3-regex (0.1.20241106-1build1) ... 127s Selecting previously unselected package python3-tqdm. 127s Preparing to unpack .../48-python3-tqdm_4.67.1-3_all.deb ... 127s Unpacking python3-tqdm (4.67.1-3) ... 127s Selecting previously unselected package python3-nltk. 127s Preparing to unpack .../49-python3-nltk_3.9.1-2_all.deb ... 127s Unpacking python3-nltk (3.9.1-2) ... 127s Selecting previously unselected package python3-psutil. 127s Preparing to unpack .../50-python3-psutil_5.9.8-2build3_amd64.deb ... 127s Unpacking python3-psutil (5.9.8-2build3) ... 127s Selecting previously unselected package python3-pydash. 127s Preparing to unpack .../51-python3-pydash_8.0.5-1_all.deb ... 127s Unpacking python3-pydash (8.0.5-1) ... 127s Selecting previously unselected package python3-ruamel.yaml.clib. 127s Preparing to unpack .../52-python3-ruamel.yaml.clib_0.2.12+ds-1build1_amd64.deb ... 127s Unpacking python3-ruamel.yaml.clib (0.2.12+ds-1build1) ... 127s Selecting previously unselected package python3-ruamel.yaml. 127s Preparing to unpack .../53-python3-ruamel.yaml_0.18.10+ds-1_all.deb ... 127s Unpacking python3-ruamel.yaml (0.18.10+ds-1) ... 127s Selecting previously unselected package python3-strictyaml. 127s Preparing to unpack .../54-python3-strictyaml_1.6.1-3_all.deb ... 127s Unpacking python3-strictyaml (1.6.1-3) ... 127s Selecting previously unselected package python3-websocket. 127s Preparing to unpack .../55-python3-websocket_1.8.0-2_all.deb ... 127s Unpacking python3-websocket (1.8.0-2) ... 127s Selecting previously unselected package python3-azure. 127s Preparing to unpack .../56-python3-azure_20250304+git-1_all.deb ... 127s Unpacking python3-azure (20250304+git-1) ... 132s Selecting previously unselected package python3-cachetools. 132s Preparing to unpack .../57-python3-cachetools_5.3.3-1_all.deb ... 132s Unpacking python3-cachetools (5.3.3-1) ... 132s Selecting previously unselected package python3-execnet. 132s Preparing to unpack .../58-python3-execnet_2.1.1-1_all.deb ... 132s Unpacking python3-execnet (2.1.1-1) ... 132s Selecting previously unselected package python3-mccabe. 132s Preparing to unpack .../59-python3-mccabe_0.7.0-1_all.deb ... 132s Unpacking python3-mccabe (0.7.0-1) ... 132s Selecting previously unselected package python3-pycodestyle. 132s Preparing to unpack .../60-python3-pycodestyle_2.12.1-2_all.deb ... 132s Unpacking python3-pycodestyle (2.12.1-2) ... 132s Selecting previously unselected package python3-pyflakes. 132s Preparing to unpack .../61-python3-pyflakes_3.2.0-3_all.deb ... 132s Unpacking python3-pyflakes (3.2.0-3) ... 132s Selecting previously unselected package python3-flake8. 132s Preparing to unpack .../62-python3-flake8_7.1.1-3_all.deb ... 132s Unpacking python3-flake8 (7.1.1-3) ... 132s Selecting previously unselected package python3-freezegun. 132s Preparing to unpack .../63-python3-freezegun_1.5.1-1.2_all.deb ... 132s Unpacking python3-freezegun (1.5.1-1.2) ... 132s Selecting previously unselected package python3-requests-toolbelt. 132s Preparing to unpack .../64-python3-requests-toolbelt_1.0.0-4_all.deb ... 132s Unpacking python3-requests-toolbelt (1.0.0-4) ... 132s Selecting previously unselected package python3-gitlab. 132s Preparing to unpack .../65-python3-gitlab_1%3a4.9.0-1_all.deb ... 132s Unpacking python3-gitlab (1:4.9.0-1) ... 132s Selecting previously unselected package python3-pyasn1. 132s Preparing to unpack .../66-python3-pyasn1_0.6.1-1_all.deb ... 132s Unpacking python3-pyasn1 (0.6.1-1) ... 132s Selecting previously unselected package python3-pyasn1-modules. 132s Preparing to unpack .../67-python3-pyasn1-modules_0.4.1-2_all.deb ... 132s Unpacking python3-pyasn1-modules (0.4.1-2) ... 132s Selecting previously unselected package python3-pyu2f. 132s Preparing to unpack .../68-python3-pyu2f_0.1.5-4_all.deb ... 132s Unpacking python3-pyu2f (0.1.5-4) ... 132s Selecting previously unselected package python3-responses. 132s Preparing to unpack .../69-python3-responses_0.25.6-1_all.deb ... 132s Unpacking python3-responses (0.25.6-1) ... 132s Selecting previously unselected package python3-rsa. 132s Preparing to unpack .../70-python3-rsa_4.9-2_all.deb ... 132s Unpacking python3-rsa (4.9-2) ... 132s Selecting previously unselected package python3-google-auth. 132s Preparing to unpack .../71-python3-google-auth_2.28.2-3_all.deb ... 132s Unpacking python3-google-auth (2.28.2-3) ... 132s Selecting previously unselected package python3-httmock. 133s Preparing to unpack .../72-python3-httmock_1.4.0-5_all.deb ... 133s Unpacking python3-httmock (1.4.0-5) ... 133s Selecting previously unselected package python3-pyhcl. 133s Preparing to unpack .../73-python3-pyhcl_0.4.4-6_all.deb ... 133s Unpacking python3-pyhcl (0.4.4-6) ... 133s Selecting previously unselected package python3-hvac. 133s Preparing to unpack .../74-python3-hvac_2.3.0-3_all.deb ... 133s Unpacking python3-hvac (2.3.0-3) ... 133s Selecting previously unselected package python3-iniconfig. 133s Preparing to unpack .../75-python3-iniconfig_1.1.1-2_all.deb ... 133s Unpacking python3-iniconfig (1.1.1-2) ... 133s Selecting previously unselected package python3-kubernetes. 133s Preparing to unpack .../76-python3-kubernetes_30.1.0-2_all.deb ... 133s Unpacking python3-kubernetes (30.1.0-2) ... 133s Selecting previously unselected package python3-lxml:amd64. 133s Preparing to unpack .../77-python3-lxml_5.3.2-1_amd64.deb ... 133s Unpacking python3-lxml:amd64 (5.3.2-1) ... 133s Selecting previously unselected package python3-pathspec. 133s Preparing to unpack .../78-python3-pathspec_0.12.1-1_all.deb ... 133s Unpacking python3-pathspec (0.12.1-1) ... 133s Selecting previously unselected package python3-pluggy. 133s Preparing to unpack .../79-python3-pluggy_1.5.0-1_all.deb ... 133s Unpacking python3-pluggy (1.5.0-1) ... 133s Selecting previously unselected package python3-proxmoxer. 133s Preparing to unpack .../80-python3-proxmoxer_2.2.0-1_all.deb ... 133s Unpacking python3-proxmoxer (2.2.0-1) ... 133s Selecting previously unselected package python3-py. 133s Preparing to unpack .../81-python3-py_1.11.0-4_all.deb ... 133s Unpacking python3-py (1.11.0-4) ... 133s Selecting previously unselected package python3-pytest. 133s Preparing to unpack .../82-python3-pytest_8.3.5-1_all.deb ... 133s Unpacking python3-pytest (8.3.5-1) ... 133s Selecting previously unselected package python3-pytest-forked. 133s Preparing to unpack .../83-python3-pytest-forked_1.6.0-3_all.deb ... 133s Unpacking python3-pytest-forked (1.6.0-3) ... 133s Selecting previously unselected package python3-pytest-mock. 133s Preparing to unpack .../84-python3-pytest-mock_3.14.0-2_all.deb ... 133s Unpacking python3-pytest-mock (3.14.0-2) ... 133s Selecting previously unselected package python3-pytest-xdist. 133s Preparing to unpack .../85-python3-pytest-xdist_3.6.1-1_all.deb ... 133s Unpacking python3-pytest-xdist (3.6.1-1) ... 133s Selecting previously unselected package python3-pyvmomi. 133s Preparing to unpack .../86-python3-pyvmomi_8.0.3.0.1-1_all.deb ... 133s Unpacking python3-pyvmomi (8.0.3.0.1-1) ... 134s Selecting previously unselected package python3-redis. 134s Preparing to unpack .../87-python3-redis_5.2.1-1_all.deb ... 134s Unpacking python3-redis (5.2.1-1) ... 134s Selecting previously unselected package python3-textfsm. 134s Preparing to unpack .../88-python3-textfsm_2.1.0-1_all.deb ... 134s Unpacking python3-textfsm (2.1.0-1) ... 134s Selecting previously unselected package python3-xmltodict. 134s Preparing to unpack .../89-python3-xmltodict_0.13.0-1_all.deb ... 134s Unpacking python3-xmltodict (0.13.0-1) ... 134s Selecting previously unselected package yamllint. 134s Preparing to unpack .../90-yamllint_1.35.1-2_all.deb ... 134s Unpacking yamllint (1.35.1-2) ... 134s Selecting previously unselected package python3-mock. 134s Preparing to unpack .../91-python3-mock_5.1.0-1_all.deb ... 134s Unpacking python3-mock (5.1.0-1) ... 134s Setting up python3-iniconfig (1.1.1-2) ... 134s Setting up libpixman-1-0:amd64 (0.44.0-3) ... 134s Setting up libsodium23:amd64 (1.0.18-1build3) ... 134s Setting up python3-requests-toolbelt (1.0.0-4) ... 134s Setting up libxrender1:amd64 (1:0.9.10-1.1build1) ... 134s Setting up python3-py (1.11.0-4) ... 134s Setting up python3-joblib (1.4.2-3) ... 134s Setting up python3-cachetools (5.3.3-1) ... 135s Setting up python3-colorama (0.4.6-4) ... 135s Setting up libxcb-render0:amd64 (1.17.0-2) ... 135s Setting up python3-tqdm (4.67.1-3) ... 135s Setting up python3-pyflakes (3.2.0-3) ... 135s Setting up python3-ruamel.yaml.clib (0.2.12+ds-1build1) ... 135s Setting up python3-resolvelib (1.1.0-1) ... 135s Setting up python3-marshmallow (3.26.1-0.2) ... 135s Setting up python3-msal (1.32.3-1) ... 135s Setting up libxcb-shm0:amd64 (1.17.0-2) ... 135s Setting up python3-httmock (1.4.0-5) ... 136s Setting up python3-click (8.2.0+0.really.8.1.8-1) ... 136s Setting up python3-psutil (5.9.8-2build3) ... 136s Setting up python3-multidict (6.2.0-2) ... 136s Setting up python3-frozenlist (1.5.0-1build2) ... 136s Setting up python3-aiosignal (1.3.2-1) ... 136s Setting up python3-mock (5.1.0-1) ... 136s Setting up python3-async-timeout (5.0.1-1) ... 137s Setting up liberror-perl (0.17030-1) ... 137s Setting up python3-responses (0.25.6-1) ... 137s Setting up python3-pyvmomi (8.0.3.0.1-1) ... 137s Setting up python3-isodate (0.7.0-1) ... 137s Setting up python3-pycodestyle (2.12.1-2) ... 137s Setting up python3-xmltodict (0.13.0-1) ... 137s Setting up python3-pyu2f (0.1.5-4) ... 138s Setting up python3-avro (1.12.0+dfsg-1) ... 138s Setting up fonts-dejavu-mono (2.37-8) ... 138s Setting up fonts-dejavu-core (2.37-8) ... 138s Setting up python3-redis (5.2.1-1) ... 138s Setting up python3-aiohappyeyeballs (2.6.1-1) ... 138s Setting up python3-regex (0.1.20241106-1build1) ... 138s Setting up python3-pluggy (1.5.0-1) ... 138s Setting up python3-ruamel.yaml (0.18.10+ds-1) ... 139s Setting up python3-adal (1.2.7-5) ... 139s Setting up python3-dnspython (2.7.0-1ubuntu1) ... 139s Setting up python3-portalocker (2.2.1-1) ... 139s Setting up libxslt1.1:amd64 (1.1.39-0exp1ubuntu4) ... 139s Setting up python3-pyasn1 (0.6.1-1) ... 139s Setting up python3-proxmoxer (2.2.0-1) ... 140s Setting up git-man (1:2.48.1-0ubuntu1) ... 140s Setting up python3-textfsm (2.1.0-1) ... 140s Setting up python3-mccabe (0.7.0-1) ... 140s Setting up python3-execnet (2.1.1-1) ... 140s Setting up python3-pathspec (0.12.1-1) ... 140s Setting up python3-pydash (8.0.5-1) ... 140s Setting up python3-nltk (3.9.1-2) ... 141s Setting up python3-yarl (1.13.1-1build2) ... 141s Setting up python3-pyhcl (0.4.4-6) ... 141s Setting up python3-gitlab (1:4.9.0-1) ... 142s Setting up python3-websocket (1.8.0-2) ... 142s Setting up libsecret-common (0.21.7-1) ... 142s Setting up python3-freezegun (1.5.1-1.2) ... 142s Setting up python3-nacl (1.5.0-7) ... 142s Setting up python3-requests-oauthlib (1.3.1-1) ... 142s Setting up fontconfig-config (2.15.0-2.2ubuntu1) ... 142s Setting up python3-pytest (8.3.5-1) ... 143s Setting up python3-aiohttp (3.10.11-1build1) ... 143s Setting up ansible-core (2.18.1-4ubuntu1) ... 144s Setting up python3-flake8 (7.1.1-3) ... 144s Setting up python3-msrest (0.6.21-5) ... 144s Setting up python3-pytest-forked (1.6.0-3) ... 144s Setting up python3-strictyaml (1.6.1-3) ... 145s Setting up libsecret-1-0:amd64 (0.21.7-1) ... 145s Setting up yamllint (1.35.1-2) ... 145s Setting up gir1.2-secret-1:amd64 (0.21.7-1) ... 145s Setting up python3-pyasn1-modules (0.4.1-2) ... 145s Setting up python3-hvac (2.3.0-3) ... 145s Setting up git (1:2.48.1-0ubuntu1) ... 145s Setting up python3-pytest-mock (3.14.0-2) ... 145s Setting up python3-lxml:amd64 (5.3.2-1) ... 145s Setting up python3-rsa (4.9-2) ... 146s Setting up libfontconfig1:amd64 (2.15.0-2.2ubuntu1) ... 146s Setting up python3-msrestazure (0.6.4-4) ... 146s Setting up ansible (11.2.0+dfsg-1) ... 164s Setting up python3-paramiko (3.5.1-2ubuntu1) ... 164s Setting up python3-pytest-xdist (3.6.1-1) ... 164s Setting up libcairo2:amd64 (1.18.4-1) ... 164s Setting up python3-google-auth (2.28.2-3) ... 164s Setting up libcairo-gobject2:amd64 (1.18.4-1) ... 164s Setting up python3-cairo (1.27.0-2) ... 164s Setting up python3-kubernetes (30.1.0-2) ... 166s Setting up python3-gi-cairo (3.50.0-4build1) ... 166s Setting up python3-msal-extensions (1.3.1-1) ... 166s Setting up python3-azure-storage (20250304+git-1) ... 166s Setting up python3-azure (20250304+git-1) ... 178s /usr/lib/python3/dist-packages/azure/ai/ml/_vendor/azure_resources/aio/operations/_resources_operations.py:80: SyntaxWarning: invalid escape sequence '\ ' 178s Valid values include ``createdTime``\ , ``changedTime`` and ``provisioningState``. For example, 178s /usr/lib/python3/dist-packages/azure/ai/ml/_vendor/azure_resources/aio/operations/_resources_operations.py:405: SyntaxWarning: invalid escape sequence '\ ' 178s Valid values include ``createdTime``\ , ``changedTime`` and ``provisioningState``. For example, 179s /usr/lib/python3/dist-packages/azure/appconfiguration/_generated/models/_models.py:238: SyntaxWarning: invalid escape sequence '\ ' 179s """An error, available when the status is ``Failed``\ , describing why the operation 180s /usr/lib/python3/dist-packages/azure/batch/models/_models.py:9067: SyntaxWarning: invalid escape sequence '\ ' 180s """The source port ranges to match for the rule. Valid values are '\ *' (for all ports 0 - 65535), 180s /usr/lib/python3/dist-packages/azure/batch/models/_models.py:9235: SyntaxWarning: invalid escape sequence '\ ' 180s using brackets (for example abc[\ *] would match a file named abc*\ ). Note that both and / are 180s /usr/lib/python3/dist-packages/azure/communication/jobrouter/models/_models.py:2326: SyntaxWarning: invalid escape sequence '\ ' 180s payload to scoring rule. If not set, a job's labels (sent in the payload as ``job``\ ) and a 180s /usr/lib/python3/dist-packages/azure/communication/jobrouter/models/_models.py:2346: SyntaxWarning: invalid escape sequence '\ ' 180s If not set, a job's labels (sent in the payload as ``job``\ ) and a job's worker selectors 183s /usr/lib/python3/dist-packages/azure/mgmt/advisor/aio/operations/_recommendations_operations.py:190: SyntaxWarning: invalid escape sequence '\ ' 183s properties ['ResourceId', 'ResourceGroup', 'RecommendationTypeGuid', '\ `Category 183s /usr/lib/python3/dist-packages/azure/mgmt/advisor/operations/_recommendations_operations.py:303: SyntaxWarning: invalid escape sequence '\ ' 183s properties ['ResourceId', 'ResourceGroup', 'RecommendationTypeGuid', '\ `Category 183s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:3917: SyntaxWarning: invalid escape sequence '\ ' 183s Possible Values::code:`
`:code:`
` **Standard**\ :code:`
`:code:`
` 183s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10212: SyntaxWarning: invalid escape sequence '\ ' 183s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 183s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10255: SyntaxWarning: invalid escape sequence '\ ' 183s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 183s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10284: SyntaxWarning: invalid escape sequence '\ ' 183s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 183s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10320: SyntaxWarning: invalid escape sequence '\ ' 183s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 183s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10342: SyntaxWarning: invalid escape sequence '\ ' 183s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 183s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10375: SyntaxWarning: invalid escape sequence '\ ' 183s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 183s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10396: SyntaxWarning: invalid escape sequence '\ ' 183s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 183s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10429: SyntaxWarning: invalid escape sequence '\ ' 183s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 183s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:14746: SyntaxWarning: invalid escape sequence '\ ' 183s :ivar allowed_sources: Allowed sources, e.g. ``*.trusted.com``\ , ``trusted.com``\ , 183s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:14771: SyntaxWarning: invalid escape sequence '\ ' 183s :keyword allowed_sources: Allowed sources, e.g. ``*.trusted.com``\ , ``trusted.com``\ , 187s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models.py:1420: SyntaxWarning: invalid escape sequence '\ ' 187s :param id: Required. The ID for the input directory. The job can use AZ_BATCHAI\ *INPUT*\ 187s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models.py:2310: SyntaxWarning: invalid escape sequence '\ ' 187s :param id: Required. The ID of the output directory. The job can use AZ_BATCHAI\ *OUTPUT*\ 187s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models_py3.py:1547: SyntaxWarning: invalid escape sequence '\ ' 187s :param id: Required. The ID for the input directory. The job can use AZ_BATCHAI\ *INPUT*\ 187s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models_py3.py:2524: SyntaxWarning: invalid escape sequence '\ ' 187s :param id: Required. The ID of the output directory. The job can use AZ_BATCHAI\ *OUTPUT*\ 191s /usr/lib/python3/dist-packages/azure/mgmt/computefleet/models/_models.py:624: SyntaxWarning: invalid escape sequence '\ ' 191s and Screenshot to diagnose VM status. **NOTE**\ : If storageUri is being 191s /usr/lib/python3/dist-packages/azure/mgmt/computefleet/models/_models.py:3707: SyntaxWarning: invalid escape sequence '\W' 191s characters :code:`
` Has a digit :code:`
` Has a special character (Regex match [\W_]) 195s /usr/lib/python3/dist-packages/azure/mgmt/datamigration/models/_models_py3.py:16843: SyntaxWarning: invalid escape sequence '\S' 195s Protocol:MachineName\SQLServerInstanceName,PortNumber. Required. 195s /usr/lib/python3/dist-packages/azure/mgmt/datamigration/models/_models_py3.py:16916: SyntaxWarning: invalid escape sequence '\S' 195s Protocol:MachineName\SQLServerInstanceName,PortNumber. Required. 196s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:63: SyntaxWarning: invalid escape sequence '\w' 196s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 196s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:130: SyntaxWarning: invalid escape sequence '\w' 196s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 196s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:224: SyntaxWarning: invalid escape sequence '\w' 196s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 196s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:312: SyntaxWarning: invalid escape sequence '\w' 196s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 196s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:398: SyntaxWarning: invalid escape sequence '\w' 196s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 196s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:543: SyntaxWarning: invalid escape sequence '\w' 196s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 196s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:612: SyntaxWarning: invalid escape sequence '\w' 196s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 196s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:675: SyntaxWarning: invalid escape sequence '\w' 196s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 196s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:738: SyntaxWarning: invalid escape sequence '\w' 196s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 196s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:807: SyntaxWarning: invalid escape sequence '\w' 196s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 199s /usr/lib/python3/dist-packages/azure/mgmt/hybridnetwork/models/_models_py3.py:6032: SyntaxWarning: invalid escape sequence '\ ' 199s :ivar provisioning_state: The provisioning state of the site resource. **TODO**\ : Confirm if 200s /usr/lib/python3/dist-packages/azure/mgmt/iotoperations/models/_models.py:3866: SyntaxWarning: invalid escape sequence '\ ' 200s pattern set glob-style pattern (e.g., '\ *', 'clients/*\ '). Required.""" 200s /usr/lib/python3/dist-packages/azure/mgmt/iotoperations/models/_models.py:3868: SyntaxWarning: invalid escape sequence '\ ' 200s """Give access for ``Read``\ , ``Write`` and ``ReadWrite`` access level. Required. Known values 203s /usr/lib/python3/dist-packages/azure/mgmt/machinelearningservices/models/_machine_learning_services_mgmt_client_enums.py:169: SyntaxWarning: invalid escape sequence '\ ' 203s #: The "forest"\ it builds, is an ensemble of decision trees, usually trained with the “bagging”\ 203s /usr/lib/python3/dist-packages/azure/mgmt/machinelearningservices/models/_machine_learning_services_mgmt_client_enums.py:1032: SyntaxWarning: invalid escape sequence '\ ' 203s #: The "forest"\ it builds, is an ensemble of decision trees, usually trained with the “bagging”\ 209s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2542: SyntaxWarning: invalid escape sequence '\R' 209s """Execute Reverse Replication\Reprotect. 209s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2583: SyntaxWarning: invalid escape sequence '\R' 209s """Execute Reverse Replication\Reprotect. 209s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2622: SyntaxWarning: invalid escape sequence '\R' 209s """Execute Reverse Replication\Reprotect. 209s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:5397: SyntaxWarning: invalid escape sequence '\L' 209s :ivar lun_id: Ordinal\LunId of the disk for the Azure VM. 209s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:5448: SyntaxWarning: invalid escape sequence '\L' 209s :keyword lun_id: Ordinal\LunId of the disk for the Azure VM. 209s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:8836: SyntaxWarning: invalid escape sequence '\S' 209s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 209s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:8978: SyntaxWarning: invalid escape sequence '\S' 209s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 209s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:9510: SyntaxWarning: invalid escape sequence '\S' 209s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 209s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:9675: SyntaxWarning: invalid escape sequence '\S' 209s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 209s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:11412: SyntaxWarning: invalid escape sequence '\S' 209s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target VM after 209s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:11541: SyntaxWarning: invalid escape sequence '\S' 209s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target VM after 209s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:12193: SyntaxWarning: invalid escape sequence '\S' 209s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 209s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:12516: SyntaxWarning: invalid escape sequence '\S' 209s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 209s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:26323: SyntaxWarning: invalid escape sequence '\S' 209s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 209s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:26382: SyntaxWarning: invalid escape sequence '\S' 209s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 209s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3476: SyntaxWarning: invalid escape sequence '\R' 209s """Execute Reverse Replication\Reprotect. 209s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3517: SyntaxWarning: invalid escape sequence '\R' 209s """Execute Reverse Replication\Reprotect. 209s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3556: SyntaxWarning: invalid escape sequence '\R' 209s """Execute Reverse Replication\Reprotect. 210s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_azure_reservation_api_operations.py:163: SyntaxWarning: invalid escape sequence '\ ' 210s """Get list of applicable ``Reservation``\ s. 210s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:377: SyntaxWarning: invalid escape sequence '\ ' 210s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 210s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:407: SyntaxWarning: invalid escape sequence '\ ' 210s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 210s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:437: SyntaxWarning: invalid escape sequence '\ ' 210s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 210s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:583: SyntaxWarning: invalid escape sequence '\ ' 210s """Merges two ``Reservation``\ s. 210s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:614: SyntaxWarning: invalid escape sequence '\ ' 210s """Merges two ``Reservation``\ s. 210s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:645: SyntaxWarning: invalid escape sequence '\ ' 210s """Merges two ``Reservation``\ s. 210s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:721: SyntaxWarning: invalid escape sequence '\ ' 210s """Get ``Reservation``\ s in a given reservation Order. 210s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_order_operations.py:183: SyntaxWarning: invalid escape sequence '\ ' 210s """Get all ``ReservationOrder``\ s. 210s /usr/lib/python3/dist-packages/azure/mgmt/reservations/models/_models_py3.py:3172: SyntaxWarning: invalid escape sequence '\ ' 210s """List of ``Reservation``\ s. 210s /usr/lib/python3/dist-packages/azure/mgmt/reservations/models/_models_py3.py:3288: SyntaxWarning: invalid escape sequence '\ ' 210s """List of ``ReservationOrder``\ s. 210s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_azure_reservation_api_operations.py:239: SyntaxWarning: invalid escape sequence '\ ' 210s """Get list of applicable ``Reservation``\ s. 210s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:662: SyntaxWarning: invalid escape sequence '\ ' 210s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 210s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:692: SyntaxWarning: invalid escape sequence '\ ' 210s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 210s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:722: SyntaxWarning: invalid escape sequence '\ ' 210s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 210s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:868: SyntaxWarning: invalid escape sequence '\ ' 210s """Merges two ``Reservation``\ s. 210s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:899: SyntaxWarning: invalid escape sequence '\ ' 210s """Merges two ``Reservation``\ s. 210s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:930: SyntaxWarning: invalid escape sequence '\ ' 210s """Merges two ``Reservation``\ s. 210s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:1006: SyntaxWarning: invalid escape sequence '\ ' 210s """Get ``Reservation``\ s in a given reservation Order. 210s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_order_operations.py:299: SyntaxWarning: invalid escape sequence '\ ' 210s """Get all ``ReservationOrder``\ s. 213s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:68: SyntaxWarning: invalid escape sequence '\ ' 213s **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after ``end`` 213s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:90: SyntaxWarning: invalid escape sequence '\ ' 213s ``[``\ **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after 213s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:1141: SyntaxWarning: invalid escape sequence '\ ' 213s **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after ``end`` 213s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:1163: SyntaxWarning: invalid escape sequence '\ ' 213s ``[``\ **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after 216s /usr/lib/python3/dist-packages/azure/mgmt/signalr/models/_models_py3.py:2858: SyntaxWarning: invalid escape sequence '\ ' 216s For example, if the urlTemplate is ``http://example.com/{hub}/api/{event}``\ , with a client 216s /usr/lib/python3/dist-packages/azure/mgmt/signalr/models/_models_py3.py:2925: SyntaxWarning: invalid escape sequence '\ ' 216s For example, if the urlTemplate is ``http://example.com/{hub}/api/{event}``\ , with a client 218s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_functions_operations.py:595: SyntaxWarning: invalid escape sequence '\ ' 218s properties to include in the response, or "\ *" to include all properties. By default, all 218s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_inputs_operations.py:593: SyntaxWarning: invalid escape sequence '\ ' 218s properties to include in the response, or "\ *" to include all properties. By default, all 218s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_outputs_operations.py:593: SyntaxWarning: invalid escape sequence '\ ' 218s properties to include in the response, or "\ *" to include all properties. By default, all 218s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/models/_stream_analytics_management_client_enums.py:14: SyntaxWarning: invalid escape sequence '\ ' 218s """Authentication Mode. Valid modes are ``ConnectionString``\ , ``Msi`` and 'UserToken'.""" 218s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_functions_operations.py:859: SyntaxWarning: invalid escape sequence '\ ' 218s properties to include in the response, or "\ *" to include all properties. By default, all 218s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_inputs_operations.py:821: SyntaxWarning: invalid escape sequence '\ ' 218s properties to include in the response, or "\ *" to include all properties. By default, all 218s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_outputs_operations.py:821: SyntaxWarning: invalid escape sequence '\ ' 218s properties to include in the response, or "\ *" to include all properties. By default, all 218s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_communications_no_subscription_operations.py:193: SyntaxWarning: invalid escape sequence '\ ' 218s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication 218s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_communications_operations.py:194: SyntaxWarning: invalid escape sequence '\ ' 218s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication 218s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:177: SyntaxWarning: invalid escape sequence '\ ' 218s tickets by *Status*\ , *CreatedDate*\ , *ServiceId*\ , and *ProblemClassificationId* using the 218s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:540: SyntaxWarning: invalid escape sequence '\ ' 218s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 218s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:582: SyntaxWarning: invalid escape sequence '\ ' 218s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 218s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:622: SyntaxWarning: invalid escape sequence '\ ' 218s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 218s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_communications_no_subscription_operations.py:308: SyntaxWarning: invalid escape sequence '\ ' 218s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication 218s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_communications_operations.py:326: SyntaxWarning: invalid escape sequence '\ ' 218s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication 218s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:319: SyntaxWarning: invalid escape sequence '\ ' 218s tickets by *Status*\ , *CreatedDate*\ , *ServiceId*\ , and *ProblemClassificationId* using the 218s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:681: SyntaxWarning: invalid escape sequence '\ ' 218s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 218s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:723: SyntaxWarning: invalid escape sequence '\ ' 218s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 218s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:763: SyntaxWarning: invalid escape sequence '\ ' 218s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 218s /usr/lib/python3/dist-packages/azure/mgmt/synapse/models/_models_py3.py:6232: SyntaxWarning: invalid escape sequence '\ ' 218s :ivar maintenance_window_cycles: Available maintenance cycles e.g. {Saturday, 0, 48\ *60}, 218s /usr/lib/python3/dist-packages/azure/mgmt/synapse/models/_models_py3.py:6288: SyntaxWarning: invalid escape sequence '\ ' 218s :keyword maintenance_window_cycles: Available maintenance cycles e.g. {Saturday, 0, 48\ *60}, 223s /usr/lib/python3/dist-packages/azure/mgmt/workloads/models/_models_py3.py:2909: SyntaxWarning: invalid escape sequence '\W' 223s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
` 223s /usr/lib/python3/dist-packages/azure/mgmt/workloads/models/_models_py3.py:2954: SyntaxWarning: invalid escape sequence '\W' 223s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
` 223s /usr/lib/python3/dist-packages/azure/mgmt/workloadssapvirtualinstance/models/_models_py3.py:1980: SyntaxWarning: invalid escape sequence '\W' 223s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
` 223s /usr/lib/python3/dist-packages/azure/mgmt/workloadssapvirtualinstance/models/_models_py3.py:2025: SyntaxWarning: invalid escape sequence '\W' 223s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
` 223s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:2732: SyntaxWarning: invalid escape sequence '\:' 223s attr:\:code:``=:code:``. 223s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:3537: SyntaxWarning: invalid escape sequence '\:' 223s attr:\:code:``=\:code:``. 223s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:4216: SyntaxWarning: invalid escape sequence '\:' 223s typeName=\:code:``&attr_1:\:code:``=\:code:``&attr_2:\:code:``=\:code:``&attr_3:\:code:``=\:code:`` 223s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:6219: SyntaxWarning: invalid escape sequence '\:' 223s attr:\:code:``=:code:``. 223s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:7024: SyntaxWarning: invalid escape sequence '\:' 223s attr:\:code:``=\:code:``. 223s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:7703: SyntaxWarning: invalid escape sequence '\:' 223s typeName=\:code:``&attr_1:\:code:``=\:code:``&attr_2:\:code:``=\:code:``&attr_3:\:code:``=\:code:`` 224s /usr/lib/python3/dist-packages/azure/servicemanagement/schedulermanagementservice.py:59: SyntaxWarning: invalid escape sequence '\m' 224s CURRENT_USER\my\CertificateName format. 224s /usr/lib/python3/dist-packages/azure/servicemanagement/servicebusmanagementservice.py:59: SyntaxWarning: invalid escape sequence '\m' 224s CURRENT_USER\my\CertificateName format. 224s /usr/lib/python3/dist-packages/azure/servicemanagement/servicemanagementservice.py:81: SyntaxWarning: invalid escape sequence '\m' 224s CURRENT_USER\my\CertificateName format. 224s /usr/lib/python3/dist-packages/azure/servicemanagement/sqldatabasemanagementservice.py:55: SyntaxWarning: invalid escape sequence '\m' 224s CURRENT_USER\my\CertificateName format. 224s /usr/lib/python3/dist-packages/azure/servicemanagement/websitemanagementservice.py:55: SyntaxWarning: invalid escape sequence '\m' 224s CURRENT_USER\my\CertificateName format. 224s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:110: SyntaxWarning: invalid escape sequence '\d' 224s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 225s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:1328: SyntaxWarning: invalid escape sequence '\d' 225s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9]))..). 225s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:4218: SyntaxWarning: invalid escape sequence '\d' 225s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 225s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:4280: SyntaxWarning: invalid escape sequence '\d' 225s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 225s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:18198: SyntaxWarning: invalid escape sequence '\d' 225s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 225s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19096: SyntaxWarning: invalid escape sequence '\d' 225s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). Type: string (or Expression with 225s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19185: SyntaxWarning: invalid escape sequence '\d' 225s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 225s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19749: SyntaxWarning: invalid escape sequence '\d' 225s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 225s Processing triggers for libc-bin (2.41-6ubuntu1) ... 225s Processing triggers for man-db (2.13.0-1) ... 227s autopkgtest [21:48:49]: test unit-tests-stable.py: [----------------------- 228s 228s 228s 228s ############################################################ 228s ############################################################ 228s #### Running tests in ansible_collections/kubevirt/core 228s ############################################################ 228s ############################################################ 228s Unit test controller with Python 3.13 230s ============================= test session starts ============================== 230s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 230s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/kubevirt/core 230s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 230s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 230s created: 2/2 workers 230s 2 workers [190 items] 230s 231s ........................................................................ [ 37%] 231s ........................................................................ [ 75%] 232s .............................................. [100%] 232s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/kubevirt/core/tests/output/junit/python3.13-controller-units.xml - 232s ============================= 190 passed in 2.74s ============================== 232s Skipping ansible_collections/netapp_eseries/santricity 232s 232s 232s 232s ############################################################ 232s ############################################################ 232s #### Running tests in ansible_collections/ansible/windows 232s ############################################################ 232s ############################################################ 232s Unit test controller with Python 3.13 234s ============================= test session starts ============================== 234s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 234s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ansible/windows 234s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 234s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 234s created: 2/2 workers 234s 2 workers [50 items] 234s 234s .................................................. [100%] 234s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ansible/windows/tests/output/junit/python3.13-controller-units.xml - 234s ============================== 50 passed in 1.32s ============================== 234s 234s 234s 234s ############################################################ 234s ############################################################ 234s #### Running tests in ansible_collections/ansible/posix 234s ############################################################ 234s ############################################################ 234s Unit test controller with Python 3.13 235s ============================= test session starts ============================== 235s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 235s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ansible/posix 235s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 235s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 235s created: 2/2 workers 235s 2 workers [14 items] 235s 236s .............. [100%] 236s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ansible/posix/tests/output/junit/python3.13-controller-units.xml - 236s ============================== 14 passed in 0.87s ============================== 236s Skipping ansible_collections/ansible/utils 236s 236s 236s 236s ############################################################ 236s ############################################################ 236s #### Running tests in ansible_collections/ansible/netcommon 236s ############################################################ 236s ############################################################ 236s Unit test controller with Python 3.13 237s ============================= test session starts ============================== 237s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 237s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ansible/netcommon 237s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 237s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 237s created: 2/2 workers 237s 2 workers [162 items] 237s 238s ........................................................................ [ 44%] 240s ..................................xx.................................... [ 88%] 241s .........x........ [100%] 241s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ansible/netcommon/tests/output/junit/python3.13-controller-units.xml - 241s =========================== short test summary info ============================ 241s SKIPPED [1] tests/unit/plugins/cli_parsers/test_pyats_parser.py:21: could not import 'pyats': No module named 'pyats' 241s SKIPPED [1] tests/unit/plugins/connection/test_libssh.py:23: could not import 'pylibsshext': No module named 'pylibsshext' 241s SKIPPED [1] tests/unit/plugins/connection/test_netconf.py:19: could not import 'ncclient': No module named 'ncclient' 241s XFAIL tests/unit/plugins/connection/test_network_cli.py::test_network_cli_send[auto-response2] 241s XFAIL tests/unit/plugins/connection/test_network_cli.py::test_network_cli_send[paramiko-response2] 241s XFAIL tests/unit/plugins/connection/test_network_cli.py::test_network_cli_send[libssh-response2] 241s ================== 159 passed, 3 skipped, 3 xfailed in 4.44s =================== 241s 241s 241s 241s ############################################################ 241s ############################################################ 241s #### Running tests in ansible_collections/arista/eos 241s ############################################################ 241s ############################################################ 241s Unit test controller with Python 3.13 243s ============================= test session starts ============================== 243s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 243s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/arista/eos 243s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 243s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 243s created: 2/2 workers 243s 2 workers [307 items] 243s 244s ........................................................................ [ 23%] 245s ........................................................................ [ 46%] 247s ........................................................................ [ 70%] 249s ........................................................................ [ 93%] 249s ................... [100%] 249s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/arista/eos/tests/output/junit/python3.13-controller-units.xml - 249s ============================= 307 passed in 7.86s ============================== 249s Skipping ansible_collections/vmware/vmware 249s 249s 249s 249s ############################################################ 249s ############################################################ 249s #### Running tests in ansible_collections/ibm/qradar 249s ############################################################ 249s ############################################################ 250s Unit test controller with Python 3.13 251s ============================= test session starts ============================== 251s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 251s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ibm/qradar 251s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 251s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 251s created: 2/2 workers 251s 2 workers [5 items] 251s 251s ..... [100%] 251s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ibm/qradar/tests/output/junit/python3.13-controller-units.xml - 251s ============================== 5 passed in 0.87s =============================== 251s 251s 251s 251s ############################################################ 251s ############################################################ 251s #### Running tests in ansible_collections/ibm/storage_virtualize 251s ############################################################ 251s ############################################################ 251s Unit test modules with Python 3.13 253s ============================= test session starts ============================== 253s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 253s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ibm/storage_virtualize 253s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 253s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 253s created: 2/2 workers 253s 2 workers [762 items] 253s 254s ........................................................................ [ 9%] 254s ........................................................................ [ 18%] 255s ........................................................................ [ 28%] 256s ........................................................................ [ 37%] 258s ........................................................................ [ 47%] 259s ........................................................................ [ 56%] 260s ........................................................................ [ 66%] 261s ........................................................................ [ 75%] 262s ........................................................................ [ 85%] 262s ........................................................................ [ 94%] 263s .......................................... [100%] 263s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ibm/storage_virtualize/tests/output/junit/python3.13-modules-units.xml - 263s ============================= 762 passed in 11.56s ============================= 263s Unit test module_utils with Python 3.13 264s ============================= test session starts ============================== 264s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 264s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ibm/storage_virtualize 264s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 264s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 264s created: 2/2 workers 264s 2 workers [12 items] 264s 264s ............ [100%] 264s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ibm/storage_virtualize/tests/output/junit/python3.13-module_utils-units.xml - 264s ============================== 12 passed in 0.80s ============================== 264s 264s 264s 264s ############################################################ 264s ############################################################ 264s #### Running tests in ansible_collections/ibm/spectrum_virtualize 264s ############################################################ 264s ############################################################ 264s Unit test modules with Python 3.13 266s ============================= test session starts ============================== 266s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 266s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ibm/spectrum_virtualize 266s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 266s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 266s created: 2/2 workers 266s 2 workers [613 items] 266s 267s ........................................................................ [ 11%] 268s ........................................................................ [ 23%] 269s ........................................................................ [ 35%] 269s ........................................................................ [ 46%] 270s ........................................................................ [ 58%] 271s ........................................................................ [ 70%] 272s ........................................................................ [ 82%] 273s ........................................................................ [ 93%] 274s ..................................... [100%] 274s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ibm/spectrum_virtualize/tests/output/junit/python3.13-modules-units.xml - 274s ============================= 613 passed in 8.72s ============================== 274s Unit test module_utils with Python 3.13 275s ============================= test session starts ============================== 275s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 275s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ibm/spectrum_virtualize 275s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 275s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 275s created: 2/2 workers 275s 2 workers [9 items] 275s 275s ......... [100%] 275s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ibm/spectrum_virtualize/tests/output/junit/python3.13-module_utils-units.xml - 275s ============================== 9 passed in 0.75s =============================== 275s Skipping ansible_collections/netapp/ontap 275s 275s 275s 275s ############################################################ 275s ############################################################ 275s #### Running tests in ansible_collections/netapp/storagegrid 275s ############################################################ 275s ############################################################ 275s Unit test modules with Python 3.13 276s ============================= test session starts ============================== 276s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 276s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp/storagegrid 276s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 276s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 276s created: 2/2 workers 276s 2 workers [154 items] 276s 277s ........................................................................ [ 46%] 277s ........................................................................ [ 93%] 277s .......... [100%] 277s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp/storagegrid/tests/output/junit/python3.13-modules-units.xml - 277s ============================= 154 passed in 2.11s ============================== 277s 277s 277s 277s ############################################################ 277s ############################################################ 277s #### Running tests in ansible_collections/netapp/cloudmanager 277s ############################################################ 277s ############################################################ 278s Unit test modules with Python 3.13 279s ============================= test session starts ============================== 279s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 279s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp/cloudmanager 279s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 279s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 279s created: 2/2 workers 279s 2 workers [106 items] 279s 295s ........................................................................ [ 67%] 326s .................................. [100%] 326s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp/cloudmanager/tests/output/junit/python3.13-modules-units.xml - 326s ============================= 106 passed in 47.60s ============================= 326s Unit test module_utils with Python 3.13 327s ============================= test session starts ============================== 327s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 327s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp/cloudmanager 327s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 327s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 327s created: 2/2 workers 327s 2 workers [52 items] 327s 327s .................................................... [100%] 327s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp/cloudmanager/tests/output/junit/python3.13-module_utils-units.xml - 327s ============================== 52 passed in 1.13s ============================== 327s 327s 327s 327s ############################################################ 327s ############################################################ 327s #### Running tests in ansible_collections/vultr/cloud 327s ############################################################ 327s ############################################################ 328s Unit test controller with Python 3.13 329s ============================= test session starts ============================== 329s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 329s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/vultr/cloud 329s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 329s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 329s created: 2/2 workers 329s 2 workers [15 items] 329s 329s ............... [100%] 329s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/vultr/cloud/tests/output/junit/python3.13-controller-units.xml - 329s ============================== 15 passed in 0.92s ============================== 329s 329s 329s 329s ############################################################ 329s ############################################################ 329s #### Running tests in ansible_collections/cisco/nxos 329s ############################################################ 329s ############################################################ 329s Unit test controller with Python 3.13 331s ============================= test session starts ============================== 331s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 331s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/nxos 331s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 331s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 331s created: 2/2 workers 331s 2 workers [773 items] 331s 333s ........................................................................ [ 9%] 335s ........................................................................ [ 18%] 336s ........................................................................ [ 27%] 343s ........................................................................ [ 37%] 345s ........................................................................ [ 46%] 346s ........................................................................ [ 55%] 347s ........................................................................ [ 65%] 350s ........................................................................ [ 74%] 352s ........................................................................ [ 83%] 353s ........................................................................ [ 93%] 354s ..................................................... [100%] 354s =============================== warnings summary =============================== 354s tests/unit/modules/network/nxos/test_nxos_acls.py: 91 warnings 354s /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:270: DeprecationWarning: 'count' is passed as positional argument 354s ace = re.sub(seq, "", ace, 1) 354s 354s tests/unit/modules/network/nxos/test_nxos_acls.py: 84 warnings 354s /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:279: DeprecationWarning: 'count' is passed as positional argument 354s ace = re.sub(grant, "", ace, 1) 354s 354s tests/unit/modules/network/nxos/test_nxos_acls.py: 84 warnings 354s /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:287: DeprecationWarning: 'count' is passed as positional argument 354s ace = re.sub(pro, "", ace, 1) 354s 354s tests/unit/modules/network/nxos/test_nxos_acls.py: 168 warnings 354s /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:117: DeprecationWarning: 'count' is passed as positional argument 354s ace = re.sub(option, "", ace, 1) 354s 354s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_gathered 354s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark 354s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_ranges 354s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_ranges 354s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_ranges 354s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_ranges 354s /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:142: DeprecationWarning: 'count' is passed as positional argument 354s ace = re.sub(range_substring, "", ace, 1) 354s 354s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_gathered 354s /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:116: DeprecationWarning: 'count' is passed as positional argument 354s ace = re.sub("{0}".format(wb), "", ace, 1) 354s 354s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_gathered 354s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark 354s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark 354s /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:126: DeprecationWarning: 'count' is passed as positional argument 354s ace = re.sub(port_pro.group(1), "", ace, 1) 354s 354s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_gathered 354s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark 354s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark 354s /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:127: DeprecationWarning: 'count' is passed as positional argument 354s ace = re.sub(port_pro.group(2), "", ace, 1) 354s 354s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 354s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/nxos/tests/output/junit/python3.13-controller-units.xml - 354s ====================== 773 passed, 440 warnings in 24.10s ====================== 354s 354s 354s 354s ############################################################ 354s ############################################################ 354s #### Running tests in ansible_collections/cisco/asa 354s ############################################################ 354s ############################################################ 354s Unit test controller with Python 3.13 356s ============================= test session starts ============================== 356s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 356s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/asa 356s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 356s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 356s created: 2/2 workers 356s 2 workers [21 items] 356s 361s ..................... [100%] 361s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/asa/tests/output/junit/python3.13-controller-units.xml - 361s ============================== 21 passed in 6.78s ============================== 361s 361s 361s 361s ############################################################ 361s ############################################################ 361s #### Running tests in ansible_collections/cisco/ios 361s ############################################################ 361s ############################################################ 361s Unit test controller with Python 3.13 363s ============================= test session starts ============================== 363s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 363s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/ios 363s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 363s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 363s created: 2/2 workers 363s 2 workers [425 items] 363s 365s ........................................................................ [ 16%] 368s ........................................................................ [ 33%] 370s ........................................................................ [ 50%] 376s ........................................................................ [ 67%] 379s ........................................................................ [ 84%] 419s ................................................................. [100%] 419s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/ios/tests/output/junit/python3.13-controller-units.xml - 419s ============================= 425 passed in 56.69s ============================= 419s 419s 419s 419s ############################################################ 419s ############################################################ 419s #### Running tests in ansible_collections/cisco/iosxr 419s ############################################################ 419s ############################################################ 419s Unit test controller with Python 3.13 421s ============================= test session starts ============================== 421s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 421s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/iosxr 421s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 421s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 421s created: 2/2 workers 421s 2 workers [310 items] 421s 422s ........................................................................ [ 23%] 424s ........................................................................ [ 46%] 426s ........................................................................ [ 69%] 429s ........................................................................ [ 92%] 429s ...................... [100%] 429s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/iosxr/tests/output/junit/python3.13-controller-units.xml - 429s ============================= 310 passed in 10.17s ============================= 430s Skipping ansible_collections/cisco/aci 430s Skipping ansible_collections/cisco/dnac 430s 430s 430s 430s ############################################################ 430s ############################################################ 430s #### Running tests in ansible_collections/google/cloud 430s ############################################################ 430s ############################################################ 430s Unit test controller with Python 3.13 431s ============================= test session starts ============================== 431s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 431s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/google/cloud 431s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 431s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 431s created: 2/2 workers 431s 2 workers [17 items] 431s 431s ................. [100%] 431s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/google/cloud/tests/output/junit/python3.13-controller-units.xml - 431s ============================== 17 passed in 0.86s ============================== 431s Skipping ansible_collections/splunk/es 431s 431s 431s 431s ############################################################ 431s ############################################################ 431s #### Running tests in ansible_collections/cyberark/conjur 431s ############################################################ 431s ############################################################ 431s Unit test controller with Python 3.13 432s ============================= test session starts ============================== 432s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 432s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cyberark/conjur 432s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 432s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 432s created: 2/2 workers 432s 2 workers [21 items] 432s 433s ..................... [100%] 433s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cyberark/conjur/tests/output/junit/python3.13-controller-units.xml - 433s ============================== 21 passed in 0.93s ============================== 433s 433s 433s 433s ############################################################ 433s ############################################################ 433s #### Running tests in ansible_collections/kubernetes/core 433s ############################################################ 433s ############################################################ 433s Unit test controller with Python 3.13 435s ============================= test session starts ============================== 435s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 435s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/kubernetes/core 435s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 435s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 435s created: 2/2 workers 435s 2 workers [172 items] 435s 435s ........................................................................ [ 41%] 441s ........................................................................ [ 83%] 444s ............................ [100%] 444s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/kubernetes/core/tests/output/junit/python3.13-controller-units.xml - 444s ============================= 172 passed in 10.82s ============================= 444s Skipping ansible_collections/sensu/sensu_go 444s 444s 444s 444s ############################################################ 444s ############################################################ 444s #### Running tests in ansible_collections/dellemc/powerflex 444s ############################################################ 444s ############################################################ 444s Unit test modules with Python 3.13 446s ============================= test session starts ============================== 446s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 446s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/dellemc/powerflex 446s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 446s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 446s created: 2/2 workers 446s 2 workers [405 items] 446s 447s ........................................................................ [ 17%] 447s ........................................................................ [ 35%] 448s ........................................................................ [ 53%] 449s ........................................................................ [ 71%] 449s ........................................................................ [ 88%] 450s ............................................. [100%] 450s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/dellemc/powerflex/tests/output/junit/python3.13-modules-units.xml - 450s ============================= 405 passed in 5.15s ============================== 450s 450s 450s 450s ############################################################ 450s ############################################################ 450s #### Running tests in ansible_collections/dellemc/openmanage 450s ############################################################ 450s ############################################################ 450s Unit test modules 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.HDQhnz/build.1ev/src/ansible_collections/dellemc/openmanage 455s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 455s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 455s created: 2/2 workers 455s 2 workers [2636 items] 455s 456s ........................................................................ [ 2%] 457s ........................................................................ [ 5%] 458s ........................................................................ [ 8%] 459s ........................................................................ [ 10%] 459s ........................................................................ [ 13%] 460s ........................................................................ [ 16%] 461s ........................................................................ [ 19%] 463s ........................................................................ [ 21%] 465s ........................................................................ [ 24%] 466s ........................................................................ [ 27%] 467s ........................................................................ [ 30%] 473s ........................................................................ [ 32%] 474s ........................................................................ [ 35%] 476s ........................................................................ [ 38%] 477s ........................................................................ [ 40%] 478s ........................................................................ [ 43%] 479s ........................................................................ [ 46%] 481s ........................................................................ [ 49%] 482s ........................................................................ [ 51%] 483s ........................................................................ [ 54%] 484s ........................................................................ [ 57%] 486s ........................................................................ [ 60%] 490s ........................................................................ [ 62%] 491s ........................................................................ [ 65%] 492s ........................................................................ [ 68%] 494s ........................................................................ [ 71%] 495s ........................................................................ [ 73%] 497s ........................................................................ [ 76%] 498s ........................................................................ [ 79%] 500s ........................................................................ [ 81%] 501s ........................................................................ [ 84%] 503s ........................................................................ [ 87%] 527s ........................................................................ [ 90%] 529s ........................................................................ [ 92%] 530s ........................................................................ [ 95%] 532s ........................................................................ [ 98%] 533s ............................................ [100%] 533s =============================== warnings summary =============================== 533s tests/unit/plugins/modules/test_idrac_support_assist.py: 30 warnings 533s tests/unit/plugins/modules/test_idrac_system_erase.py: 6 warnings 533s tests/unit/plugins/modules/test_idrac_diagnostics.py: 19 warnings 533s tests/unit/plugins/modules/test_idrac_firmware_info.py: 6 warnings 533s tests/unit/plugins/modules/test_ome_application_network_proxy.py: 1 warning 533s /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/dellemc/openmanage/plugins/module_utils/utils.py:117: DeprecationWarning: 'count' is passed as positional argument 533s ipv6_short = re.sub(r'(:0)+', ':', tempstr, 1) 533s 533s tests/unit/plugins/modules/test_idrac_server_config_profile.py::TestServerConfigProfile::test_compare_custom_default_configs[params0] 533s tests/unit/plugins/modules/test_idrac_server_config_profile.py::TestServerConfigProfile::test_compare_custom_default_configs[params0] 533s /tmp/autopkgtest.HDQhnz/build.1ev/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. 533s if component: 533s 533s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 533s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/dellemc/openmanage/tests/output/junit/python3.13-modules-units.xml - 533s =========================== short test summary info ============================ 533s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_configure_idrac_eventing.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 533s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_configure_idrac_services.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 533s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_idrac_lc_attributes.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 533s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_idrac_storage_volume.py:22: could not import 'omsdk.sdkfile': No module named 'omsdk' 533s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_system_lockdown_mode.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 533s SKIPPED [1] tests/unit/plugins/modules/test_idrac_firmware.py:27: could not import 'omsdk.sdkfile': No module named 'omsdk' 533s SKIPPED [1] tests/unit/plugins/modules/test_idrac_lifecycle_controller_job_status_info.py:25: could not import 'omsdk.sdkfile': No module named 'omsdk' 533s SKIPPED [1] tests/unit/plugins/modules/test_idrac_lifecycle_controller_jobs.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 533s SKIPPED [1] tests/unit/plugins/modules/test_idrac_lifecycle_controller_logs.py:25: could not import 'omsdk.sdkfile': No module named 'omsdk' 533s SKIPPED [1] tests/unit/plugins/modules/test_idrac_lifecycle_controller_status_info.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 533s SKIPPED [1] tests/unit/plugins/modules/test_idrac_network.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 533s SKIPPED [1] tests/unit/plugins/modules/test_idrac_os_deployment.py:22: could not import 'omsdk.sdkfile': No module named 'omsdk' 533s SKIPPED [1] tests/unit/plugins/modules/test_idrac_syslog.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 533s SKIPPED [1] tests/unit/plugins/modules/test_idrac_system_info.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 533s SKIPPED [1] tests/unit/plugins/modules/test_idrac_timezone_ntp.py:25: could not import 'omsdk.sdkfile': No module named 'omsdk' 533s =========== 2636 passed, 15 skipped, 64 warnings in 82.05s (0:01:22) =========== 533s Unit test module_utils with Python 3.13 534s ============================= test session starts ============================== 534s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 534s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/dellemc/openmanage 534s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 534s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 534s created: 2/2 workers 534s 2 workers [121 items] 534s 535s ........................................................................ [ 59%] 535s ................................................. [100%] 535s =============================== warnings summary =============================== 535s tests/unit/plugins/module_utils/test_idrac_redfish.py::TestIdracRedfishRest::test_invoke_request_without_session 535s tests/unit/plugins/module_utils/test_ome.py::TestOMERest::test_invoke_request_with_session 535s tests/unit/plugins/module_utils/test_redfish.py::TestRedfishRest::test_invoke_request_without_session 535s tests/unit/plugins/module_utils/test_rest_api.py::TestRestAPI::test_invoke_request_with_session 535s tests/unit/plugins/module_utils/test_session_utils.py::TestSessionRest::test_invoke_request_without_session 535s /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/dellemc/openmanage/plugins/module_utils/utils.py:117: DeprecationWarning: 'count' is passed as positional argument 535s ipv6_short = re.sub(r'(:0)+', ':', tempstr, 1) 535s 535s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 535s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/dellemc/openmanage/tests/output/junit/python3.13-module_utils-units.xml - 535s ======================= 121 passed, 5 warnings in 1.83s ======================== 535s 535s 535s 535s ############################################################ 535s ############################################################ 535s #### Running tests in ansible_collections/dellemc/unity 535s ############################################################ 535s ############################################################ 535s Unit test modules with Python 3.13 537s ============================= test session starts ============================== 537s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 537s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/dellemc/unity 537s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 537s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 537s created: 2/2 workers 537s 2 workers [92 items] 537s 538s ........................................................................ [ 78%] 538s .................... [100%] 538s =============================== warnings summary =============================== 538s plugins/module_utils/storage/dell/utils.py:72 538s plugins/module_utils/storage/dell/utils.py:72 538s /tmp/autopkgtest.HDQhnz/build.1ev/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 538s from pkg_resources import parse_version 538s 538s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 538s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/dellemc/unity/tests/output/junit/python3.13-modules-units.xml - 538s ======================== 92 passed, 2 warnings in 1.98s ======================== 538s 538s 538s 538s ############################################################ 538s ############################################################ 538s #### Running tests in ansible_collections/dellemc/enterprise_sonic 538s ############################################################ 538s ############################################################ 538s Unit test controller with Python 3.13 540s ============================= test session starts ============================== 540s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 540s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/dellemc/enterprise_sonic 540s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 540s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 540s created: 2/2 workers 540s 2 workers [404 items] 540s 544s ........................................................................ [ 17%] 547s ........................................................................ [ 35%] 552s ........................................................................ [ 53%] 556s ........................................................................ [ 71%] 562s ........................................................................ [ 89%] 565s ............................................ [100%] 565s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/dellemc/enterprise_sonic/tests/output/junit/python3.13-controller-units.xml - 565s ============================= 404 passed in 26.22s ============================= 565s 565s 565s 565s ############################################################ 565s ############################################################ 565s #### Running tests in ansible_collections/vyos/vyos 565s ############################################################ 565s ############################################################ 565s Unit test controller with Python 3.13 567s ============================= test session starts ============================== 567s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 567s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/vyos/vyos 567s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 567s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 567s created: 2/2 workers 567s 2 workers [212 items] 567s 568s ........................................................................ [ 33%] 569s ........................................................................ [ 67%] 572s .................................................................... [100%] 572s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/vyos/vyos/tests/output/junit/python3.13-controller-units.xml - 572s ============================= 212 passed in 6.24s ============================== 572s 572s 572s 572s ############################################################ 572s ############################################################ 572s #### Running tests in ansible_collections/hetzner/hcloud 572s ############################################################ 572s ############################################################ 572s Unit test controller with Python 3.13 573s ============================= test session starts ============================== 573s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 573s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/hetzner/hcloud 573s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 573s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 573s created: 2/2 workers 573s 2 workers [30 items] 573s 574s .............................. [100%] 574s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/hetzner/hcloud/tests/output/junit/python3.13-controller-units.xml - 574s ============================== 30 passed in 1.23s ============================== 574s 574s 574s 574s ############################################################ 574s ############################################################ 574s #### Running tests in ansible_collections/amazon/aws 574s ############################################################ 574s ############################################################ 574s Unit test modules 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.HDQhnz/build.1ev/src/ansible_collections/amazon/aws 576s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 576s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 576s created: 2/2 workers 576s 2 workers [348 items] 576s 576s ........................................................................ [ 20%] 577s ........................................................................ [ 41%] 578s ........................................................................ [ 62%] 578s ........................................................................ [ 82%] 579s ............................................................ [100%] 579s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/amazon/aws/tests/output/junit/python3.13-modules-units.xml - 579s =========================== short test summary info ============================ 579s SKIPPED [1] tests/unit/utils/amazon_placebo_fixtures.py:16: could not import 'placebo': No module named 'placebo' 579s ======================== 348 passed, 1 skipped in 4.46s ======================== 579s Unit test controller with Python 3.13 582s ============================= test session starts ============================== 582s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 582s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/amazon/aws 582s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 582s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 582s created: 2/2 workers 582s 2 workers [1252 items] 582s 582s ........................................................................ [ 5%] 583s ........................................................................ [ 11%] 584s ........................................................................ [ 17%] 585s ........................................................................ [ 23%] 586s ........................................................................ [ 28%] 588s ........................................................................ [ 34%] 601s ........................................................................ [ 40%] 603s ........................................................................ [ 46%] 603s ........................................................................ [ 51%] 604s ........................................................................ [ 57%] 605s ........................................................................ [ 63%] 606s ........................................................................ [ 69%] 607s ........................................................................ [ 74%] 609s ........................................................................ [ 80%] 610s ........................................................................ [ 86%] 611s ........................................................................ [ 92%] 802s ........................................................................ [ 97%] 803s ............................ [100%] 803s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/amazon/aws/tests/output/junit/python3.13-controller-units.xml - 803s ======================= 1252 passed in 223.69s (0:03:43) ======================= 803s 803s 803s 803s ############################################################ 803s ############################################################ 803s #### Running tests in ansible_collections/wti/remote 803s ############################################################ 803s ############################################################ 803s Unit test controller with Python 3.13 804s ============================= test session starts ============================== 804s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 804s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/wti/remote 804s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 804s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 804s created: 2/2 workers 804s 2 workers [1 item] 804s 804s . [100%] 804s =============================== warnings summary =============================== 804s tests/unit/test_example.py::test_example 804s /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`? 804s warnings.warn( 804s 804s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 804s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/wti/remote/tests/output/junit/python3.13-controller-units.xml - 804s ========================= 1 passed, 1 warning in 0.45s ========================= 804s Skipping ansible_collections/junipernetworks/junos 804s 804s 804s 804s ############################################################ 804s ############################################################ 804s #### Running tests in ansible_collections/cloud/common 804s ############################################################ 804s ############################################################ 804s Unit test module_utils with Python 3.13 805s ============================= test session starts ============================== 805s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 805s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cloud/common 805s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 805s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 805s created: 2/2 workers 805s 2 workers [19 items] 805s 807s ................... [100%] 807s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cloud/common/tests/output/junit/python3.13-module_utils-units.xml - 807s ============================== 19 passed in 2.03s ============================== 807s Skipping ansible_collections/ngine_io/cloudstack 807s 807s 807s 807s ############################################################ 807s ############################################################ 807s #### Running tests in ansible_collections/community/sap_libs 807s ############################################################ 807s ############################################################ 807s Unit test modules with Python 3.13 808s ============================= test session starts ============================== 808s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 808s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/sap_libs 808s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 808s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 808s created: 2/2 workers 808s 2 workers [49 items] 808s 809s ................................................. [100%] 809s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/sap_libs/tests/output/junit/python3.13-modules-units.xml - 809s ============================== 49 passed in 1.19s ============================== 809s 809s 809s 809s ############################################################ 809s ############################################################ 809s #### Running tests in ansible_collections/community/windows 809s ############################################################ 809s ############################################################ 809s Unit test controller with Python 3.13 811s ============================= test session starts ============================== 811s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 811s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/windows 811s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 811s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 811s created: 2/2 workers 811s 2 workers [32 items] 811s 811s ................................ [100%] 811s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/windows/tests/output/junit/python3.13-controller-units.xml - 811s ============================== 32 passed in 1.48s ============================== 811s 811s 811s 811s ############################################################ 811s ############################################################ 811s #### Running tests in ansible_collections/community/grafana 811s ############################################################ 811s ############################################################ 811s Unit test controller with Python 3.13 812s ============================= test session starts ============================== 812s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 812s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/grafana 812s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 812s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 812s created: 2/2 workers 812s 2 workers [31 items] 812s 812s ............................... [100%] 812s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/grafana/tests/output/junit/python3.13-controller-units.xml - 812s ============================== 31 passed in 0.89s ============================== 812s 812s 812s 812s ############################################################ 812s ############################################################ 812s #### Running tests in ansible_collections/community/docker 812s ############################################################ 812s ############################################################ 813s Unit test modules with Python 3.13 814s ============================= test session starts ============================== 814s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 814s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/docker 814s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 814s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 814s created: 2/2 workers 814s 2 workers [27 items] 814s 816s ........................... [100%] 816s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/docker/tests/output/junit/python3.13-modules-units.xml - 816s ============================== 27 passed in 3.06s ============================== 816s Unit test module_utils with Python 3.13 818s ============================= test session starts ============================== 818s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 818s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/docker 818s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 818s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 818s created: 2/2 workers 818s 2 workers [551 items] 818s 818s ..................................................s.s.s.s.ss.s.s........ [ 13%] 819s ....s.s.s.s.s.........s................................................. [ 26%] 819s .......s........................................................s....... [ 39%] 820s ...............................s........................................ [ 52%] 820s ........................................................................ [ 65%] 821s ........................................................................ [ 78%] 821s ........................................................................ [ 91%] 822s ............................................... [100%] 822s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/docker/tests/output/junit/python3.13-module_utils-units.xml - 822s =========================== short test summary info ============================ 822s 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. 822s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:99: match_hostname is not available 822s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:92: match_hostname is not available 822s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:95: match_hostname is not available 822s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:86: match_hostname is not available 822s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:89: match_hostname is not available 822s SKIPPED [1] tests/unit/plugins/module_utils/_api/utils/test_build.py:254: Backslash patterns only on Windows 822s SKIPPED [1] tests/unit/plugins/module_utils/_api/utils/test_build.py:276: Backslash patterns only on Windows 822s SKIPPED [1] tests/unit/plugins/module_utils/_api/utils/test_config.py:76: condition: sys.platform != 'win32' 822s SKIPPED [1] tests/unit/plugins/module_utils/_api/utils/test_utils.py:471: shlex doesn't support bytes in py3 822s ======================= 534 passed, 17 skipped in 5.24s ======================== 822s Unit test controller with Python 3.13 823s ============================= test session starts ============================== 823s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 823s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/docker 823s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 823s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 823s created: 2/2 workers 823s 2 workers [16 items] 823s 824s ................ [100%] 824s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/docker/tests/output/junit/python3.13-controller-units.xml - 824s ============================== 16 passed in 1.33s ============================== 824s 824s 824s 824s ############################################################ 824s ############################################################ 824s #### Running tests in ansible_collections/community/vmware 824s ############################################################ 824s ############################################################ 824s Unit test controller with Python 3.13 825s ============================= test session starts ============================== 825s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 825s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/vmware 825s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 825s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 825s created: 2/2 workers 825s 2 workers [32 items] 825s 826s ................................ [100%] 826s =============================== warnings summary =============================== 826s tests/unit/module_utils/test_vmware.py::test_required_params[validate_certs] 826s tests/unit/modules/cloud/vmware/test_vmware_guest.py::test_vmware_guest_with_parameters[patch_ansible_module0-testcase0] 826s tests/unit/modules/cloud/vmware/test_vmware_guest.py::test_vmware_guest_with_parameters[patch_ansible_module5-testcase5] 826s tests/unit/modules/cloud/vmware/test_vmware_guest.py::test_vmware_guest_with_parameters[patch_ansible_module7-testcase7] 826s /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/vmware/plugins/module_utils/vmware.py:752: DeprecationWarning: ssl.PROTOCOL_TLS is deprecated 826s ssl_context = ssl.SSLContext(ssl.PROTOCOL_SSLv23) 826s 826s tests/unit/module_utils/test_vmware.py::test_required_params[valid_http_proxy] 826s tests/unit/modules/cloud/vmware/test_vmware_guest.py::test_vmware_guest_with_parameters[patch_ansible_module6-testcase6] 826s /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/vmware/plugins/module_utils/vmware.py:757: DeprecationWarning: ssl.PROTOCOL_TLS is deprecated 826s ssl_context = ssl.SSLContext(ssl.PROTOCOL_SSLv23) 826s 826s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 826s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/vmware/tests/output/junit/python3.13-controller-units.xml - 826s ======================== 32 passed, 6 warnings in 1.17s ======================== 826s 826s 826s 826s ############################################################ 826s ############################################################ 826s #### Running tests in ansible_collections/community/digitalocean 826s ############################################################ 826s ############################################################ 826s Unit test modules with Python 3.13 827s ============================= test session starts ============================== 827s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 827s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/digitalocean 827s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 827s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 827s created: 2/2 workers 827s 2 workers [32 items] 827s 827s ................................ [100%] 827s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/digitalocean/tests/output/junit/python3.13-modules-units.xml - 827s ============================== 32 passed in 1.07s ============================== 827s Unit test controller with Python 3.13 828s ============================= test session starts ============================== 828s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 828s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/digitalocean 828s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 828s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 828s created: 2/2 workers 828s 2 workers [14 items] 828s 829s .............. [100%] 829s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/digitalocean/tests/output/junit/python3.13-controller-units.xml - 829s ============================== 14 passed in 0.98s ============================== 829s 829s 829s 829s ############################################################ 829s ############################################################ 829s #### Running tests in ansible_collections/community/postgresql 829s ############################################################ 829s ############################################################ 829s Unit test modules with Python 3.13 830s ============================= test session starts ============================== 830s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 830s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/postgresql 830s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 830s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 830s created: 2/2 workers 830s 2 workers [30 items] 830s 830s .............................. [100%] 830s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/postgresql/tests/output/junit/python3.13-modules-units.xml - 830s ============================== 30 passed in 0.92s ============================== 830s Unit test module_utils with Python 3.13 831s ============================= test session starts ============================== 831s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 831s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/postgresql 831s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 831s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 831s created: 2/2 workers 831s 2 workers [41 items] 831s 831s ......................................... [100%] 831s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/postgresql/tests/output/junit/python3.13-module_utils-units.xml - 831s ============================== 41 passed in 0.84s ============================== 832s 832s 832s 832s ############################################################ 832s ############################################################ 832s #### Running tests in ansible_collections/community/crypto 832s ############################################################ 832s ############################################################ 832s Unit test modules with Python 3.13 833s ============================= test session starts ============================== 833s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 833s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/crypto 833s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 833s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 833s created: 2/2 workers 833s 2 workers [76 items] 833s 833s ........................................................................ [ 94%] 833s .... [100%] 833s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/crypto/tests/output/junit/python3.13-modules-units.xml - 833s ============================== 76 passed in 0.95s ============================== 833s Unit test module_utils with Python 3.13 834s ============================= test session starts ============================== 834s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 834s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/crypto 834s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 834s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 834s created: 2/2 workers 834s 2 workers [520 items] 834s 837s ........................................................................ [ 13%] 838s .......................................................sssss.ss......... [ 27%] 838s ........................................................................ [ 41%] 838s ..................s.s.s.s..s.s.s..s..................................... [ 55%] 842s ........................................................................ [ 69%] 844s ........................................................................ [ 83%] 846s ........................................................................ [ 96%] 847s ................ [100%] 847s =============================== warnings summary =============================== 847s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_default_key_params[dsa-None-None-None] 847s /tmp/autopkgtest.HDQhnz/build.1ev/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 847s pair = OpensshKeypair.generate(keytype=keytype, size=size, passphrase=passphrase, comment=comment) 847s 847s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_default_key_params[dsa-None-None-None] 847s /tmp/autopkgtest.HDQhnz/build.1ev/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 847s pair = OpensshKeypair.generate(keytype=keytype, size=size, passphrase=passphrase, comment=comment) 847s 847s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison 847s /tmp/autopkgtest.HDQhnz/build.1ev/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 847s assert OpensshKeypair.generate() != OpensshKeypair.generate(keytype='dsa') 847s 847s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison 847s /tmp/autopkgtest.HDQhnz/build.1ev/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 847s 'pair': OpensshKeypair.generate(keytype='dsa', passphrase='change_me'.encode('UTF-8')), 847s 847s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison 847s /tmp/autopkgtest.HDQhnz/build.1ev/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. 847s privatekey = privatekey_loader( 847s 847s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison 847s /tmp/autopkgtest.HDQhnz/build.1ev/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. 847s publickey = publickey_loader( 847s 847s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison 847s /tmp/autopkgtest.HDQhnz/build.1ev/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 847s loaded_dsa_key = OpensshKeypair.load(path=keys['dsa']['filename'], passphrase='change_me'.encode('UTF-8')) 847s 847s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison 847s /tmp/autopkgtest.HDQhnz/build.1ev/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 847s loaded_dsa_key.update_passphrase('change_me_again'.encode('UTF-8')) 847s 847s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison 847s /tmp/autopkgtest.HDQhnz/build.1ev/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 847s loaded_dsa_key.update_passphrase('change_me'.encode('UTF-8')) 847s 847s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_valid_user_key_params[dsa-1024-change_me-comment] 847s /tmp/autopkgtest.HDQhnz/build.1ev/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 847s pair = OpensshKeypair.generate(keytype=keytype, size=size, passphrase=passphrase, comment=comment) 847s 847s tests/unit/plugins/module_utils/test_time.py: 16 warnings 847s /tmp/autopkgtest.HDQhnz/build.1ev/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). 847s return datetime.datetime.utcfromtimestamp(timestamp) 847s 847s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 847s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/crypto/tests/output/junit/python3.13-module_utils-units.xml - 847s =========================== short test summary info ============================ 847s SKIPPED [15] tests/unit/plugins/module_utils/crypto/test_asn1.py:78: unconditional skip 847s ================ 505 passed, 15 skipped, 26 warnings in 13.17s ================= 847s Skipping ansible_collections/community/general 847s Skipping ansible_collections/community/library_inventory_filtering_v1 847s 847s 847s 847s ############################################################ 847s ############################################################ 847s #### Running tests in ansible_collections/community/mysql 847s ############################################################ 847s ############################################################ 847s Unit test modules with Python 3.13 848s ============================= test session starts ============================== 848s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 848s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/mysql 848s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 848s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 848s created: 2/2 workers 848s 2 workers [43 items] 848s 848s ........................................... [100%] 848s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/mysql/tests/output/junit/python3.13-modules-units.xml - 848s ============================== 43 passed in 0.88s ============================== 848s Unit test module_utils with Python 3.13 849s ============================= test session starts ============================== 849s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 849s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/mysql 849s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 849s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 849s created: 2/2 workers 849s 2 workers [84 items] 849s 849s ........................................................................ [ 85%] 850s ............ [100%] 850s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/mysql/tests/output/junit/python3.13-module_utils-units.xml - 850s ============================== 84 passed in 1.05s ============================== 850s 850s 850s 850s ############################################################ 850s ############################################################ 850s #### Running tests in ansible_collections/community/network 850s ############################################################ 850s ############################################################ 850s Unit test modules with Python 3.13 854s ============================= test session starts ============================== 854s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 854s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/network 854s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 854s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 854s created: 2/2 workers 854s 2 workers [930 items] 854s 855s ........................................................................ [ 7%] 856s ........................................................................ [ 15%] 857s ........................................................................ [ 23%] 858s ........................................................................ [ 30%] 858s ........................................................................ [ 38%] 859s ........................................................................ [ 46%] 860s ........................................................................ [ 54%] 861s ........................................................................ [ 61%] 862s ...........................................................ss.sss.sss.ss [ 69%] 863s .sss.ss.sss.sss.ss.sss.sss.sss.ss.sss.ss.ss.ss.ss.s.ss.ss.ss.sss.s...... [ 77%] 864s ...................ss.s.ss.............................................. [ 85%] 864s ........................................................................ [ 92%] 865s .................................................................. [100%] 865s =============================== warnings summary =============================== 865s tests/unit/plugins/modules/test_ce_is_is_instance.py::TestCloudEngineLacpModule::test_isis_instance_present 865s tests/unit/plugins/modules/test_ce_is_is_instance.py::TestCloudEngineLacpModule::test_isis_instance_present 865s /tmp/autopkgtest.HDQhnz/build.1ev/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. 865s if glb: 865s 865s tests/unit/plugins/modules/test_ce_is_is_interface.py::TestCloudEngineLacpModule::test_isis_interface_absent 865s tests/unit/plugins/modules/test_ce_is_is_interface.py::TestCloudEngineLacpModule::test_isis_interface_absent 865s tests/unit/plugins/modules/test_ce_is_is_interface.py::TestCloudEngineLacpModule::test_isis_interface_present 865s tests/unit/plugins/modules/test_ce_is_is_interface.py::TestCloudEngineLacpModule::test_isis_interface_present 865s /tmp/autopkgtest.HDQhnz/build.1ev/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. 865s if glb: 865s 865s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 865s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/network/tests/output/junit/python3.13-modules-units.xml - 865s =========================== short test summary info ============================ 865s SKIPPED [61] tests/unit/plugins/modules/test_nuage_vspk.py: Nuage Ansible modules requires Python 2.7 865s ================= 869 passed, 61 skipped, 6 warnings in 14.97s ================= 865s Unit test module_utils with Python 3.13 866s ============================= test session starts ============================== 866s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 866s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/network 866s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 866s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 866s created: 2/2 workers 866s 2 workers [172 items] 866s 867s ........................................................................ [ 41%] 868s ........................................................................ [ 83%] 868s ............................ [100%] 868s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/network/tests/output/junit/python3.13-module_utils-units.xml - 868s ============================= 172 passed in 2.37s ============================== 868s Unit test controller with Python 3.13 869s ============================= test session starts ============================== 869s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 869s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/network 869s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 869s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 869s created: 2/2 workers 869s 2 workers [50 items] 869s 870s .................................................. [100%] 870s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/network/tests/output/junit/python3.13-controller-units.xml - 870s ============================== 50 passed in 1.24s ============================== 870s Skipping ansible_collections/community/hrobot 870s Skipping ansible_collections/community/dns 870s 870s 870s 870s ############################################################ 870s ############################################################ 870s #### Running tests in ansible_collections/community/routeros 870s ############################################################ 870s ############################################################ 870s Unit test modules with Python 3.13 871s ============================= test session starts ============================== 871s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 871s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/routeros 871s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 871s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 871s created: 2/2 workers 871s 2 workers [115 items] 871s 872s ........................................................................ [ 62%] 872s ........................................... [100%] 872s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/routeros/tests/output/junit/python3.13-modules-units.xml - 872s ============================= 115 passed in 1.96s ============================== 872s Unit test module_utils with Python 3.13 873s ============================= test session starts ============================== 873s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 873s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/routeros 873s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 873s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 873s created: 2/2 workers 873s 2 workers [146 items] 873s 874s ........................................................................ [ 49%] 874s ........................................................................ [ 98%] 874s .. [100%] 874s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/routeros/tests/output/junit/python3.13-module_utils-units.xml - 874s ============================= 146 passed in 1.69s ============================== 874s 874s 874s 874s ############################################################ 874s ############################################################ 874s #### Running tests in ansible_collections/community/aws 874s ############################################################ 874s ############################################################ 875s Unit test modules with Python 3.13 876s ============================= test session starts ============================== 876s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 876s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/aws 876s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 876s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 876s created: 2/2 workers 876s 2 workers [33 items] 876s 876s ................................. [100%] 876s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/aws/tests/output/junit/python3.13-modules-units.xml - 876s =========================== short test summary info ============================ 876s SKIPPED [1] ../../amazon/aws/tests/unit/utils/amazon_placebo_fixtures.py:16: could not import 'placebo': No module named 'placebo' 876s ======================== 33 passed, 1 skipped in 1.18s ========================= 876s Unit test controller with Python 3.13 877s ============================= test session starts ============================== 877s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 877s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/aws 877s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 877s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 877s created: 2/2 workers 877s 2 workers [52 items] 877s 878s .................................................... [100%] 878s =============================== warnings summary =============================== 878s tests/unit/plugins/connection/test_aws_ssm.py::TestConnectionBaseClass::test_plugins_connection_aws_ssm_start_session 878s /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:85: PytestUnraisableExceptionWarning: Exception ignored in: 878s 878s Traceback (most recent call last): 878s File "/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/aws/plugins/connection/aws_ssm.py", line 496, in __del__ 878s self.close() 878s ~~~~~~~~~~^^ 878s File "/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/aws/plugins/connection/aws_ssm.py", line 961, in close 878s self._vvv(f"CLOSING SSM CONNECTION TO: {self.instance_id}") 878s ^^^^^^^^^^^^^^^^ 878s AttributeError: 'Connection' object has no attribute 'instance_id' 878s 878s warnings.warn(pytest.PytestUnraisableExceptionWarning(msg)) 878s 878s tests/unit/plugins/connection/test_aws_ssm.py::TestConnectionBaseClass::test_plugins_connection_aws_ssm_exec_command 878s /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`? 878s warnings.warn( 878s 878s tests/unit/plugins/connection/test_aws_ssm.py::TestConnectionBaseClass::test_plugins_connection_aws_ssm_wrap_command 878s /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`? 878s warnings.warn( 878s 878s tests/unit/plugins/connection/test_aws_ssm.py::TestConnectionBaseClass::test_plugins_connection_aws_ssm_post_process 878s /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`? 878s warnings.warn( 878s 878s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 878s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/aws/tests/output/junit/python3.13-controller-units.xml - 878s ======================== 52 passed, 4 warnings in 1.47s ======================== 878s 878s 878s 878s ############################################################ 878s ############################################################ 878s #### Running tests in ansible_collections/community/ciscosmb 878s ############################################################ 878s ############################################################ 878s Unit test modules with Python 3.13 879s ============================= test session starts ============================== 879s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 879s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/ciscosmb 879s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 879s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 879s created: 2/2 workers 879s 2 workers [56 items] 879s 880s ........................................................ [100%] 880s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/ciscosmb/tests/output/junit/python3.13-modules-units.xml - 880s ============================== 56 passed in 1.18s ============================== 880s 880s 880s 880s ############################################################ 880s ############################################################ 880s #### Running tests in ansible_collections/community/libvirt 880s ############################################################ 880s ############################################################ 880s Unit test controller with Python 3.13 881s ============================= test session starts ============================== 881s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 881s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/libvirt 881s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 881s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 881s created: 2/2 workers 881s 2 workers [4 items] 881s 881s .... [100%] 881s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/libvirt/tests/output/junit/python3.13-controller-units.xml - 881s ============================== 4 passed in 0.58s =============================== 881s 881s 881s 881s ############################################################ 881s ############################################################ 881s #### Running tests in ansible_collections/community/okd 881s ############################################################ 881s ############################################################ 881s Unit test modules with Python 3.13 883s ============================= test session starts ============================== 883s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 883s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/okd 883s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 883s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 883s created: 2/2 workers 883s 2 workers [13 items] 883s 883s ............. [100%] 883s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/okd/tests/output/junit/python3.13-modules-units.xml - 883s ============================== 13 passed in 1.17s ============================== 883s Unit test module_utils with Python 3.13 884s ============================= test session starts ============================== 884s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 884s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/okd 884s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 884s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 884s created: 2/2 workers 884s 2 workers [15 items] 884s 884s .s.s........... [100%] 884s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/okd/tests/output/junit/python3.13-module_utils-units.xml - 884s =========================== short test summary info ============================ 884s SKIPPED [2] tests/unit/plugins/module_utils/test_ldap_dn.py: This test requires the python-ldap library 884s ======================== 13 passed, 2 skipped in 0.63s ========================= 884s 884s 884s 884s ############################################################ 884s ############################################################ 884s #### Running tests in ansible_collections/community/rabbitmq 884s ############################################################ 884s ############################################################ 884s Unit test controller with Python 3.13 885s ============================= test session starts ============================== 885s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 885s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/rabbitmq 885s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 885s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 885s created: 2/2 workers 885s 2 workers [30 items] 885s 886s .............................. [100%] 886s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/rabbitmq/tests/output/junit/python3.13-controller-units.xml - 886s ============================== 30 passed in 1.03s ============================== 886s 886s 886s 886s ############################################################ 886s ############################################################ 886s #### Running tests in ansible_collections/community/hashi_vault 886s ############################################################ 886s ############################################################ 886s Unit test modules with Python 3.13 888s ============================= test session starts ============================== 888s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 888s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hashi_vault 888s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 888s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 888s created: 2/2 workers 888s 2 workers [281 items] 888s 888s ........................................................................ [ 25%] 889s ........................................................................ [ 51%] 890s ........................................................................ [ 76%] 891s ................................................................. [100%] 891s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hashi_vault/tests/output/junit/python3.13-modules-units.xml - 891s ============================= 281 passed in 4.37s ============================== 891s Unit test module_utils with Python 3.13 892s ============================= test session starts ============================== 892s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 892s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hashi_vault 892s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 892s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 892s created: 2/2 workers 892s 2 workers [1436 items] 892s 893s ........................................................................ [ 5%] 893s ........................................................................ [ 10%] 894s ........................................................................ [ 15%] 895s ........................................................................ [ 20%] 895s ........................................................................ [ 25%] 896s ........................................................................ [ 30%] 897s ........................................................................ [ 35%] 897s ........................................................................ [ 40%] 898s ........................................................................ [ 45%] 898s ........................................................................ [ 50%] 899s ........................................................................ [ 55%] 899s ........................................................................ [ 60%] 900s ........................................................................ [ 65%] 900s ........................................................................ [ 70%] 901s ........................................................................ [ 75%] 901s ........................................................................ [ 80%] 902s ........................................................................ [ 85%] 902s ........................................................................ [ 90%] 902s ........................................................................ [ 95%] 903s .................................................................... [100%] 903s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hashi_vault/tests/output/junit/python3.13-module_utils-units.xml - 903s ============================ 1436 passed in 11.60s ============================= 903s Unit test controller with Python 3.13 905s ============================= test session starts ============================== 905s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 905s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hashi_vault 905s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 905s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 905s created: 2/2 workers 905s 2 workers [619 items] 905s 906s ........................................................................ [ 11%] 907s ........................................................................ [ 23%] 908s ........................................................................ [ 34%] 908s ........................................................................ [ 46%] 910s ........................................................................ [ 58%] 911s ........................................................................ [ 69%] 912s ........................................................................ [ 81%] 912s ........................................................................ [ 93%] 913s ........................................... [100%] 913s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hashi_vault/tests/output/junit/python3.13-controller-units.xml - 913s ============================= 619 passed in 8.78s ============================== 913s 913s 913s 913s ############################################################ 913s ############################################################ 913s #### Running tests in ansible_collections/microsoft/ad 913s ############################################################ 913s ############################################################ 913s Unit test controller with Python 3.13 914s ============================= test session starts ============================== 914s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 914s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/microsoft/ad 914s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 914s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 914s created: 2/2 workers 914s 2 workers [118 items] 914s 914s ........................................................................ [ 61%] 917s .................s.s.......................... [100%] 917s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/microsoft/ad/tests/output/junit/python3.13-controller-units.xml - 917s =========================== short test summary info ============================ 917s SKIPPED [1] tests/unit/plugins/plugin_utils/_ldap/test_laps.py:9: could not import 'dpapi_ng': No module named 'dpapi_ng' 917s SKIPPED [1] tests/unit/plugins/plugin_utils/_ldap/test_schema.py:8: could not import 'sansldap': No module named 'sansldap' 917s SKIPPED [1] tests/unit/plugins/plugin_utils/_ldap/test_certificate.py:179: Hash algorithm is unavailable: Hash algorithm "md5" not supported for signatures 917s SKIPPED [1] tests/unit/plugins/plugin_utils/_ldap/test_certificate.py:179: Hash algorithm is unavailable: Hash algorithm "sha1" not supported for signatures 917s ======================== 116 passed, 4 skipped in 3.82s ======================== 917s 917s 917s 917s ############################################################ 917s ############################################################ 917s #### Running tests in ansible_collections/netbox/netbox 917s ############################################################ 917s ############################################################ 917s Unit test controller with Python 3.13 918s ============================= test session starts ============================== 918s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 918s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netbox/netbox 918s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 918s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 918s created: 2/2 workers 918s 2 workers [208 items] 918s 919s ........................................................................ [ 34%] 920s ........................................................................ [ 69%] 920s ................................................................ [100%] 920s =============================== warnings summary =============================== 920s tests/unit/inventory/test_nb_inventory.py::test_refresh_lookups 920s /usr/lib/python3/dist-packages/_pytest/threadexception.py:82: PytestUnhandledThreadExceptionWarning: Exception in thread Thread-2 (wrapper) 920s 920s Traceback (most recent call last): 920s File "/usr/lib/python3.13/threading.py", line 1041, in _bootstrap_inner 920s self.run() 920s ~~~~~~~~^^ 920s File "/usr/lib/python3.13/threading.py", line 992, in run 920s self._target(*self._args, **self._kwargs) 920s ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 920s File "/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netbox/netbox/plugins/inventory/nb_inventory.py", line 1569, in wrapper 920s raise e 920s File "/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netbox/netbox/plugins/inventory/nb_inventory.py", line 1564, in wrapper 920s lookup() 920s ~~~~~~^^ 920s File "/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netbox/netbox/tests/unit/inventory/test_nb_inventory.py", line 154, in raises_exception 920s raise Exception("Error from within a thread") 920s Exception: Error from within a thread 920s 920s warnings.warn(pytest.PytestUnhandledThreadExceptionWarning(msg)) 920s 920s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 920s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netbox/netbox/tests/output/junit/python3.13-controller-units.xml - 920s ======================== 208 passed, 1 warning in 2.49s ======================== 920s Skipping ansible_collections/infoblox/nios_modules 920s 920s 920s 920s ############################################################ 920s ############################################################ 920s #### Running tests in ansible_collections/containers/podman 920s ############################################################ 920s ############################################################ 920s Unit test modules with Python 3.13 921s ============================= test session starts ============================== 921s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 921s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/containers/podman 921s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 921s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 921s created: 2/2 workers 921s 2 workers [10 items] 921s 921s .......... [100%] 921s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/containers/podman/tests/output/junit/python3.13-modules-units.xml - 921s ============================== 10 passed in 0.63s ============================== 922s autopkgtest [22:00:24]: test unit-tests-stable.py: -----------------------] 922s autopkgtest [22:00:24]: test unit-tests-stable.py: - - - - - - - - - - results - - - - - - - - - - 922s unit-tests-stable.py PASS 923s autopkgtest [22:00:25]: test unit-tests-flaky.py: preparing testbed 991s autopkgtest [22:01:33]: testbed dpkg architecture: amd64 991s autopkgtest [22:01:33]: testbed apt version: 3.0.0 992s autopkgtest [22:01:34]: @@@@@@@@@@@@@@@@@@@@ test bed setup 992s autopkgtest [22:01:34]: testbed release detected to be: questing 993s autopkgtest [22:01:35]: updating testbed package index (apt update) 993s Get:1 http://ftpmaster.internal/ubuntu questing-proposed InRelease [110 kB] 993s Hit:2 http://ftpmaster.internal/ubuntu questing InRelease 993s Hit:3 http://ftpmaster.internal/ubuntu questing-updates InRelease 993s Hit:4 http://ftpmaster.internal/ubuntu questing-security InRelease 993s Get:5 http://ftpmaster.internal/ubuntu questing-proposed/multiverse Sources [33.6 kB] 993s Get:6 http://ftpmaster.internal/ubuntu questing-proposed/universe Sources [1412 kB] 994s Get:7 http://ftpmaster.internal/ubuntu questing-proposed/main Sources [147 kB] 994s Get:8 http://ftpmaster.internal/ubuntu questing-proposed/main amd64 Packages [201 kB] 994s Get:9 http://ftpmaster.internal/ubuntu questing-proposed/main i386 Packages [145 kB] 994s Get:10 http://ftpmaster.internal/ubuntu questing-proposed/universe i386 Packages [573 kB] 994s Get:11 http://ftpmaster.internal/ubuntu questing-proposed/universe amd64 Packages [1422 kB] 994s Get:12 http://ftpmaster.internal/ubuntu questing-proposed/multiverse amd64 Packages [51.1 kB] 994s Get:13 http://ftpmaster.internal/ubuntu questing-proposed/multiverse i386 Packages [24.0 kB] 994s Fetched 4118 kB in 1s (3817 kB/s) 995s Reading package lists... 995s autopkgtest [22:01:37]: upgrading testbed (apt dist-upgrade and autopurge) 995s Reading package lists... 996s Building dependency tree... 996s Reading state information... 996s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 996s Starting 2 pkgProblemResolver with broken count: 0 996s Done 997s Entering ResolveByKeep 997s 997s Calculating upgrade... 997s The following packages will be upgraded: 997s cloud-init cloud-init-base debianutils libmbim-glib4 libmbim-proxy 997s libnftnl11 libqmi-glib5 libqmi-proxy libsepol2 python3-lazr.restfulclient 997s sos 997s 11 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 997s Need to get 2693 kB of archives. 997s After this operation, 104 kB disk space will be freed. 997s Get:1 http://ftpmaster.internal/ubuntu questing/main amd64 debianutils amd64 5.22 [93.0 kB] 997s Get:2 http://ftpmaster.internal/ubuntu questing/main amd64 libsepol2 amd64 3.8.1-1 [327 kB] 998s Get:3 http://ftpmaster.internal/ubuntu questing/main amd64 libnftnl11 amd64 1.2.9-1 [69.1 kB] 998s Get:4 http://ftpmaster.internal/ubuntu questing/main amd64 cloud-init-base all 25.2~1g7a0265d3-0ubuntu1 [619 kB] 998s Get:5 http://ftpmaster.internal/ubuntu questing/main amd64 libmbim-proxy amd64 1.32.0-1 [6276 B] 998s Get:6 http://ftpmaster.internal/ubuntu questing/main amd64 libmbim-glib4 amd64 1.32.0-1 [233 kB] 998s Get:7 http://ftpmaster.internal/ubuntu questing/main amd64 libqmi-proxy amd64 1.36.0-1 [6220 B] 998s Get:8 http://ftpmaster.internal/ubuntu questing/main amd64 libqmi-glib5 amd64 1.36.0-1 [920 kB] 998s Get:9 http://ftpmaster.internal/ubuntu questing/main amd64 python3-lazr.restfulclient all 0.14.6-3 [51.0 kB] 998s Get:10 http://ftpmaster.internal/ubuntu questing/main amd64 sos all 4.9.1-1 [367 kB] 998s Get:11 http://ftpmaster.internal/ubuntu questing/main amd64 cloud-init all 25.2~1g7a0265d3-0ubuntu1 [2106 B] 998s Preconfiguring packages ... 998s Fetched 2693 kB in 1s (4207 kB/s) 998s (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 ... 80514 files and directories currently installed.) 998s Preparing to unpack .../debianutils_5.22_amd64.deb ... 998s Unpacking debianutils (5.22) over (5.21) ... 998s Setting up debianutils (5.22) ... 998s (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 ... 80514 files and directories currently installed.) 998s Preparing to unpack .../libsepol2_3.8.1-1_amd64.deb ... 998s Unpacking libsepol2:amd64 (3.8.1-1) over (3.7-1) ... 999s Setting up libsepol2:amd64 (3.8.1-1) ... 999s (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 ... 80514 files and directories currently installed.) 999s Preparing to unpack .../0-libnftnl11_1.2.9-1_amd64.deb ... 999s Unpacking libnftnl11:amd64 (1.2.9-1) over (1.2.8-1) ... 999s Preparing to unpack .../1-cloud-init-base_25.2~1g7a0265d3-0ubuntu1_all.deb ... 999s Unpacking cloud-init-base (25.2~1g7a0265d3-0ubuntu1) over (25.1.1-0ubuntu2) ... 999s Preparing to unpack .../2-libmbim-proxy_1.32.0-1_amd64.deb ... 999s Unpacking libmbim-proxy (1.32.0-1) over (1.31.2-0ubuntu4) ... 999s Preparing to unpack .../3-libmbim-glib4_1.32.0-1_amd64.deb ... 999s Unpacking libmbim-glib4:amd64 (1.32.0-1) over (1.31.2-0ubuntu4) ... 999s Preparing to unpack .../4-libqmi-proxy_1.36.0-1_amd64.deb ... 999s Unpacking libqmi-proxy (1.36.0-1) over (1.35.6-1) ... 999s Preparing to unpack .../5-libqmi-glib5_1.36.0-1_amd64.deb ... 999s Unpacking libqmi-glib5:amd64 (1.36.0-1) over (1.35.6-1) ... 999s Preparing to unpack .../6-python3-lazr.restfulclient_0.14.6-3_all.deb ... 999s Unpacking python3-lazr.restfulclient (0.14.6-3) over (0.14.6-2) ... 999s Preparing to unpack .../7-sos_4.9.1-1_all.deb ... 999s Unpacking sos (4.9.1-1) over (4.9.0-6) ... 1000s Preparing to unpack .../8-cloud-init_25.2~1g7a0265d3-0ubuntu1_all.deb ... 1000s Unpacking cloud-init (25.2~1g7a0265d3-0ubuntu1) over (25.1.1-0ubuntu2) ... 1000s Setting up sos (4.9.1-1) ... 1000s Setting up libnftnl11:amd64 (1.2.9-1) ... 1000s Setting up cloud-init-base (25.2~1g7a0265d3-0ubuntu1) ... 1002s Setting up python3-lazr.restfulclient (0.14.6-3) ... 1002s Setting up libmbim-glib4:amd64 (1.32.0-1) ... 1002s Setting up cloud-init (25.2~1g7a0265d3-0ubuntu1) ... 1002s Setting up libmbim-proxy (1.32.0-1) ... 1002s Setting up libqmi-glib5:amd64 (1.36.0-1) ... 1002s Setting up libqmi-proxy (1.36.0-1) ... 1002s Processing triggers for libc-bin (2.41-6ubuntu1) ... 1002s Processing triggers for rsyslog (8.2412.0-2ubuntu2) ... 1002s Processing triggers for man-db (2.13.0-1) ... 1004s Reading package lists... 1004s Building dependency tree... 1004s Reading state information... 1004s Starting pkgProblemResolver with broken count: 0 1004s Starting 2 pkgProblemResolver with broken count: 0 1004s Done 1005s Solving dependencies... 1005s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1005s autopkgtest [22:01:47]: rebooting testbed after setup commands that affected boot 1018s autopkgtest-virt-ssh: WARNING: ssh connection failed. Retrying in 3 seconds... 1027s Reading package lists... 1028s Building dependency tree... 1028s Reading state information... 1028s Starting pkgProblemResolver with broken count: 0 1028s Starting 2 pkgProblemResolver with broken count: 0 1028s Done 1028s The following NEW packages will be installed: 1028s ansible ansible-core fontconfig-config fonts-dejavu-core fonts-dejavu-mono 1028s gir1.2-secret-1 git git-man libcairo-gobject2 libcairo2 liberror-perl 1028s libfontconfig1 libpixman-1-0 libsecret-1-0 libsecret-common libsodium23 1028s libxcb-render0 libxcb-shm0 libxrender1 libxslt1.1 python3-adal 1028s python3-aiohappyeyeballs python3-aiohttp python3-aiosignal 1028s python3-async-timeout python3-avro python3-azure python3-azure-storage 1028s python3-cachetools python3-cairo python3-click python3-colorama 1028s python3-dnspython python3-execnet python3-flake8 python3-freezegun 1028s python3-frozenlist python3-gi-cairo python3-gitlab python3-google-auth 1028s python3-httmock python3-hvac python3-iniconfig python3-isodate 1028s python3-joblib python3-kubernetes python3-lxml python3-marshmallow 1028s python3-mccabe python3-mock python3-msal python3-msal-extensions 1028s python3-msrest python3-msrestazure python3-multidict python3-nacl 1028s python3-nltk python3-paramiko python3-pathspec python3-pluggy 1028s python3-portalocker python3-proxmoxer python3-psutil python3-py 1028s python3-pyasn1 python3-pyasn1-modules python3-pycodestyle python3-pydash 1028s python3-pyflakes python3-pyhcl python3-pytest python3-pytest-forked 1028s python3-pytest-mock python3-pytest-xdist python3-pyu2f python3-pyvmomi 1028s python3-redis python3-regex python3-requests-oauthlib 1028s python3-requests-toolbelt python3-resolvelib python3-responses python3-rsa 1028s python3-ruamel.yaml python3-ruamel.yaml.clib python3-strictyaml 1029s python3-textfsm python3-tqdm python3-websocket python3-xmltodict 1029s python3-yarl yamllint 1029s 0 upgraded, 92 newly installed, 0 to remove and 0 not upgraded. 1029s Need to get 52.6 MB of archives. 1029s After this operation, 889 MB of additional disk space will be used. 1029s Get:1 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-resolvelib all 1.1.0-1 [25.8 kB] 1029s Get:2 http://ftpmaster.internal/ubuntu questing/main amd64 libsodium23 amd64 1.0.18-1build3 [161 kB] 1029s Get:3 http://ftpmaster.internal/ubuntu questing/main amd64 python3-nacl amd64 1.5.0-7 [61.0 kB] 1029s Get:4 http://ftpmaster.internal/ubuntu questing/main amd64 python3-paramiko all 3.5.1-2ubuntu1 [147 kB] 1029s Get:5 http://ftpmaster.internal/ubuntu questing/main amd64 python3-dnspython all 2.7.0-1ubuntu1 [167 kB] 1029s Get:6 http://ftpmaster.internal/ubuntu questing/universe amd64 ansible-core all 2.18.1-4ubuntu1 [1273 kB] 1029s Get:7 http://ftpmaster.internal/ubuntu questing/universe amd64 ansible all 11.2.0+dfsg-1 [18.1 MB] 1030s Get:8 http://ftpmaster.internal/ubuntu questing/main amd64 fonts-dejavu-mono all 2.37-8 [502 kB] 1030s Get:9 http://ftpmaster.internal/ubuntu questing/main amd64 fonts-dejavu-core all 2.37-8 [835 kB] 1030s Get:10 http://ftpmaster.internal/ubuntu questing/main amd64 fontconfig-config amd64 2.15.0-2.2ubuntu1 [37.8 kB] 1030s Get:11 http://ftpmaster.internal/ubuntu questing/main amd64 libsecret-common all 0.21.7-1 [5160 B] 1030s Get:12 http://ftpmaster.internal/ubuntu questing/main amd64 libsecret-1-0 amd64 0.21.7-1 [118 kB] 1030s Get:13 http://ftpmaster.internal/ubuntu questing/main amd64 gir1.2-secret-1 amd64 0.21.7-1 [9388 B] 1030s Get:14 http://ftpmaster.internal/ubuntu questing/main amd64 liberror-perl all 0.17030-1 [23.5 kB] 1030s Get:15 http://ftpmaster.internal/ubuntu questing/main amd64 git-man all 1:2.48.1-0ubuntu1 [1148 kB] 1030s Get:16 http://ftpmaster.internal/ubuntu questing/main amd64 git amd64 1:2.48.1-0ubuntu1 [4759 kB] 1030s Get:17 http://ftpmaster.internal/ubuntu questing/main amd64 libfontconfig1 amd64 2.15.0-2.2ubuntu1 [164 kB] 1030s Get:18 http://ftpmaster.internal/ubuntu questing/main amd64 libpixman-1-0 amd64 0.44.0-3 [427 kB] 1030s Get:19 http://ftpmaster.internal/ubuntu questing/main amd64 libxcb-render0 amd64 1.17.0-2 [16.2 kB] 1030s Get:20 http://ftpmaster.internal/ubuntu questing/main amd64 libxcb-shm0 amd64 1.17.0-2 [5758 B] 1030s Get:21 http://ftpmaster.internal/ubuntu questing/main amd64 libxrender1 amd64 1:0.9.10-1.1build1 [19.0 kB] 1030s Get:22 http://ftpmaster.internal/ubuntu questing/main amd64 libcairo2 amd64 1.18.4-1 [662 kB] 1030s Get:23 http://ftpmaster.internal/ubuntu questing/main amd64 libcairo-gobject2 amd64 1.18.4-1 [127 kB] 1030s Get:24 http://ftpmaster.internal/ubuntu questing/main amd64 libxslt1.1 amd64 1.1.39-0exp1ubuntu4 [176 kB] 1030s Get:25 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-adal all 1.2.7-5 [33.0 kB] 1030s Get:26 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-aiohappyeyeballs all 2.6.1-1 [11.1 kB] 1030s Get:27 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-multidict amd64 6.2.0-2 [35.6 kB] 1030s Get:28 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-yarl amd64 1.13.1-1build2 [99.7 kB] 1030s Get:29 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-async-timeout all 5.0.1-1 [6830 B] 1030s Get:30 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-frozenlist amd64 1.5.0-1build2 [51.6 kB] 1030s Get:31 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-aiosignal all 1.3.2-1 [5182 B] 1030s Get:32 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-aiohttp amd64 3.10.11-1build1 [316 kB] 1030s Get:33 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-avro all 1.12.0+dfsg-1 [75.3 kB] 1030s Get:34 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-isodate all 0.7.0-1 [18.6 kB] 1030s Get:35 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-requests-oauthlib all 1.3.1-1 [18.8 kB] 1030s Get:36 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-msrest all 0.6.21-5 [48.7 kB] 1030s Get:37 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-msrestazure all 0.6.4-4 [27.1 kB] 1030s Get:38 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-azure-storage all 20250304+git-1 [300 kB] 1030s Get:39 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-colorama all 0.4.6-4 [32.1 kB] 1030s Get:40 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-marshmallow all 3.26.1-0.2 [47.5 kB] 1030s Get:41 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-msal all 1.32.3-1 [101 kB] 1030s Get:42 http://ftpmaster.internal/ubuntu questing/main amd64 python3-cairo amd64 1.27.0-2 [124 kB] 1030s Get:43 http://ftpmaster.internal/ubuntu questing/main amd64 python3-gi-cairo amd64 3.50.0-4build1 [8232 B] 1030s Get:44 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-portalocker all 3.1.1-1 [20.9 kB] 1030s Get:45 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-msal-extensions all 1.3.1-1 [18.2 kB] 1030s Get:46 http://ftpmaster.internal/ubuntu questing/main amd64 python3-click all 8.2.0+0.really.8.1.8-1 [80.0 kB] 1030s Get:47 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-joblib all 1.4.2-3 [205 kB] 1030s Get:48 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-regex amd64 0.1.20241106-1build1 [304 kB] 1030s Get:49 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-tqdm all 4.67.1-3 [91.6 kB] 1030s Get:50 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-nltk all 3.9.1-2 [1006 kB] 1030s Get:51 http://ftpmaster.internal/ubuntu questing/main amd64 python3-psutil amd64 5.9.8-2build3 [196 kB] 1030s Get:52 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pydash all 8.0.5-1 [79.2 kB] 1030s Get:53 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-ruamel.yaml.clib amd64 0.2.12+ds-1build1 [164 kB] 1030s Get:54 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-ruamel.yaml all 0.18.10+ds-1 [127 kB] 1030s Get:55 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-strictyaml all 1.6.1-3 [89.1 kB] 1030s Get:56 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-websocket all 1.8.0-2 [38.5 kB] 1030s Get:57 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-azure all 20250304+git-1 [15.9 MB] 1032s Get:58 http://ftpmaster.internal/ubuntu questing/main amd64 python3-cachetools all 5.3.3-1 [10.3 kB] 1032s Get:59 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-execnet all 2.1.1-1 [33.4 kB] 1032s Get:60 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-mccabe all 0.7.0-1 [8678 B] 1032s Get:61 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pycodestyle all 2.12.1-2 [30.2 kB] 1032s Get:62 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pyflakes all 3.2.0-3 [53.0 kB] 1032s Get:63 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-flake8 all 7.1.1-3 [44.0 kB] 1032s Get:64 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-freezegun all 1.5.1-1.2 [15.9 kB] 1032s Get:65 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-requests-toolbelt all 1.0.0-4 [37.0 kB] 1032s Get:66 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-gitlab all 1:4.9.0-1 [75.0 kB] 1032s Get:67 http://ftpmaster.internal/ubuntu questing/main amd64 python3-pyasn1 all 0.6.1-1 [56.4 kB] 1032s Get:68 http://ftpmaster.internal/ubuntu questing/main amd64 python3-pyasn1-modules all 0.4.1-2 [80.3 kB] 1032s Get:69 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pyu2f all 0.1.5-4 [22.9 kB] 1032s Get:70 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-responses all 0.25.6-1 [40.5 kB] 1032s Get:71 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-rsa all 4.9-2 [28.2 kB] 1032s Get:72 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-google-auth all 2.28.2-3 [91.0 kB] 1032s Get:73 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-httmock all 1.4.0-5 [6544 B] 1032s Get:74 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pyhcl all 0.4.4-6 [43.1 kB] 1032s Get:75 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-hvac all 2.3.0-3 [88.1 kB] 1032s Get:76 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-iniconfig all 1.1.1-2 [6024 B] 1032s Get:77 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-kubernetes all 30.1.0-2 [385 kB] 1032s Get:78 http://ftpmaster.internal/ubuntu questing/main amd64 python3-lxml amd64 5.3.2-1 [1407 kB] 1032s Get:79 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pathspec all 0.12.1-1 [24.5 kB] 1032s Get:80 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pluggy all 1.5.0-1 [21.0 kB] 1032s Get:81 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-proxmoxer all 2.2.0-1 [16.2 kB] 1032s Get:82 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-py all 1.11.0-4 [72.7 kB] 1032s Get:83 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pytest all 8.3.5-1 [252 kB] 1032s Get:84 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pytest-forked all 1.6.0-3 [7470 B] 1032s Get:85 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pytest-mock all 3.14.0-2 [11.7 kB] 1032s Get:86 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pytest-xdist all 3.6.1-1 [33.8 kB] 1032s Get:87 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pyvmomi all 8.0.3.0.1-1 [532 kB] 1032s Get:88 http://ftpmaster.internal/ubuntu questing-proposed/universe amd64 python3-redis all 5.2.1-1 [221 kB] 1032s Get:89 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-textfsm all 2.1.0-1 [30.0 kB] 1032s Get:90 http://ftpmaster.internal/ubuntu questing/main amd64 python3-xmltodict all 0.13.0-1 [13.4 kB] 1032s Get:91 http://ftpmaster.internal/ubuntu questing/universe amd64 yamllint all 1.35.1-2 [43.6 kB] 1032s Get:92 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-mock all 5.1.0-1 [64.1 kB] 1032s Fetched 52.6 MB in 3s (15.4 MB/s) 1032s Selecting previously unselected package python3-resolvelib. 1033s (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 ... 80518 files and directories currently installed.) 1033s Preparing to unpack .../00-python3-resolvelib_1.1.0-1_all.deb ... 1033s Unpacking python3-resolvelib (1.1.0-1) ... 1033s Selecting previously unselected package libsodium23:amd64. 1033s Preparing to unpack .../01-libsodium23_1.0.18-1build3_amd64.deb ... 1033s Unpacking libsodium23:amd64 (1.0.18-1build3) ... 1033s Selecting previously unselected package python3-nacl. 1033s Preparing to unpack .../02-python3-nacl_1.5.0-7_amd64.deb ... 1033s Unpacking python3-nacl (1.5.0-7) ... 1033s Selecting previously unselected package python3-paramiko. 1033s Preparing to unpack .../03-python3-paramiko_3.5.1-2ubuntu1_all.deb ... 1033s Unpacking python3-paramiko (3.5.1-2ubuntu1) ... 1033s Selecting previously unselected package python3-dnspython. 1033s Preparing to unpack .../04-python3-dnspython_2.7.0-1ubuntu1_all.deb ... 1033s Unpacking python3-dnspython (2.7.0-1ubuntu1) ... 1033s Selecting previously unselected package ansible-core. 1033s Preparing to unpack .../05-ansible-core_2.18.1-4ubuntu1_all.deb ... 1033s Unpacking ansible-core (2.18.1-4ubuntu1) ... 1033s Selecting previously unselected package ansible. 1033s Preparing to unpack .../06-ansible_11.2.0+dfsg-1_all.deb ... 1033s Unpacking ansible (11.2.0+dfsg-1) ... 1036s Selecting previously unselected package fonts-dejavu-mono. 1036s Preparing to unpack .../07-fonts-dejavu-mono_2.37-8_all.deb ... 1036s Unpacking fonts-dejavu-mono (2.37-8) ... 1036s Selecting previously unselected package fonts-dejavu-core. 1036s Preparing to unpack .../08-fonts-dejavu-core_2.37-8_all.deb ... 1036s Unpacking fonts-dejavu-core (2.37-8) ... 1036s Selecting previously unselected package fontconfig-config. 1036s Preparing to unpack .../09-fontconfig-config_2.15.0-2.2ubuntu1_amd64.deb ... 1036s Unpacking fontconfig-config (2.15.0-2.2ubuntu1) ... 1036s Selecting previously unselected package libsecret-common. 1036s Preparing to unpack .../10-libsecret-common_0.21.7-1_all.deb ... 1036s Unpacking libsecret-common (0.21.7-1) ... 1036s Selecting previously unselected package libsecret-1-0:amd64. 1036s Preparing to unpack .../11-libsecret-1-0_0.21.7-1_amd64.deb ... 1036s Unpacking libsecret-1-0:amd64 (0.21.7-1) ... 1036s Selecting previously unselected package gir1.2-secret-1:amd64. 1036s Preparing to unpack .../12-gir1.2-secret-1_0.21.7-1_amd64.deb ... 1036s Unpacking gir1.2-secret-1:amd64 (0.21.7-1) ... 1036s Selecting previously unselected package liberror-perl. 1036s Preparing to unpack .../13-liberror-perl_0.17030-1_all.deb ... 1036s Unpacking liberror-perl (0.17030-1) ... 1036s Selecting previously unselected package git-man. 1036s Preparing to unpack .../14-git-man_1%3a2.48.1-0ubuntu1_all.deb ... 1036s Unpacking git-man (1:2.48.1-0ubuntu1) ... 1036s Selecting previously unselected package git. 1036s Preparing to unpack .../15-git_1%3a2.48.1-0ubuntu1_amd64.deb ... 1036s Unpacking git (1:2.48.1-0ubuntu1) ... 1037s Selecting previously unselected package libfontconfig1:amd64. 1037s Preparing to unpack .../16-libfontconfig1_2.15.0-2.2ubuntu1_amd64.deb ... 1037s Unpacking libfontconfig1:amd64 (2.15.0-2.2ubuntu1) ... 1037s Selecting previously unselected package libpixman-1-0:amd64. 1037s Preparing to unpack .../17-libpixman-1-0_0.44.0-3_amd64.deb ... 1037s Unpacking libpixman-1-0:amd64 (0.44.0-3) ... 1037s Selecting previously unselected package libxcb-render0:amd64. 1037s Preparing to unpack .../18-libxcb-render0_1.17.0-2_amd64.deb ... 1037s Unpacking libxcb-render0:amd64 (1.17.0-2) ... 1037s Selecting previously unselected package libxcb-shm0:amd64. 1037s Preparing to unpack .../19-libxcb-shm0_1.17.0-2_amd64.deb ... 1037s Unpacking libxcb-shm0:amd64 (1.17.0-2) ... 1037s Selecting previously unselected package libxrender1:amd64. 1037s Preparing to unpack .../20-libxrender1_1%3a0.9.10-1.1build1_amd64.deb ... 1037s Unpacking libxrender1:amd64 (1:0.9.10-1.1build1) ... 1037s Selecting previously unselected package libcairo2:amd64. 1037s Preparing to unpack .../21-libcairo2_1.18.4-1_amd64.deb ... 1037s Unpacking libcairo2:amd64 (1.18.4-1) ... 1037s Selecting previously unselected package libcairo-gobject2:amd64. 1037s Preparing to unpack .../22-libcairo-gobject2_1.18.4-1_amd64.deb ... 1037s Unpacking libcairo-gobject2:amd64 (1.18.4-1) ... 1037s Selecting previously unselected package libxslt1.1:amd64. 1037s Preparing to unpack .../23-libxslt1.1_1.1.39-0exp1ubuntu4_amd64.deb ... 1037s Unpacking libxslt1.1:amd64 (1.1.39-0exp1ubuntu4) ... 1037s Selecting previously unselected package python3-adal. 1037s Preparing to unpack .../24-python3-adal_1.2.7-5_all.deb ... 1037s Unpacking python3-adal (1.2.7-5) ... 1037s Selecting previously unselected package python3-aiohappyeyeballs. 1037s Preparing to unpack .../25-python3-aiohappyeyeballs_2.6.1-1_all.deb ... 1037s Unpacking python3-aiohappyeyeballs (2.6.1-1) ... 1037s Selecting previously unselected package python3-multidict. 1037s Preparing to unpack .../26-python3-multidict_6.2.0-2_amd64.deb ... 1037s Unpacking python3-multidict (6.2.0-2) ... 1037s Selecting previously unselected package python3-yarl. 1037s Preparing to unpack .../27-python3-yarl_1.13.1-1build2_amd64.deb ... 1037s Unpacking python3-yarl (1.13.1-1build2) ... 1037s Selecting previously unselected package python3-async-timeout. 1037s Preparing to unpack .../28-python3-async-timeout_5.0.1-1_all.deb ... 1037s Unpacking python3-async-timeout (5.0.1-1) ... 1037s Selecting previously unselected package python3-frozenlist. 1037s Preparing to unpack .../29-python3-frozenlist_1.5.0-1build2_amd64.deb ... 1037s Unpacking python3-frozenlist (1.5.0-1build2) ... 1037s Selecting previously unselected package python3-aiosignal. 1037s Preparing to unpack .../30-python3-aiosignal_1.3.2-1_all.deb ... 1037s Unpacking python3-aiosignal (1.3.2-1) ... 1037s Selecting previously unselected package python3-aiohttp. 1037s Preparing to unpack .../31-python3-aiohttp_3.10.11-1build1_amd64.deb ... 1037s Unpacking python3-aiohttp (3.10.11-1build1) ... 1037s Selecting previously unselected package python3-avro. 1037s Preparing to unpack .../32-python3-avro_1.12.0+dfsg-1_all.deb ... 1037s Unpacking python3-avro (1.12.0+dfsg-1) ... 1037s Selecting previously unselected package python3-isodate. 1037s Preparing to unpack .../33-python3-isodate_0.7.0-1_all.deb ... 1037s Unpacking python3-isodate (0.7.0-1) ... 1037s Selecting previously unselected package python3-requests-oauthlib. 1037s Preparing to unpack .../34-python3-requests-oauthlib_1.3.1-1_all.deb ... 1037s Unpacking python3-requests-oauthlib (1.3.1-1) ... 1038s Selecting previously unselected package python3-msrest. 1038s Preparing to unpack .../35-python3-msrest_0.6.21-5_all.deb ... 1038s Unpacking python3-msrest (0.6.21-5) ... 1038s Selecting previously unselected package python3-msrestazure. 1038s Preparing to unpack .../36-python3-msrestazure_0.6.4-4_all.deb ... 1038s Unpacking python3-msrestazure (0.6.4-4) ... 1038s Selecting previously unselected package python3-azure-storage. 1038s Preparing to unpack .../37-python3-azure-storage_20250304+git-1_all.deb ... 1038s Unpacking python3-azure-storage (20250304+git-1) ... 1038s Selecting previously unselected package python3-colorama. 1038s Preparing to unpack .../38-python3-colorama_0.4.6-4_all.deb ... 1038s Unpacking python3-colorama (0.4.6-4) ... 1038s Selecting previously unselected package python3-marshmallow. 1038s Preparing to unpack .../39-python3-marshmallow_3.26.1-0.2_all.deb ... 1038s Unpacking python3-marshmallow (3.26.1-0.2) ... 1038s Selecting previously unselected package python3-msal. 1038s Preparing to unpack .../40-python3-msal_1.32.3-1_all.deb ... 1038s Unpacking python3-msal (1.32.3-1) ... 1038s Selecting previously unselected package python3-cairo. 1038s Preparing to unpack .../41-python3-cairo_1.27.0-2_amd64.deb ... 1038s Unpacking python3-cairo (1.27.0-2) ... 1038s Selecting previously unselected package python3-gi-cairo. 1038s Preparing to unpack .../42-python3-gi-cairo_3.50.0-4build1_amd64.deb ... 1038s Unpacking python3-gi-cairo (3.50.0-4build1) ... 1038s Selecting previously unselected package python3-portalocker. 1038s Preparing to unpack .../43-python3-portalocker_3.1.1-1_all.deb ... 1038s Unpacking python3-portalocker (3.1.1-1) ... 1038s Selecting previously unselected package python3-msal-extensions. 1038s Preparing to unpack .../44-python3-msal-extensions_1.3.1-1_all.deb ... 1038s Unpacking python3-msal-extensions (1.3.1-1) ... 1038s Selecting previously unselected package python3-click. 1038s Preparing to unpack .../45-python3-click_8.2.0+0.really.8.1.8-1_all.deb ... 1038s Unpacking python3-click (8.2.0+0.really.8.1.8-1) ... 1038s Selecting previously unselected package python3-joblib. 1038s Preparing to unpack .../46-python3-joblib_1.4.2-3_all.deb ... 1038s Unpacking python3-joblib (1.4.2-3) ... 1038s Selecting previously unselected package python3-regex. 1038s Preparing to unpack .../47-python3-regex_0.1.20241106-1build1_amd64.deb ... 1038s Unpacking python3-regex (0.1.20241106-1build1) ... 1038s Selecting previously unselected package python3-tqdm. 1038s Preparing to unpack .../48-python3-tqdm_4.67.1-3_all.deb ... 1038s Unpacking python3-tqdm (4.67.1-3) ... 1038s Selecting previously unselected package python3-nltk. 1038s Preparing to unpack .../49-python3-nltk_3.9.1-2_all.deb ... 1038s Unpacking python3-nltk (3.9.1-2) ... 1038s Selecting previously unselected package python3-psutil. 1038s Preparing to unpack .../50-python3-psutil_5.9.8-2build3_amd64.deb ... 1038s Unpacking python3-psutil (5.9.8-2build3) ... 1038s Selecting previously unselected package python3-pydash. 1038s Preparing to unpack .../51-python3-pydash_8.0.5-1_all.deb ... 1038s Unpacking python3-pydash (8.0.5-1) ... 1038s Selecting previously unselected package python3-ruamel.yaml.clib. 1038s Preparing to unpack .../52-python3-ruamel.yaml.clib_0.2.12+ds-1build1_amd64.deb ... 1038s Unpacking python3-ruamel.yaml.clib (0.2.12+ds-1build1) ... 1038s Selecting previously unselected package python3-ruamel.yaml. 1038s Preparing to unpack .../53-python3-ruamel.yaml_0.18.10+ds-1_all.deb ... 1038s Unpacking python3-ruamel.yaml (0.18.10+ds-1) ... 1038s Selecting previously unselected package python3-strictyaml. 1038s Preparing to unpack .../54-python3-strictyaml_1.6.1-3_all.deb ... 1038s Unpacking python3-strictyaml (1.6.1-3) ... 1038s Selecting previously unselected package python3-websocket. 1038s Preparing to unpack .../55-python3-websocket_1.8.0-2_all.deb ... 1038s Unpacking python3-websocket (1.8.0-2) ... 1038s Selecting previously unselected package python3-azure. 1038s Preparing to unpack .../56-python3-azure_20250304+git-1_all.deb ... 1038s Unpacking python3-azure (20250304+git-1) ... 1043s Selecting previously unselected package python3-cachetools. 1043s Preparing to unpack .../57-python3-cachetools_5.3.3-1_all.deb ... 1043s Unpacking python3-cachetools (5.3.3-1) ... 1043s Selecting previously unselected package python3-execnet. 1043s Preparing to unpack .../58-python3-execnet_2.1.1-1_all.deb ... 1043s Unpacking python3-execnet (2.1.1-1) ... 1043s Selecting previously unselected package python3-mccabe. 1043s Preparing to unpack .../59-python3-mccabe_0.7.0-1_all.deb ... 1043s Unpacking python3-mccabe (0.7.0-1) ... 1043s Selecting previously unselected package python3-pycodestyle. 1043s Preparing to unpack .../60-python3-pycodestyle_2.12.1-2_all.deb ... 1043s Unpacking python3-pycodestyle (2.12.1-2) ... 1043s Selecting previously unselected package python3-pyflakes. 1043s Preparing to unpack .../61-python3-pyflakes_3.2.0-3_all.deb ... 1043s Unpacking python3-pyflakes (3.2.0-3) ... 1043s Selecting previously unselected package python3-flake8. 1043s Preparing to unpack .../62-python3-flake8_7.1.1-3_all.deb ... 1043s Unpacking python3-flake8 (7.1.1-3) ... 1043s Selecting previously unselected package python3-freezegun. 1043s Preparing to unpack .../63-python3-freezegun_1.5.1-1.2_all.deb ... 1043s Unpacking python3-freezegun (1.5.1-1.2) ... 1043s Selecting previously unselected package python3-requests-toolbelt. 1043s Preparing to unpack .../64-python3-requests-toolbelt_1.0.0-4_all.deb ... 1043s Unpacking python3-requests-toolbelt (1.0.0-4) ... 1043s Selecting previously unselected package python3-gitlab. 1043s Preparing to unpack .../65-python3-gitlab_1%3a4.9.0-1_all.deb ... 1043s Unpacking python3-gitlab (1:4.9.0-1) ... 1043s Selecting previously unselected package python3-pyasn1. 1043s Preparing to unpack .../66-python3-pyasn1_0.6.1-1_all.deb ... 1043s Unpacking python3-pyasn1 (0.6.1-1) ... 1044s Selecting previously unselected package python3-pyasn1-modules. 1044s Preparing to unpack .../67-python3-pyasn1-modules_0.4.1-2_all.deb ... 1044s Unpacking python3-pyasn1-modules (0.4.1-2) ... 1044s Selecting previously unselected package python3-pyu2f. 1044s Preparing to unpack .../68-python3-pyu2f_0.1.5-4_all.deb ... 1044s Unpacking python3-pyu2f (0.1.5-4) ... 1044s Selecting previously unselected package python3-responses. 1044s Preparing to unpack .../69-python3-responses_0.25.6-1_all.deb ... 1044s Unpacking python3-responses (0.25.6-1) ... 1044s Selecting previously unselected package python3-rsa. 1044s Preparing to unpack .../70-python3-rsa_4.9-2_all.deb ... 1044s Unpacking python3-rsa (4.9-2) ... 1044s Selecting previously unselected package python3-google-auth. 1044s Preparing to unpack .../71-python3-google-auth_2.28.2-3_all.deb ... 1044s Unpacking python3-google-auth (2.28.2-3) ... 1044s Selecting previously unselected package python3-httmock. 1044s Preparing to unpack .../72-python3-httmock_1.4.0-5_all.deb ... 1044s Unpacking python3-httmock (1.4.0-5) ... 1044s Selecting previously unselected package python3-pyhcl. 1044s Preparing to unpack .../73-python3-pyhcl_0.4.4-6_all.deb ... 1044s Unpacking python3-pyhcl (0.4.4-6) ... 1044s Selecting previously unselected package python3-hvac. 1044s Preparing to unpack .../74-python3-hvac_2.3.0-3_all.deb ... 1044s Unpacking python3-hvac (2.3.0-3) ... 1044s Selecting previously unselected package python3-iniconfig. 1044s Preparing to unpack .../75-python3-iniconfig_1.1.1-2_all.deb ... 1044s Unpacking python3-iniconfig (1.1.1-2) ... 1044s Selecting previously unselected package python3-kubernetes. 1044s Preparing to unpack .../76-python3-kubernetes_30.1.0-2_all.deb ... 1044s Unpacking python3-kubernetes (30.1.0-2) ... 1044s Selecting previously unselected package python3-lxml:amd64. 1044s Preparing to unpack .../77-python3-lxml_5.3.2-1_amd64.deb ... 1044s Unpacking python3-lxml:amd64 (5.3.2-1) ... 1044s Selecting previously unselected package python3-pathspec. 1044s Preparing to unpack .../78-python3-pathspec_0.12.1-1_all.deb ... 1044s Unpacking python3-pathspec (0.12.1-1) ... 1044s Selecting previously unselected package python3-pluggy. 1044s Preparing to unpack .../79-python3-pluggy_1.5.0-1_all.deb ... 1044s Unpacking python3-pluggy (1.5.0-1) ... 1044s Selecting previously unselected package python3-proxmoxer. 1044s Preparing to unpack .../80-python3-proxmoxer_2.2.0-1_all.deb ... 1044s Unpacking python3-proxmoxer (2.2.0-1) ... 1044s Selecting previously unselected package python3-py. 1044s Preparing to unpack .../81-python3-py_1.11.0-4_all.deb ... 1044s Unpacking python3-py (1.11.0-4) ... 1044s Selecting previously unselected package python3-pytest. 1044s Preparing to unpack .../82-python3-pytest_8.3.5-1_all.deb ... 1044s Unpacking python3-pytest (8.3.5-1) ... 1044s Selecting previously unselected package python3-pytest-forked. 1044s Preparing to unpack .../83-python3-pytest-forked_1.6.0-3_all.deb ... 1044s Unpacking python3-pytest-forked (1.6.0-3) ... 1044s Selecting previously unselected package python3-pytest-mock. 1044s Preparing to unpack .../84-python3-pytest-mock_3.14.0-2_all.deb ... 1044s Unpacking python3-pytest-mock (3.14.0-2) ... 1044s Selecting previously unselected package python3-pytest-xdist. 1044s Preparing to unpack .../85-python3-pytest-xdist_3.6.1-1_all.deb ... 1044s Unpacking python3-pytest-xdist (3.6.1-1) ... 1044s Selecting previously unselected package python3-pyvmomi. 1044s Preparing to unpack .../86-python3-pyvmomi_8.0.3.0.1-1_all.deb ... 1044s Unpacking python3-pyvmomi (8.0.3.0.1-1) ... 1045s Selecting previously unselected package python3-redis. 1045s Preparing to unpack .../87-python3-redis_5.2.1-1_all.deb ... 1045s Unpacking python3-redis (5.2.1-1) ... 1045s Selecting previously unselected package python3-textfsm. 1045s Preparing to unpack .../88-python3-textfsm_2.1.0-1_all.deb ... 1045s Unpacking python3-textfsm (2.1.0-1) ... 1045s Selecting previously unselected package python3-xmltodict. 1045s Preparing to unpack .../89-python3-xmltodict_0.13.0-1_all.deb ... 1045s Unpacking python3-xmltodict (0.13.0-1) ... 1045s Selecting previously unselected package yamllint. 1045s Preparing to unpack .../90-yamllint_1.35.1-2_all.deb ... 1045s Unpacking yamllint (1.35.1-2) ... 1045s Selecting previously unselected package python3-mock. 1045s Preparing to unpack .../91-python3-mock_5.1.0-1_all.deb ... 1045s Unpacking python3-mock (5.1.0-1) ... 1045s Setting up python3-iniconfig (1.1.1-2) ... 1045s Setting up libpixman-1-0:amd64 (0.44.0-3) ... 1045s Setting up libsodium23:amd64 (1.0.18-1build3) ... 1045s Setting up python3-requests-toolbelt (1.0.0-4) ... 1045s Setting up libxrender1:amd64 (1:0.9.10-1.1build1) ... 1045s Setting up python3-py (1.11.0-4) ... 1045s Setting up python3-joblib (1.4.2-3) ... 1046s Setting up python3-cachetools (5.3.3-1) ... 1046s Setting up python3-colorama (0.4.6-4) ... 1046s Setting up libxcb-render0:amd64 (1.17.0-2) ... 1046s Setting up python3-tqdm (4.67.1-3) ... 1046s Setting up python3-pyflakes (3.2.0-3) ... 1046s Setting up python3-ruamel.yaml.clib (0.2.12+ds-1build1) ... 1046s Setting up python3-resolvelib (1.1.0-1) ... 1046s Setting up python3-marshmallow (3.26.1-0.2) ... 1047s Setting up python3-msal (1.32.3-1) ... 1047s Setting up libxcb-shm0:amd64 (1.17.0-2) ... 1047s Setting up python3-httmock (1.4.0-5) ... 1047s Setting up python3-click (8.2.0+0.really.8.1.8-1) ... 1047s Setting up python3-psutil (5.9.8-2build3) ... 1047s Setting up python3-multidict (6.2.0-2) ... 1047s Setting up python3-frozenlist (1.5.0-1build2) ... 1048s Setting up python3-aiosignal (1.3.2-1) ... 1048s Setting up python3-mock (5.1.0-1) ... 1048s Setting up python3-async-timeout (5.0.1-1) ... 1048s Setting up liberror-perl (0.17030-1) ... 1048s Setting up python3-responses (0.25.6-1) ... 1048s Setting up python3-pyvmomi (8.0.3.0.1-1) ... 1049s Setting up python3-isodate (0.7.0-1) ... 1049s Setting up python3-pycodestyle (2.12.1-2) ... 1049s Setting up python3-xmltodict (0.13.0-1) ... 1049s Setting up python3-pyu2f (0.1.5-4) ... 1049s Setting up python3-avro (1.12.0+dfsg-1) ... 1049s Setting up fonts-dejavu-mono (2.37-8) ... 1049s Setting up fonts-dejavu-core (2.37-8) ... 1049s Setting up python3-redis (5.2.1-1) ... 1050s Setting up python3-aiohappyeyeballs (2.6.1-1) ... 1050s Setting up python3-regex (0.1.20241106-1build1) ... 1050s Setting up python3-pluggy (1.5.0-1) ... 1050s Setting up python3-ruamel.yaml (0.18.10+ds-1) ... 1050s Setting up python3-adal (1.2.7-5) ... 1050s Setting up python3-dnspython (2.7.0-1ubuntu1) ... 1051s Setting up python3-portalocker (3.1.1-1) ... 1051s Setting up libxslt1.1:amd64 (1.1.39-0exp1ubuntu4) ... 1051s Setting up python3-pyasn1 (0.6.1-1) ... 1051s Setting up python3-proxmoxer (2.2.0-1) ... 1051s Setting up git-man (1:2.48.1-0ubuntu1) ... 1051s Setting up python3-textfsm (2.1.0-1) ... 1051s Setting up python3-mccabe (0.7.0-1) ... 1051s Setting up python3-execnet (2.1.1-1) ... 1051s Setting up python3-pathspec (0.12.1-1) ... 1052s Setting up python3-pydash (8.0.5-1) ... 1052s Setting up python3-nltk (3.9.1-2) ... 1053s Setting up python3-yarl (1.13.1-1build2) ... 1053s Setting up python3-pyhcl (0.4.4-6) ... 1053s Setting up python3-gitlab (1:4.9.0-1) ... 1053s Setting up python3-websocket (1.8.0-2) ... 1053s Setting up libsecret-common (0.21.7-1) ... 1053s Setting up python3-freezegun (1.5.1-1.2) ... 1053s Setting up python3-nacl (1.5.0-7) ... 1054s Setting up python3-requests-oauthlib (1.3.1-1) ... 1054s Setting up fontconfig-config (2.15.0-2.2ubuntu1) ... 1054s Setting up python3-pytest (8.3.5-1) ... 1054s Setting up python3-aiohttp (3.10.11-1build1) ... 1054s Setting up ansible-core (2.18.1-4ubuntu1) ... 1056s Setting up python3-flake8 (7.1.1-3) ... 1056s Setting up python3-msrest (0.6.21-5) ... 1056s Setting up python3-pytest-forked (1.6.0-3) ... 1056s Setting up python3-strictyaml (1.6.1-3) ... 1056s Setting up libsecret-1-0:amd64 (0.21.7-1) ... 1056s Setting up yamllint (1.35.1-2) ... 1056s Setting up gir1.2-secret-1:amd64 (0.21.7-1) ... 1056s Setting up python3-pyasn1-modules (0.4.1-2) ... 1057s Setting up python3-hvac (2.3.0-3) ... 1057s Setting up git (1:2.48.1-0ubuntu1) ... 1057s Setting up python3-pytest-mock (3.14.0-2) ... 1057s Setting up python3-lxml:amd64 (5.3.2-1) ... 1057s Setting up python3-rsa (4.9-2) ... 1057s Setting up libfontconfig1:amd64 (2.15.0-2.2ubuntu1) ... 1057s Setting up python3-msrestazure (0.6.4-4) ... 1057s Setting up ansible (11.2.0+dfsg-1) ... 1076s Setting up python3-paramiko (3.5.1-2ubuntu1) ... 1076s Setting up python3-pytest-xdist (3.6.1-1) ... 1076s Setting up libcairo2:amd64 (1.18.4-1) ... 1076s Setting up python3-google-auth (2.28.2-3) ... 1077s Setting up libcairo-gobject2:amd64 (1.18.4-1) ... 1077s Setting up python3-cairo (1.27.0-2) ... 1077s Setting up python3-kubernetes (30.1.0-2) ... 1078s Setting up python3-gi-cairo (3.50.0-4build1) ... 1078s Setting up python3-msal-extensions (1.3.1-1) ... 1078s Setting up python3-azure-storage (20250304+git-1) ... 1079s Setting up python3-azure (20250304+git-1) ... 1090s /usr/lib/python3/dist-packages/azure/ai/ml/_vendor/azure_resources/aio/operations/_resources_operations.py:80: SyntaxWarning: invalid escape sequence '\ ' 1090s Valid values include ``createdTime``\ , ``changedTime`` and ``provisioningState``. For example, 1090s /usr/lib/python3/dist-packages/azure/ai/ml/_vendor/azure_resources/aio/operations/_resources_operations.py:405: SyntaxWarning: invalid escape sequence '\ ' 1090s Valid values include ``createdTime``\ , ``changedTime`` and ``provisioningState``. For example, 1092s /usr/lib/python3/dist-packages/azure/appconfiguration/_generated/models/_models.py:238: SyntaxWarning: invalid escape sequence '\ ' 1092s """An error, available when the status is ``Failed``\ , describing why the operation 1092s /usr/lib/python3/dist-packages/azure/batch/models/_models.py:9067: SyntaxWarning: invalid escape sequence '\ ' 1092s """The source port ranges to match for the rule. Valid values are '\ *' (for all ports 0 - 65535), 1092s /usr/lib/python3/dist-packages/azure/batch/models/_models.py:9235: SyntaxWarning: invalid escape sequence '\ ' 1092s using brackets (for example abc[\ *] would match a file named abc*\ ). Note that both and / are 1093s /usr/lib/python3/dist-packages/azure/communication/jobrouter/models/_models.py:2326: SyntaxWarning: invalid escape sequence '\ ' 1093s payload to scoring rule. If not set, a job's labels (sent in the payload as ``job``\ ) and a 1093s /usr/lib/python3/dist-packages/azure/communication/jobrouter/models/_models.py:2346: SyntaxWarning: invalid escape sequence '\ ' 1093s If not set, a job's labels (sent in the payload as ``job``\ ) and a job's worker selectors 1095s /usr/lib/python3/dist-packages/azure/mgmt/advisor/aio/operations/_recommendations_operations.py:190: SyntaxWarning: invalid escape sequence '\ ' 1095s properties ['ResourceId', 'ResourceGroup', 'RecommendationTypeGuid', '\ `Category 1095s /usr/lib/python3/dist-packages/azure/mgmt/advisor/operations/_recommendations_operations.py:303: SyntaxWarning: invalid escape sequence '\ ' 1095s properties ['ResourceId', 'ResourceGroup', 'RecommendationTypeGuid', '\ `Category 1096s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:3917: SyntaxWarning: invalid escape sequence '\ ' 1096s Possible Values::code:`
`:code:`
` **Standard**\ :code:`
`:code:`
` 1096s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10212: SyntaxWarning: invalid escape sequence '\ ' 1096s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 1096s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10255: SyntaxWarning: invalid escape sequence '\ ' 1096s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 1096s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10284: SyntaxWarning: invalid escape sequence '\ ' 1096s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 1096s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10320: SyntaxWarning: invalid escape sequence '\ ' 1096s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 1096s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10342: SyntaxWarning: invalid escape sequence '\ ' 1096s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 1096s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10375: SyntaxWarning: invalid escape sequence '\ ' 1096s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 1096s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10396: SyntaxWarning: invalid escape sequence '\ ' 1096s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 1096s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10429: SyntaxWarning: invalid escape sequence '\ ' 1096s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 1096s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:14746: SyntaxWarning: invalid escape sequence '\ ' 1096s :ivar allowed_sources: Allowed sources, e.g. ``*.trusted.com``\ , ``trusted.com``\ , 1096s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:14771: SyntaxWarning: invalid escape sequence '\ ' 1096s :keyword allowed_sources: Allowed sources, e.g. ``*.trusted.com``\ , ``trusted.com``\ , 1099s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models.py:1420: SyntaxWarning: invalid escape sequence '\ ' 1099s :param id: Required. The ID for the input directory. The job can use AZ_BATCHAI\ *INPUT*\ 1099s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models.py:2310: SyntaxWarning: invalid escape sequence '\ ' 1099s :param id: Required. The ID of the output directory. The job can use AZ_BATCHAI\ *OUTPUT*\ 1099s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models_py3.py:1547: SyntaxWarning: invalid escape sequence '\ ' 1099s :param id: Required. The ID for the input directory. The job can use AZ_BATCHAI\ *INPUT*\ 1099s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models_py3.py:2524: SyntaxWarning: invalid escape sequence '\ ' 1099s :param id: Required. The ID of the output directory. The job can use AZ_BATCHAI\ *OUTPUT*\ 1103s /usr/lib/python3/dist-packages/azure/mgmt/computefleet/models/_models.py:624: SyntaxWarning: invalid escape sequence '\ ' 1103s and Screenshot to diagnose VM status. **NOTE**\ : If storageUri is being 1103s /usr/lib/python3/dist-packages/azure/mgmt/computefleet/models/_models.py:3707: SyntaxWarning: invalid escape sequence '\W' 1103s characters :code:`
` Has a digit :code:`
` Has a special character (Regex match [\W_]) 1107s /usr/lib/python3/dist-packages/azure/mgmt/datamigration/models/_models_py3.py:16843: SyntaxWarning: invalid escape sequence '\S' 1107s Protocol:MachineName\SQLServerInstanceName,PortNumber. Required. 1107s /usr/lib/python3/dist-packages/azure/mgmt/datamigration/models/_models_py3.py:16916: SyntaxWarning: invalid escape sequence '\S' 1107s Protocol:MachineName\SQLServerInstanceName,PortNumber. Required. 1108s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:63: SyntaxWarning: invalid escape sequence '\w' 1108s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 1108s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:130: SyntaxWarning: invalid escape sequence '\w' 1108s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 1108s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:224: SyntaxWarning: invalid escape sequence '\w' 1108s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 1108s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:312: SyntaxWarning: invalid escape sequence '\w' 1108s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 1108s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:398: SyntaxWarning: invalid escape sequence '\w' 1108s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 1108s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:543: SyntaxWarning: invalid escape sequence '\w' 1108s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 1108s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:612: SyntaxWarning: invalid escape sequence '\w' 1108s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 1108s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:675: SyntaxWarning: invalid escape sequence '\w' 1108s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 1108s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:738: SyntaxWarning: invalid escape sequence '\w' 1108s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 1108s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:807: SyntaxWarning: invalid escape sequence '\w' 1108s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 1111s /usr/lib/python3/dist-packages/azure/mgmt/hybridnetwork/models/_models_py3.py:6032: SyntaxWarning: invalid escape sequence '\ ' 1111s :ivar provisioning_state: The provisioning state of the site resource. **TODO**\ : Confirm if 1113s /usr/lib/python3/dist-packages/azure/mgmt/iotoperations/models/_models.py:3866: SyntaxWarning: invalid escape sequence '\ ' 1113s pattern set glob-style pattern (e.g., '\ *', 'clients/*\ '). Required.""" 1113s /usr/lib/python3/dist-packages/azure/mgmt/iotoperations/models/_models.py:3868: SyntaxWarning: invalid escape sequence '\ ' 1113s """Give access for ``Read``\ , ``Write`` and ``ReadWrite`` access level. Required. Known values 1115s /usr/lib/python3/dist-packages/azure/mgmt/machinelearningservices/models/_machine_learning_services_mgmt_client_enums.py:169: SyntaxWarning: invalid escape sequence '\ ' 1115s #: The "forest"\ it builds, is an ensemble of decision trees, usually trained with the “bagging”\ 1115s /usr/lib/python3/dist-packages/azure/mgmt/machinelearningservices/models/_machine_learning_services_mgmt_client_enums.py:1032: SyntaxWarning: invalid escape sequence '\ ' 1115s #: The "forest"\ it builds, is an ensemble of decision trees, usually trained with the “bagging”\ 1121s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2542: SyntaxWarning: invalid escape sequence '\R' 1121s """Execute Reverse Replication\Reprotect. 1121s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2583: SyntaxWarning: invalid escape sequence '\R' 1121s """Execute Reverse Replication\Reprotect. 1121s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2622: SyntaxWarning: invalid escape sequence '\R' 1121s """Execute Reverse Replication\Reprotect. 1122s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:5397: SyntaxWarning: invalid escape sequence '\L' 1122s :ivar lun_id: Ordinal\LunId of the disk for the Azure VM. 1122s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:5448: SyntaxWarning: invalid escape sequence '\L' 1122s :keyword lun_id: Ordinal\LunId of the disk for the Azure VM. 1122s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:8836: SyntaxWarning: invalid escape sequence '\S' 1122s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 1122s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:8978: SyntaxWarning: invalid escape sequence '\S' 1122s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 1122s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:9510: SyntaxWarning: invalid escape sequence '\S' 1122s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 1122s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:9675: SyntaxWarning: invalid escape sequence '\S' 1122s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 1122s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:11412: SyntaxWarning: invalid escape sequence '\S' 1122s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target VM after 1122s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:11541: SyntaxWarning: invalid escape sequence '\S' 1122s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target VM after 1122s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:12193: SyntaxWarning: invalid escape sequence '\S' 1122s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 1122s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:12516: SyntaxWarning: invalid escape sequence '\S' 1122s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 1122s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:26323: SyntaxWarning: invalid escape sequence '\S' 1122s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 1122s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:26382: SyntaxWarning: invalid escape sequence '\S' 1122s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 1122s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3476: SyntaxWarning: invalid escape sequence '\R' 1122s """Execute Reverse Replication\Reprotect. 1122s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3517: SyntaxWarning: invalid escape sequence '\R' 1122s """Execute Reverse Replication\Reprotect. 1122s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3556: SyntaxWarning: invalid escape sequence '\R' 1122s """Execute Reverse Replication\Reprotect. 1122s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_azure_reservation_api_operations.py:163: SyntaxWarning: invalid escape sequence '\ ' 1122s """Get list of applicable ``Reservation``\ s. 1122s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:377: SyntaxWarning: invalid escape sequence '\ ' 1122s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 1122s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:407: SyntaxWarning: invalid escape sequence '\ ' 1122s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 1122s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:437: SyntaxWarning: invalid escape sequence '\ ' 1122s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 1122s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:583: SyntaxWarning: invalid escape sequence '\ ' 1122s """Merges two ``Reservation``\ s. 1122s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:614: SyntaxWarning: invalid escape sequence '\ ' 1122s """Merges two ``Reservation``\ s. 1122s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:645: SyntaxWarning: invalid escape sequence '\ ' 1122s """Merges two ``Reservation``\ s. 1122s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:721: SyntaxWarning: invalid escape sequence '\ ' 1122s """Get ``Reservation``\ s in a given reservation Order. 1122s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_order_operations.py:183: SyntaxWarning: invalid escape sequence '\ ' 1122s """Get all ``ReservationOrder``\ s. 1122s /usr/lib/python3/dist-packages/azure/mgmt/reservations/models/_models_py3.py:3172: SyntaxWarning: invalid escape sequence '\ ' 1122s """List of ``Reservation``\ s. 1122s /usr/lib/python3/dist-packages/azure/mgmt/reservations/models/_models_py3.py:3288: SyntaxWarning: invalid escape sequence '\ ' 1122s """List of ``ReservationOrder``\ s. 1122s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_azure_reservation_api_operations.py:239: SyntaxWarning: invalid escape sequence '\ ' 1122s """Get list of applicable ``Reservation``\ s. 1122s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:662: SyntaxWarning: invalid escape sequence '\ ' 1122s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 1122s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:692: SyntaxWarning: invalid escape sequence '\ ' 1122s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 1122s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:722: SyntaxWarning: invalid escape sequence '\ ' 1122s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 1122s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:868: SyntaxWarning: invalid escape sequence '\ ' 1122s """Merges two ``Reservation``\ s. 1122s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:899: SyntaxWarning: invalid escape sequence '\ ' 1122s """Merges two ``Reservation``\ s. 1122s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:930: SyntaxWarning: invalid escape sequence '\ ' 1122s """Merges two ``Reservation``\ s. 1122s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:1006: SyntaxWarning: invalid escape sequence '\ ' 1122s """Get ``Reservation``\ s in a given reservation Order. 1122s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_order_operations.py:299: SyntaxWarning: invalid escape sequence '\ ' 1122s """Get all ``ReservationOrder``\ s. 1125s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:68: SyntaxWarning: invalid escape sequence '\ ' 1125s **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after ``end`` 1125s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:90: SyntaxWarning: invalid escape sequence '\ ' 1125s ``[``\ **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after 1125s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:1141: SyntaxWarning: invalid escape sequence '\ ' 1125s **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after ``end`` 1125s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:1163: SyntaxWarning: invalid escape sequence '\ ' 1125s ``[``\ **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after 1128s /usr/lib/python3/dist-packages/azure/mgmt/signalr/models/_models_py3.py:2858: SyntaxWarning: invalid escape sequence '\ ' 1128s For example, if the urlTemplate is ``http://example.com/{hub}/api/{event}``\ , with a client 1128s /usr/lib/python3/dist-packages/azure/mgmt/signalr/models/_models_py3.py:2925: SyntaxWarning: invalid escape sequence '\ ' 1128s For example, if the urlTemplate is ``http://example.com/{hub}/api/{event}``\ , with a client 1130s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_functions_operations.py:595: SyntaxWarning: invalid escape sequence '\ ' 1130s properties to include in the response, or "\ *" to include all properties. By default, all 1130s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_inputs_operations.py:593: SyntaxWarning: invalid escape sequence '\ ' 1130s properties to include in the response, or "\ *" to include all properties. By default, all 1130s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_outputs_operations.py:593: SyntaxWarning: invalid escape sequence '\ ' 1130s properties to include in the response, or "\ *" to include all properties. By default, all 1130s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/models/_stream_analytics_management_client_enums.py:14: SyntaxWarning: invalid escape sequence '\ ' 1130s """Authentication Mode. Valid modes are ``ConnectionString``\ , ``Msi`` and 'UserToken'.""" 1130s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_functions_operations.py:859: SyntaxWarning: invalid escape sequence '\ ' 1130s properties to include in the response, or "\ *" to include all properties. By default, all 1130s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_inputs_operations.py:821: SyntaxWarning: invalid escape sequence '\ ' 1130s properties to include in the response, or "\ *" to include all properties. By default, all 1130s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_outputs_operations.py:821: SyntaxWarning: invalid escape sequence '\ ' 1130s properties to include in the response, or "\ *" to include all properties. By default, all 1131s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_communications_no_subscription_operations.py:193: SyntaxWarning: invalid escape sequence '\ ' 1131s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication 1131s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_communications_operations.py:194: SyntaxWarning: invalid escape sequence '\ ' 1131s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication 1131s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:177: SyntaxWarning: invalid escape sequence '\ ' 1131s tickets by *Status*\ , *CreatedDate*\ , *ServiceId*\ , and *ProblemClassificationId* using the 1131s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:540: SyntaxWarning: invalid escape sequence '\ ' 1131s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 1131s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:582: SyntaxWarning: invalid escape sequence '\ ' 1131s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 1131s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:622: SyntaxWarning: invalid escape sequence '\ ' 1131s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 1131s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_communications_no_subscription_operations.py:308: SyntaxWarning: invalid escape sequence '\ ' 1131s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication 1131s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_communications_operations.py:326: SyntaxWarning: invalid escape sequence '\ ' 1131s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication 1131s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:319: SyntaxWarning: invalid escape sequence '\ ' 1131s tickets by *Status*\ , *CreatedDate*\ , *ServiceId*\ , and *ProblemClassificationId* using the 1131s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:681: SyntaxWarning: invalid escape sequence '\ ' 1131s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 1131s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:723: SyntaxWarning: invalid escape sequence '\ ' 1131s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 1131s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:763: SyntaxWarning: invalid escape sequence '\ ' 1131s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 1131s /usr/lib/python3/dist-packages/azure/mgmt/synapse/models/_models_py3.py:6232: SyntaxWarning: invalid escape sequence '\ ' 1131s :ivar maintenance_window_cycles: Available maintenance cycles e.g. {Saturday, 0, 48\ *60}, 1131s /usr/lib/python3/dist-packages/azure/mgmt/synapse/models/_models_py3.py:6288: SyntaxWarning: invalid escape sequence '\ ' 1131s :keyword maintenance_window_cycles: Available maintenance cycles e.g. {Saturday, 0, 48\ *60}, 1136s /usr/lib/python3/dist-packages/azure/mgmt/workloads/models/_models_py3.py:2909: SyntaxWarning: invalid escape sequence '\W' 1136s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
` 1136s /usr/lib/python3/dist-packages/azure/mgmt/workloads/models/_models_py3.py:2954: SyntaxWarning: invalid escape sequence '\W' 1136s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
` 1136s /usr/lib/python3/dist-packages/azure/mgmt/workloadssapvirtualinstance/models/_models_py3.py:1980: SyntaxWarning: invalid escape sequence '\W' 1136s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
` 1136s /usr/lib/python3/dist-packages/azure/mgmt/workloadssapvirtualinstance/models/_models_py3.py:2025: SyntaxWarning: invalid escape sequence '\W' 1136s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
` 1136s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:2732: SyntaxWarning: invalid escape sequence '\:' 1136s attr:\:code:``=:code:``. 1136s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:3537: SyntaxWarning: invalid escape sequence '\:' 1136s attr:\:code:``=\:code:``. 1136s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:4216: SyntaxWarning: invalid escape sequence '\:' 1136s typeName=\:code:``&attr_1:\:code:``=\:code:``&attr_2:\:code:``=\:code:``&attr_3:\:code:``=\:code:`` 1136s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:6219: SyntaxWarning: invalid escape sequence '\:' 1136s attr:\:code:``=:code:``. 1136s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:7024: SyntaxWarning: invalid escape sequence '\:' 1136s attr:\:code:``=\:code:``. 1136s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:7703: SyntaxWarning: invalid escape sequence '\:' 1136s typeName=\:code:``&attr_1:\:code:``=\:code:``&attr_2:\:code:``=\:code:``&attr_3:\:code:``=\:code:`` 1137s /usr/lib/python3/dist-packages/azure/servicemanagement/schedulermanagementservice.py:59: SyntaxWarning: invalid escape sequence '\m' 1137s CURRENT_USER\my\CertificateName format. 1137s /usr/lib/python3/dist-packages/azure/servicemanagement/servicebusmanagementservice.py:59: SyntaxWarning: invalid escape sequence '\m' 1137s CURRENT_USER\my\CertificateName format. 1137s /usr/lib/python3/dist-packages/azure/servicemanagement/servicemanagementservice.py:81: SyntaxWarning: invalid escape sequence '\m' 1137s CURRENT_USER\my\CertificateName format. 1137s /usr/lib/python3/dist-packages/azure/servicemanagement/sqldatabasemanagementservice.py:55: SyntaxWarning: invalid escape sequence '\m' 1137s CURRENT_USER\my\CertificateName format. 1137s /usr/lib/python3/dist-packages/azure/servicemanagement/websitemanagementservice.py:55: SyntaxWarning: invalid escape sequence '\m' 1137s CURRENT_USER\my\CertificateName format. 1137s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:110: SyntaxWarning: invalid escape sequence '\d' 1137s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 1137s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:1328: SyntaxWarning: invalid escape sequence '\d' 1137s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9]))..). 1137s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:4218: SyntaxWarning: invalid escape sequence '\d' 1137s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 1137s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:4280: SyntaxWarning: invalid escape sequence '\d' 1137s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 1137s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:18198: SyntaxWarning: invalid escape sequence '\d' 1137s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 1137s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19096: SyntaxWarning: invalid escape sequence '\d' 1137s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). Type: string (or Expression with 1137s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19185: SyntaxWarning: invalid escape sequence '\d' 1137s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 1137s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19749: SyntaxWarning: invalid escape sequence '\d' 1137s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 1138s Processing triggers for libc-bin (2.41-6ubuntu1) ... 1138s Processing triggers for man-db (2.13.0-1) ... 1200s autopkgtest [22:05:02]: test unit-tests-flaky.py: [----------------------- 1200s 1200s 1200s 1200s ############################################################ 1200s ############################################################ 1200s #### Running FLAKY tests in ansible_collections/ansible/utils 1200s ############################################################ 1200s ############################################################ 1200s Unit test controller with Python 3.13 1202s ============================= test session starts ============================== 1202s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1202s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ansible/utils 1202s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1202s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 1202s created: 2/2 workers 1202s 2 workers [383 items] 1202s 1203s ........................................................................ [ 18%] 1204s ....................................................F................... [ 37%] 1205s ...................................................F...F...F............ [ 56%] 1207s ........................................................................ [ 75%] 1218s ........................................................................ [ 93%] 1219s ....................... [100%] 1219s =================================== FAILURES =================================== 1219s ___________________ TestIpFilter.test_ipaddr_undefined_value ___________________ 1219s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1219s 1219s self = 1219s 1219s def test_ipaddr_undefined_value(self): 1219s """Check ipaddr filter undefined value""" 1219s args = ["", AnsibleUndefined(name="my_ip"), ""] 1219s with pytest.raises( 1219s AnsibleFilterError, 1219s match="Unrecognized type <> for ipaddr filter ", 1219s ): 1219s > _ipaddr(*args) 1219s 1219s tests/unit/plugins/filter/test_ipaddr.py:75: 1219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1219s 1219s args = ('', AnsibleUndefined(hint=None, obj=missing, name='my_ip'), '') 1219s kwargs = {}, keys = ['value', 'query', 'version', 'alias'] 1219s data = {'query': '', 'value': AnsibleUndefined(hint=None, obj=missing, name='my_ip')} 1219s 1219s @pass_environment 1219s def _ipaddr(*args, **kwargs): 1219s """This filter is designed to return the input value if a query is True, and False if a query is False""" 1219s keys = ["value", "query", "version", "alias"] 1219s data = dict(zip(keys, args[1:])) 1219s data.update(kwargs) 1219s try: 1219s if isinstance(data["value"], str): 1219s pass 1219s elif isinstance(data["value"], list): 1219s pass 1219s elif isinstance(data["value"], int): 1219s pass 1219s else: 1219s > raise AnsibleFilterError( 1219s "Unrecognized type <{0}> for ipaddr filter <{1}>".format( 1219s type(data["value"]), 1219s "value", 1219s ), 1219s ) 1219s E ansible.errors.AnsibleFilterError: Unrecognized type <> for ipaddr filter 1219s 1219s plugins/filter/ipaddr.py:268: AnsibleFilterError 1219s 1219s During handling of the above exception, another exception occurred: 1219s 1219s self = 1219s 1219s def test_ipaddr_undefined_value(self): 1219s """Check ipaddr filter undefined value""" 1219s args = ["", AnsibleUndefined(name="my_ip"), ""] 1219s > with pytest.raises( 1219s AnsibleFilterError, 1219s match="Unrecognized type <> for ipaddr filter ", 1219s ): 1219s E AssertionError: Regex pattern did not match. 1219s E Regex: "Unrecognized type <> for ipaddr filter " 1219s E Input: "Unrecognized type <> for ipaddr filter " 1219s 1219s tests/unit/plugins/filter/test_ipaddr.py:71: AssertionError 1219s ______________________ TestIp4.test_ipv4_undefined_value _______________________ 1219s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1219s 1219s self = 1219s 1219s def test_ipv4_undefined_value(self): 1219s """Check ipv4 filter undefined value""" 1219s args = ["", AnsibleUndefined(name="my_ip"), ""] 1219s with pytest.raises( 1219s AnsibleFilterError, 1219s match="Unrecognized type <> for ipv4 filter ", 1219s ): 1219s > _ipv4(*args) 1219s 1219s tests/unit/plugins/filter/test_ipv4.py:55: 1219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1219s 1219s args = ('', AnsibleUndefined(hint=None, obj=missing, name='my_ip'), '') 1219s kwargs = {}, keys = ['value', 'query'] 1219s data = {'query': '', 'value': AnsibleUndefined(hint=None, obj=missing, name='my_ip')} 1219s 1219s @pass_environment 1219s def _ipv4(*args, **kwargs): 1219s """This filter is designed to return the input value if a query is True, and False if a query is False""" 1219s keys = ["value", "query"] 1219s data = dict(zip(keys, args[1:])) 1219s data.update(kwargs) 1219s try: 1219s if isinstance(data["value"], str): 1219s pass 1219s elif isinstance(data["value"], list): 1219s pass 1219s elif isinstance(data["value"], int): 1219s pass 1219s else: 1219s > raise AnsibleFilterError( 1219s "Unrecognized type <{0}> for ipv4 filter <{1}>".format( 1219s type(data["value"]), 1219s "value", 1219s ), 1219s ) 1219s E ansible.errors.AnsibleFilterError: Unrecognized type <> for ipv4 filter 1219s 1219s plugins/filter/ipv4.py:143: AnsibleFilterError 1219s 1219s During handling of the above exception, another exception occurred: 1219s 1219s self = 1219s 1219s def test_ipv4_undefined_value(self): 1219s """Check ipv4 filter undefined value""" 1219s args = ["", AnsibleUndefined(name="my_ip"), ""] 1219s > with pytest.raises( 1219s AnsibleFilterError, 1219s match="Unrecognized type <> for ipv4 filter ", 1219s ): 1219s E AssertionError: Regex pattern did not match. 1219s E Regex: "Unrecognized type <> for ipv4 filter " 1219s E Input: "Unrecognized type <> for ipv4 filter " 1219s 1219s tests/unit/plugins/filter/test_ipv4.py:51: AssertionError 1219s ______________________ TestIp6.test_ipv6_undefined_value _______________________ 1219s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1219s 1219s self = 1219s 1219s def test_ipv6_undefined_value(self): 1219s """Check ipv6 filter undefined value""" 1219s args = ["", AnsibleUndefined(name="my_ip"), ""] 1219s with pytest.raises( 1219s AnsibleFilterError, 1219s match="Unrecognized type <> for ipv6 filter ", 1219s ): 1219s > _ipv6(*args) 1219s 1219s tests/unit/plugins/filter/test_ipv6.py:58: 1219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1219s 1219s args = ('', AnsibleUndefined(hint=None, obj=missing, name='my_ip'), '') 1219s kwargs = {}, keys = ['value', 'query'] 1219s data = {'query': '', 'value': AnsibleUndefined(hint=None, obj=missing, name='my_ip')} 1219s 1219s @pass_environment 1219s def _ipv6(*args, **kwargs): 1219s """This filter is designed to return the input value if a query is True, and False if a query is False""" 1219s keys = ["value", "query"] 1219s data = dict(zip(keys, args[1:])) 1219s data.update(kwargs) 1219s try: 1219s if isinstance(data["value"], str): 1219s pass 1219s elif isinstance(data["value"], list): 1219s pass 1219s elif isinstance(data["value"], int): 1219s pass 1219s else: 1219s > raise AnsibleFilterError( 1219s "Unrecognized type <{0}> for ipv6 filter <{1}>".format( 1219s type(data["value"]), 1219s "value", 1219s ), 1219s ) 1219s E ansible.errors.AnsibleFilterError: Unrecognized type <> for ipv6 filter 1219s 1219s plugins/filter/ipv6.py:161: AnsibleFilterError 1219s 1219s During handling of the above exception, another exception occurred: 1219s 1219s self = 1219s 1219s def test_ipv6_undefined_value(self): 1219s """Check ipv6 filter undefined value""" 1219s args = ["", AnsibleUndefined(name="my_ip"), ""] 1219s > with pytest.raises( 1219s AnsibleFilterError, 1219s match="Unrecognized type <> for ipv6 filter ", 1219s ): 1219s E AssertionError: Regex pattern did not match. 1219s E Regex: "Unrecognized type <> for ipv6 filter " 1219s E Input: "Unrecognized type <> for ipv6 filter " 1219s 1219s tests/unit/plugins/filter/test_ipv6.py:54: AssertionError 1219s ____________________ TestIpWrap.test_ipwrap_undefined_value ____________________ 1219s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1219s 1219s self = 1219s 1219s def test_ipwrap_undefined_value(self): 1219s """Check ipwrap filter undefined value""" 1219s args = ["", AnsibleUndefined(name="my_ip"), ""] 1219s with pytest.raises( 1219s AnsibleFilterError, 1219s match="Unrecognized type <> for ipwrap filter ", 1219s ): 1219s > _ipwrap(*args) 1219s 1219s tests/unit/plugins/filter/test_ipwrap.py:60: 1219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1219s 1219s args = ('', AnsibleUndefined(hint=None, obj=missing, name='my_ip'), '') 1219s kwargs = {}, keys = ['value'] 1219s data = {'value': AnsibleUndefined(hint=None, obj=missing, name='my_ip')} 1219s 1219s @pass_environment 1219s def _ipwrap(*args, **kwargs): 1219s """This filter is designed to Wrap IPv6 addresses in [ ] brackets.""" 1219s keys = ["value"] 1219s data = dict(zip(keys, args[1:])) 1219s data.update(kwargs) 1219s try: 1219s if isinstance(data["value"], str): 1219s pass 1219s elif isinstance(data["value"], list): 1219s pass 1219s elif isinstance(data["value"], bool): 1219s pass 1219s else: 1219s > raise AnsibleFilterError( 1219s "Unrecognized type <{0}> for ipwrap filter <{1}>".format( 1219s type(data["value"]), 1219s "value", 1219s ), 1219s ) 1219s E ansible.errors.AnsibleFilterError: Unrecognized type <> for ipwrap filter 1219s 1219s plugins/filter/ipwrap.py:162: AnsibleFilterError 1219s 1219s During handling of the above exception, another exception occurred: 1219s 1219s self = 1219s 1219s def test_ipwrap_undefined_value(self): 1219s """Check ipwrap filter undefined value""" 1219s args = ["", AnsibleUndefined(name="my_ip"), ""] 1219s > with pytest.raises( 1219s AnsibleFilterError, 1219s match="Unrecognized type <> for ipwrap filter ", 1219s ): 1219s E AssertionError: Regex pattern did not match. 1219s E Regex: "Unrecognized type <> for ipwrap filter " 1219s E Input: "Unrecognized type <> for ipwrap filter " 1219s 1219s tests/unit/plugins/filter/test_ipwrap.py:56: AssertionError 1219s =============================== warnings summary =============================== 1219s tests/unit/plugins/action/test_validate.py::TestValidate::test_support_for_disabled_format_with_invalid_data 1219s tests/unit/plugins/action/test_validate.py::TestValidate::test_support_for_format 1219s tests/unit/plugins/action/test_validate.py::TestValidate::test_support_for_format_with_invalid_data 1219s /tmp/autopkgtest.HDQhnz/build.1ev/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. 1219s validator_class = jsonschema.validators.validator_for(criteria) 1219s 1219s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 1219s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ansible/utils/tests/output/junit/python3.13-controller-units.xml - 1219s =========================== short test summary info ============================ 1219s SKIPPED [1] tests/unit/plugins/sub_plugins/cli_parsers/test_ttp_parser.py:18: could not import 'ttp': No module named 'ttp' 1219s FAILED tests/unit/plugins/filter/test_ipaddr.py::TestIpFilter::test_ipaddr_undefined_value 1219s FAILED tests/unit/plugins/filter/test_ipv4.py::TestIp4::test_ipv4_undefined_value 1219s FAILED tests/unit/plugins/filter/test_ipv6.py::TestIp6::test_ipv6_undefined_value 1219s FAILED tests/unit/plugins/filter/test_ipwrap.py::TestIpWrap::test_ipwrap_undefined_value 1219s ============ 4 failed, 379 passed, 1 skipped, 3 warnings in 17.92s ============= 1219s 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.HDQhnz/build.1ev/src/ansible_collections/ansible/utils/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ansible/utils --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/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. 1219s ## return code is 1 1219s 1219s 1219s 1219s ############################################################ 1219s ############################################################ 1219s #### Running FLAKY tests in ansible_collections/cisco/aci 1219s ############################################################ 1219s ############################################################ 1219s Unit test controller with Python 3.13 1220s ============================= test session starts ============================== 1220s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1220s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/aci 1220s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1220s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 1220s created: 2/2 workers 1220s 2 workers [5 items] 1220s 1220s .F.F. [100%] 1220s =================================== FAILURES =================================== 1220s __________________________ AciRest.test_invalid_input __________________________ 1220s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1220s 1220s self = 1220s 1220s def test_invalid_input(self): 1220s self.maxDiff = None 1220s 1220s error = dict( 1220s code="401", 1220s text=("Username or password is incorrect - " "FAILED local authentication"), 1220s ) 1220s 1220s imdata = [ 1220s { 1220s "error": { 1220s "attributes": { 1220s "code": "401", 1220s "text": ("Username or password is incorrect - " "FAILED local authentication"), 1220s }, 1220s }, 1220s } 1220s ] 1220s 1220s totalCount = 1 1220s 1220s json_response = '{"totalCount":"1","imdata":[{"error":{"attributes":{"code":"401","text":"Username or password is incorrect - FAILED local authentication"}}}]}' # NOQA 1220s aci.response_json(json_response) 1220s self.assertEqual(aci.error, error) 1220s self.assertEqual(aci.imdata, imdata) 1220s self.assertEqual(aci.totalCount, totalCount) 1220s 1220s # Python 2.7+ is needed for xmljson 1220s if sys.version_info < (2, 7): 1220s return 1220s 1220s xml_response = """ 1220s 1220s 1220s """ 1220s aci.response_xml(xml_response) 1220s > self.assertEqual(aci.error, error) 1220s 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'} 1220s E - {'code': -1, 1220s E ? ^ 1220s E 1220s E + {'code': '401', 1220s E ? ^^^ + 1220s E 1220s E + 'text': 'Username or password is incorrect - FAILED local authentication'} 1220s E - 'text': "Unable to parse output as XML, see 'raw' output. name 'cobra' is not " 1220s E - 'defined'} 1220s 1220s tests/unit/module_utils/test_aci.py:237: AssertionError 1220s ________________________ AciRest.test_invalid_aci_login ________________________ 1220s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1220s 1220s self = 1220s 1220s def test_invalid_aci_login(self): 1220s self.maxDiff = None 1220s 1220s error = dict( 1220s code="401", 1220s text=("Username or password is incorrect - " "FAILED local authentication"), 1220s ) 1220s 1220s imdata = [ 1220s { 1220s "error": { 1220s "attributes": { 1220s "code": "401", 1220s "text": ("Username or password is incorrect - " "FAILED local authentication"), 1220s }, 1220s }, 1220s } 1220s ] 1220s 1220s totalCount = 1 1220s 1220s json_response = '{"totalCount":"1","imdata":[{"error":{"attributes":{"code":"401","text":"Username or password is incorrect - FAILED local authentication"}}}]}' # NOQA 1220s aci.response_json(json_response) 1220s self.assertEqual(aci.error, error) 1220s self.assertEqual(aci.imdata, imdata) 1220s self.assertEqual(aci.totalCount, totalCount) 1220s 1220s # Python 2.7+ is needed for xmljson 1220s if sys.version_info < (2, 7): 1220s return 1220s 1220s xml_response = """ 1220s 1220s 1220s 1220s """ 1220s aci.response_xml(xml_response) 1220s > self.assertEqual(aci.error, error) 1220s 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'} 1220s E - {'code': -1, 1220s E ? ^ 1220s E 1220s E + {'code': '401', 1220s E ? ^^^ + 1220s E 1220s E + 'text': 'Username or password is incorrect - FAILED local authentication'} 1220s E - 'text': "Unable to parse output as XML, see 'raw' output. name 'cobra' is not " 1220s E - 'defined'} 1220s 1220s tests/unit/module_utils/test_aci.py:89: AssertionError 1220s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/aci/tests/output/junit/python3.13-controller-units.xml - 1220s =========================== short test summary info ============================ 1220s FAILED tests/unit/module_utils/test_aci.py::AciRest::test_invalid_input - Ass... 1220s FAILED tests/unit/module_utils/test_aci.py::AciRest::test_invalid_aci_login 1220s ========================= 2 failed, 3 passed in 0.84s ========================== 1220s 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.HDQhnz/build.1ev/src/ansible_collections/cisco/aci/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/aci --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/aci tests/unit/module_utils/test_aci.py" returned exit status 1. 1221s ## return code is 1 1221s 1221s 1221s 1221s ############################################################ 1221s ############################################################ 1221s #### Running FLAKY tests in ansible_collections/cisco/dnac 1221s ############################################################ 1221s ############################################################ 1221s Unit test controller with Python 3.13 1222s ============================= test session starts ============================== 1222s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1222s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/dnac 1222s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1222s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 1222s created: 2/2 workers 1222s 2 workers [167 items] 1222s 1231s ..FFF.FFFFFFFF..FFFF.FFFF.FFFFFFFFFFFFFFFFFFFFFF.FFFFFFFFFFFFFFFF.FFFFFF [ 43%] 1238s FFFF..FFFF...F.FFF..FFFFFFFF....FFF.FFFFFFF..F.FFFF...FF.FFFF.FFFF..FFFF [ 86%] 1239s FFFFFF.FFFFFFFFFFFFFFFF [100%] 1239s ==================================== ERRORS ==================================== 1239s ______ ERROR collecting tests/unit/modules/dnac/test_discovery_intent.py _______ 1239s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1239s result: TResult | None = func() 1239s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1239s return list(collector.collect()) 1239s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1239s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1239s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1239s return self.obj("runTest") 1239s E TypeError: TestDnacDiscoveryIntent.__init__() takes 1 positional argument but 2 were given 1239s ______ ERROR collecting tests/unit/modules/dnac/test_discovery_intent.py _______ 1239s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1239s result: TResult | None = func() 1239s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1239s return list(collector.collect()) 1239s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1239s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1239s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1239s return self.obj("runTest") 1239s E TypeError: TestDnacDiscoveryIntent.__init__() takes 1 positional argument but 2 were given 1239s _________ ERROR collecting tests/unit/modules/dnac/test_pnp_intent.py __________ 1239s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1239s result: TResult | None = func() 1239s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1239s return list(collector.collect()) 1239s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1239s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1239s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1239s return self.obj("runTest") 1239s E TypeError: TestDnacPnPIntent.__init__() takes 1 positional argument but 2 were given 1239s _________ ERROR collecting tests/unit/modules/dnac/test_pnp_intent.py __________ 1239s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1239s result: TResult | None = func() 1239s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1239s return list(collector.collect()) 1239s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1239s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1239s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1239s return self.obj("runTest") 1239s E TypeError: TestDnacPnPIntent.__init__() takes 1 positional argument but 2 were given 1239s _________ ERROR collecting tests/unit/modules/dnac/test_site_intent.py _________ 1239s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1239s result: TResult | None = func() 1239s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1239s return list(collector.collect()) 1239s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1239s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1239s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1239s return self.obj("runTest") 1239s E TypeError: TestDnacSiteIntent.__init__() takes 1 positional argument but 2 were given 1239s _________ ERROR collecting tests/unit/modules/dnac/test_site_intent.py _________ 1239s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1239s result: TResult | None = func() 1239s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1239s return list(collector.collect()) 1239s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1239s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1239s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1239s return self.obj("runTest") 1239s E TypeError: TestDnacSiteIntent.__init__() takes 1 positional argument but 2 were given 1239s _________ ERROR collecting tests/unit/modules/dnac/test_swim_intent.py _________ 1239s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1239s result: TResult | None = func() 1239s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1239s return list(collector.collect()) 1239s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1239s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1239s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1239s return self.obj("runTest") 1239s E TypeError: TestDnacSwimIntent.__init__() takes 1 positional argument but 2 were given 1239s _________ ERROR collecting tests/unit/modules/dnac/test_swim_intent.py _________ 1239s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1239s result: TResult | None = func() 1239s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1239s return list(collector.collect()) 1239s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1239s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1239s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1239s return self.obj("runTest") 1239s E TypeError: TestDnacSwimIntent.__init__() takes 1 positional argument but 2 were given 1239s _______ ERROR collecting tests/unit/modules/dnac/test_template_intent.py _______ 1239s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1239s result: TResult | None = func() 1239s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1239s return list(collector.collect()) 1239s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1239s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1239s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1239s return self.obj("runTest") 1239s E TypeError: TestDnacTemplateIntent.__init__() takes 1 positional argument but 2 were given 1239s _______ ERROR collecting tests/unit/modules/dnac/test_template_intent.py _______ 1239s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1239s result: TResult | None = func() 1239s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1239s return list(collector.collect()) 1239s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1239s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1239s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1239s return self.obj("runTest") 1239s E TypeError: TestDnacTemplateIntent.__init__() takes 1 positional argument but 2 were given 1239s =================================== FAILURES =================================== 1239s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_null_sync_status _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_device_credentials_workflow_manager_null_sync_status(self): 1239s """ 1239s Test case for device credential workflow manager when exception occured during sync credential. 1239s 1239s This test case checks the behavior of the device credential workflow manager, when exception occured during sync credential in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_version="2.3.7.6", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_apply 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result['msg'], 1239s "Exception occurred while getting global device credentials sync status: " 1239s ) 1239s E AssertionError: 'An exception occurred while retrieving Si[515 chars]rue}' != 'Exception occurred while getting global d[27 chars]us: ' 1239s 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} 1239s E + Exception occurred while getting global device credentials sync status: 1239s 1239s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:411: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s ------------------------------ Captured log call ------------------------------- 1239s 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: . 1239s 1239s 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} 1239s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_negative_config_input _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_accesspoint_workflow_manager_negative_config_input(self): 1239s """ 1239s Test case for access point workfollow manager and negative test verify ap update 1239s 1239s This test case checks the behavior of the update access point data in the specified Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config_verify=True, 1239s dnac_version="2.3.7.6", 1239s config=self.playbook_config_update_some_missing_data 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s self.maxDiff = None 1239s > self.assertEqual( 1239s result.get('msg'), 1239s 'Invalid parameters in playbook config: \'[["Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' + 1239s 'for the radio type xor_radio allowed series 280", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' + 1239s 'for the radio type xor_radio allowed series 380", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' + 1239s 'for the radio type xor_radio allowed series 480", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' + 1239s 'for the radio type xor_radio allowed series 9120", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' + 1239s 'for the radio type xor_radio allowed series 9166", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' + 1239s 'for the radio type xor_radio allowed series IW9167EH", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' + 1239s 'for the radio type xor_radio allowed series IW9165E", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' + 1239s 'for the radio type xor_radio allowed series IW9165DH"], "management_ip_address: Invalid Management IP ' + 1239s 'Address \'204.192.12.201dsd\' in playbook.", \'ap_name:hostname,family,type,mac_address,management_ip_address,' + 1239s 'ap_ethernet_mac_address : The string exceeds the allowed range of max 32 char\', "led_status: Invalid LED Status \'Enableddd\' in ' + 1239s 'playbook.", "ap_mode: Invalid value \'Monitorw\' for ap_mode in playbook. Must be one of: Local, Monitor, Sniffer or ' + 1239s 'Bridge.", "failover_priority: Invalid value \'Lossw\' for failover_priority in playbook. Must be one of: Low, Medium, High or ' + 1239s 'Critical.", "clean_air_si_2.4ghz: Invalid value \'Disableds\' in playbook. Must be ' + 1239s 'either \'Enabled\' or \'Disabled\'.", "clean_air_si_5ghz: Invalid value \'Disableds\' in playbook. Must be ' + 1239s 'either \'Enabled\' or \'Disabled\'.", "clean_air_si_6ghz: Invalid value \'Enableds\' in playbook. Must be ' + 1239s 'either \'Enabled\' or \'Disabled\'.", "primary_ip_address: Invalid primary_ip_address \'{\'address\': \'204.192.4.20dfasd0\'}\' in ' + 1239s 'playbook", "secondary_ip_address: Invalid secondary_ip_address \'{\'address\': \'204.192.4.20dfasd0\'}\' in playbook", "tertiary_ip_address: ' + 1239s 'Invalid tertiary_ip_address \'{\'address\': \'204.192.4.20dfasd0\'}\' in playbook", \'Radio Params cannot be changed when AP mode is in ' + 1239s 'Monitorw.\', "admin_status: Invalid value \'Enabledsds\' for admin_status in playbook. Must be ' + 1239s 'either \'Enabled\' or \'Disabled\'.", "channel_assignment_mode: Invalid value \'any\' for Channel Assignment Mode in playbook. Must be ' + 1239s 'either \'Global\' or \'Custom\'.", "channel_number: Invalid value \'22\' for Channel Number in playbook. Must be one of: ' + 1239s '[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 ' + 1239s 'of: \'20 MHz\', \'40 MHz\', \'80 MHz\', \'160 MHz\', or \'320 MHz\'.", "power_assignment_mode: Invalid ' + 1239s 'value \'any\' for Power assignment mode in ' + 1239s 'playbook. Must be either \'Global\' or \'Custom\'.", \'powerlevel: This configuration is only supported with Client-Serving Radio Role ' + 1239s 'Assignment None \', "radio_role_assignment: Invalid value \'any\' for radio role assignment in playbook. Must be one ' + 1239s 'of: \'Auto\', \'Monitor\' or \'Client-Serving\'.", \'Radio Params cannot be changed when AP mode is in Monitorw.\', "admin_status: ' + 1239s 'Invalid value \'Enabledsds\' for admin_status in playbook. Must be either \'Enabled\' or \'Disabled\'.", "antenna_gain: Invalid \'41\' in ' + 1239s 'playbook, allowed range of min: 0 and max: 40", "channel_assignment_mode: Invalid value \'any\' for Channel Assignment Mode in playbook. ' + 1239s 'Must be either \'Global\' or \'Custom\'.", ' + 1239s '"radio_role_assignment: Invalid value \'Client-Serving\'. Hence, AP mode is not Local. Kindly change the AP mode to Local then ' + 1239s 'change the radio_role_assignment to Auto."]\' ' 1239s ) 1239s 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]]\' ' 1239s 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'."]' 1239s E ? ^^^^^^^^^^ ^^^ ^^^^^^^^^^ ^^^ ^^^^^^^^^^ ^^^ ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ ^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^ --------------------------------------------------------------------------------------------------- 1239s 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."]' 1239s E ? ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^ ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^ +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1239s 1239s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:221: AssertionError 1239s ------------------------------ Captured log call ------------------------------- 1239s 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'."]' 1239s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_update_verify _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s def get_tasks_by_id(self, task_id): 1239s """ 1239s Get the tasks of a task ID in Cisco Catalyst Center. 1239s Args: 1239s self (object): An instance of a class that provides access to Cisco Catalyst Center. 1239s task_id (str): The unique identifier of the task for which you want to retrieve details. 1239s Returns: 1239s dict or None: A dictionary status information about the specified task, 1239s or None if the task with the given task_id is not found. 1239s Description: 1239s Call the API 'get_tasks_by_id' to get the status of the task. 1239s Return the details along with the status of the task. 1239s """ 1239s # Need to handle exception 1239s task_status = None 1239s try: 1239s > response = self.dnac._exec( 1239s family="task", 1239s function="get_tasks_by_id", 1239s params={"id": task_id} 1239s ) 1239s 1239s plugins/module_utils/dnac.py:1662: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s /usr/lib/python3.13/unittest/mock.py:1169: in __call__ 1239s return self._mock_call(*args, **kwargs) 1239s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call 1239s return self._execute_mock_call(*args, **kwargs) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s self = , args = () 1239s kwargs = {'family': 'task', 'function': 'get_tasks_by_id', 'params': {'id': '0191e542-b3fb-7ac8-ae85-81e461c8b022'}} 1239s effect = 1239s 1239s def _execute_mock_call(self, /, *args, **kwargs): 1239s # separate from _increment_mock_call so that awaited functions are 1239s # executed separately from their call, also AsyncMock overrides this method 1239s 1239s effect = self.side_effect 1239s if effect is not None: 1239s if _is_exception(effect): 1239s raise effect 1239s elif not _callable(effect): 1239s > result = next(effect) 1239s E StopIteration 1239s 1239s /usr/lib/python3.13/unittest/mock.py:1230: StopIteration 1239s 1239s During handling of the above exception, another exception occurred: 1239s 1239s self = 1239s 1239s def test_device_credentials_workflow_manager_update_verify(self): 1239s """ 1239s Test case for device credential workflow manager when updating a device credential. 1239s 1239s This test case checks the behavior of the device credential workflow manager when updating a new device credentials in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_version="2.3.7.6", 1239s dnac_log=True, 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_config_creation 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:336: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/device_credential_workflow_manager.py:3277: in main 1239s ccc_credential.get_diff_state_apply[state](config).check_return_status() 1239s plugins/modules/device_credential_workflow_manager.py:2977: in get_diff_merged 1239s self.update_device_credentials().check_return_status() 1239s plugins/modules/device_credential_workflow_manager.py:2684: in update_device_credentials 1239s self.check_tasks_response_status(response, "update_global_credentials_v2").check_return_status() 1239s plugins/module_utils/dnac.py:1730: in check_tasks_response_status 1239s task_details = self.get_tasks_by_id(task_id) 1239s plugins/module_utils/dnac.py:1684: in get_tasks_by_id 1239s self.fail_and_exit(self.msg) 1239s plugins/module_utils/dnac.py:1787: in fail_and_exit 1239s self.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s ------------------------------ Captured log call ------------------------------- 1239s 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: . 1239s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_add_existing_devices _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_inventory_workflow_manager_playbook_add_existing_devices(self): 1239s """ 1239s Test case for add device with full crendentials. 1239s 1239s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.5.3", 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_add_existing_devices 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=False) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "device(s) '70.2.2.2', '80.2.2.2' already present in Cisco Catalyst Center." 1239s ) 1239s 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." 1239s E - No changes were made. No inventory actions were performed in Cisco Catalyst Center. 1239s E + device(s) '70.2.2.2', '80.2.2.2' already present in Cisco Catalyst Center. 1239s 1239s tests/unit/modules/dnac/test_inventory_workflow_manager.py:282: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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.'} 1239s ------------------------------ Captured log call ------------------------------- 1239s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3566: self.config 1239s 1239s 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'} 1239s 1239s WARNING logger:dnac.py:294 Inventory: verify_diff_merged: 3882: verify starts here verify diff merged 1239s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_provision_device _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_accesspoint_workflow_manager_provision_device(self): 1239s """ 1239s Test case for access point workfollow manager provision and update device. 1239s 1239s This test case checks the behavior of the access point workflow when provisioned in the specified Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s dnac_version="2.3.7.6", 1239s config_verify=True, 1239s config=self.playbook_config_complete 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:145: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/accesspoint_workflow_manager.py:4190: in main 1239s ccc_network.get_diff_state_apply[state](config).check_return_status() 1239s plugins/modules/accesspoint_workflow_manager.py:1894: in get_diff_merged 1239s self.validate_ap_config_parameters(ap_config).check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s ------------------------------ Captured log call ------------------------------- 1239s 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']' 1239s __ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_add_udf __ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_inventory_workflow_manager_playbook_add_udf(self): 1239s """ 1239s Test case for add device with full crendentials. 1239s 1239s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_add_udf 1239s ) 1239s ) 1239s result = self.execute_module(changed=True, failed=False) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "device(s) '70.2.2.2', '80.2.2.2' already present in Cisco Catalyst Center." 1239s ) 1239s 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." 1239s E - Global User Defined Field(UDF) named 'Test123' has been successfully added to the device. 1239s E + device(s) '70.2.2.2', '80.2.2.2' already present in Cisco Catalyst Center. 1239s 1239s tests/unit/modules/dnac/test_inventory_workflow_manager.py:306: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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."} 1239s ------------------------------ Captured log call ------------------------------- 1239s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3566: self.config 1239s 1239s 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']} 1239s 1239s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3570: udf_field_list 1239s 1239s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3571: [{'name': 'Test123'}] 1239s 1239s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3584: False 1239s 1239s WARNING logger:dnac.py:294 Inventory: verify_diff_merged: 3882: verify starts here verify diff merged 1239s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_del_provisioned_device_2353 _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_inventory_workflow_manager_playbook_del_provisioned_device_2353(self): 1239s """ 1239s Test case for add device with full crendentials. 1239s 1239s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.5.3", 1239s state="deleted", 1239s config_verify=True, 1239s config=self.playbook_del_provisioned_device_2353 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_inventory_workflow_manager.py:553: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/inventory_workflow_manager.py:4197: in main 1239s ccc_device.get_diff_state_apply[state](config).check_return_status() 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def get_diff_deleted(self, config): 1239s """ 1239s Main function to delete devices in Cisco Catalyst Center based on device IP address. 1239s Parameters: 1239s config (dict): The configuration settings for the deletion process. 1239s Returns: 1239s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1239s Description: 1239s This method compares the provided configuration against the current 1239s devices in the Cisco Catalyst Center and deletes devices based on 1239s their IP addresses. It returns a success status indicating whether 1239s the deletion process was completed successfully. 1239s """ 1239s 1239s device_to_delete = self.get_device_ips_from_config_priority() 1239s self.result['msg'] = [] 1239s 1239s # Handle Global User Defined Fields (UDF) Deletion 1239s if self.config[0].get('add_user_defined_field'): 1239s return self.delete_user_defined_fields() 1239s 1239s # Loop over devices to delete them 1239s for device_ip in device_to_delete: 1239s if device_ip not in self.have.get("device_in_ccc"): 1239s self.status = "success" 1239s self.result['changed'] = False 1239s self.msg = "Device '{0}' is not present in Cisco Catalyst Center so can't perform delete operation".format(device_ip) 1239s self.no_device_to_delete.append(device_ip) 1239s self.result['msg'].append(self.msg) 1239s self.result['response'] = self.msg 1239s self.log(self.msg, "INFO") 1239s continue 1239s device_ids = self.get_device_ids([device_ip]) 1239s > device_id = device_ids[0] 1239s E IndexError: list index out of range 1239s 1239s plugins/modules/inventory_workflow_manager.py:3665: IndexError 1239s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_delete_a_device _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_inventory_workflow_manager_playbook_delete_a_device(self): 1239s """ 1239s Test case for add device with full crendentials. 1239s 1239s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.7.6", 1239s state="deleted", 1239s config_verify=True, 1239s config=self.playbook_delete_a_device 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_inventory_workflow_manager.py:329: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/inventory_workflow_manager.py:4197: in main 1239s ccc_device.get_diff_state_apply[state](config).check_return_status() 1239s plugins/modules/inventory_workflow_manager.py:3668: in get_diff_deleted 1239s self.handle_device_deletion(device_ip) 1239s plugins/modules/inventory_workflow_manager.py:3857: in handle_device_deletion 1239s self.check_tasks_response_status(response, api_name='deleted_device_by_id') 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def check_tasks_response_status(self, response, api_name): 1239s """ 1239s Get the task response status from taskId 1239s Args: 1239s self: The current object details. 1239s response (dict): API response. 1239s api_name (str): API name. 1239s Returns: 1239s self (object): The current object with updated desired Fabric Transits information. 1239s Description: 1239s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE' 1239s state or till it reaches the maximum timeout. 1239s Log the task details and return self. 1239s """ 1239s 1239s if not response: 1239s self.msg = "response is empty" 1239s self.status = "exited" 1239s return self 1239s 1239s if not isinstance(response, dict): 1239s self.msg = "response is not a dictionary" 1239s self.status = "exited" 1239s return self 1239s 1239s task_info = response.get("response") 1239s if task_info.get("errorcode") is not None: 1239s self.msg = response.get("response").get("detail") 1239s self.status = "failed" 1239s return self 1239s 1239s task_id = task_info.get("taskId") 1239s start_time = time.time() 1239s while True: 1239s elapsed_time = time.time() - start_time 1239s if elapsed_time >= self.max_timeout: 1239s self.msg = "Max timeout of {0} sec has reached for the task id '{1}'. " \ 1239s .format(self.max_timeout, task_id) + \ 1239s "Exiting the loop due to unexpected API '{0}' status.".format(api_name) 1239s self.log(self.msg, "WARNING") 1239s self.status = "failed" 1239s break 1239s 1239s task_details = self.get_tasks_by_id(task_id) 1239s self.log('Getting tasks details from task ID {0}: {1}' 1239s .format(task_id, task_details), "DEBUG") 1239s 1239s > task_status = task_details.get("status") 1239s E AttributeError: 'list' object has no attribute 'get' 1239s 1239s plugins/module_utils/dnac.py:1734: AttributeError 1239s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_provision_old_version _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_accesspoint_workflow_manager_provision_old_version(self): 1239s """ 1239s Test case for access point workfollow manager provision device old version. 1239s 1239s This test case checks the behavior of the access point workflow when provisioned in the specified Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s dnac_version="2.3.5.3", 1239s config_verify=True, 1239s config=self.playbook_config_provision_old_version 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s self.maxDiff = None 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "The provided site name 'Global/Chennai/LTTS/FLOOR1' is either invalid or not present in the Cisco Catalyst Center." 1239s ) 1239s E AssertionError: 'AP - LTTS_Test_9124_T2 does not need any update' != "The provided site name 'Global/Chennai/L[94 chars]ter." 1239s E - AP - LTTS_Test_9124_T2 does not need any update 1239s E + The provided site name 'Global/Chennai/LTTS/FLOOR1' is either invalid or not present in the Cisco Catalyst Center. 1239s 1239s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:302: AssertionError 1239s ------------------------------ Captured log call ------------------------------- 1239s 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' 1239s 1239s 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. 1239s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_delete_device_udf _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_inventory_workflow_manager_playbook_delete_device_udf(self): 1239s """ 1239s Test case for add device with full crendentials. 1239s 1239s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.7.6", 1239s state="deleted", 1239s config_verify=True, 1239s config=self.playbook_delete_device_udf 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_inventory_workflow_manager.py:478: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/inventory_workflow_manager.py:4197: in main 1239s ccc_device.get_diff_state_apply[state](config).check_return_status() 1239s plugins/modules/inventory_workflow_manager.py:3668: in get_diff_deleted 1239s self.handle_device_deletion(device_ip) 1239s plugins/modules/inventory_workflow_manager.py:3857: in handle_device_deletion 1239s self.check_tasks_response_status(response, api_name='deleted_device_by_id') 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def check_tasks_response_status(self, response, api_name): 1239s """ 1239s Get the task response status from taskId 1239s Args: 1239s self: The current object details. 1239s response (dict): API response. 1239s api_name (str): API name. 1239s Returns: 1239s self (object): The current object with updated desired Fabric Transits information. 1239s Description: 1239s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE' 1239s state or till it reaches the maximum timeout. 1239s Log the task details and return self. 1239s """ 1239s 1239s if not response: 1239s self.msg = "response is empty" 1239s self.status = "exited" 1239s return self 1239s 1239s if not isinstance(response, dict): 1239s self.msg = "response is not a dictionary" 1239s self.status = "exited" 1239s return self 1239s 1239s task_info = response.get("response") 1239s if task_info.get("errorcode") is not None: 1239s self.msg = response.get("response").get("detail") 1239s self.status = "failed" 1239s return self 1239s 1239s task_id = task_info.get("taskId") 1239s start_time = time.time() 1239s while True: 1239s elapsed_time = time.time() - start_time 1239s if elapsed_time >= self.max_timeout: 1239s self.msg = "Max timeout of {0} sec has reached for the task id '{1}'. " \ 1239s .format(self.max_timeout, task_id) + \ 1239s "Exiting the loop due to unexpected API '{0}' status.".format(api_name) 1239s self.log(self.msg, "WARNING") 1239s self.status = "failed" 1239s break 1239s 1239s task_details = self.get_tasks_by_id(task_id) 1239s self.log('Getting tasks details from task ID {0}: {1}' 1239s .format(task_id, task_details), "DEBUG") 1239s 1239s > task_status = task_details.get("status") 1239s E AttributeError: 'list' object has no attribute 'get' 1239s 1239s plugins/module_utils/dnac.py:1734: AttributeError 1239s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_delete_provisioned_device _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_inventory_workflow_manager_playbook_delete_provisioned_device(self): 1239s """ 1239s Test case for add device with full crendentials. 1239s 1239s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.7.6", 1239s state="deleted", 1239s config_verify=True, 1239s config=self.playbook_delete_provisioned_device 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_inventory_workflow_manager.py:354: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/inventory_workflow_manager.py:4197: in main 1239s ccc_device.get_diff_state_apply[state](config).check_return_status() 1239s plugins/modules/inventory_workflow_manager.py:3675: in get_diff_deleted 1239s self.delete_provisioned_device_v2(device_ip) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def delete_provisioned_device_v2(self, device_ip): 1239s """ 1239s Deletes provisioned devices for versions > 2.3.5.3. 1239s 1239s Parameters: 1239s device_ip (str): The IP address of the device to be deleted. 1239s 1239s Description: 1239s This method deletes a provisioned device with the specified IP address 1239s for software versions greater than 2.3.5.3. It ensures that the device 1239s is properly removed from the Cisco Catalyst Center, handling any 1239s required validations and API interactions. 1239s """ 1239s 1239s device_ids = self.get_device_ids([device_ip]) 1239s > device_id = device_ids[0] 1239s E IndexError: list index out of range 1239s 1239s plugins/modules/inventory_workflow_manager.py:3801: IndexError 1239s ------------------------------ Captured log call ------------------------------- 1239s ERROR logger:dnac.py:294 Inventory: get_device_ids: 2403: Error while fetching device '204.1.2.4' from Cisco Catalyst Center: 0 1239s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_prov_device_2353 _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_inventory_workflow_manager_playbook_prov_device_2353(self): 1239s """ 1239s Test case for add device with full crendentials. 1239s 1239s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.5.3", 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_prov_device_2353 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_inventory_workflow_manager.py:578: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/inventory_workflow_manager.py:4197: in main 1239s ccc_device.get_diff_state_apply[state](config).check_return_status() 1239s plugins/modules/inventory_workflow_manager.py:3613: in get_diff_merged 1239s self.provisioned_wired_device().check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s ------------------------------ Captured log call ------------------------------- 1239s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3566: self.config 1239s 1239s 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'}]} 1239s 1239s ERROR logger:dnac.py:294 Inventory: provisioned_wired_device: 1720: Cannot do Provisioning for device 204.1.2.4. 1239s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_some_error_data_update_accesspoint _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_accesspoint_workflow_manager_some_error_data_update_accesspoint(self): 1239s """ 1239s Test case for access point workfollow manager negative case. 1239s 1239s This test case checks the behavior of the access point workflow when wrong data passed in the specified Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config_verify=True, 1239s dnac_version="2.3.7.6", 1239s config=self.playbook_config_update_some_error_data 1239s ) 1239s ) 1239s result = self.execute_module(changed=True, failed=True) 1239s self.maxDiff = None 1239s > self.assertEqual( 1239s result.get('msg'), 1239s 'The provided site name \'Global/USA/New York/BLDNYCGlobal/USA/New York/BLDNYCGlobal/USA/iikk/FLOOR2FLOOR2FLOOR2FLOOR2FLOOR2FLOOR2FLOO\' ' + 1239s 'is either invalid or not present in the Cisco Catalyst Center.' 1239s ) 1239s E AssertionError: "An error occurred while executing GET API[211 chars]n: ." != "The provided site name 'Global/USA/New Yo[175 chars]ter." 1239s 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: . 1239s 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. 1239s 1239s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:195: AssertionError 1239s ------------------------------ Captured log call ------------------------------- 1239s 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: . 1239s 1239s 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} 1239s 1239s 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. 1239s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_provision_device _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_inventory_workflow_manager_playbook_provision_device(self): 1239s """ 1239s Test case for add device with full crendentials. 1239s 1239s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.7.6", 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_provision_device 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_inventory_workflow_manager.py:528: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/inventory_workflow_manager.py:4197: in main 1239s ccc_device.get_diff_state_apply[state](config).check_return_status() 1239s plugins/modules/inventory_workflow_manager.py:3613: in get_diff_merged 1239s self.provisioned_wired_device().check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s ------------------------------ Captured log call ------------------------------- 1239s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3566: self.config 1239s 1239s 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'}]} 1239s 1239s WARNING logger:dnac.py:294 Inventory: is_device_assigned_to_site: 1876: Response collected from the API 'get_device_detail' {'response': [], 'version': '1.0'} 1239s 1239s 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' 1239s 1239s 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} 1239s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_provision_failed_for_site _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_inventory_workflow_manager_playbook_provision_failed_for_site(self): 1239s """ 1239s Test case for add device with full crendentials. 1239s 1239s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_provision_failed_for_site 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Wired Device Provisioning failed for all devices" 1239s ) 1239s E AssertionError: "An exception occurred while retrieving S[136 chars]able" != 'Wired Device Provisioning failed for all devices' 1239s 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 1239s E + Wired Device Provisioning failed for all devices 1239s 1239s tests/unit/modules/dnac/test_inventory_workflow_manager.py:380: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s ------------------------------ Captured log call ------------------------------- 1239s 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 1239s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_task_error_update_accesspoint _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_accesspoint_workflow_manager_task_error_update_accesspoint(self): 1239s """ 1239s Test case for access point workfollow manager and negative test verify ap update. 1239s 1239s This test case checks the behavior of the nagative test case of update in the specified Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config_verify=True, 1239s dnac_version="2.3.7.6", 1239s config=self.playbook_config 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Unable to get success response, hence AP config not updated" 1239s ) 1239s E AssertionError: "An error occurred while executing API ca[74 chars]n: ." != 'Unable to get success response, hence AP[15 chars]ated' 1239s E - An error occurred while executing API call to Function: 'get_task_details_by_id' due to the the following exception: . 1239s E + Unable to get success response, hence AP config not updated 1239s 1239s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:326: AssertionError 1239s ------------------------------ Captured log call ------------------------------- 1239s WARNING logger:dnac.py:294 Accesspoint: update_ap_configuration: 3501: No AP name or MAC address found in ap_config. 1239s 1239s 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: . 1239s ___________ TestDnacAccesspointWorkflow.test_invalid_get_site_device ___________ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_invalid_get_site_device(self): 1239s """ 1239s Test case for access point workfollow manager get device details from site 1239s 1239s This test case checks the behavior of the access point workflow when check the devices in the site on the specified Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s dnac_version="2.3.7.6", 1239s config=self.get_membership_empty 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Required param of mac_address,ip_address or hostname is not in playbook config" 1239s ) 1239s E AssertionError: 'Successfully validated playbook config pa[1253 chars]}\n]' != 'Required param of mac_address,ip_address [33 chars]nfig' 1239s E Diff is 1423 characters long. Set self.maxDiff to None to see it. 1239s 1239s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:399: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s ------------------------------ Captured log call ------------------------------- 1239s WARNING logger:dnac.py:294 Accesspoint: get_accesspoint_details: 2688: Required param of mac_address,ip_address or hostname is not in playbook config 1239s 1239s ERROR logger:dnac.py:294 Accesspoint: set_operation_result: 1780: Required param of mac_address,ip_address or hostname is not in playbook config 1239s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_update_mgmt_ip _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_inventory_workflow_manager_playbook_update_mgmt_ip(self): 1239s """ 1239s Test case for add device with full crendentials. 1239s 1239s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.7.6", 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_update_mgmt_ip 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_inventory_workflow_manager.py:503: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/inventory_workflow_manager.py:4197: in main 1239s ccc_device.get_diff_state_apply[state](config).check_return_status() 1239s plugins/modules/inventory_workflow_manager.py:3391: in get_diff_merged 1239s csv_reader = self.decrypt_and_read_csv(export_response, password) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def decrypt_and_read_csv(self, response, password): 1239s """ 1239s Parameters: 1239s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1239s response (requests.Response): HTTP response object containing the encrypted CSV file. 1239s password (str): Password used for decrypting the CSV file. 1239s Returns: 1239s csv.DictReader: A CSV reader object for the decrypted content, allowing iteration over rows as dictionaries. 1239s Description: 1239s Decrypts and reads a CSV-like file from the given HTTP response using the provided password. 1239s """ 1239s 1239s > zip_data = BytesIO(response.data) 1239s E AttributeError: 'NoneType' object has no attribute 'data' 1239s 1239s plugins/modules/inventory_workflow_manager.py:1132: AttributeError 1239s _____________ TestDnacAccesspointWorkflow.test_invalid_site_exists _____________ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_invalid_site_exists(self): 1239s """ 1239s Test case for access point workfollow manager check site exists. 1239s 1239s This test case checks the behavior of the access point workflow when site exist in the specified Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s dnac_version="2.3.7.6", 1239s config=self.playbook_config_provision 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "MAC Address is not Access point" 1239s ) 1239s E AssertionError: 'Provided device is not Access Point.' != 'MAC Address is not Access point' 1239s E - Provided device is not Access Point. 1239s E + MAC Address is not Access point 1239s 1239s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:350: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'msg': 'Provided device is not Access Point.', 'response': 'Provided device is not Access Point.', 'failed': True} 1239s ------------------------------ Captured log call ------------------------------- 1239s ERROR logger:dnac.py:294 Accesspoint: set_operation_result: 1780: Provided device is not Access Point. 1239s _________ TestNetworkCompliance.test_run_compliance_categories_iplist __________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_run_compliance_categories_iplist(self): 1239s 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_log_level="DEBUG", 1239s dnac_log_append=False, 1239s state="merged", 1239s config=self.test_data.get("playbook_config_run_compliance_categories_iplist") 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:412: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1239s ccc_network_compliance.get_want(config).check_return_status() 1239s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1239s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1239s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list 1239s self.fail_and_exit(self.msg) 1239s plugins/module_utils/dnac.py:1787: in fail_and_exit 1239s self.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s ----------------------------- Captured stdout call ----------------------------- 1239s Inside load_fixtures 1239s Mock for DNACSDK._exec: 1239s Inside load_fixtures 1239s ------------------------------ Captured log call ------------------------------- 1239s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1239s 1239s 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} 1239s 1239s 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}] 1239s 1239s 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}] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1239s 1239s 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} 1239s 1239s 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 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None' 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1239s 1239s 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 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_run_compliance_categories: 510: Validating the provided run compliance categories: ['INTENT', 'RUNNING_CONFIG', 'IMAGE', 'PSIRT'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_run_compliance_categories: 518: Validation successful: valid run compliance categorites provided: ['INTENT', 'RUNNING_CONFIG', 'IMAGE', 'PSIRT'] 1239s 1239s 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} 1239s 1239s 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 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1239s 1239s 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'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1239s 1239s 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']} 1239s 1239s 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'}]} 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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'} 1239s 1239s 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 1239s 1239s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 782: Total number of devices received: 1 1239s 1239s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 783: Number of devices that are Unreachable or APs: 1 1239s 1239s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 784: Config Backup Operation can be performed on the following filtered devices: 0 1239s 1239s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1239s 1239s 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). 1239s 1239s 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). 1239s _____________ TestDnacAccesspointWorkflow.test_invalid_wlc_device ______________ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_invalid_wlc_device(self): 1239s """ 1239s Test case for access point workfollow manager check invalid wireless controller. 1239s 1239s This test case checks the behavior of the access point workflow of invalid wlc specified Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s dnac_version="2.3.7.6", 1239s config=self.playbook_config_provision 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s self.maxDiff = None 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Wireles controller is not provisioned:" 1239s ) 1239s E AssertionError: "An error occurred while executing GET AP[157 chars]n: ." != 'Wireles controller is not provisioned:' 1239s 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: . 1239s E + Wireles controller is not provisioned: 1239s 1239s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:170: AssertionError 1239s ------------------------------ Captured log call ------------------------------- 1239s 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: . 1239s 1239s 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} 1239s 1239s ERROR logger:dnac.py:294 Accesspoint: verify_ap_provision: 3010: Wireles controller is not provisioned: 1239s 1239s ERROR logger:dnac.py:294 Accesspoint: set_operation_result: 1780: Wireles controller is not provisioned: 1239s ____________ TestNetworkCompliance.test_run_compliance_with_iplist _____________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_run_compliance_with_iplist(self): 1239s 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=False, 1239s dnac_log_level="DEBUG", 1239s dnac_log_append=False, 1239s state="merged", 1239s config=self.test_data.get("playbook_config_run_compliance_iplist") 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:349: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1239s ccc_network_compliance.get_want(config).check_return_status() 1239s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1239s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1239s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list 1239s self.fail_and_exit(self.msg) 1239s plugins/module_utils/dnac.py:1787: in fail_and_exit 1239s self.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s ----------------------------- Captured stdout call ----------------------------- 1239s Inside load_fixtures 1239s Mock for DNACSDK._exec: 1239s Inside load_fixtures 1239s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_already_sync_cred _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_device_credentials_workflow_manager_already_sync_cred(self): 1239s """ 1239s Test case for device credential workflow manager when applying a device credential to site devices where sync is already applied. 1239s 1239s This test case checks the behavior of the device credential workflow manager when applying a device credential to site devices 1239s 1239s where sync is already applied in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_version="2.3.7.6", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_apply 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=False) 1239s print(result) 1239s self.assertEqual( 1239s > result['response'][0]['applyCredential']['Applied Credentials']['msg'], 1239s "Provided credentials category is/are already synced." 1239s ) 1239s E KeyError: 'applyCredential' 1239s 1239s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:314: KeyError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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': []} 1239s ------------------------------ Captured log call ------------------------------- 1239s 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'} 1239s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_1 ________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_run_compliance_with_iplist_failure_1(self): 1239s 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=False, 1239s dnac_log_level="DEBUG", 1239s dnac_log_append=False, 1239s state="merged", 1239s config=self.test_data.get("playbook_config_run_compliance_iplist") 1239s ) 1239s ) 1239s > result = self.execute_module(changed=False, failed=False) 1239s 1239s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:541: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1239s ccc_network_compliance.get_want(config).check_return_status() 1239s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1239s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1239s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list 1239s self.fail_and_exit(self.msg) 1239s plugins/module_utils/dnac.py:1787: in fail_and_exit 1239s self.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s ----------------------------- Captured stdout call ----------------------------- 1239s Inside load_fixtures 1239s Mock for DNACSDK._exec: 1239s Inside load_fixtures 1239s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_2 ________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_run_compliance_with_iplist_failure_2(self): 1239s 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_log_level="DEBUG", 1239s dnac_log_append=False, 1239s state="merged", 1239s config=self.test_data.get("playbook_config_run_compliance_iplist") 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s > self.assertIn( 1239s "An error occurred while retrieving Compliance Details for device:192.168.0.0 using 'compliance_details_of_device' API call", 1239s result.get('msg') 1239s ) 1239s 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)." 1239s 1239s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:563: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s Inside load_fixtures 1239s Mock for DNACSDK._exec: 1239s Inside load_fixtures 1239s ------------------------------ Captured log call ------------------------------- 1239s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1239s 1239s 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} 1239s 1239s 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}] 1239s 1239s 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}] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1239s 1239s 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} 1239s 1239s 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 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None' 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1239s 1239s 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 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1239s 1239s 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} 1239s 1239s 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 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1239s 1239s 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'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1239s 1239s 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']} 1239s 1239s 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'}]} 1239s 1239s 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 1239s 1239s 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. 1239s 1239s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 788: Error fetching device IDs from Cisco Catalyst Center. Error details: Simulated exception 1239s 1239s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1239s 1239s 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). 1239s 1239s 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). 1239s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_3 ________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_run_compliance_with_iplist_failure_3(self): 1239s 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_log_level="DEBUG", 1239s dnac_log_append=False, 1239s state="merged", 1239s config=self.test_data.get("playbook_config_run_compliance_iplist") 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s > self.assertEqual( 1239s "An error occurred while retrieving the task_id of the run_compliance operation.", 1239s result.get('msg') 1239s ) 1239s E AssertionError: 'An error occurred while retrieving the t[35 chars]ion.' != "No device UUIDs were fetched for network[153 chars]Ps)." 1239s E - An error occurred while retrieving the task_id of the run_compliance operation. 1239s 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). 1239s 1239s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:584: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s Inside load_fixtures 1239s Mock for DNACSDK._exec: 1239s Inside load_fixtures 1239s ------------------------------ Captured log call ------------------------------- 1239s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1239s 1239s 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} 1239s 1239s 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}] 1239s 1239s 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}] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1239s 1239s 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} 1239s 1239s 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 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None' 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1239s 1239s 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 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1239s 1239s 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} 1239s 1239s 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 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1239s 1239s 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'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1239s 1239s 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']} 1239s 1239s 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'}]} 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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'} 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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 1239s 1239s 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. 1239s 1239s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 788: Error fetching device IDs from Cisco Catalyst Center. Error details: Simulated exception 1239s 1239s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1239s 1239s 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). 1239s 1239s 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). 1239s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_apply_sync _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s def get_tasks_by_id(self, task_id): 1239s """ 1239s Get the tasks of a task ID in Cisco Catalyst Center. 1239s Args: 1239s self (object): An instance of a class that provides access to Cisco Catalyst Center. 1239s task_id (str): The unique identifier of the task for which you want to retrieve details. 1239s Returns: 1239s dict or None: A dictionary status information about the specified task, 1239s or None if the task with the given task_id is not found. 1239s Description: 1239s Call the API 'get_tasks_by_id' to get the status of the task. 1239s Return the details along with the status of the task. 1239s """ 1239s # Need to handle exception 1239s task_status = None 1239s try: 1239s > response = self.dnac._exec( 1239s family="task", 1239s function="get_tasks_by_id", 1239s params={"id": task_id} 1239s ) 1239s 1239s plugins/module_utils/dnac.py:1662: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s /usr/lib/python3.13/unittest/mock.py:1169: in __call__ 1239s return self._mock_call(*args, **kwargs) 1239s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call 1239s return self._execute_mock_call(*args, **kwargs) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s self = , args = () 1239s kwargs = {'family': 'task', 'function': 'get_tasks_by_id', 'params': {'id': '0191ea00-6acf-7863-83c3-638499ad0aff'}} 1239s effect = 1239s 1239s def _execute_mock_call(self, /, *args, **kwargs): 1239s # separate from _increment_mock_call so that awaited functions are 1239s # executed separately from their call, also AsyncMock overrides this method 1239s 1239s effect = self.side_effect 1239s if effect is not None: 1239s if _is_exception(effect): 1239s raise effect 1239s elif not _callable(effect): 1239s > result = next(effect) 1239s E StopIteration 1239s 1239s /usr/lib/python3.13/unittest/mock.py:1230: StopIteration 1239s 1239s During handling of the above exception, another exception occurred: 1239s 1239s self = 1239s 1239s def test_device_credentials_workflow_manager_apply_sync(self): 1239s """ 1239s Test case for device credential workflow manager when applying a device credential to site devices. 1239s 1239s This test case checks the behavior of the device credential workflow manager when applying a device credential 1239s 1239s to site devices in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_version="2.3.7.6", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_apply 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:362: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/device_credential_workflow_manager.py:3277: in main 1239s ccc_credential.get_diff_state_apply[state](config).check_return_status() 1239s plugins/modules/device_credential_workflow_manager.py:2983: in get_diff_merged 1239s self.apply_credentials_to_site().check_return_status() 1239s plugins/modules/device_credential_workflow_manager.py:2936: in apply_credentials_to_site 1239s self.check_tasks_response_status(response, 1239s plugins/module_utils/dnac.py:1730: in check_tasks_response_status 1239s task_details = self.get_tasks_by_id(task_id) 1239s plugins/module_utils/dnac.py:1684: in get_tasks_by_id 1239s self.fail_and_exit(self.msg) 1239s plugins/module_utils/dnac.py:1787: in fail_and_exit 1239s self.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s ------------------------------ Captured log call ------------------------------- 1239s 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: . 1239s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_4 ________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_run_compliance_with_iplist_failure_4(self): 1239s 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_log_level="DEBUG", 1239s dnac_log_append=False, 1239s state="merged", 1239s config=self.test_data.get("playbook_config_run_compliance_iplist") 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s > self.assertIn( 1239s "Error occurred while retrieving 'get_task_by_id' for Task Run Compliance Check with Task id", 1239s result.get('msg') 1239s ) 1239s 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)." 1239s 1239s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:605: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s Inside load_fixtures 1239s Mock for DNACSDK._exec: 1239s Inside load_fixtures 1239s ------------------------------ Captured log call ------------------------------- 1239s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1239s 1239s 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} 1239s 1239s 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}] 1239s 1239s 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}] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1239s 1239s 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} 1239s 1239s 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 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None' 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1239s 1239s 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 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1239s 1239s 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} 1239s 1239s 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 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1239s 1239s 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'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1239s 1239s 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']} 1239s 1239s 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'}]} 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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'} 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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'} 1239s 1239s 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' 1239s 1239s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1239s 1239s 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). 1239s 1239s 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). 1239s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_5 ________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_run_compliance_with_iplist_failure_5(self): 1239s 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_log_level="DEBUG", 1239s dnac_log_append=False, 1239s state="merged", 1239s config=self.test_data.get("playbook_config_run_compliance_iplist") 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s > self.assertIn( 1239s "An error occurred while retrieving Compliance Details for device:192.168.0.0 using 'compliance_details_of_device' API call", 1239s result.get('msg') 1239s ) 1239s 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)." 1239s 1239s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:626: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s Inside load_fixtures 1239s Mock for DNACSDK._exec: 1239s Inside load_fixtures 1239s ------------------------------ Captured log call ------------------------------- 1239s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1239s 1239s 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} 1239s 1239s 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}] 1239s 1239s 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}] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1239s 1239s 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} 1239s 1239s 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 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None' 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1239s 1239s 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 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1239s 1239s 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} 1239s 1239s 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 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1239s 1239s 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'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1239s 1239s 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']} 1239s 1239s 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'}]} 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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'} 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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'} 1239s 1239s 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' 1239s 1239s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1239s 1239s 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). 1239s 1239s 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). 1239s __________ TestNetworkCompliance.test_run_compliance_with_iplist_site __________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_run_compliance_with_iplist_site(self): 1239s 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_log_level="DEBUG", 1239s dnac_log_append=False, 1239s state="merged", 1239s config=self.test_data.get("playbook_config_run_compliance_iplist_site") 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:391: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1239s ccc_network_compliance.get_want(config).check_return_status() 1239s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1239s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1239s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list 1239s self.fail_and_exit(self.msg) 1239s plugins/module_utils/dnac.py:1787: in fail_and_exit 1239s self.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s ----------------------------- Captured stdout call ----------------------------- 1239s Inside load_fixtures 1239s Mock for DNACSDK._exec: 1239s Inside load_fixtures 1239s ------------------------------ Captured log call ------------------------------- 1239s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1239s 1239s 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} 1239s 1239s 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}] 1239s 1239s 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}] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1239s 1239s 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} 1239s 1239s 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 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'Global' 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1239s 1239s 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 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1239s 1239s 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} 1239s 1239s 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 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1239s 1239s 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'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1239s 1239s 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']} 1239s 1239s 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'}]} 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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'}]} 1239s 1239s 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 1239s 1239s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 782: Total number of devices received: 1 1239s 1239s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 783: Number of devices that are Unreachable or APs: 1 1239s 1239s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 784: Config Backup Operation can be performed on the following filtered devices: 0 1239s 1239s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 823: Retrieving device IDs for site: Global 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 809: Initiating retrieval of site details for site name: 'Global'. 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 813: Using 'get_site' API for Catalyst Center version: '2233'. 1239s 1239s 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'}. 1239s 1239s 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'}]} 1239s 1239s 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'}]} 1239s 1239s 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'. 1239s 1239s 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'. 1239s 1239s 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'. 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 664: Using 'get_membership' API for Catalyst Center version: '2233'. 1239s 1239s 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'}. 1239s 1239s 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'} 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 668: Received response from 'get_membership'. Extracting device IDs. 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 674: Retrieved device IDs from membership for site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1239s 1239s 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'. 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 721: Device IDs retrieved from site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 763: Device details retrieved for site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1239s 1239s INFO logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 792: No reachable devices found at Site: 92ffce88-9fce-41d2-ae69-086fa74e9c4b 1239s 1239s 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). 1239s 1239s 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.HDQhnz/build.1ev/src/ansible_collections/cisco/dnac/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/dnac --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/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. 1239s 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). 1239s _____________ TestNetworkCompliance.test_run_compliance_with_site ______________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_run_compliance_with_site(self): 1239s 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=False, 1239s dnac_log_level="DEBUG", 1239s dnac_log_append=False, 1239s state="merged", 1239s config=self.test_data.get("playbook_config_run_compliance_site") 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:370: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1239s ccc_network_compliance.get_want(config).check_return_status() 1239s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1239s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1239s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list 1239s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def get_reachable_devices_from_site(self, site_name): 1239s """ 1239s Retrieves a mapping of management IP addresses to instance IDs for reachable devices from a specified site. 1239s Args: 1239s site_id (str): The ID of the site from which to retrieve device details. 1239s Returns: 1239s tuple: A tuple containing: 1239s - dict: A mapping of management IP addresses to instance IDs for reachable devices. 1239s - list: A list of management IP addresses of skipped devices. 1239s """ 1239s mgmt_ip_to_instance_id_map = {} 1239s skipped_devices_list = [] 1239s 1239s (site_exists, site_id) = self.get_site_id(site_name) 1239s if not site_exists: 1239s self.msg = "Site '{0}' does not exist in the Cisco Catalyst Center, cannot proceed with device(s) retrieval.".format(site_name) 1239s self.fail_and_exit(self.msg) 1239s 1239s self.log("Initiating retrieval of device details for site ID: '{0}'.".format(site_id), "INFO") 1239s 1239s # Retrieve the list of device details from the specified site 1239s device_details_list = self.get_device_details_from_site(site_name, site_id) 1239s self.log("Device details retrieved for site ID: '{0}': {1}".format(site_id, device_details_list), "DEBUG") 1239s 1239s # Iterate through each device's details 1239s for device_info in device_details_list: 1239s > management_ip = device_info.get("managementIpAddress") 1239s E AttributeError: 'list' object has no attribute 'get' 1239s 1239s plugins/module_utils/dnac.py:767: AttributeError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s Inside load_fixtures 1239s Mock for DNACSDK._exec: 1239s Inside load_fixtures 1239s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_assign_cred_1 _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s def get_tasks_by_id(self, task_id): 1239s """ 1239s Get the tasks of a task ID in Cisco Catalyst Center. 1239s Args: 1239s self (object): An instance of a class that provides access to Cisco Catalyst Center. 1239s task_id (str): The unique identifier of the task for which you want to retrieve details. 1239s Returns: 1239s dict or None: A dictionary status information about the specified task, 1239s or None if the task with the given task_id is not found. 1239s Description: 1239s Call the API 'get_tasks_by_id' to get the status of the task. 1239s Return the details along with the status of the task. 1239s """ 1239s # Need to handle exception 1239s task_status = None 1239s try: 1239s > response = self.dnac._exec( 1239s family="task", 1239s function="get_tasks_by_id", 1239s params={"id": task_id} 1239s ) 1239s 1239s plugins/module_utils/dnac.py:1662: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s /usr/lib/python3.13/unittest/mock.py:1169: in __call__ 1239s return self._mock_call(*args, **kwargs) 1239s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call 1239s return self._execute_mock_call(*args, **kwargs) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s self = , args = () 1239s kwargs = {'family': 'task', 'function': 'get_tasks_by_id', 'params': {'id': '0191e691-f5f5-7c89-9cf4-099515272844'}} 1239s effect = 1239s 1239s def _execute_mock_call(self, /, *args, **kwargs): 1239s # separate from _increment_mock_call so that awaited functions are 1239s # executed separately from their call, also AsyncMock overrides this method 1239s 1239s effect = self.side_effect 1239s if effect is not None: 1239s if _is_exception(effect): 1239s raise effect 1239s elif not _callable(effect): 1239s > result = next(effect) 1239s E StopIteration 1239s 1239s /usr/lib/python3.13/unittest/mock.py:1230: StopIteration 1239s 1239s During handling of the above exception, another exception occurred: 1239s 1239s self = 1239s 1239s def test_device_credentials_workflow_manager_assign_cred_1(self): 1239s """ 1239s Test case for device credential workflow manager when assigning a device credential to site in dnac_version="2.3.7.6". 1239s 1239s This test case checks the behavior of the device credential workflow manager when assigning a device credential to site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_version="2.3.7.6", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_assign 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:261: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/device_credential_workflow_manager.py:3277: in main 1239s ccc_credential.get_diff_state_apply[state](config).check_return_status() 1239s plugins/modules/device_credential_workflow_manager.py:2980: in get_diff_merged 1239s self.assign_credentials_to_site().check_return_status() 1239s plugins/modules/device_credential_workflow_manager.py:2757: in assign_credentials_to_site 1239s self.check_tasks_response_status( 1239s plugins/module_utils/dnac.py:1730: in check_tasks_response_status 1239s task_details = self.get_tasks_by_id(task_id) 1239s plugins/module_utils/dnac.py:1684: in get_tasks_by_id 1239s self.fail_and_exit(self.msg) 1239s plugins/module_utils/dnac.py:1787: in fail_and_exit 1239s self.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s ------------------------------ Captured log call ------------------------------- 1239s 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: . 1239s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_1 _________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_run_compliance_with_site_failure_1(self): 1239s 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=False, 1239s dnac_log_level="DEBUG", 1239s dnac_log_append=False, 1239s state="merged", 1239s config=self.test_data.get("playbook_config_run_compliance_site") 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s > self.assertIn( 1239s "An error occurred while retrieving site details for Site 'Global'. Please verify that the site exists.", 1239s result.get('msg') 1239s ) 1239s 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}' 1239s 1239s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:647: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s Inside load_fixtures 1239s Mock for DNACSDK._exec: 1239s Inside load_fixtures 1239s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_assign_cred_2 _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_device_credentials_workflow_manager_assign_cred_2(self): 1239s """ 1239s Test case for device credential workflow manager when assigning a device credential to site in dnac_version="2.3.5.3". 1239s 1239s This test case checks the behavior of the device credential workflow manager when assigning a device credential to site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_version="2.3.5.3", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_assign 1239s ) 1239s ) 1239s result = self.execute_module(changed=True, failed=False) 1239s print(result) 1239s self.assertEqual( 1239s > result['response'][0]['assignCredential']['Assign Credentials']['msg'], 1239s "Device Credential Assigned to a site is Successfully" 1239s ) 1239s E KeyError: 'assignCredential' 1239s 1239s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:288: KeyError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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': []} 1239s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_2 _________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s def execute_get_request(self, api_family, api_function, api_parameters): 1239s """ 1239s Makes a GET API call to the specified function within a given family and returns the response. 1239s Args: 1239s api_family (str): The family of the API to call. 1239s api_function (str): The specific function of the API to call. 1239s api_parameters (dict): Parameters to pass to the API call. 1239s Returns: 1239s dict or None: The response from the API call if successful, otherwise None. 1239s Logs detailed information about the API call, including responses and errors. 1239s """ 1239s self.log( 1239s "Initiating GET API call for Function: {0} from Family: {1} with Parameters: {2}.".format( 1239s api_function, api_family, api_parameters 1239s ), 1239s "DEBUG" 1239s ) 1239s try: 1239s # Execute the API call 1239s > response = self.dnac._exec( 1239s family=api_family, 1239s function=api_function, 1239s op_modifies=False, 1239s params=api_parameters, 1239s ) 1239s 1239s plugins/module_utils/dnac.py:1840: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s /usr/lib/python3.13/unittest/mock.py:1169: in __call__ 1239s return self._mock_call(*args, **kwargs) 1239s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call 1239s return self._execute_mock_call(*args, **kwargs) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s self = , args = () 1239s kwargs = {'family': 'sites', 'function': 'get_membership', 'op_modifies': False, 'params': {'site_id': '3cf15665-7b7b-4b29-82a9-75b8d094b602'}} 1239s effect = 1239s result = Exception('Simulated exception') 1239s 1239s def _execute_mock_call(self, /, *args, **kwargs): 1239s # separate from _increment_mock_call so that awaited functions are 1239s # executed separately from their call, also AsyncMock overrides this method 1239s 1239s effect = self.side_effect 1239s if effect is not None: 1239s if _is_exception(effect): 1239s raise effect 1239s elif not _callable(effect): 1239s result = next(effect) 1239s if _is_exception(result): 1239s > raise result 1239s E Exception: Simulated exception 1239s 1239s /usr/lib/python3.13/unittest/mock.py:1232: Exception 1239s 1239s During handling of the above exception, another exception occurred: 1239s 1239s self = 1239s 1239s def test_run_compliance_with_site_failure_2(self): 1239s 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=False, 1239s dnac_log_level="DEBUG", 1239s dnac_log_append=False, 1239s state="merged", 1239s config=self.test_data.get("playbook_config_run_compliance_site") 1239s ) 1239s ) 1239s > result = self.execute_module(changed=False, failed=False) 1239s 1239s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:667: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1239s ccc_network_compliance.get_want(config).check_return_status() 1239s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1239s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1239s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list 1239s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name) 1239s plugins/module_utils/dnac.py:762: in get_reachable_devices_from_site 1239s device_details_list = self.get_device_details_from_site(site_name, site_id) 1239s plugins/module_utils/dnac.py:716: in get_device_details_from_site 1239s api_response, device_ids = self.get_device_ids_from_site(site_name, site_id) 1239s plugins/module_utils/dnac.py:666: in get_device_ids_from_site 1239s api_response = self.execute_get_request("sites", "get_membership", get_membership_params) 1239s plugins/module_utils/dnac.py:1882: in execute_get_request 1239s self.fail_and_exit(self.msg) 1239s plugins/module_utils/dnac.py:1787: in fail_and_exit 1239s self.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s ----------------------------- Captured stdout call ----------------------------- 1239s Inside load_fixtures 1239s Mock for DNACSDK._exec: 1239s Inside load_fixtures 1239s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_3 _________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_run_compliance_with_site_failure_3(self): 1239s 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=False, 1239s dnac_log_level="DEBUG", 1239s dnac_log_append=False, 1239s state="merged", 1239s config=self.test_data.get("playbook_config_run_compliance_site") 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s > self.assertIn( 1239s "An error occurred while retrieving Compliance Details for device:192.168.0.3 using 'compliance_details_of_device' API call", 1239s result.get('msg') 1239s ) 1239s 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." 1239s 1239s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:689: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s Inside load_fixtures 1239s Mock for DNACSDK._exec: 1239s Inside load_fixtures 1239s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_4 _________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_run_compliance_with_site_failure_4(self): 1239s 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=False, 1239s dnac_log_level="DEBUG", 1239s dnac_log_append=False, 1239s state="merged", 1239s config=self.test_data.get("playbook_config_run_compliance_site") 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s > self.assertIn( 1239s "An error occurred while retrieving the task_id of the run_compliance operation.", 1239s result.get('msg') 1239s ) 1239s 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." 1239s 1239s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:710: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s Inside load_fixtures 1239s Mock for DNACSDK._exec: 1239s Inside load_fixtures 1239s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_creation _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_device_credentials_workflow_manager_creation(self): 1239s """ 1239s Test case for device credential workflow manager when creating a device credential. 1239s 1239s This test case checks the behavior of the device credential workflow manager when creating a new device credentials in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_creation 1239s ) 1239s ) 1239s result = self.execute_module(changed=True, failed=False) 1239s print(result) 1239s self.assertEqual( 1239s > result['response'][0]['globalCredential']['Creation']['msg'], 1239s "Global Credential Created Successfully" 1239s ) 1239s E KeyError: 'globalCredential' 1239s 1239s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:216: KeyError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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': []} 1239s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_5 _________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_run_compliance_with_site_failure_5(self): 1239s 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=False, 1239s dnac_log_level="DEBUG", 1239s dnac_log_append=False, 1239s state="merged", 1239s config=self.test_data.get("playbook_config_run_compliance_site") 1239s ) 1239s ) 1239s > result = self.execute_module(changed=False, failed=True) 1239s 1239s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:730: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:107: in execute_module 1239s result = self.failed() 1239s tests/unit/modules/dnac/dnac_module.py:125: in failed 1239s self.module.main() 1239s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1239s ccc_network_compliance.get_want(config).check_return_status() 1239s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1239s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1239s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list 1239s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def get_reachable_devices_from_site(self, site_name): 1239s """ 1239s Retrieves a mapping of management IP addresses to instance IDs for reachable devices from a specified site. 1239s Args: 1239s site_id (str): The ID of the site from which to retrieve device details. 1239s Returns: 1239s tuple: A tuple containing: 1239s - dict: A mapping of management IP addresses to instance IDs for reachable devices. 1239s - list: A list of management IP addresses of skipped devices. 1239s """ 1239s mgmt_ip_to_instance_id_map = {} 1239s skipped_devices_list = [] 1239s 1239s (site_exists, site_id) = self.get_site_id(site_name) 1239s if not site_exists: 1239s self.msg = "Site '{0}' does not exist in the Cisco Catalyst Center, cannot proceed with device(s) retrieval.".format(site_name) 1239s self.fail_and_exit(self.msg) 1239s 1239s self.log("Initiating retrieval of device details for site ID: '{0}'.".format(site_id), "INFO") 1239s 1239s # Retrieve the list of device details from the specified site 1239s device_details_list = self.get_device_details_from_site(site_name, site_id) 1239s self.log("Device details retrieved for site ID: '{0}': {1}".format(site_id, device_details_list), "DEBUG") 1239s 1239s # Iterate through each device's details 1239s for device_info in device_details_list: 1239s > management_ip = device_info.get("managementIpAddress") 1239s E AttributeError: 'list' object has no attribute 'get' 1239s 1239s plugins/module_utils/dnac.py:767: AttributeError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s Inside load_fixtures 1239s Mock for DNACSDK._exec: 1239s Inside load_fixtures 1239s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_6 _________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_run_compliance_with_site_failure_6(self): 1239s 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=False, 1239s dnac_log_level="DEBUG", 1239s dnac_log_append=False, 1239s state="merged", 1239s config=self.test_data.get("playbook_config_run_compliance_site") 1239s ) 1239s ) 1239s > result = self.execute_module(changed=False, failed=True) 1239s 1239s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:751: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:107: in execute_module 1239s result = self.failed() 1239s tests/unit/modules/dnac/dnac_module.py:125: in failed 1239s self.module.main() 1239s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1239s ccc_network_compliance.get_want(config).check_return_status() 1239s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1239s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1239s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list 1239s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def get_reachable_devices_from_site(self, site_name): 1239s """ 1239s Retrieves a mapping of management IP addresses to instance IDs for reachable devices from a specified site. 1239s Args: 1239s site_id (str): The ID of the site from which to retrieve device details. 1239s Returns: 1239s tuple: A tuple containing: 1239s - dict: A mapping of management IP addresses to instance IDs for reachable devices. 1239s - list: A list of management IP addresses of skipped devices. 1239s """ 1239s mgmt_ip_to_instance_id_map = {} 1239s skipped_devices_list = [] 1239s 1239s (site_exists, site_id) = self.get_site_id(site_name) 1239s if not site_exists: 1239s self.msg = "Site '{0}' does not exist in the Cisco Catalyst Center, cannot proceed with device(s) retrieval.".format(site_name) 1239s self.fail_and_exit(self.msg) 1239s 1239s self.log("Initiating retrieval of device details for site ID: '{0}'.".format(site_id), "INFO") 1239s 1239s # Retrieve the list of device details from the specified site 1239s device_details_list = self.get_device_details_from_site(site_name, site_id) 1239s self.log("Device details retrieved for site ID: '{0}': {1}".format(site_id, device_details_list), "DEBUG") 1239s 1239s # Iterate through each device's details 1239s for device_info in device_details_list: 1239s > management_ip = device_info.get("managementIpAddress") 1239s E AttributeError: 'list' object has no attribute 'get' 1239s 1239s plugins/module_utils/dnac.py:767: AttributeError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s Inside load_fixtures 1239s Mock for DNACSDK._exec: 1239s Inside load_fixtures 1239s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_deletion _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_device_credentials_workflow_manager_deletion(self): 1239s """ 1239s Test case for device credential workflow manager when deleting a device credential. 1239s 1239s This test case checks the behavior of the device credential workflow manager when deleting a device credentials in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="deleted", 1239s config_verify=True, 1239s config=self.playbook_config_deletion 1239s ) 1239s ) 1239s result = self.execute_module(changed=True, failed=False) 1239s print(result) 1239s self.assertEqual( 1239s > result['response'][0]['globalCredential']['Deletion']['msg'], 1239s "Global Device Credentials Deleted Successfully" 1239s ) 1239s E KeyError: 'globalCredential' 1239s 1239s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:240: KeyError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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': []} 1239s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_invalid_site _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_device_credentials_workflow_manager_invalid_site(self): 1239s """ 1239s Test case for device credential workflow manager when provided site is invalid. 1239s 1239s This test case checks the behavior of the device credential workflow manager, when provided site is invalid in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_version="2.3.7.6", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_assign 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result['msg'], 1239s "The site_name 'Global/Vietnam/halong/Hanoi' is invalid in 'assign_credentials_to_site'" 1239s ) 1239s E AssertionError: 'An exception occurred while retrieving S[516 chars]rue}' != "The site_name 'Global/Vietnam/halong/Han[42 chars]ite'" 1239s 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} 1239s E + The site_name 'Global/Vietnam/halong/Hanoi' is invalid in 'assign_credentials_to_site' 1239s 1239s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:435: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s ------------------------------ Captured log call ------------------------------- 1239s 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: . 1239s 1239s 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} 1239s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_invalid_site_response _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_device_credentials_workflow_manager_invalid_site_response(self): 1239s """ 1239s Test case for device credential workflow manager when provided site response is invalid. 1239s 1239s This test case checks the behavior of the device credential workflow manager when provided site response is invalid in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_apply 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result['msg'], 1239s "Exception occurred while getting global device credentials: " 1239s ) 1239s E AssertionError: "An exception occurred while retrieving S[137 chars]able" != 'Exception occurred while getting global [16 chars]ls: ' 1239s 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 1239s E + Exception occurred while getting global device credentials: 1239s 1239s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:481: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s ------------------------------ Captured log call ------------------------------- 1239s 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 1239s _______________ TestNetworkCompliance.test_scale_run_compliance ________________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_scale_run_compliance(self): 1239s 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_log_level="DEBUG", 1239s dnac_log_append=False, 1239s state="merged", 1239s config=self.test_data.get("playbook_config_run_compliance_scale_iplist") 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:433: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1239s ccc_network_compliance.get_want(config).check_return_status() 1239s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1239s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1239s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list 1239s self.fail_and_exit(self.msg) 1239s plugins/module_utils/dnac.py:1787: in fail_and_exit 1239s self.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s ----------------------------- Captured stdout call ----------------------------- 1239s Inside load_fixtures 1239s Mock for DNACSDK._exec: 1239s Inside load_fixtures 1239s ------------------------------ Captured log call ------------------------------- 1239s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1239s 1239s 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} 1239s 1239s 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}] 1239s 1239s 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}] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0', '192.168.0.1'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0', '192.168.0.1'] 1239s 1239s 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} 1239s 1239s 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 1239s 1239s 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' 1239s 1239s 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'] 1239s 1239s 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 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1239s 1239s 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 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1239s 1239s 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} 1239s 1239s 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 1239s 1239s 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 1239s 1239s 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'] 1239s 1239s 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']} 1239s 1239s 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']} 1239s 1239s 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'}]} 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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'} 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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'} 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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'} 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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'} 1239s 1239s 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' 1239s 1239s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1239s 1239s 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). 1239s 1239s 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). 1239s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_invalid_site_response_2 _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_device_credentials_workflow_manager_invalid_site_response_2(self): 1239s """ 1239s Test case for device credential workflow manager when provided site response is invalid. 1239s 1239s This test case checks the behavior of the device credential workflow manager when provided site response is invalid in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_apply 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result['msg'], 1239s "Exception occurred while getting global device credentials: " 1239s ) 1239s E AssertionError: "An exception occurred while retrieving S[278 chars]rue}" != 'Exception occurred while getting global [16 chars]ls: ' 1239s 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} 1239s E + Exception occurred while getting global device credentials: 1239s 1239s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:504: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s ------------------------------ Captured log call ------------------------------- 1239s WARNING logger:dnac.py:294 DeviceCredential: execute_get_request: 1857: No response received from GET API call to Function: 'get_site' from Family: 'sites'. 1239s 1239s ERROR logger:dnac.py:294 DeviceCredential: set_operation_result: 1780: No site details retrieved for site name: Global/Vietnam/halong/Hanoi 1239s 1239s 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} 1239s _____________ TestNetworkCompliance.test_sync_device_config_iplist _____________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_sync_device_config_iplist(self): 1239s 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_log_level="DEBUG", 1239s dnac_log_append=False, 1239s state="merged", 1239s config=self.test_data.get("playbook_config_sync_device_config_iplist") 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:455: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1239s ccc_network_compliance.get_want(config).check_return_status() 1239s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1239s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1239s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list 1239s self.fail_and_exit(self.msg) 1239s plugins/module_utils/dnac.py:1787: in fail_and_exit 1239s self.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s ----------------------------- Captured stdout call ----------------------------- 1239s Inside load_fixtures 1239s Mock for DNACSDK._exec: 1239s Inside load_fixtures 1239s ------------------------------ Captured log call ------------------------------- 1239s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1239s 1239s 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} 1239s 1239s 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}] 1239s 1239s 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}] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1239s 1239s 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} 1239s 1239s 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 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None' 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1239s 1239s 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 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1239s 1239s 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} 1239s 1239s 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 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1239s 1239s 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'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1239s 1239s 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']} 1239s 1239s 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'}]} 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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'} 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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'} 1239s 1239s 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' 1239s 1239s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1239s 1239s 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). 1239s 1239s 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). 1239s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_timezone _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Network_settings_workflow_manager_network_exception_update_timezone(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.7.6", 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_update_network 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Exception occurred while updating time zone settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1239s ) 1239s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating time z[56 chars]a7: ' 1239s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1239s E + Exception occurred while updating time zone settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1239s 1239s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:579: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s ------------------------------ Captured log call ------------------------------- 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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: . 1239s ________ TestNetworkCompliance.test_sync_device_config_iplist_failure_1 ________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_sync_device_config_iplist_failure_1(self): 1239s 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_log_level="DEBUG", 1239s dnac_log_append=False, 1239s state="merged", 1239s config=self.test_data.get("playbook_config_sync_device_config_iplist") 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s > self.assertIn( 1239s "Error occurred while synchronizing device configuration for parameters - {'deviceId':", 1239s result.get('msg') 1239s ) 1239s 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)." 1239s 1239s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:773: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s Inside load_fixtures 1239s Mock for DNACSDK._exec: 1239s Inside load_fixtures 1239s ------------------------------ Captured log call ------------------------------- 1239s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1239s 1239s 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} 1239s 1239s 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}] 1239s 1239s 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}] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1239s 1239s 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} 1239s 1239s 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 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None' 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1239s 1239s 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 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1239s 1239s 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} 1239s 1239s 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 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1239s 1239s 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'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1239s 1239s 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']} 1239s 1239s 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'}]} 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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'} 1239s 1239s 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 1239s 1239s 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. 1239s 1239s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 788: Error fetching device IDs from Cisco Catalyst Center. Error details: Simulated exception 1239s 1239s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1239s 1239s 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). 1239s 1239s 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). 1239s ________ TestNetworkCompliance.test_sync_device_config_iplist_failure_2 ________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_sync_device_config_iplist_failure_2(self): 1239s 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_log_level="DEBUG", 1239s dnac_log_append=False, 1239s state="merged", 1239s config=self.test_data.get("playbook_config_sync_device_config_iplist") 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s > self.assertIn( 1239s "Error occurred while retrieving 'get_task_tree' for Task Sync Device Configuration with task id", 1239s result.get('msg') 1239s ) 1239s 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)." 1239s 1239s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:794: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s Inside load_fixtures 1239s Mock for DNACSDK._exec: 1239s Inside load_fixtures 1239s ------------------------------ Captured log call ------------------------------- 1239s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1239s 1239s 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} 1239s 1239s 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}] 1239s 1239s 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}] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1239s 1239s 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} 1239s 1239s 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 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None' 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1239s 1239s 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 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1239s 1239s 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} 1239s 1239s 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 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1239s 1239s 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'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1239s 1239s 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']} 1239s 1239s 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'}]} 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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'} 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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'} 1239s 1239s 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' 1239s 1239s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1239s 1239s 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). 1239s 1239s 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). 1239s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_mandatory_aaa_param _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Network_settings_workflow_manager_network_mandatory_aaa_param(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.7.6", 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_config_aaa_req 1239s ) 1239s ) 1239s > result = self.execute_module(changed=False, failed=True) 1239s 1239s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:902: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:107: in execute_module 1239s result = self.failed() 1239s tests/unit/modules/dnac/dnac_module.py:125: in failed 1239s self.module.main() 1239s plugins/modules/network_settings_workflow_manager.py:4316: in main 1239s ccc_network.get_diff_state_apply[state](config).check_return_status() 1239s plugins/modules/network_settings_workflow_manager.py:3824: in get_diff_merged 1239s self.update_network(network_management).check_return_status() 1239s plugins/modules/network_settings_workflow_manager.py:3790: in update_network 1239s self.check_tasks_response_status(response, "set_aaa_settings_for_a_site").check_return_status() 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def check_tasks_response_status(self, response, api_name): 1239s """ 1239s Get the task response status from taskId 1239s Args: 1239s self: The current object details. 1239s response (dict): API response. 1239s api_name (str): API name. 1239s Returns: 1239s self (object): The current object with updated desired Fabric Transits information. 1239s Description: 1239s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE' 1239s state or till it reaches the maximum timeout. 1239s Log the task details and return self. 1239s """ 1239s 1239s if not response: 1239s self.msg = "response is empty" 1239s self.status = "exited" 1239s return self 1239s 1239s if not isinstance(response, dict): 1239s self.msg = "response is not a dictionary" 1239s self.status = "exited" 1239s return self 1239s 1239s task_info = response.get("response") 1239s > if task_info.get("errorcode") is not None: 1239s E AttributeError: 'list' object has no attribute 'get' 1239s 1239s plugins/module_utils/dnac.py:1713: AttributeError 1239s ------------------------------ Captured log call ------------------------------- 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_network_not_need_update _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Network_settings_workflow_manager_network_network_not_need_update(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_config_network 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Successfully retrieved details from the playbook" 1239s ) 1239s E AssertionError: "The specified version '2.2.3.3' does not[94 chars]ds. " != 'Successfully retrieved details from the playbook' 1239s 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. 1239s E + Successfully retrieved details from the playbook 1239s 1239s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:454: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_null_network_params _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Network_settings_workflow_manager_network_null_network_params(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.5.3", 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_config_update_not_req 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Successfully retrieved details from the playbook" 1239s ) 1239s E AssertionError: "Exception occurred while updating the ne[37 chars]t': " != 'Successfully retrieved details from the playbook' 1239s E - Exception occurred while updating the network settings of 'Global/Testing/test': 1239s E + Successfully retrieved details from the playbook 1239s 1239s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:953: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s ------------------------------ Captured log call ------------------------------- 1239s ERROR logger:dnac.py:294 NetworkSettings: update_network: 3730: 1239s __________ TestNetworkCompliance.test_sync_device_config_iplist_site ___________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_sync_device_config_iplist_site(self): 1239s 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_log_level="DEBUG", 1239s dnac_log_append=False, 1239s state="merged", 1239s config=self.test_data.get("playbook_config_sync_device_config_iplist_site") 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:497: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1239s ccc_network_compliance.get_want(config).check_return_status() 1239s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1239s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1239s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list 1239s self.fail_and_exit(self.msg) 1239s plugins/module_utils/dnac.py:1787: in fail_and_exit 1239s self.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s ----------------------------- Captured stdout call ----------------------------- 1239s Inside load_fixtures 1239s Mock for DNACSDK._exec: 1239s Inside load_fixtures 1239s ------------------------------ Captured log call ------------------------------- 1239s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1239s 1239s 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} 1239s 1239s 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}] 1239s 1239s 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}] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1239s 1239s 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} 1239s 1239s 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 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'Global' 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1239s 1239s 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 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1239s 1239s 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} 1239s 1239s 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 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1239s 1239s 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'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1239s 1239s 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']} 1239s 1239s 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'}]} 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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'}]} 1239s 1239s 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 1239s 1239s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 782: Total number of devices received: 1 1239s 1239s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 783: Number of devices that are Unreachable or APs: 1 1239s 1239s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 784: Config Backup Operation can be performed on the following filtered devices: 0 1239s 1239s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 823: Retrieving device IDs for site: Global 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 809: Initiating retrieval of site details for site name: 'Global'. 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 813: Using 'get_site' API for Catalyst Center version: '2233'. 1239s 1239s 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'}. 1239s 1239s 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'}]} 1239s 1239s 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'}]} 1239s 1239s 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'. 1239s 1239s 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'. 1239s 1239s 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'. 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 664: Using 'get_membership' API for Catalyst Center version: '2233'. 1239s 1239s 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'}. 1239s 1239s 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'} 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 668: Received response from 'get_membership'. Extracting device IDs. 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 674: Retrieved device IDs from membership for site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1239s 1239s 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'. 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 721: Device IDs retrieved from site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 763: Device details retrieved for site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1239s 1239s INFO logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 792: No reachable devices found at Site: 92ffce88-9fce-41d2-ae69-086fa74e9c4b 1239s 1239s 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). 1239s 1239s 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). 1239s _________ TestNetworkCompliance.test_sync_device_config_iplist_site_nr _________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_sync_device_config_iplist_site_nr(self): 1239s 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_log_level="DEBUG", 1239s dnac_log_append=False, 1239s state="merged", 1239s config=self.test_data.get("playbook_config_sync_device_config_iplist_site_nr") 1239s ) 1239s ) 1239s > result = self.execute_module(changed=False, failed=False) 1239s 1239s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:518: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1239s ccc_network_compliance.get_want(config).check_return_status() 1239s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1239s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1239s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list 1239s self.fail_and_exit(self.msg) 1239s plugins/module_utils/dnac.py:1787: in fail_and_exit 1239s self.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s ----------------------------- Captured stdout call ----------------------------- 1239s Inside load_fixtures 1239s Mock for DNACSDK._exec: 1239s Inside load_fixtures 1239s ------------------------------ Captured log call ------------------------------- 1239s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1239s 1239s 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} 1239s 1239s 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}] 1239s 1239s 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}] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1239s 1239s 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} 1239s 1239s 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 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'Global' 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1239s 1239s 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 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1239s 1239s 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} 1239s 1239s 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 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1239s 1239s 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'] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1239s 1239s 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']} 1239s 1239s 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'}]} 1239s 1239s 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 1239s 1239s 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. 1239s 1239s 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'}]} 1239s 1239s 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 1239s 1239s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 782: Total number of devices received: 1 1239s 1239s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 783: Number of devices that are Unreachable or APs: 1 1239s 1239s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 784: Config Backup Operation can be performed on the following filtered devices: 0 1239s 1239s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 823: Retrieving device IDs for site: Global 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 809: Initiating retrieval of site details for site name: 'Global'. 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 813: Using 'get_site' API for Catalyst Center version: '2233'. 1239s 1239s 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'}. 1239s 1239s 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'}]} 1239s 1239s 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'}]} 1239s 1239s 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'. 1239s 1239s 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'. 1239s 1239s 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'. 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 664: Using 'get_membership' API for Catalyst Center version: '2233'. 1239s 1239s 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'}. 1239s 1239s 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'} 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 668: Received response from 'get_membership'. Extracting device IDs. 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 674: Retrieved device IDs from membership for site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1239s 1239s 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'. 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 721: Device IDs retrieved from site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 763: Device details retrieved for site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1239s 1239s INFO logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 792: No reachable devices found at Site: 92ffce88-9fce-41d2-ae69-086fa74e9c4b 1239s 1239s 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). 1239s 1239s 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). 1239s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_update _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Network_settings_workflow_manager_network_update(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.7.6", 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_update_network 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:502: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/network_settings_workflow_manager.py:4316: in main 1239s ccc_network.get_diff_state_apply[state](config).check_return_status() 1239s plugins/modules/network_settings_workflow_manager.py:3824: in get_diff_merged 1239s self.update_network(network_management).check_return_status() 1239s plugins/modules/network_settings_workflow_manager.py:3741: in update_network 1239s self.check_tasks_response_status(response, "set_dhcp_settings_for_a_site").check_return_status() 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def check_tasks_response_status(self, response, api_name): 1239s """ 1239s Get the task response status from taskId 1239s Args: 1239s self: The current object details. 1239s response (dict): API response. 1239s api_name (str): API name. 1239s Returns: 1239s self (object): The current object with updated desired Fabric Transits information. 1239s Description: 1239s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE' 1239s state or till it reaches the maximum timeout. 1239s Log the task details and return self. 1239s """ 1239s 1239s if not response: 1239s self.msg = "response is empty" 1239s self.status = "exited" 1239s return self 1239s 1239s if not isinstance(response, dict): 1239s self.msg = "response is not a dictionary" 1239s self.status = "exited" 1239s return self 1239s 1239s task_info = response.get("response") 1239s if task_info.get("errorcode") is not None: 1239s self.msg = response.get("response").get("detail") 1239s self.status = "failed" 1239s return self 1239s 1239s task_id = task_info.get("taskId") 1239s start_time = time.time() 1239s while True: 1239s elapsed_time = time.time() - start_time 1239s if elapsed_time >= self.max_timeout: 1239s self.msg = "Max timeout of {0} sec has reached for the task id '{1}'. " \ 1239s .format(self.max_timeout, task_id) + \ 1239s "Exiting the loop due to unexpected API '{0}' status.".format(api_name) 1239s self.log(self.msg, "WARNING") 1239s self.status = "failed" 1239s break 1239s 1239s task_details = self.get_tasks_by_id(task_id) 1239s self.log('Getting tasks details from task ID {0}: {1}' 1239s .format(task_id, task_details), "DEBUG") 1239s 1239s > task_status = task_details.get("status") 1239s E AttributeError: 'list' object has no attribute 'get' 1239s 1239s plugins/module_utils/dnac.py:1734: AttributeError 1239s ------------------------------ Captured log call ------------------------------- 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s ______________ TestNetworkCompliance.test_sync_device_config_site ______________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_sync_device_config_site(self): 1239s 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_log_level="DEBUG", 1239s dnac_log_append=False, 1239s state="merged", 1239s config=self.test_data.get("playbook_config_sync_device_config_site") 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:476: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1239s ccc_network_compliance.get_want(config).check_return_status() 1239s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1239s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1239s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list 1239s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def get_reachable_devices_from_site(self, site_name): 1239s """ 1239s Retrieves a mapping of management IP addresses to instance IDs for reachable devices from a specified site. 1239s Args: 1239s site_id (str): The ID of the site from which to retrieve device details. 1239s Returns: 1239s tuple: A tuple containing: 1239s - dict: A mapping of management IP addresses to instance IDs for reachable devices. 1239s - list: A list of management IP addresses of skipped devices. 1239s """ 1239s mgmt_ip_to_instance_id_map = {} 1239s skipped_devices_list = [] 1239s 1239s (site_exists, site_id) = self.get_site_id(site_name) 1239s if not site_exists: 1239s self.msg = "Site '{0}' does not exist in the Cisco Catalyst Center, cannot proceed with device(s) retrieval.".format(site_name) 1239s self.fail_and_exit(self.msg) 1239s 1239s self.log("Initiating retrieval of device details for site ID: '{0}'.".format(site_id), "INFO") 1239s 1239s # Retrieve the list of device details from the specified site 1239s device_details_list = self.get_device_details_from_site(site_name, site_id) 1239s self.log("Device details retrieved for site ID: '{0}': {1}".format(site_id, device_details_list), "DEBUG") 1239s 1239s # Iterate through each device's details 1239s for device_info in device_details_list: 1239s > management_ip = device_info.get("managementIpAddress") 1239s E AttributeError: 'list' object has no attribute 'get' 1239s 1239s plugins/module_utils/dnac.py:767: AttributeError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s Inside load_fixtures 1239s Mock for DNACSDK._exec: 1239s Inside load_fixtures 1239s ------------------------------ Captured log call ------------------------------- 1239s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1239s 1239s 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} 1239s 1239s 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}] 1239s 1239s 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}] 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: None 1239s 1239s 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} 1239s 1239s 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 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': 'None' or 'site_name': 'Global' 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1239s 1239s 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 1239s 1239s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1239s 1239s 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} 1239s 1239s 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 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 823: Retrieving device IDs for site: Global 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 809: Initiating retrieval of site details for site name: 'Global'. 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 813: Using 'get_site' API for Catalyst Center version: '2233'. 1239s 1239s 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'}. 1239s 1239s 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'}]} 1239s 1239s 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'}]} 1239s 1239s 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'. 1239s 1239s 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'. 1239s 1239s 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'. 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 664: Using 'get_membership' API for Catalyst Center version: '2233'. 1239s 1239s 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'}. 1239s 1239s 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'}]} 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 668: Received response from 'get_membership'. Extracting device IDs. 1239s 1239s 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'] 1239s 1239s 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'] 1239s 1239s 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'. 1239s 1239s 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'}. 1239s 1239s 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'} 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '3bf3f269-88ae-48fc-910d-3263ba618f87'. 1239s 1239s 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'. 1239s 1239s 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'}. 1239s 1239s 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'} 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b'. 1239s 1239s 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'. 1239s 1239s 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'}. 1239s 1239s 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'} 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '9db11f54-8007-438c-ba9b-711513deecc6'. 1239s 1239s 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'. 1239s 1239s 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'}. 1239s 1239s 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'} 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: 'f490e92f-490e-4bb1-9519-770b1dc604c4'. 1239s 1239s 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'. 1239s 1239s 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'}. 1239s 1239s 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'} 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: 'e0bdf3e1-fbcf-4faa-a11c-156e32e7ae38'. 1239s 1239s 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'. 1239s 1239s 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'}. 1239s 1239s 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'} 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '37b05b0f-1b1e-496a-b101-8f277f0af8ff'. 1239s 1239s 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'. 1239s 1239s 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'}. 1239s 1239s 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'} 1239s 1239s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '778a27bb-d795-4fa3-a321-f2e693ebe1f4'. 1239s 1239s 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'}] 1239s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_global_pool_Updation_not_req _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Network_settings_workflow_manager_global_pool_Updation_not_req(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_global_pool_updation 1239s ) 1239s ) 1239s result = self.execute_module(changed=True, failed=True) 1239s # print(result["response"][0].get("globalPool").get("msg")) 1239s # print(result) 1239s > self.assertEqual( 1239s result["response"][0].get("globalPool").get("msg"), 1239s {'Global_Pool2': "Global pool doesn't require an update", 'Global_Pool3': "Global pool doesn't require an update"} 1239s 1239s ) 1239s E AssertionError: {} != {'Global_Pool2': "Global pool doesn't requ[67 chars]ate"} 1239s E - {} 1239s E + {'Global_Pool2': "Global pool doesn't require an update", 1239s E + 'Global_Pool3': "Global pool doesn't require an update"} 1239s 1239s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:1003: AssertionError 1239s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_global_pool_creation _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Network_settings_workflow_manager_global_pool_creation(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_global_pool_creation 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:975: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/network_settings_workflow_manager.py:4301: in main 1239s ccc_network.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_global_pool_deletion _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Network_settings_workflow_manager_global_pool_deletion(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="deleted", 1239s config_verify=True, 1239s config=self.playbook_config_global_pool_deletion 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:1026: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/network_settings_workflow_manager.py:4301: in main 1239s ccc_network.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_aaa_get _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Network_settings_workflow_manager_network_exception_aaa_get(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.7.6", 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_config_network 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Exception occurred while getting AAA settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1239s ) 1239s E AssertionError: "Exception occurred while getting AAA set[72 chars]7): " != 'Exception occurred while getting AAA set[49 chars]a7: ' 1239s E - Exception occurred while getting AAA settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1239s E ? ---------------------- - 1239s E + Exception occurred while getting AAA settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1239s 1239s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:879: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s ------------------------------ Captured log call ------------------------------- 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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): 1239s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_banner_get _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Network_settings_workflow_manager_network_exception_banner_get(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.7.6", 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_config_network 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Exception occurred while getting banner settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1239s ) 1239s E AssertionError: "Exception occurred while getting banner [75 chars]7): " != 'Exception occurred while getting banner [52 chars]a7: ' 1239s E - Exception occurred while getting banner settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1239s E ? ---------------------- - 1239s E + Exception occurred while getting banner settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1239s 1239s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:854: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s ------------------------------ Captured log call ------------------------------- 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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): 1239s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_not_verified __ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Network_settings_workflow_manager_not_verified(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.7.6", 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_config_network 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=True) 1239s 1239s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:477: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:107: in execute_module 1239s result = self.failed() 1239s tests/unit/modules/dnac/dnac_module.py:125: in failed 1239s self.module.main() 1239s plugins/modules/network_settings_workflow_manager.py:4316: in main 1239s ccc_network.get_diff_state_apply[state](config).check_return_status() 1239s plugins/modules/network_settings_workflow_manager.py:3824: in get_diff_merged 1239s self.update_network(network_management).check_return_status() 1239s plugins/modules/network_settings_workflow_manager.py:3741: in update_network 1239s self.check_tasks_response_status(response, "set_dhcp_settings_for_a_site").check_return_status() 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def check_tasks_response_status(self, response, api_name): 1239s """ 1239s Get the task response status from taskId 1239s Args: 1239s self: The current object details. 1239s response (dict): API response. 1239s api_name (str): API name. 1239s Returns: 1239s self (object): The current object with updated desired Fabric Transits information. 1239s Description: 1239s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE' 1239s state or till it reaches the maximum timeout. 1239s Log the task details and return self. 1239s """ 1239s 1239s if not response: 1239s self.msg = "response is empty" 1239s self.status = "exited" 1239s return self 1239s 1239s if not isinstance(response, dict): 1239s self.msg = "response is not a dictionary" 1239s self.status = "exited" 1239s return self 1239s 1239s task_info = response.get("response") 1239s if task_info.get("errorcode") is not None: 1239s self.msg = response.get("response").get("detail") 1239s self.status = "failed" 1239s return self 1239s 1239s task_id = task_info.get("taskId") 1239s start_time = time.time() 1239s while True: 1239s elapsed_time = time.time() - start_time 1239s if elapsed_time >= self.max_timeout: 1239s self.msg = "Max timeout of {0} sec has reached for the task id '{1}'. " \ 1239s .format(self.max_timeout, task_id) + \ 1239s "Exiting the loop due to unexpected API '{0}' status.".format(api_name) 1239s self.log(self.msg, "WARNING") 1239s self.status = "failed" 1239s break 1239s 1239s task_details = self.get_tasks_by_id(task_id) 1239s self.log('Getting tasks details from task ID {0}: {1}' 1239s .format(task_id, task_details), "DEBUG") 1239s 1239s > task_status = task_details.get("status") 1239s E AttributeError: 'list' object has no attribute 'get' 1239s 1239s plugins/module_utils/dnac.py:1734: AttributeError 1239s ------------------------------ Captured log call ------------------------------- 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_dhcp_gett _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Network_settings_workflow_manager_network_exception_dhcp_gett(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.7.6", 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_config_network 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Exception occurred while getting DHCP settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1239s ) 1239s E AssertionError: "Exception occurred while getting DHCP se[73 chars]7): " != 'Exception occurred while getting DHCP se[50 chars]a7: ' 1239s E - Exception occurred while getting DHCP settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1239s E ? ---------------------- - 1239s E + Exception occurred while getting DHCP settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1239s 1239s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:829: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s ------------------------------ Captured log call ------------------------------- 1239s 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): 1239s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_dns_get _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Network_settings_workflow_manager_network_exception_dns_get(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.7.6", 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_config_network 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Exception occurred while getting DNS settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1239s ) 1239s E AssertionError: "Exception occurred while getting DNS set[72 chars]7): " != 'Exception occurred while getting DNS set[49 chars]a7: ' 1239s E - Exception occurred while getting DNS settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1239s E ? ---------------------- - 1239s E + Exception occurred while getting DNS settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1239s 1239s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:754: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s ------------------------------ Captured log call ------------------------------- 1239s 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): 1239s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_reserve_pool_creation _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Network_settings_workflow_manager_reserve_pool_creation(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_config_reserve_pool 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:1075: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/network_settings_workflow_manager.py:4301: in main 1239s ccc_network.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_ntp_get _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Network_settings_workflow_manager_network_exception_ntp_get(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.7.6", 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_config_network 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Exception occurred while getting NTP server settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1239s ) 1239s E AssertionError: "Exception occurred while getting NTP ser[79 chars]7): " != 'Exception occurred while getting NTP ser[56 chars]a7: ' 1239s E - Exception occurred while getting NTP server settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1239s E ? ---------------------- - 1239s E + Exception occurred while getting NTP server settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1239s 1239s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:779: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s ------------------------------ Captured log call ------------------------------- 1239s 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) 1239s 1239s 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): 1239s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_reserve_pool_deletion _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Network_settings_workflow_manager_reserve_pool_deletion(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="deleted", 1239s config_verify=True, 1239s config=self.playbook_config_reserve_pool_deletion 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:1050: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/network_settings_workflow_manager.py:4301: in main 1239s ccc_network.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_site_not_exist _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Network_settings_workflow_manager_network_exception_site_not_exist(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.7.6", 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_config_network 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "An exception occurred: Site 'Global/Vietnam' does not exist in the Cisco Catalyst Center." 1239s ) 1239s E AssertionError: "An error occurred while executing API call to[62 chars]n: ." != "An exception occurred: Site 'Global/Vietnam' [40 chars]ter." 1239s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1239s E + An exception occurred: Site 'Global/Vietnam' does not exist in the Cisco Catalyst Center. 1239s 1239s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:704: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s ------------------------------ Captured log call ------------------------------- 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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: . 1239s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_telemetry_get _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Network_settings_workflow_manager_network_exception_telemetry_get(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.7.6", 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_config_network 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Exception occurred while getting telemetry settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1239s ) 1239s E AssertionError: "Exception occurred while getting telemet[78 chars]7): " != 'Exception occurred while getting telemet[55 chars]a7: ' 1239s E - Exception occurred while getting telemetry settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1239s E ? ---------------------- - 1239s E + Exception occurred while getting telemetry settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1239s 1239s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:729: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s ------------------------------ Captured log call ------------------------------- 1239s 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) 1239s 1239s 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): 1239s __________ TestDnacPnpWorkflow.test_pnp_workflow_manager_claim_switch __________ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_pnp_workflow_manager_claim_switch(self): 1239s """ 1239s Test case for PNP workflow manager when add and claim switch device. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_version="2.3.7.6", 1239s dnac_log=True, 1239s config_verify=True, 1239s state="merged", 1239s config=self.playbook_config_switch 1239s ) 1239s ) 1239s > result = self.execute_module(changed=False, failed=True) 1239s 1239s tests/unit/modules/dnac/test_pnp_workflow_manager.py:193: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:107: in execute_module 1239s result = self.failed() 1239s tests/unit/modules/dnac/dnac_module.py:125: in failed 1239s self.module.main() 1239s plugins/modules/pnp_workflow_manager.py:1414: in main 1239s ccc_pnp.get_diff_state_apply[state]().check_return_status() 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def get_diff_merged(self): 1239s """ 1239s If given device doesnot exist 1239s then add it to pnp database and get the device id 1239s Args: 1239s self: An instance of a class used for interacting with Cisco Catalyst Center. 1239s Returns: 1239s object: An instance of the class with updated results and status 1239s based on the processing of differences. Based on the length of devices passed 1239s it adds/claims or does both. 1239s Description: 1239s The function processes the differences and, depending on the 1239s changes required, it may add, update,or resynchronize devices in 1239s Cisco Catalyst Center. The updated results and status are stored in the 1239s class instance for further use. 1239s """ 1239s 1239s if not isinstance(self.want.get("pnp_params"), list): 1239s self.msg = "Device Info must be passed as a list" 1239s self.log(self.msg, "ERROR") 1239s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1239s 1239s if len(self.want.get("pnp_params")) > 1: 1239s devices_added = [] 1239s for device in self.want.get("pnp_params"): 1239s multi_device_response = self.get_device_list_pnp(device["deviceInfo"]["serialNumber"]) 1239s self.log("Device details for serial number {0} \ 1239s obtained from the API 'get_device_list': {1}".format(device["deviceInfo"]["serialNumber"], 1239s str(multi_device_response)), "DEBUG") 1239s if (multi_device_response and (len(multi_device_response) == 1)): 1239s devices_added.append(device) 1239s self.log("Details of the added device:{0}".format(str(device)), "INFO") 1239s if (len(self.want.get("pnp_params")) - len(devices_added)) == 0: 1239s self.result['response'] = [] 1239s self.result['msg'] = "Devices are already added" 1239s self.log(self.result['msg'], "WARNING") 1239s return self 1239s 1239s bulk_list = [ 1239s device 1239s for device in self.want.get("pnp_params") 1239s if device not in devices_added 1239s ] 1239s bulk_params = self.dnac_apply['exec']( 1239s family="device_onboarding_pnp", 1239s function="import_devices_in_bulk", 1239s params={"payload": bulk_list}, 1239s op_modifies=True, 1239s ) 1239s self.log("Response from API 'import_devices_in_bulk' for imported devices: {0}".format(bulk_params), "DEBUG") 1239s if len(bulk_params.get("successList")) > 0: 1239s self.result['msg'] = "{0} device(s) imported successfully".format( 1239s len(bulk_params.get("successList"))) 1239s self.log(self.result['msg'], "INFO") 1239s self.result['response'] = bulk_params 1239s self.result['diff'] = self.validated_config 1239s self.result['changed'] = True 1239s return self 1239s elif len(bulk_params.get("failureList")) > 0: 1239s self.msg = "Unable to import below {0} device(s). ".format( 1239s len(bulk_params.get("failureList"))) 1239s self.set_operation_result("failed", False, self.msg, "ERROR", 1239s bulk_params).check_return_status() 1239s 1239s self.msg = "Bulk import failed" 1239s self.log(self.msg, "CRITICAL") 1239s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1239s 1239s provisioned_count_params = { 1239s "serial_number": self.want.get("serial_number"), 1239s "state": "Provisioned" 1239s } 1239s 1239s planned_count_params = { 1239s "serial_number": self.want.get("serial_number"), 1239s "state": "Planned" 1239s } 1239s 1239s if not self.have.get("device_found"): 1239s if not self.want['pnp_params']: 1239s self.msg = "Device needs to be added before claiming. Please add device_info" 1239s self.log(self.msg, "ERROR") 1239s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1239s 1239s if not self.want["site_name"]: 1239s self.log("Adding device to pnp database", "INFO") 1239s dev_add_response = self.add_pnp_device(self.want.get('pnp_params')[0]) 1239s self.have["deviceInfo"] = dev_add_response.get("deviceInfo") 1239s self.log("Response from API 'add device' for a single device addition: {0}".format(str(dev_add_response)), "DEBUG") 1239s 1239s if self.have["deviceInfo"]: 1239s self.result['msg'] = "Only Device Added Successfully" 1239s self.log(self.result['msg'], "INFO") 1239s self.result['response'] = dev_add_response 1239s self.result['diff'] = self.validated_config 1239s self.result['changed'] = True 1239s else: 1239s self.msg = "Device Addition Failed" 1239s self.log(self.result['msg'], "CRITICAL") 1239s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1239s 1239s return self 1239s 1239s else: 1239s self.log("Adding device to pnp database") 1239s dev_add_response = self.add_pnp_device(self.want.get('pnp_params')[0]) 1239s self.get_have().check_return_status() 1239s self.have["deviceInfo"] = dev_add_response.get("deviceInfo") 1239s self.log("Response from API 'add device' for single device addition: {0}".format(str(dev_add_response)), "DEBUG") 1239s claim_params = self.get_claim_params() 1239s claim_params["deviceId"] = dev_add_response.get("id") 1239s 1239s claim_response = self.claim_device_site(claim_params) 1239s self.log("Response from API 'claim a device to a site' for a single claiming: {0}".format(str(claim_response)), "DEBUG") 1239s 1239s if claim_response.get("response") == "Device Claimed" and self.have["deviceInfo"]: 1239s self.result['msg'] = "Device Added and Claimed Successfully" 1239s self.log(self.result['msg'], "INFO") 1239s self.result['response'] = claim_response 1239s self.result['diff'] = self.validated_config 1239s self.result['changed'] = True 1239s 1239s else: 1239s self.msg = "Device Claim Failed" 1239s > self.log(self.result['msg'], "CRITICAL") 1239s E KeyError: 'msg' 1239s 1239s plugins/modules/pnp_workflow_manager.py:985: KeyError 1239s ------------------------------ Captured log call ------------------------------- 1239s WARNING logger:dnac.py:294 PnP: get_device_list_pnp: 1219: No device found with serial number: FOC2439LA89 1239s 1239s WARNING logger:dnac.py:294 PnP: get_have: 701: Device with serial number FOC2439LA89 is not found in the inventory 1239s 1239s WARNING logger:dnac.py:294 PnP: get_diff_merged: 965: Adding device to pnp database 1239s 1239s WARNING logger:dnac.py:294 PnP: get_device_list_pnp: 1219: No device found with serial number: FOC2439LA89 1239s 1239s WARNING logger:dnac.py:294 PnP: get_have: 701: Device with serial number FOC2439LA89 is not found in the inventory 1239s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_timezone_get _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Network_settings_workflow_manager_network_exception_timezone_get(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.7.6", 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_config_network 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Exception occurred while getting time zone settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1239s ) 1239s E AssertionError: "Exception occurred while getting time zo[78 chars]7): " != 'Exception occurred while getting time zo[55 chars]a7: ' 1239s E - Exception occurred while getting time zone settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1239s E ? ---------------------- - 1239s E + Exception occurred while getting time zone settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1239s 1239s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:804: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s ------------------------------ Captured log call ------------------------------- 1239s 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) 1239s 1239s 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) 1239s 1239s 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): 1239s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_aaa _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Network_settings_workflow_manager_network_exception_update_aaa(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.7.6", 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_update_network 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Exception occurred while updating AAA settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1239s ) 1239s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating AAA se[50 chars]a7: ' 1239s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1239s E + Exception occurred while updating AAA settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1239s 1239s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:654: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s ------------------------------ Captured log call ------------------------------- 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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: . 1239s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_assign_wired_device_to_site _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_provision_workflow_manager_playbook_assign_wired_device_to_site(self): 1239s """ 1239s Test case for add device with full crendentials. 1239s 1239s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_assign_wired_device_to_site 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_provision_workflow_manager.py:152: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/provision_workflow_manager.py:1809: in main 1239s ccc_provision.get_diff_state_apply[state]().check_return_status() 1239s plugins/modules/provision_workflow_manager.py:1044: in get_diff_merged 1239s self.provision_wired_device(to_provisioning, to_force_provisioning) 1239s plugins/modules/provision_workflow_manager.py:1143: in provision_wired_device 1239s device_id = self.get_device_id() 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def get_device_id(self): 1239s """ 1239s Fetches the UUID of the device added in the inventory 1239s 1239s Parameters: 1239s - self: The instance of the class containing the 'config' attribute 1239s to be validated. 1239s Returns: 1239s The method returns the serial number of the device as a string. If it fails, it returns None. 1239s Example: 1239s After creating the validated input, this method retrieves the 1239s UUID of the device. 1239s """ 1239s 1239s dev_response = self.dnac_apply['exec']( 1239s family="devices", 1239s function='get_network_device_by_ip', 1239s params={"ip_address": self.validated_config["management_ip_address"]} 1239s ) 1239s 1239s self.log("The device response from 'get_network_device_by_ip' API is {0}".format(str(dev_response)), "DEBUG") 1239s dev_dict = dev_response.get("response") 1239s > device_id = dev_dict.get("id") 1239s E AttributeError: 'NoneType' object has no attribute 'get' 1239s 1239s plugins/modules/provision_workflow_manager.py:490: AttributeError 1239s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_banner _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Network_settings_workflow_manager_network_exception_update_banner(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.7.6", 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_update_network 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Exception occurred while updating banner settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1239s ) 1239s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating banner[53 chars]a7: ' 1239s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1239s E + Exception occurred while updating banner settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1239s 1239s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:629: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s ------------------------------ Captured log call ------------------------------- 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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: . 1239s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_del_provision_device _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_provision_workflow_manager_playbook_del_provision_device(self): 1239s """ 1239s Test case for add device with full crendentials. 1239s 1239s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="deleted", 1239s config_verify=True, 1239s config=self.playbook_del_provision_device 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_provision_workflow_manager.py:176: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/provision_workflow_manager.py:1809: in main 1239s ccc_provision.get_diff_state_apply[state]().check_return_status() 1239s plugins/modules/provision_workflow_manager.py:1596: in get_diff_deleted 1239s device_id = self.get_device_id() 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def get_device_id(self): 1239s """ 1239s Fetches the UUID of the device added in the inventory 1239s 1239s Parameters: 1239s - self: The instance of the class containing the 'config' attribute 1239s to be validated. 1239s Returns: 1239s The method returns the serial number of the device as a string. If it fails, it returns None. 1239s Example: 1239s After creating the validated input, this method retrieves the 1239s UUID of the device. 1239s """ 1239s 1239s dev_response = self.dnac_apply['exec']( 1239s family="devices", 1239s function='get_network_device_by_ip', 1239s params={"ip_address": self.validated_config["management_ip_address"]} 1239s ) 1239s 1239s self.log("The device response from 'get_network_device_by_ip' API is {0}".format(str(dev_response)), "DEBUG") 1239s dev_dict = dev_response.get("response") 1239s > device_id = dev_dict.get("id") 1239s E AttributeError: 'list' object has no attribute 'get' 1239s 1239s plugins/modules/provision_workflow_manager.py:490: AttributeError 1239s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_force_provision_device _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_provision_workflow_manager_playbook_force_provision_device(self): 1239s """ 1239s Test case for add device with full crendentials. 1239s 1239s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_force_provision_device 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_provision_workflow_manager.py:248: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/provision_workflow_manager.py:1809: in main 1239s ccc_provision.get_diff_state_apply[state]().check_return_status() 1239s plugins/modules/provision_workflow_manager.py:1044: in get_diff_merged 1239s self.provision_wired_device(to_provisioning, to_force_provisioning) 1239s plugins/modules/provision_workflow_manager.py:1143: in provision_wired_device 1239s device_id = self.get_device_id() 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def get_device_id(self): 1239s """ 1239s Fetches the UUID of the device added in the inventory 1239s 1239s Parameters: 1239s - self: The instance of the class containing the 'config' attribute 1239s to be validated. 1239s Returns: 1239s The method returns the serial number of the device as a string. If it fails, it returns None. 1239s Example: 1239s After creating the validated input, this method retrieves the 1239s UUID of the device. 1239s """ 1239s 1239s dev_response = self.dnac_apply['exec']( 1239s family="devices", 1239s function='get_network_device_by_ip', 1239s params={"ip_address": self.validated_config["management_ip_address"]} 1239s ) 1239s 1239s self.log("The device response from 'get_network_device_by_ip' API is {0}".format(str(dev_response)), "DEBUG") 1239s dev_dict = dev_response.get("response") 1239s > device_id = dev_dict.get("id") 1239s E AttributeError: 'list' object has no attribute 'get' 1239s 1239s plugins/modules/provision_workflow_manager.py:490: AttributeError 1239s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_provision_device _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_provision_workflow_manager_playbook_provision_device(self): 1239s """ 1239s Test case for add device with full crendentials. 1239s 1239s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_provision_device 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_provision_workflow_manager.py:199: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/provision_workflow_manager.py:1809: in main 1239s ccc_provision.get_diff_state_apply[state]().check_return_status() 1239s plugins/modules/provision_workflow_manager.py:1044: in get_diff_merged 1239s self.provision_wired_device(to_provisioning, to_force_provisioning) 1239s plugins/modules/provision_workflow_manager.py:1143: in provision_wired_device 1239s device_id = self.get_device_id() 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def get_device_id(self): 1239s """ 1239s Fetches the UUID of the device added in the inventory 1239s 1239s Parameters: 1239s - self: The instance of the class containing the 'config' attribute 1239s to be validated. 1239s Returns: 1239s The method returns the serial number of the device as a string. If it fails, it returns None. 1239s Example: 1239s After creating the validated input, this method retrieves the 1239s UUID of the device. 1239s """ 1239s 1239s dev_response = self.dnac_apply['exec']( 1239s family="devices", 1239s function='get_network_device_by_ip', 1239s params={"ip_address": self.validated_config["management_ip_address"]} 1239s ) 1239s 1239s self.log("The device response from 'get_network_device_by_ip' API is {0}".format(str(dev_response)), "DEBUG") 1239s dev_dict = dev_response.get("response") 1239s > device_id = dev_dict.get("id") 1239s E AttributeError: 'list' object has no attribute 'get' 1239s 1239s plugins/modules/provision_workflow_manager.py:490: AttributeError 1239s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_wireless_provision _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_provision_workflow_manager_playbook_wireless_provision(self): 1239s """ 1239s Test case for add device with full crendentials. 1239s 1239s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s > config=self.playbook_wireless_provisionZ 1239s ) 1239s ) 1239s E AttributeError: 'TestDnacProvisionWorkflow' object has no attribute 'playbook_wireless_provisionZ'. Did you mean: 'playbook_wireless_provision'? 1239s 1239s tests/unit/modules/dnac/test_provision_workflow_manager.py:268: AttributeError 1239s _ TestDnacRmaIntent.test_rma_workflow_manager_deploy_workflow_failure_unmark_failure _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_rma_workflow_manager_deploy_workflow_failure_unmark_failure(self): 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="replaced", 1239s config=self.playbook_config_valid 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Error while unmarking device for replacement: Task failed. | Unmarking result: Error while unmarking device for replacement: Task failed." 1239s ) 1239s E AssertionError: 'The replacement device is not reachable. [46 chars]ent.' != 'Error while unmarking device for replacem[92 chars]led.' 1239s E - The replacement device is not reachable. Unable to proceed with the RMA device replacement. 1239s E + Error while unmarking device for replacement: Task failed. | Unmarking result: Error while unmarking device for replacement: Task failed. 1239s 1239s tests/unit/modules/dnac/test_rma_workflow_manager.py:310: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'msg': 'The replacement device is not reachable. Unable to proceed with the RMA device replacement.', 'response': [], 'failed': True} 1239s ------------------------------ Captured log call ------------------------------- 1239s 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. 1239s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_dns _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Network_settings_workflow_manager_network_exception_update_dns(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.7.6", 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_update_network 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Exception occurred while updating DNS settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1239s ) 1239s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating DNS se[50 chars]a7: ' 1239s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1239s E + Exception occurred while updating DNS settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1239s 1239s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:604: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s ------------------------------ Captured log call ------------------------------- 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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: . 1239s _ TestDnacRmaIntent.test_rma_workflow_manager_deploy_workflow_failure_unmark_success _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_rma_workflow_manager_deploy_workflow_failure_unmark_success(self): 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="replaced", 1239s config=self.playbook_config_valid 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_rma_workflow_manager.py:326: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/rma_workflow_manager.py:1434: in main 1239s ccc_device_replacement.rma_device_replacement_pre_check().check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s ------------------------------ Captured log call ------------------------------- 1239s 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. 1239s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_ntp _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Network_settings_workflow_manager_network_exception_update_ntp(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.7.6", 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_update_network 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Exception occurred while updating NTP settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1239s ) 1239s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating NTP se[50 chars]a7: ' 1239s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1239s E + Exception occurred while updating NTP settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1239s 1239s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:554: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s ------------------------------ Captured log call ------------------------------- 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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: . 1239s _____ TestDnacRmaIntent.test_rma_workflow_manager_deploy_workflow_success ______ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_rma_workflow_manager_deploy_workflow_success(self): 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="replaced", 1239s config=self.playbook_config_valid 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_rma_workflow_manager.py:290: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/rma_workflow_manager.py:1434: in main 1239s ccc_device_replacement.rma_device_replacement_pre_check().check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s ------------------------------ Captured log call ------------------------------- 1239s 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. 1239s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_telemetry _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Network_settings_workflow_manager_network_exception_update_telemetry(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s dnac_version="2.3.7.6", 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_config_network 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Exception occurred while updating telemetry settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1239s ) 1239s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating teleme[56 chars]a7: ' 1239s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1239s E + Exception occurred while updating telemetry settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1239s 1239s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:679: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s ------------------------------ Captured log call ------------------------------- 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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) 1239s 1239s 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: . 1239s _______ TestDnacRmaIntent.test_rma_workflow_manager_mark_device_failure ________ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_rma_workflow_manager_mark_device_failure(self): 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="replaced", 1239s config=self.playbook_config_valid 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "An error occurred during the operation" 1239s ) 1239s E AssertionError: 'The replacement device is not reachable. [46 chars]ent.' != 'An error occurred during the operation' 1239s E - The replacement device is not reachable. Unable to proceed with the RMA device replacement. 1239s E + An error occurred during the operation 1239s 1239s tests/unit/modules/dnac/test_rma_workflow_manager.py:274: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'msg': 'The replacement device is not reachable. Unable to proceed with the RMA device replacement.', 'response': [], 'failed': True} 1239s ------------------------------ Captured log call ------------------------------- 1239s 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. 1239s _ TestDnacRmaIntent.test_rma_workflow_manager_mark_device_for_replacement_exception _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_rma_workflow_manager_mark_device_for_replacement_exception(self): 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="replaced", 1239s config=self.playbook_config_valid 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Exception occurred while marking device for replacement: " 1239s ) 1239s E AssertionError: 'The replacement device is not reachable. [46 chars]ent.' != 'Exception occurred while marking device for replacement: ' 1239s E - The replacement device is not reachable. Unable to proceed with the RMA device replacement. 1239s E + Exception occurred while marking device for replacement: 1239s 1239s tests/unit/modules/dnac/test_rma_workflow_manager.py:256: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'msg': 'The replacement device is not reachable. Unable to proceed with the RMA device replacement.', 'response': [], 'failed': True} 1239s ------------------------------ Captured log call ------------------------------- 1239s 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. 1239s ___ TestDnacRmaIntent.test_rma_workflow_manager_replacement_device_not_found ___ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_rma_workflow_manager_replacement_device_not_found(self): 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="replaced", 1239s config=self.playbook_config_device_not_found 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Replacement device '204.1.2.19' not found in Cisco Catalyst Center" 1239s ) 1239s E AssertionError: "Replacement device '204.1.2.19' not found in PnP" != "Replacement device '204.1.2.19' not found in Cisco Catalyst Center" 1239s E - Replacement device '204.1.2.19' not found in PnP 1239s E ? ^ ^ 1239s E + Replacement device '204.1.2.19' not found in Cisco Catalyst Center 1239s E ? ^^^^^^^^^^^^^^^^^ ^^^ 1239s 1239s tests/unit/modules/dnac/test_rma_workflow_manager.py:220: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'msg': "Replacement device '204.1.2.19' not found in PnP", 'response': [], 'failed': True} 1239s ------------------------------ Captured log call ------------------------------- 1239s ERROR logger:dnac.py:294 DeviceReplacement: device_exists: 802: No valid response received from Cisco Catalyst Center 1239s 1239s ERROR logger:dnac.py:294 DeviceReplacement: pnp_device_exists: 713: Invalid identifier type provided 1239s 1239s ERROR logger:dnac.py:294 DeviceReplacement: get_have: 586: Replacement device '204.1.2.19' not found in PnP 1239s ______ TestDnacSiteWorkflow.test_Site_workflow_manager_delete_a_new_site _______ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Site_workflow_manager_delete_a_new_site(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_version="2.3.7.6", 1239s dnac_log=True, 1239s state="deleted", 1239s config=self.delete_config_playbook 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_site_workflow_manager.py:489: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/site_workflow_manager.py:2527: in main 1239s ccc_site.get_diff_state_apply[state](ccc_site.validated_config).check_return_status() 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def get_diff_deleted(self, config): 1239s """ 1239s Call Cisco Catalyst Center API to delete sites with provided inputs. 1239s Parameters: 1239s - self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1239s - config (dict): Dictionary containing information for site deletion. 1239s Returns: 1239s - self: The result dictionary includes the following keys: 1239s - 'changed' (bool): Indicates whether changes were made 1239s during the deletion process. 1239s - 'response' (dict): Contains details about the execution 1239s and the deleted site ID. 1239s - 'msg' (str): A message indicating the status of the deletion operation. 1239s Description: 1239s This method initiates the deletion of a site by calling the 'delete_site' function in the 'sites' family 1239s of the Cisco Catalyst Center API. It uses the site ID obtained from the 'have' attribute. 1239s """ 1239s 1239s if self.compare_dnac_versions(self.get_ccc_version(), "2.3.5.3") <= 0: 1239s site_exists = self.have.get("site_exists") 1239s site_name_hierarchy = self.want.get("site_name_hierarchy") 1239s site_id = self.have.get("site_id") 1239s if not site_exists: 1239s if site_name_hierarchy not in self.deleted_site_list: 1239s self.site_absent_list.append(site_name_hierarchy) 1239s self.log( 1239s "Failed to delete site '{0}'. Reason: The site was not found in the Cisco Catalyst Center.".format(site_name_hierarchy), 1239s "DEBUG" 1239s ) 1239s return self 1239s api_response, response = self.get_device_ids_from_site(site_name_hierarchy, site_id) 1239s self.log( 1239s "Received API response from 'get_membership': {0}".format(str(api_response)), "DEBUG") 1239s 1239s site_response = api_response.get("site", {}).get("response", []) 1239s self.log( 1239s "Site '{0}' response along with its child sites: {1}".format(site_name_hierarchy, str(site_response)), "DEBUG") 1239s 1239s if not site_response: 1239s self.delete_single_site(site_id, site_name_hierarchy) 1239s return self 1239s 1239s sorted_site_resp = sorted( 1239s site_response, key=lambda x: x.get("groupHierarchy"), reverse=True) 1239s 1239s for item in sorted_site_resp: 1239s self.delete_single_site(item['id'], item['groupNameHierarchy']) 1239s 1239s self.delete_single_site(site_id, site_name_hierarchy) 1239s self.log( 1239s "The site '{0}' and its child sites have been deleted successfully".format(site_name_hierarchy), "INFO") 1239s 1239s elif self.compare_dnac_versions(self.get_ccc_version(), "2.3.7.6") >= 0: 1239s final_deletion_list = [] 1239s for each_type in ("floor", "building", "area"): 1239s if self.handle_config[each_type]: 1239s self.log("Starting bulk site creation for type: {}".format(each_type), "DEBUG") 1239s for config in self.handle_config[each_type]: 1239s site_exists = config.get("site_exists") 1239s if not site_exists: 1239s self.log("Unable to delete site {0} as it's not found in Cisco Catalyst Center". 1239s format(config.get("site_name_hierarchy")), "INFO") 1239s self.site_absent_list.append(str(each_type) + ": " + str(config.get("site_name_hierarchy"))) 1239s else: 1239s final_deletion_list.append(config) 1239s self.log("Deletion list re-arranged order: {0}.".format(final_deletion_list), "INFO") 1239s 1239s if len(final_deletion_list) > 0: 1239s for config in final_deletion_list: 1239s site_name_hierarchy = config.get("site_name_hierarchy") 1239s site_params = config.get("site_params") 1239s site_params["site_id"] = config.get("site_id") 1239s site_type = site_params.get("type") 1239s site_id = site_params["site_id"] 1239s self.log("Site ID from 'have' for retrieval: {0}".format(site_id), "DEBUG") 1239s self.log("Site TYPE from 'have' for retrieval: {0}".format(site_type), "DEBUG") 1239s self.log("Site PARAMS from 'have' for retrieval: {0}".format(site_params), "DEBUG") 1239s self.log("Site NAME from 'want' for retrieval: {0}".format(site_name_hierarchy), "DEBUG") 1239s 1239s self.log("Initiating deletion for site '{0}' with site ID: {1} of type: {2}".format( 1239s site_name_hierarchy, site_id, site_type), "DEBUG") 1239s 1239s response = None 1239s if site_type == "floor": 1239s response = self.delete_floor(site_name_hierarchy, site_id) 1239s elif site_type == "area": 1239s response = self.delete_area(site_name_hierarchy, site_id) 1239s self.log("Response for deleting area: {0}".format(str(response)), "DEBUG") 1239s elif site_type == "building": 1239s response = self.delete_building(site_name_hierarchy, site_id) 1239s 1239s if isinstance(response, dict): 1239s > task_id = response.get("response", {}).get("taskId") 1239s E AttributeError: 'list' object has no attribute 'get' 1239s 1239s plugins/modules/site_workflow_manager.py:2136: AttributeError 1239s _______ TestDnacSiteWorkflow.test_Site_workflow_manager_create_bulk_site _______ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Site_workflow_manager_create_bulk_site(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_version="2.3.7.6", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.upload_floor_map_playbook 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_site_workflow_manager.py:274: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/site_workflow_manager.py:2520: in main 1239s ccc_site.validate_site_input_data(ccc_site.validated_config, state).check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s ------------------------------ Captured log call ------------------------------- 1239s ERROR logger:dnac.py:294 Site: validate_site_input_data: 1188: Missing 'name' field in entry. 1239s 1239s ERROR logger:dnac.py:294 Site: validate_site_input_data: 1196: Missing 'parent_name' field in entry. 1239s 1239s 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' 1239s _________ TestDnacSiteWorkflow.test_Site_workflow_manager_create_site __________ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Site_workflow_manager_create_site(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_version="2.3.5.3", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_site 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_site_workflow_manager.py:297: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/site_workflow_manager.py:2539: in main 1239s ccc_site.get_diff_state_apply[state](config).check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s ------------------------------ Captured log call ------------------------------- 1239s ERROR logger:dnac.py:294 Site: get_site_v1: 619: An error occurred in 'get_sites': 1239s 1239s ERROR logger:dnac.py:294 Site: site_exists: 676: No response received from 'get_site' API for site: Global/japan8888 1239s 1239s ERROR logger:dnac.py:294 Site: get_site_v1: 619: An error occurred in 'get_sites': 1239s 1239s ERROR logger:dnac.py:294 Site: set_operation_result: 1780: Parent name 'Global' does not exist in the Cisco Catalyst Center. 1239s 1239s 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} 1239s 1239s WARNING logger:dnac.py:294 Site: get_site_v1: 612: Empty response received for site: Global/japan8888 1239s 1239s ERROR logger:dnac.py:294 Site: site_exists: 676: No response received from 'get_site' API for site: Global/japan8888 1239s ________ TestDnacSiteWorkflow.test_Site_workflow_manager_delete_a_site _________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Site_workflow_manager_delete_a_site(self): 1239s """ 1239s Test case for site workflow manager when deleting a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_version="2.3.7.6", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_delete 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "This version : '2.3.7.6' given yaml format is not applicable to create a site' " 1239s ) 1239s E AssertionError: 'Exception occurred while creating site due to: ' != "This version : '2.3.7.6' given yaml form[35 chars]te' " 1239s E - Exception occurred while creating site due to: 1239s E + This version : '2.3.7.6' given yaml format is not applicable to create a site' 1239s 1239s tests/unit/modules/dnac/test_site_workflow_manager.py:467: AssertionError 1239s ------------------------------ Captured log call ------------------------------- 1239s 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'. 1239s 1239s ERROR logger:dnac.py:294 Site: get_have: 1037: Unexpected response received: 1239s 1239s ERROR logger:dnac.py:294 Site: set_operation_result: 1780: Exception occurred while creating site due to: 1239s 1239s 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} 1239s ___ TestDnacSiteWorkflow.test_Site_workflow_manager_create_site_bulk_invalid ___ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Site_workflow_manager_create_site_bulk_invalid(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_version="2.3.7.6", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_site 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "An error occurred while executing GET API call to Function: 'get_sites' " 1239s "from Family: 'site_design'. " 1239s "Parameters: {'name_hierarchy': 'Global/japan8888'}. " 1239s "Exception: ." 1239s ) 1239s E AssertionError: "An e[106 chars]: {'name_hierarchy': 'Global/japan8888/blossom'}. Exception: ." != "An e[106 chars]: {'name_hierarchy': 'Global/japan8888'}. Exception: ." 1239s E - An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/japan8888/blossom'}. Exception: . 1239s E ? -------- 1239s E + An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/japan8888'}. Exception: . 1239s 1239s tests/unit/modules/dnac/test_site_workflow_manager.py:416: AssertionError 1239s ------------------------------ Captured log call ------------------------------- 1239s 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: . 1239s 1239s 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} 1239s 1239s 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: . 1239s 1239s 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} 1239s 1239s 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'. 1239s 1239s ERROR logger:dnac.py:294 Site: get_have: 1037: Unexpected response received: 1239s __ TestswimWorkflowManager.test_swim_workflow_manager_playbook_activate_image __ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_swim_workflow_manager_playbook_activate_image(self): 1239s """ 1239s Test case for swim workflow manager import image url 1239s This test case checks the behavior of activativating the image in the specified Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_version='2.3.5.3', 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s config_verify=True, 1239s state="merged", 1239s config=self.playbook_activate_image 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_swim_workflow_manager.py:281: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/swim_workflow_manager.py:2415: in main 1239s ccc_swims.get_diff_state_apply[state](config).check_return_status() 1239s plugins/modules/swim_workflow_manager.py:2113: in get_diff_merged 1239s self.get_diff_activation().check_return_status() 1239s plugins/modules/swim_workflow_manager.py:1964: in get_diff_activation 1239s device_uuid_list = self.get_device_uuids(site_name, device_family, device_role, device_series_name) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def get_device_uuids(self, site_name, device_family, device_role, device_series_name=None): 1239s """ 1239s Retrieve a list of device UUIDs based on the specified criteria. 1239s Parameters: 1239s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1239s site_name (str): The name of the site for which device UUIDs are requested. 1239s device_family (str): The family/type of devices to filter on. 1239s device_role (str): The role of devices to filter on. If None, 'ALL' roles are considered. 1239s device_series_name(str): Specifies the name of the device series. 1239s Returns: 1239s list: A list of device UUIDs that match the specified criteria. 1239s Description: 1239s The function checks the reachability status and role of devices in the given site. 1239s Only devices with "Reachable" status are considered, and filtering is based on the specified 1239s device family and role (if provided). 1239s """ 1239s 1239s device_uuid_list = [] 1239s device_id_list, site_response_list = [], [] 1239s if not site_name: 1239s site_name = "Global" 1239s self.log("Site name not specified; defaulting to 'Global' to fetch all devices under this category", "INFO") 1239s 1239s (site_exists, site_id) = self.site_exists(site_name) 1239s if not site_exists: 1239s self.log("""Site '{0}' is not found in the Cisco Catalyst Center, hence unable to fetch associated 1239s devices.""".format(site_name), "INFO") 1239s return device_uuid_list 1239s 1239s if device_series_name: 1239s if device_series_name.startswith(".*") and device_series_name.endswith(".*"): 1239s self.log("Device series name '{0}' is already in the regex format".format(device_series_name), "INFO") 1239s else: 1239s device_series_name = ".*" + device_series_name + ".*" 1239s 1239s if self.dnac_version <= self.version_2_3_5_3: 1239s site_params = { 1239s "site_id": site_id, 1239s "device_family": device_family 1239s } 1239s 1239s try: 1239s response = self.dnac._exec( 1239s family="sites", 1239s function='get_membership', 1239s op_modifies=True, 1239s params=site_params, 1239s ) 1239s 1239s except Exception as e: 1239s self.log("Unable to fetch the device(s) associated to the site '{0}' due to '{1}'".format(site_name, str(e)), "WARNING") 1239s return device_uuid_list 1239s 1239s self.log("Received API response from 'get_membership': {0}".format(str(response)), "DEBUG") 1239s response = response.get("device") 1239s 1239s > for item in response: 1239s E TypeError: 'NoneType' object is not iterable 1239s 1239s plugins/modules/swim_workflow_manager.py:935: TypeError 1239s ------------------------------ Captured log call ------------------------------- 1239s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 1239s ____ TestDnacSiteWorkflow.test_Site_workflow_manager_invalid_delete_config _____ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Site_workflow_manager_invalid_delete_config(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_version="2.3.7.6", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_empty 1239s ) 1239s ) 1239s > result = self.execute_module(changed=False, failed=False) 1239s 1239s tests/unit/modules/dnac/test_site_workflow_manager.py:391: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def main(): 1239s """ main entry point for module execution 1239s """ 1239s element_spec = {'dnac_host': {'required': True, 'type': 'str'}, 1239s 'dnac_port': {'type': 'str', 'default': '443'}, 1239s 'dnac_username': {'type': 'str', 'default': 'admin', 'aliases': ['user']}, 1239s 'dnac_password': {'type': 'str', 'no_log': True}, 1239s 'dnac_verify': {'type': 'bool', 'default': 'True'}, 1239s 'dnac_version': {'type': 'str', 'default': '2.2.3.3'}, 1239s 'dnac_debug': {'type': 'bool', 'default': False}, 1239s 'dnac_log_level': {'type': 'str', 'default': 'WARNING'}, 1239s "dnac_log_file_path": {"type": 'str', "default": 'dnac.log'}, 1239s "dnac_log_append": {"type": 'bool', "default": True}, 1239s 'dnac_log': {'type': 'bool', 'default': False}, 1239s 'validate_response_schema': {'type': 'bool', 'default': True}, 1239s 'config_verify': {'type': 'bool', "default": False}, 1239s 'dnac_api_task_timeout': {'type': 'int', "default": 1200}, 1239s 'dnac_task_poll_interval': {'type': 'int', "default": 2}, 1239s 'config': {'required': True, 'type': 'list', 'elements': 'dict'}, 1239s 'state': {'default': 'merged', 'choices': ['merged', 'deleted']} 1239s } 1239s 1239s module = AnsibleModule(argument_spec=element_spec, 1239s supports_check_mode=False) 1239s 1239s ccc_site = Site(module) 1239s state = ccc_site.params.get("state") 1239s 1239s if ccc_site.compare_dnac_versions(ccc_site.get_ccc_version(), "2.3.5.3") < 0: 1239s ccc_site.msg = ( 1239s "The specified version '{0}' does not support the site workflow feature. Supported versions start from '2.3.5.3' onwards. " 1239s "Version '2.3.5.3' introduces APIs for creating, updating, and deleting sites. " 1239s "Version '2.3.7.6' expands support to include APIs for bulk site creating, updating, and deleting sites.".format( 1239s ccc_site.get_ccc_version()) 1239s ) 1239s 1239s ccc_site.status = "failed" 1239s ccc_site.check_return_status() 1239s 1239s if state not in ccc_site.supported_states: 1239s ccc_site.status = "invalid" 1239s ccc_site.msg = "State {0} is invalid".format(state) 1239s ccc_site.check_return_status() 1239s 1239s ccc_site.validate_input().check_return_status() 1239s config_verify = ccc_site.params.get("config_verify") 1239s > ccc_site.validate_site_input_data(ccc_site.validated_config, state).check_return_status() 1239s E AttributeError: 'list' object has no attribute 'check_return_status' 1239s 1239s plugins/modules/site_workflow_manager.py:2520: AttributeError 1239s ------------------------------ Captured log call ------------------------------- 1239s ERROR logger:dnac.py:294 Site: validate_input: 493: Error: Configuration is not available in the playbook for validation 1239s 1239s ERROR logger:dnac.py:294 Site: validate_site_input_data: 1172: Config data is missing. 1239s _ TestswimWorkflowManager.test_swim_workflow_manager_playbook_image_distribution_failed _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s def get_device_ip_from_id(self, device_id): 1239s """ 1239s Retrieve the management IP address of a device from Cisco Catalyst Center using its ID. 1239s Parameters: 1239s - self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1239s - device_id (str): The unique identifier of the device in Cisco Catalyst Center. 1239s Returns: 1239s str: The management IP address of the specified device. 1239s Raises: 1239s Exception: If there is an error while retrieving the response from Cisco Catalyst Center. 1239s Description: 1239s This method queries Cisco Catalyst Center for the device details based on its unique identifier (ID). 1239s It uses the 'get_device_list' function in the 'devices' family, extracts the management IP address 1239s from the response, and returns it. If any error occurs during the process, an exception is raised 1239s with an appropriate error message logged. 1239s """ 1239s 1239s try: 1239s response = self.dnac._exec( 1239s family="devices", 1239s function='get_device_list', 1239s op_modifies=True, 1239s params={"id": device_id} 1239s ) 1239s self.log("Received API response from 'get_device_list': {0}".format(str(response)), "DEBUG") 1239s > response = response.get('response')[0] 1239s E KeyError: 0 1239s 1239s plugins/modules/swim_workflow_manager.py:1746: KeyError 1239s 1239s During handling of the above exception, another exception occurred: 1239s 1239s self = 1239s 1239s def test_swim_workflow_manager_playbook_image_distribution_failed(self): 1239s """ 1239s Test case for swim workflow manager when giving image distribution failed 1239s This test case checks the behavior of the swim workflow when giving image distribution failed 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_version='2.3.5.3', 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_image_distribution_failed 1239s ) 1239s ) 1239s > result = self.execute_module(changed=False, failed=True) 1239s 1239s tests/unit/modules/dnac/test_swim_workflow_manager.py:533: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:107: in execute_module 1239s result = self.failed() 1239s tests/unit/modules/dnac/dnac_module.py:125: in failed 1239s self.module.main() 1239s plugins/modules/swim_workflow_manager.py:2415: in main 1239s ccc_swims.get_diff_state_apply[state](config).check_return_status() 1239s plugins/modules/swim_workflow_manager.py:2110: in get_diff_merged 1239s self.get_diff_distribution().check_return_status() 1239s plugins/modules/swim_workflow_manager.py:1834: in get_diff_distribution 1239s device_ip = self.get_device_ip_from_id(distribution_device_id) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def get_device_ip_from_id(self, device_id): 1239s """ 1239s Retrieve the management IP address of a device from Cisco Catalyst Center using its ID. 1239s Parameters: 1239s - self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1239s - device_id (str): The unique identifier of the device in Cisco Catalyst Center. 1239s Returns: 1239s str: The management IP address of the specified device. 1239s Raises: 1239s Exception: If there is an error while retrieving the response from Cisco Catalyst Center. 1239s Description: 1239s This method queries Cisco Catalyst Center for the device details based on its unique identifier (ID). 1239s It uses the 'get_device_list' function in the 'devices' family, extracts the management IP address 1239s from the response, and returns it. If any error occurs during the process, an exception is raised 1239s with an appropriate error message logged. 1239s """ 1239s 1239s try: 1239s response = self.dnac._exec( 1239s family="devices", 1239s function='get_device_list', 1239s op_modifies=True, 1239s params={"id": device_id} 1239s ) 1239s self.log("Received API response from 'get_device_list': {0}".format(str(response)), "DEBUG") 1239s response = response.get('response')[0] 1239s device_ip = response.get("managementIpAddress") 1239s 1239s return device_ip 1239s except Exception as e: 1239s error_message = "Error occurred while getting the response of device from Cisco Catalyst Center: {0}".format(str(e)) 1239s self.log(error_message, "ERROR") 1239s > raise Exception(error_message) 1239s E Exception: Error occurred while getting the response of device from Cisco Catalyst Center: 0 1239s 1239s plugins/modules/swim_workflow_manager.py:1753: Exception 1239s ------------------------------ Captured log call ------------------------------- 1239s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 1239s 1239s 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' 1239s 1239s 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 1239s _ TestswimWorkflowManager.test_swim_workflow_manager_playbook_import_cco_image _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_swim_workflow_manager_playbook_import_cco_image(self): 1239s """ 1239s Test case for SWIM workflow manager to import an image from Cisco's cloud (CCO). 1239s This test case verifies the import of an image from the CCO into the specified Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_version='2.3.7.6', 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_import_cco_image 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_swim_workflow_manager.py:303: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/swim_workflow_manager.py:2413: in main 1239s ccc_swims.get_diff_import().check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s ------------------------------ Captured log call ------------------------------- 1239s WARNING logger:dnac.py:294 Swim: get_diff_import: 1355: image_type - cco 1239s 1239s WARNING logger:dnac.py:294 Swim: get_diff_import: 1372: cat9k_iosxe_npe.17.12.04.SPA.bin 1239s 1239s WARNING logger:dnac.py:294 Swim: get_diff_import: 1434: importing with the import_params - {'id': '8b01c34b-7e5e-4181-81ee-9bece7b5d078'} 1239s 1239s 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' 1239s _____ TestDnacSiteWorkflow.test_Site_workflow_manager_invalid_delete_site ______ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Site_workflow_manager_invalid_delete_site(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_version="2.3.5.3", 1239s dnac_log=True, 1239s state="deleted", 1239s config=self.delete_playbook_config 1239s ) 1239s ) 1239s self.maxDiff = None 1239s > result = self.execute_module(changed=False, failed=True) 1239s 1239s tests/unit/modules/dnac/test_site_workflow_manager.py:536: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:107: in execute_module 1239s result = self.failed() 1239s tests/unit/modules/dnac/dnac_module.py:125: in failed 1239s self.module.main() 1239s plugins/modules/site_workflow_manager.py:2542: in main 1239s module.exit_json(**ccc_site.result) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def exit_json(*args, **kwargs): 1239s if "changed" not in kwargs: 1239s kwargs["changed"] = False 1239s > raise AnsibleExitJson(kwargs) 1239s 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"} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:35: AnsibleExitJson 1239s ------------------------------ Captured log call ------------------------------- 1239s 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'. 1239s 1239s 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'. 1239s 1239s 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'. 1239s _ TestswimWorkflowManager.test_swim_workflow_manager_playbook_import_image_already_exist _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_swim_workflow_manager_playbook_import_image_already_exist(self): 1239s """ 1239s Test case for swim workflow manager when giving import image already exist 1239s This test case checks the behavior of the swim workflow when giving import image already exist 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_version='2.3.5.3', 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_import_image_already_exist 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=False) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Image(s) cat9k_iosxe.17.12.02.SPA.bin were skipped as they already exist in Cisco Catalyst Center. No new images were imported." 1239s ) 1239s 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.' 1239s E - Image(s) cat9k_iosxe.17.12.02.SPA.bin were skipped as they already exist in Cisco Catalyst Center. 1239s 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. 1239s E ? +++++++++++++++++++++++++++++ 1239s 1239s tests/unit/modules/dnac/test_swim_workflow_manager.py:465: AssertionError 1239s ------------------------------ Captured log call ------------------------------- 1239s WARNING logger:dnac.py:294 Swim: get_diff_import: 1355: image_type - remote 1239s 1239s WARNING logger:dnac.py:294 Swim: get_diff_import: 1372: cat9k_iosxe.17.12.02.SPA.bin 1239s ________ TestDnacSiteWorkflow.test_Site_workflow_manager_update_a_site _________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Site_workflow_manager_update_a_site(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_version="2.3.7.6", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_site 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_site_workflow_manager.py:611: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:136: in changed 1239s self.assertEqual(result["changed"], changed, result) 1239s E AssertionError: False != True : {'changed': False, 'diff': [], 'response': [], 'warnings': []} 1239s ------------------------------ Captured log call ------------------------------- 1239s 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 1239s __ TestswimWorkflowManager.test_swim_workflow_manager_playbook_site_not_exist __ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_swim_workflow_manager_playbook_site_not_exist(self): 1239s """ 1239s Test case for swim workflow manager when giving site not exist 1239s This test case checks the behavior of the swim workflow when giving site not exist 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_version='2.3.5.3', 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_site_not_exist 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "An exception occurred: Site 'Global/ltts/flor1' does not exist in the Cisco Catalyst Center" 1239s ) 1239s 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" 1239s E - An exception occurred: Site 'Global/ltts/flor1' does not exist in the Cisco Catalyst Center. 1239s E ? - 1239s E + An exception occurred: Site 'Global/ltts/flor1' does not exist in the Cisco Catalyst Center 1239s 1239s tests/unit/modules/dnac/test_swim_workflow_manager.py:488: AssertionError 1239s ------------------------------ Captured log call ------------------------------- 1239s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 1239s 1239s 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: . 1239s 1239s ERROR logger:dnac.py:294 Swim: site_exists: 671: An exception occurred: Site 'Global/ltts/flor1' does not exist in the Cisco Catalyst Center. 1239s ____ TestDnacSiteWorkflow.test_Site_workflow_manager_update_not_needed_site ____ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Site_workflow_manager_update_not_needed_site(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_version="2.3.5.3", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_update_site 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_site_workflow_manager.py:585: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def main(): 1239s """ main entry point for module execution 1239s """ 1239s element_spec = {'dnac_host': {'required': True, 'type': 'str'}, 1239s 'dnac_port': {'type': 'str', 'default': '443'}, 1239s 'dnac_username': {'type': 'str', 'default': 'admin', 'aliases': ['user']}, 1239s 'dnac_password': {'type': 'str', 'no_log': True}, 1239s 'dnac_verify': {'type': 'bool', 'default': 'True'}, 1239s 'dnac_version': {'type': 'str', 'default': '2.2.3.3'}, 1239s 'dnac_debug': {'type': 'bool', 'default': False}, 1239s 'dnac_log_level': {'type': 'str', 'default': 'WARNING'}, 1239s "dnac_log_file_path": {"type": 'str', "default": 'dnac.log'}, 1239s "dnac_log_append": {"type": 'bool', "default": True}, 1239s 'dnac_log': {'type': 'bool', 'default': False}, 1239s 'validate_response_schema': {'type': 'bool', 'default': True}, 1239s 'config_verify': {'type': 'bool', "default": False}, 1239s 'dnac_api_task_timeout': {'type': 'int', "default": 1200}, 1239s 'dnac_task_poll_interval': {'type': 'int', "default": 2}, 1239s 'config': {'required': True, 'type': 'list', 'elements': 'dict'}, 1239s 'state': {'default': 'merged', 'choices': ['merged', 'deleted']} 1239s } 1239s 1239s module = AnsibleModule(argument_spec=element_spec, 1239s supports_check_mode=False) 1239s 1239s ccc_site = Site(module) 1239s state = ccc_site.params.get("state") 1239s 1239s if ccc_site.compare_dnac_versions(ccc_site.get_ccc_version(), "2.3.5.3") < 0: 1239s ccc_site.msg = ( 1239s "The specified version '{0}' does not support the site workflow feature. Supported versions start from '2.3.5.3' onwards. " 1239s "Version '2.3.5.3' introduces APIs for creating, updating, and deleting sites. " 1239s "Version '2.3.7.6' expands support to include APIs for bulk site creating, updating, and deleting sites.".format( 1239s ccc_site.get_ccc_version()) 1239s ) 1239s 1239s ccc_site.status = "failed" 1239s ccc_site.check_return_status() 1239s 1239s if state not in ccc_site.supported_states: 1239s ccc_site.status = "invalid" 1239s ccc_site.msg = "State {0} is invalid".format(state) 1239s ccc_site.check_return_status() 1239s 1239s ccc_site.validate_input().check_return_status() 1239s config_verify = ccc_site.params.get("config_verify") 1239s ccc_site.validate_site_input_data(ccc_site.validated_config, state).check_return_status() 1239s 1239s if ccc_site.compare_dnac_versions(ccc_site.get_ccc_version(), "2.3.7.6") >= 0: 1239s ccc_site.reset_values() 1239s ccc_site.get_want(ccc_site.validated_config).check_return_status() 1239s ccc_site.get_have(ccc_site.validated_config).check_return_status() 1239s 1239s ccc_site.get_diff_state_apply[state](ccc_site.validated_config).check_return_status() 1239s 1239s if config_verify: 1239s ccc_site.update_site_messages().check_return_status() 1239s 1239s else: 1239s for config in ccc_site.validated_config: 1239s ccc_site.reset_values() 1239s 1239s ccc_site.get_want(config).check_return_status() 1239s > ccc_site.get_have(config).check_return_status() 1239s E AttributeError: 'NoneType' object has no attribute 'check_return_status' 1239s 1239s plugins/modules/site_workflow_manager.py:2537: AttributeError 1239s ------------------------------ Captured log call ------------------------------- 1239s ERROR logger:dnac.py:294 Site: set_operation_result: 1780: An unexpected error occurred while retrieving site details: 'NoneType' object is not subscriptable 1239s _ TestswimWorkflowManager.test_swim_workflow_manager_playbook_swim_image_golden_already_tagged _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_swim_workflow_manager_playbook_swim_image_golden_already_tagged(self): 1239s """ 1239s Test case for swim workflow manager when givingswim image golden already tagged 1239s This test case checks the behavior of the swim workflow when giving swim image golden already tagged 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_version='2.3.5.3', 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_swim_image_golden_already_tagged 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=False) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "SWIM Image 'cat9k_iosxe.17.12.02.SPA.bin' already tagged as Golden image in Cisco Catalyst Center" 1239s ) 1239s 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" 1239s E - SWIM Image 'cat9k_iosxe.17.12.02.SPA.bin' already tagged as Golden image in Cisco Catalyst Center for the roles - ALL. 1239s E ? --------------------- 1239s E + SWIM Image 'cat9k_iosxe.17.12.02.SPA.bin' already tagged as Golden image in Cisco Catalyst Center 1239s 1239s tests/unit/modules/dnac/test_swim_workflow_manager.py:580: AssertionError 1239s ------------------------------ Captured log call ------------------------------- 1239s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 1239s _________ TestDnacSiteWorkflow.test_Site_workflow_manager_update_site __________ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s def get_diff_merged(self, config): 1239s """ 1239s Update/Create site information in Cisco Catalyst Center with fields 1239s provided in the playbook. 1239s Parameters: 1239s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1239s config (dict): A dictionary containing configuration information. 1239s Returns: 1239s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1239s Description: 1239s This method determines whether to update or create a site in Cisco Catalyst Center based on the provided 1239s configuration information. If the specified site exists, the method checks if it requires an update 1239s by calling the 'site_requires_update' method. If an update is required, it calls the 'update_site' 1239s function from the 'sites' family of the Cisco Catalyst Center API. If the site does not require an update, 1239s the method exits, indicating that the site is up to date. 1239s """ 1239s site_updated = False 1239s site_created = False 1239s 1239s if self.compare_dnac_versions(self.get_ccc_version(), "2.3.7.6") >= 0: 1239s self.handle_config['area'] = [] 1239s self.handle_config['building'] = [] 1239s self.handle_config['floor'] = [] 1239s try: 1239s create_site = copy.deepcopy(self.handle_config["create_site"]) 1239s if len(create_site) > 0: 1239s self.log("Starting site creation process.", "DEBUG") 1239s for each_config in create_site: 1239s payload_data = self.change_payload_data(each_config.get("want")) 1239s if payload_data: 1239s payload_data[self.keymap["parent_name_hierarchy"]] =\ 1239s payload_data.get(self.keymap["parent_name"]) 1239s del payload_data[self.keymap["parent_name"]] 1239s self.log("Payload data prepared for site creation: {}".format(payload_data), "DEBUG") 1239s 1239s if payload_data.get("type") == "area": 1239s self.handle_config["area"].append(payload_data) 1239s self.log("Added to area: {}".format(payload_data), "DEBUG") 1239s elif payload_data.get("type") == "building": 1239s self.handle_config["building"].append(payload_data) 1239s self.log("Added to building: {}".format(payload_data), "DEBUG") 1239s elif payload_data.get("type") == "floor": 1239s self.handle_config["floor"].append(payload_data) 1239s self.log("Added to floor: {}".format(payload_data), "DEBUG") 1239s for each_type in ("area", "building", "floor"): 1239s if self.handle_config[each_type]: 1239s self.log("Processing configurations for '{0}'.".format(each_type), "DEBUG") 1239s for create_config in self.handle_config[each_type]: 1239s self.log("Handling configuration: {0}".format(create_config), "DEBUG") 1239s parent_name = create_config.get(self.keymap.get("parent_name_hierarchy")) 1239s if not parent_name: 1239s self.msg = "No parent name found in configuration for '{0}'.".format(each_type) 1239s self.log(self.msg, "DEBUG") 1239s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1239s self.log("Checking if parent site '{0}' exists in the hierarchy.".format(parent_name), "DEBUG") 1239s 1239s site_exists = self.is_site_exist(parent_name) 1239s if not site_exists: 1239s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name) 1239s self.log(self.msg, "DEBUG") 1239s self.site_absent_list.append(str(parent_name) + " does not exist ") 1239s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1239s 1239s response = self.creating_bulk_site(self.handle_config[each_type]) 1239s self.log("Response from creating_bulk_site for {}: {}".format(each_type, response), "DEBUG") 1239s 1239s if response and isinstance(response, dict) and "response" in response: 1239s task_id = response["response"].get("taskId") 1239s if task_id: 1239s self.log("Task Id for the 'site_creation' task is {}".format(task_id), "INFO") 1239s 1239s task_name = "create_sites" 1239s success_msg = "Site created successfully." 1239s self.get_task_status_from_tasks_by_id(task_id, task_name, success_msg) 1239s 1239s for site in self.handle_config[each_type]: 1239s if "name" in site: 1239s self.created_site_list.append(str(each_type) + ": " + str(site.get("name"))) 1239s 1239s self.log("Site '{}' created successfully".format(self.created_site_list), "INFO") 1239s 1239s for site in self.handle_config[each_type]: 1239s if site.get("type") == "floor": 1239s floor_name = site.get("name") 1239s self.log("Floor '{}' has been created successfully.".format(floor_name), "INFO") 1239s 1239s upload_path = site.get("upload_floor_image_path", None) 1239s if upload_path: 1239s self.log("Upload path found for floor '{}'. Starting upload floor map from '{}.'". 1239s format(floor_name, upload_path), "INFO") 1239s 1239s map_details, map_status, success_message = self.upload_floor_image(site) 1239s if map_details: 1239s self.log("Floor map for '{}' uploaded successfully: {}". 1239s format(floor_name, success_message), "INFO") 1239s else: 1239s self.log("Floor map upload failed for '{}'. Please check the upload path and retry.". 1239s format(floor_name), "ERROR") 1239s else: 1239s self.log("No upload path provided for '{}'. Floor created without floor map.". 1239s format(floor_name), "INFO") 1239s else: 1239s self.log("No valid task ID received from the 'creating_bulk_site' response.", "WARNING") 1239s return None 1239s else: 1239s self.log("No response received from the 'creating_bulk_site' API call.", "WARNING") 1239s return None 1239s 1239s task_detail_list = [] 1239s for each_config in self.have: 1239s site_name_hierarchy = each_config.get("site_name_hierarchy") 1239s 1239s if each_config.get("site_exists"): 1239s self.log("Processing site: {}".format(site_name_hierarchy), "DEBUG") 1239s payload_new = self.change_payload_data(each_config.get("want")) 1239s if payload_new.get("type") == "area": 1239s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1239s self.log(self.msg, "INFO") 1239s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy) 1239s elif payload_new.get("type") in ("building", "floor"): 1239s site_params = each_config.get("site_params") 1239s site_params["site_id"] = each_config.get("site_id") 1239s site_type = site_params.get("type") 1239s 1239s if self.site_requires_update(each_config): 1239s self.log("Site requires update, starting update for type: {}".format(site_type), "DEBUG") 1239s response = (self.update_floor(site_params, payload_new) if site_type == "floor" 1239s else self.update_area(site_params) if site_type == "area" 1239s else self.update_building(site_params) if site_type == "building" 1239s else self.log("Unknown site type: {0}".format(site_type), "ERROR")) 1239s 1239s self.log("Received API response from 'update_site': {0}". 1239s format(str(response)), "DEBUG") 1239s 1239s if response and isinstance(response, dict): 1239s taskid = response["response"]["taskId"] 1239s 1239s while True: 1239s task_details = self.get_task_details(taskid) 1239s if site_type != "floor": 1239s if task_details.get("progress") == "Group is updated successfully": 1239s task_detail_list.append(task_details) 1239s self.updated_site_list.append(site_type + ": " + site_name_hierarchy) 1239s self.log("Site '{}' updated successfully.".format(site_name_hierarchy), "INFO") 1239s break 1239s else: 1239s if task_details.get("progress") == "Service domain is updated successfully.": 1239s task_detail_list.append(task_details) 1239s self.updated_site_list.append(site_type + ": " + site_name_hierarchy) 1239s break 1239s 1239s if task_details.get("bapiError"): 1239s msg = task_details.get("bapiError") 1239s self.set_operation_result("failed", False, msg, "ERROR", 1239s task_details).check_return_status() 1239s break 1239s else: 1239s self.msg = "Unable to execute the update the site: {0} ".format(site_name_hierarchy) 1239s self.log(self.msg, "INFO") 1239s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1239s else: 1239s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1239s self.log(self.msg, "INFO") 1239s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy) 1239s except Exception as e: 1239s self.log("Yaml is not available for bulk: {}".format(str(e)), "ERROR") 1239s 1239s return self 1239s 1239s else: 1239s site_params = self.want.get("site_params") 1239s site_type = site_params.get("type") 1239s if self.have.get("site_exists"): 1239s site_name_hierarchy = self.want.get("site_name_hierarchy") 1239s if not self.site_requires_update(): 1239s self.update_not_needed_sites.append(site_type + ": " + site_name_hierarchy) 1239s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1239s self.log(self.msg, "INFO") 1239s else: 1239s try: 1239s site_params["site_id"] = self.have.get("site_id") 1239s self.log("Site parameters prepared for update: {}".format(site_params)) 1239s self.log("Site update process started.", "INFO") 1239s 1239s if site_params['site'].get('building'): 1239s building_details = {} 1239s for key, value in site_params['site']['building'].items(): 1239s if value is not None: 1239s building_details[key] = value 1239s 1239s site_params['site']['building'] = building_details 1239s 1239s response = self.dnac._exec( 1239s family="sites", 1239s function='update_site', 1239s op_modifies=True, 1239s params=site_params, 1239s ) 1239s self.log("Received API response from 'update_site': {0}".format(str(response)), "DEBUG") 1239s 1239s if response and isinstance(response, dict): 1239s execution_id = response.get("executionId") 1239s while True: 1239s execution_details = self.get_execution_details(execution_id) 1239s if execution_details.get("status") == "SUCCESS": 1239s self.result['changed'] = True 1239s site_updated = True 1239s self.updated_site_list.append(str(site_type) + ": " + str(site_name_hierarchy)) 1239s self.log("Site - {0} Updated Successfully".format(site_name_hierarchy), "INFO") 1239s break 1239s elif execution_details.get("bapiError"): 1239s self.msg = "Unable to Update: " + execution_details.get("bapiError") 1239s self.set_operation_result("failed", False, self.msg, "ERROR", 1239s execution_details).check_return_status() 1239s 1239s except Exception as e: 1239s self.msg = "Unexpected error occurred while update: {0}".format(str(e)) 1239s self.log(self.msg, "ERROR") 1239s self.set_operation_result("failed", False, self.msg, "ERROR", 1239s site_name_hierarchy).check_return_status() 1239s 1239s else: 1239s try: 1239s try: 1239s if site_params['site'].get('building'): 1239s building_details = {} 1239s for key, value in site_params['site']['building'].items(): 1239s if value is not None: 1239s building_details[key] = value 1239s 1239s site_params['site']['building'] = building_details 1239s 1239s except Exception as e: 1239s site_type = site_params['type'] 1239s name = site_params['site'][site_type]['name'] 1239s self.log("The site '{0}' is not categorized as a building; no need to filter 'None' values.". 1239s format(name), "INFO") 1239s 1239s site_type = site_params['type'] 1239s parent_name = site_params.get('site').get(site_type).get('parentName') 1239s try: 1239s response = self.get_site_v1(parent_name) 1239s if not response: 1239s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name) 1239s self.log(self.msg, "DEBUG") 1239s self.site_absent_list.append(str(parent_name) + " does not exist ") 1239s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1239s except Exception as e: 1239s self.log("No response received from 'get_site_v1' API for site: {0}".format(parent_name + str(e)), "ERROR") 1239s 1239s > response = self.dnac._exec( 1239s family="sites", 1239s function='create_site', 1239s op_modifies=True, 1239s params=site_params, 1239s ) 1239s 1239s plugins/modules/site_workflow_manager.py:1868: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s /usr/lib/python3.13/unittest/mock.py:1169: in __call__ 1239s return self._mock_call(*args, **kwargs) 1239s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call 1239s return self._execute_mock_call(*args, **kwargs) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s self = , args = () 1239s kwargs = {'family': 'sites', 'function': 'create_site', 'op_modifies': True, 'params': {'site': {'area': {'name': 'japan8888', 'parentName': 'Global'}}, 'type': 'area'}} 1239s effect = , result = Exception() 1239s 1239s def _execute_mock_call(self, /, *args, **kwargs): 1239s # separate from _increment_mock_call so that awaited functions are 1239s # executed separately from their call, also AsyncMock overrides this method 1239s 1239s effect = self.side_effect 1239s if effect is not None: 1239s if _is_exception(effect): 1239s raise effect 1239s elif not _callable(effect): 1239s result = next(effect) 1239s if _is_exception(result): 1239s > raise result 1239s E Exception 1239s 1239s /usr/lib/python3.13/unittest/mock.py:1232: Exception 1239s 1239s During handling of the above exception, another exception occurred: 1239s 1239s self = 1239s 1239s def test_Site_workflow_manager_update_site(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_version="2.3.5.3", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_update_site 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_site_workflow_manager.py:559: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/site_workflow_manager.py:2539: in main 1239s ccc_site.get_diff_state_apply[state](config).check_return_status() 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def get_diff_merged(self, config): 1239s """ 1239s Update/Create site information in Cisco Catalyst Center with fields 1239s provided in the playbook. 1239s Parameters: 1239s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1239s config (dict): A dictionary containing configuration information. 1239s Returns: 1239s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1239s Description: 1239s This method determines whether to update or create a site in Cisco Catalyst Center based on the provided 1239s configuration information. If the specified site exists, the method checks if it requires an update 1239s by calling the 'site_requires_update' method. If an update is required, it calls the 'update_site' 1239s function from the 'sites' family of the Cisco Catalyst Center API. If the site does not require an update, 1239s the method exits, indicating that the site is up to date. 1239s """ 1239s site_updated = False 1239s site_created = False 1239s 1239s if self.compare_dnac_versions(self.get_ccc_version(), "2.3.7.6") >= 0: 1239s self.handle_config['area'] = [] 1239s self.handle_config['building'] = [] 1239s self.handle_config['floor'] = [] 1239s try: 1239s create_site = copy.deepcopy(self.handle_config["create_site"]) 1239s if len(create_site) > 0: 1239s self.log("Starting site creation process.", "DEBUG") 1239s for each_config in create_site: 1239s payload_data = self.change_payload_data(each_config.get("want")) 1239s if payload_data: 1239s payload_data[self.keymap["parent_name_hierarchy"]] =\ 1239s payload_data.get(self.keymap["parent_name"]) 1239s del payload_data[self.keymap["parent_name"]] 1239s self.log("Payload data prepared for site creation: {}".format(payload_data), "DEBUG") 1239s 1239s if payload_data.get("type") == "area": 1239s self.handle_config["area"].append(payload_data) 1239s self.log("Added to area: {}".format(payload_data), "DEBUG") 1239s elif payload_data.get("type") == "building": 1239s self.handle_config["building"].append(payload_data) 1239s self.log("Added to building: {}".format(payload_data), "DEBUG") 1239s elif payload_data.get("type") == "floor": 1239s self.handle_config["floor"].append(payload_data) 1239s self.log("Added to floor: {}".format(payload_data), "DEBUG") 1239s for each_type in ("area", "building", "floor"): 1239s if self.handle_config[each_type]: 1239s self.log("Processing configurations for '{0}'.".format(each_type), "DEBUG") 1239s for create_config in self.handle_config[each_type]: 1239s self.log("Handling configuration: {0}".format(create_config), "DEBUG") 1239s parent_name = create_config.get(self.keymap.get("parent_name_hierarchy")) 1239s if not parent_name: 1239s self.msg = "No parent name found in configuration for '{0}'.".format(each_type) 1239s self.log(self.msg, "DEBUG") 1239s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1239s self.log("Checking if parent site '{0}' exists in the hierarchy.".format(parent_name), "DEBUG") 1239s 1239s site_exists = self.is_site_exist(parent_name) 1239s if not site_exists: 1239s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name) 1239s self.log(self.msg, "DEBUG") 1239s self.site_absent_list.append(str(parent_name) + " does not exist ") 1239s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1239s 1239s response = self.creating_bulk_site(self.handle_config[each_type]) 1239s self.log("Response from creating_bulk_site for {}: {}".format(each_type, response), "DEBUG") 1239s 1239s if response and isinstance(response, dict) and "response" in response: 1239s task_id = response["response"].get("taskId") 1239s if task_id: 1239s self.log("Task Id for the 'site_creation' task is {}".format(task_id), "INFO") 1239s 1239s task_name = "create_sites" 1239s success_msg = "Site created successfully." 1239s self.get_task_status_from_tasks_by_id(task_id, task_name, success_msg) 1239s 1239s for site in self.handle_config[each_type]: 1239s if "name" in site: 1239s self.created_site_list.append(str(each_type) + ": " + str(site.get("name"))) 1239s 1239s self.log("Site '{}' created successfully".format(self.created_site_list), "INFO") 1239s 1239s for site in self.handle_config[each_type]: 1239s if site.get("type") == "floor": 1239s floor_name = site.get("name") 1239s self.log("Floor '{}' has been created successfully.".format(floor_name), "INFO") 1239s 1239s upload_path = site.get("upload_floor_image_path", None) 1239s if upload_path: 1239s self.log("Upload path found for floor '{}'. Starting upload floor map from '{}.'". 1239s format(floor_name, upload_path), "INFO") 1239s 1239s map_details, map_status, success_message = self.upload_floor_image(site) 1239s if map_details: 1239s self.log("Floor map for '{}' uploaded successfully: {}". 1239s format(floor_name, success_message), "INFO") 1239s else: 1239s self.log("Floor map upload failed for '{}'. Please check the upload path and retry.". 1239s format(floor_name), "ERROR") 1239s else: 1239s self.log("No upload path provided for '{}'. Floor created without floor map.". 1239s format(floor_name), "INFO") 1239s else: 1239s self.log("No valid task ID received from the 'creating_bulk_site' response.", "WARNING") 1239s return None 1239s else: 1239s self.log("No response received from the 'creating_bulk_site' API call.", "WARNING") 1239s return None 1239s 1239s task_detail_list = [] 1239s for each_config in self.have: 1239s site_name_hierarchy = each_config.get("site_name_hierarchy") 1239s 1239s if each_config.get("site_exists"): 1239s self.log("Processing site: {}".format(site_name_hierarchy), "DEBUG") 1239s payload_new = self.change_payload_data(each_config.get("want")) 1239s if payload_new.get("type") == "area": 1239s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1239s self.log(self.msg, "INFO") 1239s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy) 1239s elif payload_new.get("type") in ("building", "floor"): 1239s site_params = each_config.get("site_params") 1239s site_params["site_id"] = each_config.get("site_id") 1239s site_type = site_params.get("type") 1239s 1239s if self.site_requires_update(each_config): 1239s self.log("Site requires update, starting update for type: {}".format(site_type), "DEBUG") 1239s response = (self.update_floor(site_params, payload_new) if site_type == "floor" 1239s else self.update_area(site_params) if site_type == "area" 1239s else self.update_building(site_params) if site_type == "building" 1239s else self.log("Unknown site type: {0}".format(site_type), "ERROR")) 1239s 1239s self.log("Received API response from 'update_site': {0}". 1239s format(str(response)), "DEBUG") 1239s 1239s if response and isinstance(response, dict): 1239s taskid = response["response"]["taskId"] 1239s 1239s while True: 1239s task_details = self.get_task_details(taskid) 1239s if site_type != "floor": 1239s if task_details.get("progress") == "Group is updated successfully": 1239s task_detail_list.append(task_details) 1239s self.updated_site_list.append(site_type + ": " + site_name_hierarchy) 1239s self.log("Site '{}' updated successfully.".format(site_name_hierarchy), "INFO") 1239s break 1239s else: 1239s if task_details.get("progress") == "Service domain is updated successfully.": 1239s task_detail_list.append(task_details) 1239s self.updated_site_list.append(site_type + ": " + site_name_hierarchy) 1239s break 1239s 1239s if task_details.get("bapiError"): 1239s msg = task_details.get("bapiError") 1239s self.set_operation_result("failed", False, msg, "ERROR", 1239s task_details).check_return_status() 1239s break 1239s else: 1239s self.msg = "Unable to execute the update the site: {0} ".format(site_name_hierarchy) 1239s self.log(self.msg, "INFO") 1239s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1239s else: 1239s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1239s self.log(self.msg, "INFO") 1239s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy) 1239s except Exception as e: 1239s self.log("Yaml is not available for bulk: {}".format(str(e)), "ERROR") 1239s 1239s return self 1239s 1239s else: 1239s site_params = self.want.get("site_params") 1239s site_type = site_params.get("type") 1239s if self.have.get("site_exists"): 1239s site_name_hierarchy = self.want.get("site_name_hierarchy") 1239s if not self.site_requires_update(): 1239s self.update_not_needed_sites.append(site_type + ": " + site_name_hierarchy) 1239s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1239s self.log(self.msg, "INFO") 1239s else: 1239s try: 1239s site_params["site_id"] = self.have.get("site_id") 1239s self.log("Site parameters prepared for update: {}".format(site_params)) 1239s self.log("Site update process started.", "INFO") 1239s 1239s if site_params['site'].get('building'): 1239s building_details = {} 1239s for key, value in site_params['site']['building'].items(): 1239s if value is not None: 1239s building_details[key] = value 1239s 1239s site_params['site']['building'] = building_details 1239s 1239s response = self.dnac._exec( 1239s family="sites", 1239s function='update_site', 1239s op_modifies=True, 1239s params=site_params, 1239s ) 1239s self.log("Received API response from 'update_site': {0}".format(str(response)), "DEBUG") 1239s 1239s if response and isinstance(response, dict): 1239s execution_id = response.get("executionId") 1239s while True: 1239s execution_details = self.get_execution_details(execution_id) 1239s if execution_details.get("status") == "SUCCESS": 1239s self.result['changed'] = True 1239s site_updated = True 1239s self.updated_site_list.append(str(site_type) + ": " + str(site_name_hierarchy)) 1239s self.log("Site - {0} Updated Successfully".format(site_name_hierarchy), "INFO") 1239s break 1239s elif execution_details.get("bapiError"): 1239s self.msg = "Unable to Update: " + execution_details.get("bapiError") 1239s self.set_operation_result("failed", False, self.msg, "ERROR", 1239s execution_details).check_return_status() 1239s 1239s except Exception as e: 1239s self.msg = "Unexpected error occurred while update: {0}".format(str(e)) 1239s self.log(self.msg, "ERROR") 1239s self.set_operation_result("failed", False, self.msg, "ERROR", 1239s site_name_hierarchy).check_return_status() 1239s 1239s else: 1239s try: 1239s try: 1239s if site_params['site'].get('building'): 1239s building_details = {} 1239s for key, value in site_params['site']['building'].items(): 1239s if value is not None: 1239s building_details[key] = value 1239s 1239s site_params['site']['building'] = building_details 1239s 1239s except Exception as e: 1239s site_type = site_params['type'] 1239s name = site_params['site'][site_type]['name'] 1239s self.log("The site '{0}' is not categorized as a building; no need to filter 'None' values.". 1239s format(name), "INFO") 1239s 1239s site_type = site_params['type'] 1239s parent_name = site_params.get('site').get(site_type).get('parentName') 1239s try: 1239s response = self.get_site_v1(parent_name) 1239s if not response: 1239s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name) 1239s self.log(self.msg, "DEBUG") 1239s self.site_absent_list.append(str(parent_name) + " does not exist ") 1239s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1239s except Exception as e: 1239s self.log("No response received from 'get_site_v1' API for site: {0}".format(parent_name + str(e)), "ERROR") 1239s 1239s response = self.dnac._exec( 1239s family="sites", 1239s function='create_site', 1239s op_modifies=True, 1239s params=site_params, 1239s ) 1239s self.log("Received API response from 'create_site': {0}".format(str(response)), "DEBUG") 1239s 1239s if response and isinstance(response, dict): 1239s executionid = response.get("executionId") 1239s while True: 1239s execution_details = self.get_execution_details(executionid) 1239s if execution_details.get("status") == "SUCCESS": 1239s self.result['changed'] = True 1239s break 1239s elif execution_details.get("bapiError"): 1239s self.msg = "Unable to Create: " + str(execution_details.get("bapiError")) 1239s self.set_operation_result("failed", False, self.msg, "ERROR", 1239s execution_details).check_return_status() 1239s break 1239s 1239s site_exists, current_site = self.site_exists() 1239s if site_exists: 1239s site_name_hierarchy = self.want.get("site_name_hierarchy") 1239s self.created_site_list.append(str(site_type) + ": " + str(site_name_hierarchy)) 1239s self.log("Site '{0}' created successfully".format(site_name_hierarchy), "INFO") 1239s return self 1239s 1239s except Exception as e: 1239s self.msg = "Unexpected error occurred while create: {0}".format(str(e)) 1239s self.log(self.msg, "ERROR") 1239s self.set_operation_result("failed", False, self.msg, "ERROR", 1239s > site_name_hierarchy).check_return_status() 1239s E UnboundLocalError: cannot access local variable 'site_name_hierarchy' where it is not associated with a value 1239s 1239s plugins/modules/site_workflow_manager.py:1900: UnboundLocalError 1239s ------------------------------ Captured log call ------------------------------- 1239s ERROR logger:dnac.py:294 Site: get_site_v1: 619: An error occurred in 'get_sites': 1239s 1239s ERROR logger:dnac.py:294 Site: site_exists: 676: No response received from 'get_site' API for site: Global/japan8888 1239s 1239s ERROR logger:dnac.py:294 Site: get_diff_merged: 1898: Unexpected error occurred while create: 1239s _ TestswimWorkflowManager.test_swim_workflow_manager_playbook_swim_image_golden_tag _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_swim_workflow_manager_playbook_swim_image_golden_tag(self): 1239s """ 1239s Test case for swim workflow manager when givingswim image golden already tagged 1239s This test case checks the behavior of the swim workflow when giving swim image golden tagged 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_version='2.3.5.3', 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_swim_image_golden_tag 1239s ) 1239s ) 1239s result = self.execute_module(changed=True, failed=False) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Tagging image cat9k_iosxe.17.12.02.SPA.bin golden for site Global for family Cisco Catalyst 9300 Switch for device deviceTag ALL successful." 1239s ) 1239s 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.' 1239s 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. 1239s E ? ^^^ 1239s 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. 1239s E ? + + + + ^ +++++++ 1239s 1239s tests/unit/modules/dnac/test_swim_workflow_manager.py:557: AssertionError 1239s ------------------------------ Captured log call ------------------------------- 1239s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 1239s 1239s WARNING logger:dnac.py:294 Swim: get_have: 1154: Site Name not given by user. Using global site. 1239s 1239s WARNING logger:dnac.py:294 Swim: get_have: 1154: Site Name not given by user. Using global site. 1239s _______ TestDnacSiteWorkflow.test_Site_workflow_manager_upload_floor_map _______ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_Site_workflow_manager_upload_floor_map(self): 1239s """ 1239s Test case for site workflow manager when creating a site. 1239s 1239s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_version="2.3.7.6", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.upload_floor_map_playbook 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_site_workflow_manager.py:320: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/site_workflow_manager.py:2520: in main 1239s ccc_site.validate_site_input_data(ccc_site.validated_config, state).check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s ------------------------------ Captured log call ------------------------------- 1239s ERROR logger:dnac.py:294 Site: validate_site_input_data: 1188: Missing 'name' field in entry. 1239s 1239s ERROR logger:dnac.py:294 Site: validate_site_input_data: 1196: Missing 'parent_name' field in entry. 1239s 1239s 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' 1239s _ TestswimWorkflowManager.test_swim_workflow_manager_playbook_untag_image_as_golden_and_load_on_device _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_swim_workflow_manager_playbook_untag_image_as_golden_and_load_on_device(self): 1239s """ 1239s Test case for swim workflow manager when giving untag image as golden and load on device 1239s This test case checks the behavior of the swim workflow when giving untag image as golden and load on device 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_version='2.3.5.3', 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_untag_image_as_golden_and_load_on_device 1239s ) 1239s ) 1239s result = self.execute_module(changed=True, failed=False) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Untagging of image cat9k_iosxe.17.12.02.SPA.bin for site LTTS for family Cisco \ 1239s Catalyst 9000 UADP 8 Port Virtual Switch for device deviceTag ALL successful." 1239s ) 1239s 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.' 1239s 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. 1239s E ? ^^ ------- ^^^^^^^ ^^^ 1239s 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. 1239s E ? ^ +++ + ^ + ^ +++++++ 1239s 1239s tests/unit/modules/dnac/test_swim_workflow_manager.py:442: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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.'} 1239s ------------------------------ Captured log call ------------------------------- 1239s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 1239s ___ TestDnacSiteWorkflow.test_Site_workflow_manager_verify_diff_merged_site ____ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s def get_diff_merged(self, config): 1239s """ 1239s Update/Create site information in Cisco Catalyst Center with fields 1239s provided in the playbook. 1239s Parameters: 1239s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1239s config (dict): A dictionary containing configuration information. 1239s Returns: 1239s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1239s Description: 1239s This method determines whether to update or create a site in Cisco Catalyst Center based on the provided 1239s configuration information. If the specified site exists, the method checks if it requires an update 1239s by calling the 'site_requires_update' method. If an update is required, it calls the 'update_site' 1239s function from the 'sites' family of the Cisco Catalyst Center API. If the site does not require an update, 1239s the method exits, indicating that the site is up to date. 1239s """ 1239s site_updated = False 1239s site_created = False 1239s 1239s if self.compare_dnac_versions(self.get_ccc_version(), "2.3.7.6") >= 0: 1239s self.handle_config['area'] = [] 1239s self.handle_config['building'] = [] 1239s self.handle_config['floor'] = [] 1239s try: 1239s create_site = copy.deepcopy(self.handle_config["create_site"]) 1239s if len(create_site) > 0: 1239s self.log("Starting site creation process.", "DEBUG") 1239s for each_config in create_site: 1239s payload_data = self.change_payload_data(each_config.get("want")) 1239s if payload_data: 1239s payload_data[self.keymap["parent_name_hierarchy"]] =\ 1239s payload_data.get(self.keymap["parent_name"]) 1239s del payload_data[self.keymap["parent_name"]] 1239s self.log("Payload data prepared for site creation: {}".format(payload_data), "DEBUG") 1239s 1239s if payload_data.get("type") == "area": 1239s self.handle_config["area"].append(payload_data) 1239s self.log("Added to area: {}".format(payload_data), "DEBUG") 1239s elif payload_data.get("type") == "building": 1239s self.handle_config["building"].append(payload_data) 1239s self.log("Added to building: {}".format(payload_data), "DEBUG") 1239s elif payload_data.get("type") == "floor": 1239s self.handle_config["floor"].append(payload_data) 1239s self.log("Added to floor: {}".format(payload_data), "DEBUG") 1239s for each_type in ("area", "building", "floor"): 1239s if self.handle_config[each_type]: 1239s self.log("Processing configurations for '{0}'.".format(each_type), "DEBUG") 1239s for create_config in self.handle_config[each_type]: 1239s self.log("Handling configuration: {0}".format(create_config), "DEBUG") 1239s parent_name = create_config.get(self.keymap.get("parent_name_hierarchy")) 1239s if not parent_name: 1239s self.msg = "No parent name found in configuration for '{0}'.".format(each_type) 1239s self.log(self.msg, "DEBUG") 1239s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1239s self.log("Checking if parent site '{0}' exists in the hierarchy.".format(parent_name), "DEBUG") 1239s 1239s site_exists = self.is_site_exist(parent_name) 1239s if not site_exists: 1239s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name) 1239s self.log(self.msg, "DEBUG") 1239s self.site_absent_list.append(str(parent_name) + " does not exist ") 1239s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1239s 1239s response = self.creating_bulk_site(self.handle_config[each_type]) 1239s self.log("Response from creating_bulk_site for {}: {}".format(each_type, response), "DEBUG") 1239s 1239s if response and isinstance(response, dict) and "response" in response: 1239s task_id = response["response"].get("taskId") 1239s if task_id: 1239s self.log("Task Id for the 'site_creation' task is {}".format(task_id), "INFO") 1239s 1239s task_name = "create_sites" 1239s success_msg = "Site created successfully." 1239s self.get_task_status_from_tasks_by_id(task_id, task_name, success_msg) 1239s 1239s for site in self.handle_config[each_type]: 1239s if "name" in site: 1239s self.created_site_list.append(str(each_type) + ": " + str(site.get("name"))) 1239s 1239s self.log("Site '{}' created successfully".format(self.created_site_list), "INFO") 1239s 1239s for site in self.handle_config[each_type]: 1239s if site.get("type") == "floor": 1239s floor_name = site.get("name") 1239s self.log("Floor '{}' has been created successfully.".format(floor_name), "INFO") 1239s 1239s upload_path = site.get("upload_floor_image_path", None) 1239s if upload_path: 1239s self.log("Upload path found for floor '{}'. Starting upload floor map from '{}.'". 1239s format(floor_name, upload_path), "INFO") 1239s 1239s map_details, map_status, success_message = self.upload_floor_image(site) 1239s if map_details: 1239s self.log("Floor map for '{}' uploaded successfully: {}". 1239s format(floor_name, success_message), "INFO") 1239s else: 1239s self.log("Floor map upload failed for '{}'. Please check the upload path and retry.". 1239s format(floor_name), "ERROR") 1239s else: 1239s self.log("No upload path provided for '{}'. Floor created without floor map.". 1239s format(floor_name), "INFO") 1239s else: 1239s self.log("No valid task ID received from the 'creating_bulk_site' response.", "WARNING") 1239s return None 1239s else: 1239s self.log("No response received from the 'creating_bulk_site' API call.", "WARNING") 1239s return None 1239s 1239s task_detail_list = [] 1239s for each_config in self.have: 1239s site_name_hierarchy = each_config.get("site_name_hierarchy") 1239s 1239s if each_config.get("site_exists"): 1239s self.log("Processing site: {}".format(site_name_hierarchy), "DEBUG") 1239s payload_new = self.change_payload_data(each_config.get("want")) 1239s if payload_new.get("type") == "area": 1239s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1239s self.log(self.msg, "INFO") 1239s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy) 1239s elif payload_new.get("type") in ("building", "floor"): 1239s site_params = each_config.get("site_params") 1239s site_params["site_id"] = each_config.get("site_id") 1239s site_type = site_params.get("type") 1239s 1239s if self.site_requires_update(each_config): 1239s self.log("Site requires update, starting update for type: {}".format(site_type), "DEBUG") 1239s response = (self.update_floor(site_params, payload_new) if site_type == "floor" 1239s else self.update_area(site_params) if site_type == "area" 1239s else self.update_building(site_params) if site_type == "building" 1239s else self.log("Unknown site type: {0}".format(site_type), "ERROR")) 1239s 1239s self.log("Received API response from 'update_site': {0}". 1239s format(str(response)), "DEBUG") 1239s 1239s if response and isinstance(response, dict): 1239s taskid = response["response"]["taskId"] 1239s 1239s while True: 1239s task_details = self.get_task_details(taskid) 1239s if site_type != "floor": 1239s if task_details.get("progress") == "Group is updated successfully": 1239s task_detail_list.append(task_details) 1239s self.updated_site_list.append(site_type + ": " + site_name_hierarchy) 1239s self.log("Site '{}' updated successfully.".format(site_name_hierarchy), "INFO") 1239s break 1239s else: 1239s if task_details.get("progress") == "Service domain is updated successfully.": 1239s task_detail_list.append(task_details) 1239s self.updated_site_list.append(site_type + ": " + site_name_hierarchy) 1239s break 1239s 1239s if task_details.get("bapiError"): 1239s msg = task_details.get("bapiError") 1239s self.set_operation_result("failed", False, msg, "ERROR", 1239s task_details).check_return_status() 1239s break 1239s else: 1239s self.msg = "Unable to execute the update the site: {0} ".format(site_name_hierarchy) 1239s self.log(self.msg, "INFO") 1239s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1239s else: 1239s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1239s self.log(self.msg, "INFO") 1239s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy) 1239s except Exception as e: 1239s self.log("Yaml is not available for bulk: {}".format(str(e)), "ERROR") 1239s 1239s return self 1239s 1239s else: 1239s site_params = self.want.get("site_params") 1239s site_type = site_params.get("type") 1239s if self.have.get("site_exists"): 1239s site_name_hierarchy = self.want.get("site_name_hierarchy") 1239s if not self.site_requires_update(): 1239s self.update_not_needed_sites.append(site_type + ": " + site_name_hierarchy) 1239s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1239s self.log(self.msg, "INFO") 1239s else: 1239s try: 1239s site_params["site_id"] = self.have.get("site_id") 1239s self.log("Site parameters prepared for update: {}".format(site_params)) 1239s self.log("Site update process started.", "INFO") 1239s 1239s if site_params['site'].get('building'): 1239s building_details = {} 1239s for key, value in site_params['site']['building'].items(): 1239s if value is not None: 1239s building_details[key] = value 1239s 1239s site_params['site']['building'] = building_details 1239s 1239s response = self.dnac._exec( 1239s family="sites", 1239s function='update_site', 1239s op_modifies=True, 1239s params=site_params, 1239s ) 1239s self.log("Received API response from 'update_site': {0}".format(str(response)), "DEBUG") 1239s 1239s if response and isinstance(response, dict): 1239s execution_id = response.get("executionId") 1239s while True: 1239s execution_details = self.get_execution_details(execution_id) 1239s if execution_details.get("status") == "SUCCESS": 1239s self.result['changed'] = True 1239s site_updated = True 1239s self.updated_site_list.append(str(site_type) + ": " + str(site_name_hierarchy)) 1239s self.log("Site - {0} Updated Successfully".format(site_name_hierarchy), "INFO") 1239s break 1239s elif execution_details.get("bapiError"): 1239s self.msg = "Unable to Update: " + execution_details.get("bapiError") 1239s self.set_operation_result("failed", False, self.msg, "ERROR", 1239s execution_details).check_return_status() 1239s 1239s except Exception as e: 1239s self.msg = "Unexpected error occurred while update: {0}".format(str(e)) 1239s self.log(self.msg, "ERROR") 1239s self.set_operation_result("failed", False, self.msg, "ERROR", 1239s site_name_hierarchy).check_return_status() 1239s 1239s else: 1239s try: 1239s try: 1239s if site_params['site'].get('building'): 1239s building_details = {} 1239s for key, value in site_params['site']['building'].items(): 1239s if value is not None: 1239s building_details[key] = value 1239s 1239s site_params['site']['building'] = building_details 1239s 1239s except Exception as e: 1239s site_type = site_params['type'] 1239s name = site_params['site'][site_type]['name'] 1239s self.log("The site '{0}' is not categorized as a building; no need to filter 'None' values.". 1239s format(name), "INFO") 1239s 1239s site_type = site_params['type'] 1239s parent_name = site_params.get('site').get(site_type).get('parentName') 1239s try: 1239s response = self.get_site_v1(parent_name) 1239s if not response: 1239s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name) 1239s self.log(self.msg, "DEBUG") 1239s self.site_absent_list.append(str(parent_name) + " does not exist ") 1239s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1239s except Exception as e: 1239s self.log("No response received from 'get_site_v1' API for site: {0}".format(parent_name + str(e)), "ERROR") 1239s 1239s > response = self.dnac._exec( 1239s family="sites", 1239s function='create_site', 1239s op_modifies=True, 1239s params=site_params, 1239s ) 1239s 1239s plugins/modules/site_workflow_manager.py:1868: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s /usr/lib/python3.13/unittest/mock.py:1169: in __call__ 1239s return self._mock_call(*args, **kwargs) 1239s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call 1239s return self._execute_mock_call(*args, **kwargs) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s self = , args = () 1239s kwargs = {'family': 'sites', 'function': 'create_site', 'op_modifies': True, 'params': {'site': {'area': {'name': 'japan8888', 'parentName': 'Global'}}, 'type': 'area'}} 1239s effect = , result = Exception() 1239s 1239s def _execute_mock_call(self, /, *args, **kwargs): 1239s # separate from _increment_mock_call so that awaited functions are 1239s # executed separately from their call, also AsyncMock overrides this method 1239s 1239s effect = self.side_effect 1239s if effect is not None: 1239s if _is_exception(effect): 1239s raise effect 1239s elif not _callable(effect): 1239s result = next(effect) 1239s if _is_exception(result): 1239s > raise result 1239s E Exception 1239s 1239s /usr/lib/python3.13/unittest/mock.py:1232: Exception 1239s 1239s During handling of the above exception, another exception occurred: 1239s 1239s self = 1239s 1239s def test_Site_workflow_manager_verify_diff_merged_site(self): 1239s """ 1239s Test case for verify parameters in site workflow manager after applying merged state. 1239s 1239s This test case checks the behavior of the site workflow manager after applying merged state Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_version="2.3.5.3", 1239s dnac_log=True, 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_config_site 1239s ) 1239s ) 1239s > result = self.execute_module(changed=False, failed=False) 1239s 1239s tests/unit/modules/dnac/test_site_workflow_manager.py:442: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/site_workflow_manager.py:2539: in main 1239s ccc_site.get_diff_state_apply[state](config).check_return_status() 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def get_diff_merged(self, config): 1239s """ 1239s Update/Create site information in Cisco Catalyst Center with fields 1239s provided in the playbook. 1239s Parameters: 1239s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1239s config (dict): A dictionary containing configuration information. 1239s Returns: 1239s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1239s Description: 1239s This method determines whether to update or create a site in Cisco Catalyst Center based on the provided 1239s configuration information. If the specified site exists, the method checks if it requires an update 1239s by calling the 'site_requires_update' method. If an update is required, it calls the 'update_site' 1239s function from the 'sites' family of the Cisco Catalyst Center API. If the site does not require an update, 1239s the method exits, indicating that the site is up to date. 1239s """ 1239s site_updated = False 1239s site_created = False 1239s 1239s if self.compare_dnac_versions(self.get_ccc_version(), "2.3.7.6") >= 0: 1239s self.handle_config['area'] = [] 1239s self.handle_config['building'] = [] 1239s self.handle_config['floor'] = [] 1239s try: 1239s create_site = copy.deepcopy(self.handle_config["create_site"]) 1239s if len(create_site) > 0: 1239s self.log("Starting site creation process.", "DEBUG") 1239s for each_config in create_site: 1239s payload_data = self.change_payload_data(each_config.get("want")) 1239s if payload_data: 1239s payload_data[self.keymap["parent_name_hierarchy"]] =\ 1239s payload_data.get(self.keymap["parent_name"]) 1239s del payload_data[self.keymap["parent_name"]] 1239s self.log("Payload data prepared for site creation: {}".format(payload_data), "DEBUG") 1239s 1239s if payload_data.get("type") == "area": 1239s self.handle_config["area"].append(payload_data) 1239s self.log("Added to area: {}".format(payload_data), "DEBUG") 1239s elif payload_data.get("type") == "building": 1239s self.handle_config["building"].append(payload_data) 1239s self.log("Added to building: {}".format(payload_data), "DEBUG") 1239s elif payload_data.get("type") == "floor": 1239s self.handle_config["floor"].append(payload_data) 1239s self.log("Added to floor: {}".format(payload_data), "DEBUG") 1239s for each_type in ("area", "building", "floor"): 1239s if self.handle_config[each_type]: 1239s self.log("Processing configurations for '{0}'.".format(each_type), "DEBUG") 1239s for create_config in self.handle_config[each_type]: 1239s self.log("Handling configuration: {0}".format(create_config), "DEBUG") 1239s parent_name = create_config.get(self.keymap.get("parent_name_hierarchy")) 1239s if not parent_name: 1239s self.msg = "No parent name found in configuration for '{0}'.".format(each_type) 1239s self.log(self.msg, "DEBUG") 1239s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1239s self.log("Checking if parent site '{0}' exists in the hierarchy.".format(parent_name), "DEBUG") 1239s 1239s site_exists = self.is_site_exist(parent_name) 1239s if not site_exists: 1239s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name) 1239s self.log(self.msg, "DEBUG") 1239s self.site_absent_list.append(str(parent_name) + " does not exist ") 1239s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1239s 1239s response = self.creating_bulk_site(self.handle_config[each_type]) 1239s self.log("Response from creating_bulk_site for {}: {}".format(each_type, response), "DEBUG") 1239s 1239s if response and isinstance(response, dict) and "response" in response: 1239s task_id = response["response"].get("taskId") 1239s if task_id: 1239s self.log("Task Id for the 'site_creation' task is {}".format(task_id), "INFO") 1239s 1239s task_name = "create_sites" 1239s success_msg = "Site created successfully." 1239s self.get_task_status_from_tasks_by_id(task_id, task_name, success_msg) 1239s 1239s for site in self.handle_config[each_type]: 1239s if "name" in site: 1239s self.created_site_list.append(str(each_type) + ": " + str(site.get("name"))) 1239s 1239s self.log("Site '{}' created successfully".format(self.created_site_list), "INFO") 1239s 1239s for site in self.handle_config[each_type]: 1239s if site.get("type") == "floor": 1239s floor_name = site.get("name") 1239s self.log("Floor '{}' has been created successfully.".format(floor_name), "INFO") 1239s 1239s upload_path = site.get("upload_floor_image_path", None) 1239s if upload_path: 1239s self.log("Upload path found for floor '{}'. Starting upload floor map from '{}.'". 1239s format(floor_name, upload_path), "INFO") 1239s 1239s map_details, map_status, success_message = self.upload_floor_image(site) 1239s if map_details: 1239s self.log("Floor map for '{}' uploaded successfully: {}". 1239s format(floor_name, success_message), "INFO") 1239s else: 1239s self.log("Floor map upload failed for '{}'. Please check the upload path and retry.". 1239s format(floor_name), "ERROR") 1239s else: 1239s self.log("No upload path provided for '{}'. Floor created without floor map.". 1239s format(floor_name), "INFO") 1239s else: 1239s self.log("No valid task ID received from the 'creating_bulk_site' response.", "WARNING") 1239s return None 1239s else: 1239s self.log("No response received from the 'creating_bulk_site' API call.", "WARNING") 1239s return None 1239s 1239s task_detail_list = [] 1239s for each_config in self.have: 1239s site_name_hierarchy = each_config.get("site_name_hierarchy") 1239s 1239s if each_config.get("site_exists"): 1239s self.log("Processing site: {}".format(site_name_hierarchy), "DEBUG") 1239s payload_new = self.change_payload_data(each_config.get("want")) 1239s if payload_new.get("type") == "area": 1239s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1239s self.log(self.msg, "INFO") 1239s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy) 1239s elif payload_new.get("type") in ("building", "floor"): 1239s site_params = each_config.get("site_params") 1239s site_params["site_id"] = each_config.get("site_id") 1239s site_type = site_params.get("type") 1239s 1239s if self.site_requires_update(each_config): 1239s self.log("Site requires update, starting update for type: {}".format(site_type), "DEBUG") 1239s response = (self.update_floor(site_params, payload_new) if site_type == "floor" 1239s else self.update_area(site_params) if site_type == "area" 1239s else self.update_building(site_params) if site_type == "building" 1239s else self.log("Unknown site type: {0}".format(site_type), "ERROR")) 1239s 1239s self.log("Received API response from 'update_site': {0}". 1239s format(str(response)), "DEBUG") 1239s 1239s if response and isinstance(response, dict): 1239s taskid = response["response"]["taskId"] 1239s 1239s while True: 1239s task_details = self.get_task_details(taskid) 1239s if site_type != "floor": 1239s if task_details.get("progress") == "Group is updated successfully": 1239s task_detail_list.append(task_details) 1239s self.updated_site_list.append(site_type + ": " + site_name_hierarchy) 1239s self.log("Site '{}' updated successfully.".format(site_name_hierarchy), "INFO") 1239s break 1239s else: 1239s if task_details.get("progress") == "Service domain is updated successfully.": 1239s task_detail_list.append(task_details) 1239s self.updated_site_list.append(site_type + ": " + site_name_hierarchy) 1239s break 1239s 1239s if task_details.get("bapiError"): 1239s msg = task_details.get("bapiError") 1239s self.set_operation_result("failed", False, msg, "ERROR", 1239s task_details).check_return_status() 1239s break 1239s else: 1239s self.msg = "Unable to execute the update the site: {0} ".format(site_name_hierarchy) 1239s self.log(self.msg, "INFO") 1239s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1239s else: 1239s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1239s self.log(self.msg, "INFO") 1239s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy) 1239s except Exception as e: 1239s self.log("Yaml is not available for bulk: {}".format(str(e)), "ERROR") 1239s 1239s return self 1239s 1239s else: 1239s site_params = self.want.get("site_params") 1239s site_type = site_params.get("type") 1239s if self.have.get("site_exists"): 1239s site_name_hierarchy = self.want.get("site_name_hierarchy") 1239s if not self.site_requires_update(): 1239s self.update_not_needed_sites.append(site_type + ": " + site_name_hierarchy) 1239s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1239s self.log(self.msg, "INFO") 1239s else: 1239s try: 1239s site_params["site_id"] = self.have.get("site_id") 1239s self.log("Site parameters prepared for update: {}".format(site_params)) 1239s self.log("Site update process started.", "INFO") 1239s 1239s if site_params['site'].get('building'): 1239s building_details = {} 1239s for key, value in site_params['site']['building'].items(): 1239s if value is not None: 1239s building_details[key] = value 1239s 1239s site_params['site']['building'] = building_details 1239s 1239s response = self.dnac._exec( 1239s family="sites", 1239s function='update_site', 1239s op_modifies=True, 1239s params=site_params, 1239s ) 1239s self.log("Received API response from 'update_site': {0}".format(str(response)), "DEBUG") 1239s 1239s if response and isinstance(response, dict): 1239s execution_id = response.get("executionId") 1239s while True: 1239s execution_details = self.get_execution_details(execution_id) 1239s if execution_details.get("status") == "SUCCESS": 1239s self.result['changed'] = True 1239s site_updated = True 1239s self.updated_site_list.append(str(site_type) + ": " + str(site_name_hierarchy)) 1239s self.log("Site - {0} Updated Successfully".format(site_name_hierarchy), "INFO") 1239s break 1239s elif execution_details.get("bapiError"): 1239s self.msg = "Unable to Update: " + execution_details.get("bapiError") 1239s self.set_operation_result("failed", False, self.msg, "ERROR", 1239s execution_details).check_return_status() 1239s 1239s except Exception as e: 1239s self.msg = "Unexpected error occurred while update: {0}".format(str(e)) 1239s self.log(self.msg, "ERROR") 1239s self.set_operation_result("failed", False, self.msg, "ERROR", 1239s site_name_hierarchy).check_return_status() 1239s 1239s else: 1239s try: 1239s try: 1239s if site_params['site'].get('building'): 1239s building_details = {} 1239s for key, value in site_params['site']['building'].items(): 1239s if value is not None: 1239s building_details[key] = value 1239s 1239s site_params['site']['building'] = building_details 1239s 1239s except Exception as e: 1239s site_type = site_params['type'] 1239s name = site_params['site'][site_type]['name'] 1239s self.log("The site '{0}' is not categorized as a building; no need to filter 'None' values.". 1239s format(name), "INFO") 1239s 1239s site_type = site_params['type'] 1239s parent_name = site_params.get('site').get(site_type).get('parentName') 1239s try: 1239s response = self.get_site_v1(parent_name) 1239s if not response: 1239s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name) 1239s self.log(self.msg, "DEBUG") 1239s self.site_absent_list.append(str(parent_name) + " does not exist ") 1239s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1239s except Exception as e: 1239s self.log("No response received from 'get_site_v1' API for site: {0}".format(parent_name + str(e)), "ERROR") 1239s 1239s response = self.dnac._exec( 1239s family="sites", 1239s function='create_site', 1239s op_modifies=True, 1239s params=site_params, 1239s ) 1239s self.log("Received API response from 'create_site': {0}".format(str(response)), "DEBUG") 1239s 1239s if response and isinstance(response, dict): 1239s executionid = response.get("executionId") 1239s while True: 1239s execution_details = self.get_execution_details(executionid) 1239s if execution_details.get("status") == "SUCCESS": 1239s self.result['changed'] = True 1239s break 1239s elif execution_details.get("bapiError"): 1239s self.msg = "Unable to Create: " + str(execution_details.get("bapiError")) 1239s self.set_operation_result("failed", False, self.msg, "ERROR", 1239s execution_details).check_return_status() 1239s break 1239s 1239s site_exists, current_site = self.site_exists() 1239s if site_exists: 1239s site_name_hierarchy = self.want.get("site_name_hierarchy") 1239s self.created_site_list.append(str(site_type) + ": " + str(site_name_hierarchy)) 1239s self.log("Site '{0}' created successfully".format(site_name_hierarchy), "INFO") 1239s return self 1239s 1239s except Exception as e: 1239s self.msg = "Unexpected error occurred while create: {0}".format(str(e)) 1239s self.log(self.msg, "ERROR") 1239s self.set_operation_result("failed", False, self.msg, "ERROR", 1239s > site_name_hierarchy).check_return_status() 1239s E UnboundLocalError: cannot access local variable 'site_name_hierarchy' where it is not associated with a value 1239s 1239s plugins/modules/site_workflow_manager.py:1900: UnboundLocalError 1239s ------------------------------ Captured log call ------------------------------- 1239s ERROR logger:dnac.py:294 Site: get_site_v1: 619: An error occurred in 'get_sites': 1239s 1239s ERROR logger:dnac.py:294 Site: site_exists: 676: No response received from 'get_site' API for site: Global/japan8888 1239s 1239s ERROR logger:dnac.py:294 Site: get_diff_merged: 1898: Unexpected error occurred while create: 1239s _ TestswimWorkflowManager.test_swim_workflow_playbook_image_distribution_successfull _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_swim_workflow_playbook_image_distribution_successfull(self): 1239s """ 1239s Test case for SWIM workflow manager image distribution. 1239s This test case verifies the successful distribution of an image to all specified devices in the Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_version='2.3.5.3', 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_image_distribution_successfull 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_swim_workflow_manager.py:395: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/swim_workflow_manager.py:2415: in main 1239s ccc_swims.get_diff_state_apply[state](config).check_return_status() 1239s plugins/modules/swim_workflow_manager.py:2110: in get_diff_merged 1239s self.get_diff_distribution().check_return_status() 1239s plugins/modules/swim_workflow_manager.py:1828: in get_diff_distribution 1239s device_uuid_list = self.get_device_uuids(site_name, device_family, device_role, device_series_name) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def get_device_uuids(self, site_name, device_family, device_role, device_series_name=None): 1239s """ 1239s Retrieve a list of device UUIDs based on the specified criteria. 1239s Parameters: 1239s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1239s site_name (str): The name of the site for which device UUIDs are requested. 1239s device_family (str): The family/type of devices to filter on. 1239s device_role (str): The role of devices to filter on. If None, 'ALL' roles are considered. 1239s device_series_name(str): Specifies the name of the device series. 1239s Returns: 1239s list: A list of device UUIDs that match the specified criteria. 1239s Description: 1239s The function checks the reachability status and role of devices in the given site. 1239s Only devices with "Reachable" status are considered, and filtering is based on the specified 1239s device family and role (if provided). 1239s """ 1239s 1239s device_uuid_list = [] 1239s device_id_list, site_response_list = [], [] 1239s if not site_name: 1239s site_name = "Global" 1239s self.log("Site name not specified; defaulting to 'Global' to fetch all devices under this category", "INFO") 1239s 1239s (site_exists, site_id) = self.site_exists(site_name) 1239s if not site_exists: 1239s self.log("""Site '{0}' is not found in the Cisco Catalyst Center, hence unable to fetch associated 1239s devices.""".format(site_name), "INFO") 1239s return device_uuid_list 1239s 1239s if device_series_name: 1239s if device_series_name.startswith(".*") and device_series_name.endswith(".*"): 1239s self.log("Device series name '{0}' is already in the regex format".format(device_series_name), "INFO") 1239s else: 1239s device_series_name = ".*" + device_series_name + ".*" 1239s 1239s if self.dnac_version <= self.version_2_3_5_3: 1239s site_params = { 1239s "site_id": site_id, 1239s "device_family": device_family 1239s } 1239s 1239s try: 1239s response = self.dnac._exec( 1239s family="sites", 1239s function='get_membership', 1239s op_modifies=True, 1239s params=site_params, 1239s ) 1239s 1239s except Exception as e: 1239s self.log("Unable to fetch the device(s) associated to the site '{0}' due to '{1}'".format(site_name, str(e)), "WARNING") 1239s return device_uuid_list 1239s 1239s self.log("Received API response from 'get_membership': {0}".format(str(response)), "DEBUG") 1239s response = response.get("device") 1239s 1239s > for item in response: 1239s E TypeError: 'NoneType' object is not iterable 1239s 1239s plugins/modules/swim_workflow_manager.py:935: TypeError 1239s ------------------------------ Captured log call ------------------------------- 1239s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_create_default_role _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_create_default_role(self): 1239s """ 1239s Test case for user role workflow manager when update is not needed for a role . 1239s 1239s This test case checks the behavior of the role workflow when update is not needed for a role in the specified Cisco Calyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_for_creating_default_role 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:787: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/user_role_workflow_manager.py:3458: in main 1239s ccc_user_role.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_create_role __ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_create_role(self): 1239s """ 1239s Test case for user role workflow manager when creating a role. 1239s 1239s This test case checks the behavior of the role workflow when creating a new role in the specified Cisco Calyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_role 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:487: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/user_role_workflow_manager.py:3458: in main 1239s ccc_user_role.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s _ TestswimWorkflowManager.test_swim_workflow_playbook_image_distribution_successfull_v2_3_7_6 _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s def site_exists(self, site_name): 1239s """ 1239s Parameters: 1239s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1239s Returns: 1239s tuple: A tuple containing two values: 1239s - site_exists (bool): A boolean indicating whether the site exists (True) or not (False). 1239s - site_id (str or None): The ID of the site if it exists, or None if the site is not found. 1239s Description: 1239s This method checks the existence of a site in the Catalyst Center. If the site is found,it sets 'site_exists' to True, 1239s retrieves the site's ID, and returns both values in a tuple. If the site does not exist, 'site_exists' is set 1239s to False, and 'site_id' is None. If an exception occurs during the site lookup, an exception is raised. 1239s """ 1239s 1239s site_exists = False 1239s site_id = None 1239s response = None 1239s 1239s try: 1239s response = self.get_site(site_name) 1239s if response is None: 1239s > raise ValueError 1239s E ValueError 1239s 1239s plugins/modules/swim_workflow_manager.py:662: ValueError 1239s 1239s During handling of the above exception, another exception occurred: 1239s 1239s self = 1239s 1239s def test_swim_workflow_playbook_image_distribution_successfull_v2_3_7_6(self): 1239s """ 1239s Test case for SWIM workflow manager image distribution with DNAC version 2.3.7.6. 1239s 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. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_version='2.3.7.6', 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config_verify=True, 1239s config=self.playbook_image_distribution_successfull_v2_3_7_6 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_swim_workflow_manager.py:418: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/swim_workflow_manager.py:2417: in main 1239s ccc_swims.verify_diff_state_apply[state](config).check_return_status() 1239s plugins/modules/swim_workflow_manager.py:2314: in verify_diff_merged 1239s self.get_have() 1239s plugins/modules/swim_workflow_manager.py:1167: in get_have 1239s (site_exists, site_id) = self.site_exists(site_name) 1239s plugins/modules/swim_workflow_manager.py:672: in site_exists 1239s self.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s ------------------------------ Captured log call ------------------------------- 1239s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 1239s 1239s WARNING logger:dnac.py:294 Swim: get_diff_distribution: 1892: The SWIM image distribution task could not proceed because no eligible devices were found 1239s 1239s 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'. 1239s 1239s ERROR logger:dnac.py:294 Swim: site_exists: 671: An exception occurred: Site 'Global/LTTS/FLOOR1' does not exist in the Cisco Catalyst Center. 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_create_user __ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_create_user(self): 1239s """ 1239s Test case for user role workflow manager when creating a user. 1239s 1239s This test case checks the behavior of the user workflow when creating a new user in the specified Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_user 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:228: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/user_role_workflow_manager.py:3458: in main 1239s ccc_user_role.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_create_1_role _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_create_1_role(self): 1239s """ 1239s Test case for user role workflow manager when creating a role. 1239s 1239s This test case checks the behavior of the role workflow when creating a new role in the specified Cisco Calyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_1_role 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:510: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/user_role_workflow_manager.py:3458: in main 1239s ccc_user_role.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_delete_existing_role _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_delete_existing_role(self): 1239s """ 1239s Test case for user role workflow manager when deleting a role. 1239s 1239s This test case checks the behavior of the role workflow when deleting a role in the specified Cisco Calyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="deleted", 1239s config=self.playbook_config_role 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:579: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/user_role_workflow_manager.py:3458: in main 1239s ccc_user_role.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_delete_non_existing_role _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_delete_non_existing_role(self): 1239s """ 1239s Test case for user role workflow manager when deleting a non existing role. 1239s 1239s This test case checks the behavior of the role workflow when deleting a non existing role in the specified Cisco Calyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="deleted", 1239s config=self.playbook_config_role 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Please provide a valid role_name for role deletion" 1239s ) 1239s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'Please provide a valid role_name for role deletion' 1239s 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. 1239s E + Please provide a valid role_name for role deletion 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:604: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_delete_non_existing_user _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_delete_non_existing_user(self): 1239s """ 1239s Test case for user role workflow manager when deleting a non existing user. 1239s 1239s This test case checks the behavior of the user workflow when deleting a non existing user in the specified Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="deleted", 1239s config=self.playbook_config_user 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get("msg"), 1239s "Please provide a valid 'username' or 'email' for user deletion" 1239s ) 1239s E AssertionError: "The specified version '2.2.3.3' does not [315 chars]les." != "Please provide a valid 'username' or 'ema[17 chars]tion" 1239s 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. 1239s E + Please provide a valid 'username' or 'email' for user deletion 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:322: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_invalid_param_role_invalid_permission _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_invalid_param_role_invalid_permission(self): 1239s """ 1239s Test case for user workflow manager when invalid role param given. 1239s 1239s This test case checks the behavior of the user workflow when invalid role param given in the specified Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_invalid_param_role_invalid_permission 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get("msg"), 1239s "Invalid permission aaa for assurance resource overall" 1239s ) 1239s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'Invalid permission aaa for assurance resource overall' 1239s 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. 1239s E + Invalid permission aaa for assurance resource overall 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:743: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_delete_existing_user _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_delete_existing_user(self): 1239s """ 1239s Test case for user role workflow manager when deleting a user. 1239s 1239s This test case checks the behavior of the user workflow when deleting a user in the specified Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="deleted", 1239s config=self.playbook_config_delete_existing_user 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:297: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/user_role_workflow_manager.py:3458: in main 1239s ccc_user_role.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_invalid_param_role_update_invalid_permission _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_invalid_param_role_update_invalid_permission(self): 1239s """ 1239s Test case for user workflow manager when invalid role param given. 1239s 1239s This test case checks the behavior of the user workflow when invalid role param given in the specified Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_invalid_param_role_invalid_permission 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get("msg"), 1239s "Invalid permission aaa for assurance resource overall" 1239s ) 1239s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'Invalid permission aaa for assurance resource overall' 1239s 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. 1239s E + Invalid permission aaa for assurance resource overall 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:766: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_invalid_param_type_list_missing _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_invalid_param_type_list_missing(self): 1239s """ 1239s Test case for user workflow manager when invalid role param given. 1239s 1239s This test case checks the behavior of the user workflow when invalid role param given in the specified Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_invalid_param_type_list_missing 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get("msg"), 1239s "Configuration is not available in the playbook for validation or user/role details are not type list" 1239s ) 1239s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'Configuration is not available in the pl[56 chars]list' 1239s 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. 1239s E + Configuration is not available in the playbook for validation or user/role details are not type list 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:720: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_role_invalid_param_rolename_not_correct_formate _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_role_invalid_param_rolename_not_correct_formate(self): 1239s """ 1239s Test case for user workflow manager when invalid role param given. 1239s 1239s This test case checks the behavior of the user workflow when invalid role param given in the specified Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_invalid_param_rolename_not_correct_formate 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get("msg"), 1239s "Invalid parameters in playbook config: role_name: 'Test_Role_1 ' must only contain letters, numbers, underscores \ 1239s and hyphens and should not contain spaces or other special characters." 1239s ) 1239s E AssertionError: "The specified version '2.2.3.3' does not [315 chars]les." != "Invalid parameters in playbook config: ro[138 chars]ers." 1239s 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. 1239s 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. 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:696: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_role_invalid_param_not_type_list _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_role_invalid_param_not_type_list(self): 1239s """ 1239s Test case for user role workflow manager when invalid role param given. 1239s 1239s This test case checks the behavior of the role workflow when invalid role param given in the specified Cisco Calyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_invalid_param_role_not_type_list 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Invalid parameter(s) found in playbook: {'overall': 'read'} : is not a valid list" 1239s ) 1239s E AssertionError: "The specified version '2.2.3.3' does not [315 chars]les." != "Invalid parameter(s) found in playbook: {[36 chars]list" 1239s 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. 1239s E + Invalid parameter(s) found in playbook: {'overall': 'read'} : is not a valid list 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:650: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_role_invalid_param_rolename_not_present _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_role_invalid_param_rolename_not_present(self): 1239s """ 1239s Test case for user role workflow manager when invalid role param given. 1239s 1239s This test case checks the behavior of the role workflow when invalid role param given in the specified Cisco Calyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_invalid_param_rolename_not_present 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Configuration params like 'username' or 'email' or 'role_name' is not available in the playbook" 1239s ) 1239s E AssertionError: "The specified version '2.2.3.3' does not [315 chars]les." != "Configuration params like 'username' or '[50 chars]book" 1239s 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. 1239s E + Configuration params like 'username' or 'email' or 'role_name' is not available in the playbook 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:627: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_role_param_with_all_permision_deny _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_role_param_with_all_permision_deny(self): 1239s """ 1239s Test case for user role workflow manager when invalid role param given. 1239s 1239s This test case checks the behavior of the role workflow when invalid role param given in the specified Cisco Calyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_invalid_param_with_all_permision_deny 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "An error occurred while creating the role without access-level parameters and permissions" 1239s ) 1239s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'An error occurred while creating the rol[45 chars]ions' 1239s 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. 1239s E + An error occurred while creating the role without access-level parameters and permissions 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:673: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_role_update_needed _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_role_update_needed(self): 1239s """ 1239s Test case for user role workflow manager when update for a role is needed. 1239s 1239s This test case checks the behavior of the role workflow when updating a existing role in the specified Cisco Calyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_role 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:533: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/user_role_workflow_manager.py:3458: in main 1239s ccc_user_role.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_role_update_not_needed _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_role_update_not_needed(self): 1239s """ 1239s Test case for user role workflow manager when update is not needed for a role . 1239s 1239s This test case checks the behavior of the role workflow when update is not needed for a role in the specified Cisco Calyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_role 1239s ) 1239s ) 1239s > result = self.execute_module(changed=False, failed=False) 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:556: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/user_role_workflow_manager.py:3458: in main 1239s ccc_user_role.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_invalid_mandatory_field_not_present_param _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_user_invalid_mandatory_field_not_present_param(self): 1239s """ 1239s Test case for user workflow manager when invalid user param given. 1239s 1239s This test case checks the behavior of the user workflow when invalid user param given in the specified Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_invalid_param_mandatory_field_not_present 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get("msg"), 1239s "Mandatory field not present: An error occurred while creating the user" 1239s ) 1239s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'Mandatory field not present: An error oc[26 chars]user' 1239s 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. 1239s E + Mandatory field not present: An error occurred while creating the user 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:345: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_invalid_param_not_correct_formate _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_user_invalid_param_not_correct_formate(self): 1239s """ 1239s Test case for user workflow manager when invalid user param given. 1239s 1239s This test case checks the behavior of the user workflow when invalid user param given in the specified Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_invalid_param_username_not_correct_formate 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get("msg"), 1239s "Invalid parameters in playbook config: first_name: 'ajith ' must only contain letters, \ 1239s numbers, underscores and hyphens and should not contain spaces or other \ 1239s special characters., last_name: 'andrew ' must only contain letters, numbers, underscores \ 1239s and hyphens and should not contain spaces or other special characters., email: Invalid email format for 'email': ajith.andrewexample.com, \ 1239s password: 'Password' does not meet complexity requirements for password: \ 1239s Ajith123, username: 'ajithandrewj ' must only contain letters, numbers, underscores \ 1239s and hyphens and should not contain spaces or other special characters." 1239s ) 1239s E AssertionError: "The specified version '2.2.3.3' does not [315 chars]les." != "Invalid parameters in playbook config: fi[569 chars]ers." 1239s E Diff is 981 characters long. Set self.maxDiff to None to see it. 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:391: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_invalid_param_not_type_list _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_user_invalid_param_not_type_list(self): 1239s """ 1239s Test case for user role workflow manager when invalid user param given. 1239s 1239s This test case checks the behavior of the role workflow when invalid user param given in the specified Cisco Calyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_invalid_param_user_rolelist_not_type_list 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "Invalid parameter(s) found in playbook: Super-Admin-Role : is not a valid list" 1239s ) 1239s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'Invalid parameter(s) found in playbook: [34 chars]list' 1239s 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. 1239s E + Invalid parameter(s) found in playbook: Super-Admin-Role : is not a valid list 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:420: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_invalid_param_rolelist_not_found _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_user_invalid_param_rolelist_not_found(self): 1239s """ 1239s Test case for user role workflow manager when invalid user param given. 1239s 1239s This test case checks the behavior of the role workflow when invalid user param given in the specified Cisco Calyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_user_invalid_param_rolelist_not_found 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "The role name in the user details role_list is not present in the Cisco Catalyst Center, Please provide a valid role name" 1239s ) 1239s 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' 1239s 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. 1239s E + The role name in the user details role_list is not present in the Cisco Catalyst Center, Please provide a valid role name 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:443: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_invalid_param_update_rolelist_not_found _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_user_invalid_param_update_rolelist_not_found(self): 1239s """ 1239s Test case for user role workflow manager when invalid user param given. 1239s 1239s This test case checks the behavior of the role workflow when invalid user param given in the specified Cisco Calyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_user_invalid_param_rolelist_not_found 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get('msg'), 1239s "The role name in the user details role_list is not present in the Cisco Catalyst Center, Please provide a valid role name" 1239s ) 1239s 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' 1239s 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. 1239s E + The role name in the user details role_list is not present in the Cisco Catalyst Center, Please provide a valid role name 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:466: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_invalid_username_email_not_present_param _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_user_invalid_username_email_not_present_param(self): 1239s """ 1239s Test case for user workflow manager when invalid user param given. 1239s 1239s This test case checks the behavior of the user workflow when invalid user param given in the specified Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_invalid_param_username_email_not_present 1239s ) 1239s ) 1239s result = self.execute_module(changed=False, failed=True) 1239s print(result) 1239s > self.assertEqual( 1239s result.get("msg"), 1239s "Configuration params like 'username' or 'email' or 'role_name' is not available in the playbook" 1239s ) 1239s E AssertionError: "The specified version '2.2.3.3' does not [315 chars]les." != "Configuration params like 'username' or '[50 chars]book" 1239s 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. 1239s E + Configuration params like 'username' or 'email' or 'role_name' is not available in the playbook 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:368: AssertionError 1239s ----------------------------- Captured stdout call ----------------------------- 1239s {'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} 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_update_needed _ 1239s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_user_update_needed(self): 1239s """ 1239s Test case for user role workflow manager when updating a user. 1239s 1239s This test case checks the behavior of the user workflow when updating a user in the specified Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_user 1239s ) 1239s ) 1239s > result = self.execute_module(changed=True, failed=False) 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:251: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/user_role_workflow_manager.py:3458: in main 1239s ccc_user_role.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_update_not_needed _ 1239s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1239s 1239s self = 1239s 1239s def test_user_role_workflow_manager_user_update_not_needed(self): 1239s """ 1239s Test case for user role workflow manager when user update not needed. 1239s 1239s This test case checks the behavior of the user workflow when user update not needed in the specified Cisco Catalyst Center. 1239s """ 1239s set_module_args( 1239s dict( 1239s dnac_host="1.1.1.1", 1239s dnac_username="dummy", 1239s dnac_password="dummy", 1239s dnac_log=True, 1239s state="merged", 1239s config=self.playbook_config_user 1239s ) 1239s ) 1239s > result = self.execute_module(changed=False, failed=False) 1239s 1239s tests/unit/modules/dnac/test_user_role_workflow_manager.py:274: 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1239s result = self.changed(changed) 1239s tests/unit/modules/dnac/dnac_module.py:133: in changed 1239s self.module.main() 1239s plugins/modules/user_role_workflow_manager.py:3458: in main 1239s ccc_user_role.check_return_status() 1239s plugins/module_utils/dnac.py:307: in check_return_status 1239s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1239s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1239s 1239s def fail_json(*args, **kwargs): 1239s kwargs["failed"] = True 1239s > raise AnsibleFailJson(kwargs) 1239s 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} 1239s 1239s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1239s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/dnac/tests/output/junit/python3.13-controller-units.xml - 1239s =========================== short test summary info ============================ 1239s ERROR tests/unit/modules/dnac/test_discovery_intent.py::TestDnacDiscoveryIntent 1239s ERROR tests/unit/modules/dnac/test_discovery_intent.py::TestDnacDiscoveryIntent 1239s ERROR tests/unit/modules/dnac/test_pnp_intent.py::TestDnacPnPIntent - TypeErr... 1239s ERROR tests/unit/modules/dnac/test_pnp_intent.py::TestDnacPnPIntent - TypeErr... 1239s ERROR tests/unit/modules/dnac/test_site_intent.py::TestDnacSiteIntent - TypeE... 1239s ERROR tests/unit/modules/dnac/test_site_intent.py::TestDnacSiteIntent - TypeE... 1239s ERROR tests/unit/modules/dnac/test_swim_intent.py::TestDnacSwimIntent - TypeE... 1239s ERROR tests/unit/modules/dnac/test_swim_intent.py::TestDnacSwimIntent - TypeE... 1239s ERROR tests/unit/modules/dnac/test_template_intent.py::TestDnacTemplateIntent 1239s ERROR tests/unit/modules/dnac/test_template_intent.py::TestDnacTemplateIntent 1239s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_null_sync_status 1239s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_accesspoint_workflow_manager_negative_config_input 1239s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_update_verify 1239s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_add_existing_devices 1239s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_accesspoint_workflow_manager_provision_device 1239s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_add_udf 1239s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_del_provisioned_device_2353 1239s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_delete_a_device 1239s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_accesspoint_workflow_manager_provision_old_version 1239s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_delete_device_udf 1239s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_delete_provisioned_device 1239s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_prov_device_2353 1239s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_accesspoint_workflow_manager_some_error_data_update_accesspoint 1239s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_provision_device 1239s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_provision_failed_for_site 1239s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_accesspoint_workflow_manager_task_error_update_accesspoint 1239s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_invalid_get_site_device 1239s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_update_mgmt_ip 1239s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_invalid_site_exists 1239s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_categories_iplist 1239s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_invalid_wlc_device 1239s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist 1239s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_already_sync_cred 1239s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist_failure_1 1239s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist_failure_2 1239s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist_failure_3 1239s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_apply_sync 1239s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist_failure_4 1239s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist_failure_5 1239s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist_site 1239s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site 1239s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_assign_cred_1 1239s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site_failure_1 1239s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_assign_cred_2 1239s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site_failure_2 1239s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site_failure_3 1239s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site_failure_4 1239s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_creation 1239s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site_failure_5 1239s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site_failure_6 1239s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_deletion 1239s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_invalid_site 1239s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_invalid_site_response 1239s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_scale_run_compliance 1239s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_invalid_site_response_2 1239s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_sync_device_config_iplist 1239s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_update_timezone 1239s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_sync_device_config_iplist_failure_1 1239s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_sync_device_config_iplist_failure_2 1239s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_mandatory_aaa_param 1239s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_network_not_need_update 1239s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_null_network_params 1239s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_sync_device_config_iplist_site 1239s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_sync_device_config_iplist_site_nr 1239s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_update 1239s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_sync_device_config_site 1239s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_global_pool_Updation_not_req 1239s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_global_pool_creation 1239s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_global_pool_deletion 1239s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_aaa_get 1239s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_banner_get 1239s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_not_verified 1239s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_dhcp_gett 1239s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_dns_get 1239s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_reserve_pool_creation 1239s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_ntp_get 1239s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_reserve_pool_deletion 1239s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_site_not_exist 1239s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_telemetry_get 1239s FAILED tests/unit/modules/dnac/test_pnp_workflow_manager.py::TestDnacPnpWorkflow::test_pnp_workflow_manager_claim_switch 1239s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_timezone_get 1239s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_update_aaa 1239s FAILED tests/unit/modules/dnac/test_provision_workflow_manager.py::TestDnacProvisionWorkflow::test_provision_workflow_manager_playbook_assign_wired_device_to_site 1239s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_update_banner 1239s FAILED tests/unit/modules/dnac/test_provision_workflow_manager.py::TestDnacProvisionWorkflow::test_provision_workflow_manager_playbook_del_provision_device 1239s FAILED tests/unit/modules/dnac/test_provision_workflow_manager.py::TestDnacProvisionWorkflow::test_provision_workflow_manager_playbook_force_provision_device 1239s FAILED tests/unit/modules/dnac/test_provision_workflow_manager.py::TestDnacProvisionWorkflow::test_provision_workflow_manager_playbook_provision_device 1239s FAILED tests/unit/modules/dnac/test_provision_workflow_manager.py::TestDnacProvisionWorkflow::test_provision_workflow_manager_playbook_wireless_provision 1239s FAILED tests/unit/modules/dnac/test_rma_workflow_manager.py::TestDnacRmaIntent::test_rma_workflow_manager_deploy_workflow_failure_unmark_failure 1239s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_update_dns 1239s FAILED tests/unit/modules/dnac/test_rma_workflow_manager.py::TestDnacRmaIntent::test_rma_workflow_manager_deploy_workflow_failure_unmark_success 1239s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_update_ntp 1239s FAILED tests/unit/modules/dnac/test_rma_workflow_manager.py::TestDnacRmaIntent::test_rma_workflow_manager_deploy_workflow_success 1239s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_update_telemetry 1239s FAILED tests/unit/modules/dnac/test_rma_workflow_manager.py::TestDnacRmaIntent::test_rma_workflow_manager_mark_device_failure 1239s FAILED tests/unit/modules/dnac/test_rma_workflow_manager.py::TestDnacRmaIntent::test_rma_workflow_manager_mark_device_for_replacement_exception 1239s FAILED tests/unit/modules/dnac/test_rma_workflow_manager.py::TestDnacRmaIntent::test_rma_workflow_manager_replacement_device_not_found 1239s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_delete_a_new_site 1239s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_create_bulk_site 1239s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_create_site 1239s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_delete_a_site 1239s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_create_site_bulk_invalid 1239s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_activate_image 1239s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_invalid_delete_config 1239s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_image_distribution_failed 1239s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_import_cco_image 1239s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_invalid_delete_site 1239s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_import_image_already_exist 1239s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_update_a_site 1239s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_site_not_exist 1239s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_update_not_needed_site 1239s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_swim_image_golden_already_tagged 1239s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_update_site 1239s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_swim_image_golden_tag 1239s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_upload_floor_map 1239s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_untag_image_as_golden_and_load_on_device 1239s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_verify_diff_merged_site 1239s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_playbook_image_distribution_successfull 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_create_default_role 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_create_role 1239s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_playbook_image_distribution_successfull_v2_3_7_6 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_create_user 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_create_1_role 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_delete_existing_role 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_delete_non_existing_role 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_delete_non_existing_user 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_invalid_param_role_invalid_permission 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_delete_existing_user 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_invalid_param_role_update_invalid_permission 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_invalid_param_type_list_missing 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_role_invalid_param_rolename_not_correct_formate 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_role_invalid_param_not_type_list 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_role_invalid_param_rolename_not_present 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_role_param_with_all_permision_deny 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_role_update_needed 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_role_update_not_needed 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_invalid_mandatory_field_not_present_param 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_invalid_param_not_correct_formate 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_invalid_param_not_type_list 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_invalid_param_rolelist_not_found 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_invalid_param_update_rolelist_not_found 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_invalid_username_email_not_present_param 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_update_needed 1239s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_update_not_needed 1239s ================== 134 failed, 33 passed, 10 errors in 17.59s ================== 1239s ## return code is 1 1239s 1239s 1239s 1239s ############################################################ 1239s ############################################################ 1239s #### Running FLAKY tests in ansible_collections/community/dns 1239s ############################################################ 1239s ############################################################ 1239s Unit test modules with Python 3.13 1241s ============================= test session starts ============================== 1241s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1241s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/dns 1241s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1241s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 1241s created: 2/2 workers 1241s 2 workers [0 items] 1241s 1241s 1241s ==================================== ERRORS ==================================== 1241s ____ ERROR collecting tests/unit/plugins/modules/test_hetzner_dns_record.py ____ 1241s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hetzner_dns_record.py'. 1241s Hint: make sure your test modules/packages have valid Python names. 1241s Traceback: 1241s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1241s return _bootstrap._gcd_import(name[level:], package, level) 1241s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1241s assertion_rewriting_hook.exec_module(module) 1241s tests/unit/plugins/modules/test_hetzner_dns_record.py:9: in 1241s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1241s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1241s _ ERROR collecting tests/unit/plugins/modules/test_hetzner_dns_record_info.py __ 1241s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hetzner_dns_record_info.py'. 1241s Hint: make sure your test modules/packages have valid Python names. 1241s Traceback: 1241s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1241s return _bootstrap._gcd_import(name[level:], package, level) 1241s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1241s assertion_rewriting_hook.exec_module(module) 1241s tests/unit/plugins/modules/test_hetzner_dns_record_info.py:9: in 1241s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import patch 1241s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1241s __ ERROR collecting tests/unit/plugins/modules/test_hetzner_dns_record_set.py __ 1241s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hetzner_dns_record_set.py'. 1241s Hint: make sure your test modules/packages have valid Python names. 1241s Traceback: 1241s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1241s return _bootstrap._gcd_import(name[level:], package, level) 1241s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1241s assertion_rewriting_hook.exec_module(module) 1241s tests/unit/plugins/modules/test_hetzner_dns_record_set.py:9: in 1241s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1241s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1241s _ ERROR collecting tests/unit/plugins/modules/test_hetzner_dns_record_set_info.py _ 1241s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hetzner_dns_record_set_info.py'. 1241s Hint: make sure your test modules/packages have valid Python names. 1241s Traceback: 1241s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1241s return _bootstrap._gcd_import(name[level:], package, level) 1241s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1241s assertion_rewriting_hook.exec_module(module) 1241s tests/unit/plugins/modules/test_hetzner_dns_record_set_info.py:9: in 1241s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import patch 1241s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1241s _ ERROR collecting tests/unit/plugins/modules/test_hetzner_dns_record_sets.py __ 1241s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hetzner_dns_record_sets.py'. 1241s Hint: make sure your test modules/packages have valid Python names. 1241s Traceback: 1241s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1241s return _bootstrap._gcd_import(name[level:], package, level) 1241s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1241s assertion_rewriting_hook.exec_module(module) 1241s tests/unit/plugins/modules/test_hetzner_dns_record_sets.py:9: in 1241s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1241s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1241s __ ERROR collecting tests/unit/plugins/modules/test_hetzner_dns_zone_info.py ___ 1241s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hetzner_dns_zone_info.py'. 1241s Hint: make sure your test modules/packages have valid Python names. 1241s Traceback: 1241s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1241s return _bootstrap._gcd_import(name[level:], package, level) 1241s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1241s assertion_rewriting_hook.exec_module(module) 1241s tests/unit/plugins/modules/test_hetzner_dns_zone_info.py:9: in 1241s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1241s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1241s ___ ERROR collecting tests/unit/plugins/modules/test_hosttech_dns_record.py ____ 1241s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hosttech_dns_record.py'. 1241s Hint: make sure your test modules/packages have valid Python names. 1241s Traceback: 1241s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1241s return _bootstrap._gcd_import(name[level:], package, level) 1241s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1241s assertion_rewriting_hook.exec_module(module) 1241s tests/unit/plugins/modules/test_hosttech_dns_record.py:11: in 1241s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1241s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1241s _ ERROR collecting tests/unit/plugins/modules/test_hosttech_dns_record_info.py _ 1241s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hosttech_dns_record_info.py'. 1241s Hint: make sure your test modules/packages have valid Python names. 1241s Traceback: 1241s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1241s return _bootstrap._gcd_import(name[level:], package, level) 1241s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1241s assertion_rewriting_hook.exec_module(module) 1241s tests/unit/plugins/modules/test_hosttech_dns_record_info.py:11: in 1241s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import patch 1241s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1241s _ ERROR collecting tests/unit/plugins/modules/test_hosttech_dns_record_set.py __ 1241s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hosttech_dns_record_set.py'. 1241s Hint: make sure your test modules/packages have valid Python names. 1241s Traceback: 1241s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1241s return _bootstrap._gcd_import(name[level:], package, level) 1241s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1241s assertion_rewriting_hook.exec_module(module) 1241s tests/unit/plugins/modules/test_hosttech_dns_record_set.py:11: in 1241s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1241s 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.HDQhnz/build.1ev/src/ansible_collections/community/dns/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/dns --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/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. 1241s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1241s _ ERROR collecting tests/unit/plugins/modules/test_hosttech_dns_record_set_info.py _ 1241s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hosttech_dns_record_set_info.py'. 1241s Hint: make sure your test modules/packages have valid Python names. 1241s Traceback: 1241s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1241s return _bootstrap._gcd_import(name[level:], package, level) 1241s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1241s assertion_rewriting_hook.exec_module(module) 1241s tests/unit/plugins/modules/test_hosttech_dns_record_set_info.py:11: in 1241s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import patch 1241s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1241s _ ERROR collecting tests/unit/plugins/modules/test_hosttech_dns_record_sets.py _ 1241s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hosttech_dns_record_sets.py'. 1241s Hint: make sure your test modules/packages have valid Python names. 1241s Traceback: 1241s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1241s return _bootstrap._gcd_import(name[level:], package, level) 1241s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1241s assertion_rewriting_hook.exec_module(module) 1241s tests/unit/plugins/modules/test_hosttech_dns_record_sets.py:11: in 1241s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1241s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1241s __ ERROR collecting tests/unit/plugins/modules/test_hosttech_dns_zone_info.py __ 1241s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hosttech_dns_zone_info.py'. 1241s Hint: make sure your test modules/packages have valid Python names. 1241s Traceback: 1241s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1241s return _bootstrap._gcd_import(name[level:], package, level) 1241s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1241s assertion_rewriting_hook.exec_module(module) 1241s tests/unit/plugins/modules/test_hosttech_dns_zone_info.py:11: in 1241s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1241s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1241s _____ ERROR collecting tests/unit/plugins/modules/test_nameserver_info.py ______ 1241s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_nameserver_info.py'. 1241s Hint: make sure your test modules/packages have valid Python names. 1241s Traceback: 1241s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1241s return _bootstrap._gcd_import(name[level:], package, level) 1241s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1241s assertion_rewriting_hook.exec_module(module) 1241s tests/unit/plugins/modules/test_nameserver_info.py:14: in 1241s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import MagicMock, patch 1241s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1241s __ ERROR collecting tests/unit/plugins/modules/test_nameserver_record_info.py __ 1241s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_nameserver_record_info.py'. 1241s Hint: make sure your test modules/packages have valid Python names. 1241s Traceback: 1241s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1241s return _bootstrap._gcd_import(name[level:], package, level) 1241s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1241s assertion_rewriting_hook.exec_module(module) 1241s tests/unit/plugins/modules/test_nameserver_record_info.py:14: in 1241s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import MagicMock, patch 1241s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1241s _______ ERROR collecting tests/unit/plugins/modules/test_wait_for_txt.py _______ 1241s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_wait_for_txt.py'. 1241s Hint: make sure your test modules/packages have valid Python names. 1241s Traceback: 1241s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1241s return _bootstrap._gcd_import(name[level:], package, level) 1241s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1241s assertion_rewriting_hook.exec_module(module) 1241s tests/unit/plugins/modules/test_wait_for_txt.py:14: in 1241s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import MagicMock, patch 1241s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1241s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/dns/tests/output/junit/python3.13-modules-units.xml - 1241s =========================== short test summary info ============================ 1241s ERROR tests/unit/plugins/modules/test_hetzner_dns_record.py 1241s ERROR tests/unit/plugins/modules/test_hetzner_dns_record_info.py 1241s ERROR tests/unit/plugins/modules/test_hetzner_dns_record_set.py 1241s ERROR tests/unit/plugins/modules/test_hetzner_dns_record_set_info.py 1241s ERROR tests/unit/plugins/modules/test_hetzner_dns_record_sets.py 1241s ERROR tests/unit/plugins/modules/test_hetzner_dns_zone_info.py 1241s ERROR tests/unit/plugins/modules/test_hosttech_dns_record.py 1241s ERROR tests/unit/plugins/modules/test_hosttech_dns_record_info.py 1241s ERROR tests/unit/plugins/modules/test_hosttech_dns_record_set.py 1241s ERROR tests/unit/plugins/modules/test_hosttech_dns_record_set_info.py 1241s ERROR tests/unit/plugins/modules/test_hosttech_dns_record_sets.py 1241s ERROR tests/unit/plugins/modules/test_hosttech_dns_zone_info.py 1241s ERROR tests/unit/plugins/modules/test_nameserver_info.py 1241s ERROR tests/unit/plugins/modules/test_nameserver_record_info.py 1241s ERROR tests/unit/plugins/modules/test_wait_for_txt.py 1241s ============================== 15 errors in 1.37s ============================== 1241s ## return code is 1 1241s 1241s 1241s 1241s ############################################################ 1241s ############################################################ 1241s #### Running FLAKY tests in ansible_collections/community/general 1241s ############################################################ 1241s ############################################################ 1241s Unit test modules with Python 3.13 1247s ============================= test session starts ============================== 1247s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1247s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/general 1247s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1247s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 1247s created: 2/2 workers 1247s 2 workers [1282 items] 1247s 1248s ....F.FF.FFFF..F........................................................ [ 5%] 1248s ........................................................................ [ 11%] 1249s ........................................................................ [ 16%] 1251s ...........................................................s............ [ 22%] 1253s ...............................s.......................FFFFFF........... [ 28%] 1254s ........................................................................ [ 33%] 1256s ........................................................................ [ 39%] 1257s ........................................................................ [ 44%] 1259s ........................................................................ [ 50%] 1261s ........................................................................ [ 56%] 1262s ........................................................................ [ 61%] 1264s ........................................................................ [ 67%] 1265s ...........................................s............s........sss.... [ 73%] 1267s ........................................................................ [ 78%] 1300s ........................................................................ [ 84%] 1301s ........................................................................ [ 89%] 1303s ........................................................................ [ 95%] 1329s .......................................................... [100%] 1329s ==================================== ERRORS ==================================== 1329s _______ ERROR collecting tests/unit/plugins/modules/test_jenkins_node.py _______ 1329s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/general/tests/unit/plugins/modules/test_jenkins_node.py'. 1329s Hint: make sure your test modules/packages have valid Python names. 1329s Traceback: 1329s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1329s return _bootstrap._gcd_import(name[level:], package, level) 1329s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1329s assertion_rewriting_hook.exec_module(module) 1329s tests/unit/plugins/modules/test_jenkins_node.py:8: in 1329s import jenkins 1329s E ModuleNotFoundError: No module named 'jenkins' 1329s _______ ERROR collecting tests/unit/plugins/modules/test_nomad_token.py ________ 1329s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/general/tests/unit/plugins/modules/test_nomad_token.py'. 1329s Hint: make sure your test modules/packages have valid Python names. 1329s Traceback: 1329s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1329s return _bootstrap._gcd_import(name[level:], package, level) 1329s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1329s assertion_rewriting_hook.exec_module(module) 1329s tests/unit/plugins/modules/test_nomad_token.py:11: in 1329s import nomad 1329s E ModuleNotFoundError: No module named 'nomad' 1329s =================================== FAILURES =================================== 1329s ___________________ TestGithubRepo.test_create_new_org_repo ____________________ 1329s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1329s 1329s self = 1329s 1329s @with_httmock(get_orgs_mock) 1329s @with_httmock(get_repo_notfound_mock) 1329s @with_httmock(create_new_org_repo_mock) 1329s def test_create_new_org_repo(self): 1329s > result = github_repo.run_module({ 1329s 'username': None, 1329s 'password': None, 1329s "access_token": "mytoken", 1329s "organization": "MyOrganization", 1329s "name": "myrepo", 1329s "description": "Just for fun", 1329s "private": False, 1329s "state": "present", 1329s "api_url": "https://api.github.com", 1329s "force_defaults": False, 1329s }) 1329s 1329s tests/unit/plugins/modules/test_github_repo.py:179: 1329s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1329s plugins/modules/github_repo.py:222: in run_module 1329s gh = authenticate( 1329s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1329s 1329s username = None, password = None, access_token = 'mytoken' 1329s api_url = 'https://api.github.com' 1329s 1329s def authenticate(username=None, password=None, access_token=None, api_url=None): 1329s if not api_url: 1329s return None 1329s 1329s if access_token: 1329s > return Github(base_url=api_url, login_or_token=access_token) 1329s E NameError: name 'Github' is not defined 1329s 1329s plugins/modules/github_repo.py:150: NameError 1329s ______________ TestGithubRepo.test_create_new_org_repo_incomplete ______________ 1329s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1329s 1329s self = 1329s 1329s @with_httmock(get_orgs_mock) 1329s @with_httmock(get_repo_notfound_mock) 1329s @with_httmock(create_new_org_repo_mock) 1329s def test_create_new_org_repo_incomplete(self): 1329s > result = github_repo.run_module({ 1329s 'username': None, 1329s 'password': None, 1329s "access_token": "mytoken", 1329s "organization": "MyOrganization", 1329s "name": "myrepo", 1329s "description": None, 1329s "private": None, 1329s "state": "present", 1329s "api_url": "https://api.github.com", 1329s "force_defaults": False, 1329s }) 1329s 1329s tests/unit/plugins/modules/test_github_repo.py:200: 1329s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1329s plugins/modules/github_repo.py:222: in run_module 1329s gh = authenticate( 1329s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1329s 1329s username = None, password = None, access_token = 'mytoken' 1329s api_url = 'https://api.github.com' 1329s 1329s def authenticate(username=None, password=None, access_token=None, api_url=None): 1329s if not api_url: 1329s return None 1329s 1329s if access_token: 1329s > return Github(base_url=api_url, login_or_token=access_token) 1329s E NameError: name 'Github' is not defined 1329s 1329s plugins/modules/github_repo.py:150: NameError 1329s ___________________ TestGithubRepo.test_create_new_user_repo ___________________ 1329s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1329s 1329s self = 1329s 1329s @with_httmock(get_user_mock) 1329s @with_httmock(get_repo_notfound_mock) 1329s @with_httmock(create_new_user_repo_mock) 1329s def test_create_new_user_repo(self): 1329s > result = github_repo.run_module({ 1329s 'username': None, 1329s 'password': None, 1329s "access_token": "mytoken", 1329s "organization": None, 1329s "name": "myrepo", 1329s "description": "Just for fun", 1329s "private": True, 1329s "state": "present", 1329s "api_url": "https://api.github.com", 1329s "force_defaults": False, 1329s }) 1329s 1329s tests/unit/plugins/modules/test_github_repo.py:221: 1329s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1329s plugins/modules/github_repo.py:222: in run_module 1329s gh = authenticate( 1329s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1329s 1329s username = None, password = None, access_token = 'mytoken' 1329s api_url = 'https://api.github.com' 1329s 1329s def authenticate(username=None, password=None, access_token=None, api_url=None): 1329s if not api_url: 1329s return None 1329s 1329s if access_token: 1329s > return Github(base_url=api_url, login_or_token=access_token) 1329s E NameError: name 'Github' is not defined 1329s 1329s plugins/modules/github_repo.py:150: NameError 1329s _____________________ TestGithubRepo.test_delete_org_repo ______________________ 1329s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1329s 1329s self = 1329s 1329s @with_httmock(get_orgs_mock) 1329s @with_httmock(get_repo_mock) 1329s @with_httmock(delete_repo_mock) 1329s def test_delete_org_repo(self): 1329s > result = github_repo.run_module({ 1329s 'username': None, 1329s 'password': None, 1329s "access_token": "mytoken", 1329s "organization": "MyOrganization", 1329s "name": "myrepo", 1329s "description": "Just for fun", 1329s "private": False, 1329s "state": "absent", 1329s "api_url": "https://api.github.com", 1329s "force_defaults": False, 1329s }) 1329s 1329s tests/unit/plugins/modules/test_github_repo.py:278: 1329s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1329s plugins/modules/github_repo.py:222: in run_module 1329s gh = authenticate( 1329s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1329s 1329s username = None, password = None, access_token = 'mytoken' 1329s api_url = 'https://api.github.com' 1329s 1329s def authenticate(username=None, password=None, access_token=None, api_url=None): 1329s if not api_url: 1329s return None 1329s 1329s if access_token: 1329s > return Github(base_url=api_url, login_or_token=access_token) 1329s E NameError: name 'Github' is not defined 1329s 1329s plugins/modules/github_repo.py:150: NameError 1329s _________________ TestGithubRepo.test_delete_org_repo_notfound _________________ 1329s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1329s 1329s self = 1329s 1329s @with_httmock(get_orgs_mock) 1329s @with_httmock(get_repo_notfound_mock) 1329s @with_httmock(delete_repo_notfound_mock) 1329s def test_delete_org_repo_notfound(self): 1329s > result = github_repo.run_module({ 1329s 'username': None, 1329s 'password': None, 1329s "access_token": "mytoken", 1329s "organization": "MyOrganization", 1329s "name": "myrepo", 1329s "description": "Just for fun", 1329s "private": True, 1329s "state": "absent", 1329s "api_url": "https://api.github.com", 1329s "force_defaults": False, 1329s }) 1329s 1329s tests/unit/plugins/modules/test_github_repo.py:314: 1329s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1329s plugins/modules/github_repo.py:222: in run_module 1329s gh = authenticate( 1329s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1329s 1329s username = None, password = None, access_token = 'mytoken' 1329s api_url = 'https://api.github.com' 1329s 1329s def authenticate(username=None, password=None, access_token=None, api_url=None): 1329s if not api_url: 1329s return None 1329s 1329s if access_token: 1329s > return Github(base_url=api_url, login_or_token=access_token) 1329s E NameError: name 'Github' is not defined 1329s 1329s plugins/modules/github_repo.py:150: NameError 1329s _____________________ TestGithubRepo.test_delete_user_repo _____________________ 1329s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1329s 1329s self = 1329s 1329s @with_httmock(get_user_mock) 1329s @with_httmock(get_repo_mock) 1329s @with_httmock(delete_repo_mock) 1329s def test_delete_user_repo(self): 1329s > result = github_repo.run_module({ 1329s 'username': None, 1329s 'password': None, 1329s "access_token": "mytoken", 1329s "organization": None, 1329s "name": "myrepo", 1329s "description": "Just for fun", 1329s "private": False, 1329s "state": "absent", 1329s "api_url": "https://api.github.com", 1329s "force_defaults": False, 1329s }) 1329s 1329s tests/unit/plugins/modules/test_github_repo.py:296: 1329s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1329s plugins/modules/github_repo.py:222: in run_module 1329s gh = authenticate( 1329s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1329s 1329s username = None, password = None, access_token = 'mytoken' 1329s api_url = 'https://api.github.com' 1329s 1329s def authenticate(username=None, password=None, access_token=None, api_url=None): 1329s if not api_url: 1329s return None 1329s 1329s if access_token: 1329s > return Github(base_url=api_url, login_or_token=access_token) 1329s E NameError: name 'Github' is not defined 1329s 1329s plugins/modules/github_repo.py:150: NameError 1329s __________ TestGithubRepo.test_idempotency_existing_org_private_repo ___________ 1329s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1329s 1329s self = 1329s 1329s @with_httmock(get_orgs_mock) 1329s @with_httmock(get_private_repo_mock) 1329s def test_idempotency_existing_org_private_repo(self): 1329s > result = github_repo.run_module({ 1329s 'username': None, 1329s 'password': None, 1329s "access_token": "mytoken", 1329s "organization": "MyOrganization", 1329s "name": "myrepo", 1329s "description": None, 1329s "private": None, 1329s "state": "present", 1329s "api_url": "https://api.github.com", 1329s "force_defaults": False, 1329s }) 1329s 1329s tests/unit/plugins/modules/test_github_repo.py:258: 1329s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1329s plugins/modules/github_repo.py:222: in run_module 1329s gh = authenticate( 1329s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1329s 1329s username = None, password = None, access_token = 'mytoken' 1329s api_url = 'https://api.github.com' 1329s 1329s def authenticate(username=None, password=None, access_token=None, api_url=None): 1329s if not api_url: 1329s return None 1329s 1329s if access_token: 1329s > return Github(base_url=api_url, login_or_token=access_token) 1329s E NameError: name 'Github' is not defined 1329s 1329s plugins/modules/github_repo.py:150: NameError 1329s _________________ TestGithubRepo.test_patch_existing_org_repo __________________ 1329s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1329s 1329s self = 1329s 1329s @with_httmock(get_orgs_mock) 1329s @with_httmock(get_repo_mock) 1329s @with_httmock(patch_repo_mock) 1329s def test_patch_existing_org_repo(self): 1329s > result = github_repo.run_module({ 1329s 'username': None, 1329s 'password': None, 1329s "access_token": "mytoken", 1329s "organization": "MyOrganization", 1329s "name": "myrepo", 1329s "description": "Just for fun", 1329s "private": True, 1329s "state": "present", 1329s "api_url": "https://api.github.com", 1329s "force_defaults": False, 1329s }) 1329s 1329s tests/unit/plugins/modules/test_github_repo.py:240: 1329s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1329s plugins/modules/github_repo.py:222: in run_module 1329s gh = authenticate( 1329s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1329s 1329s username = None, password = None, access_token = 'mytoken' 1329s api_url = 'https://api.github.com' 1329s 1329s def authenticate(username=None, password=None, access_token=None, api_url=None): 1329s if not api_url: 1329s return None 1329s 1329s if access_token: 1329s > return Github(base_url=api_url, login_or_token=access_token) 1329s E NameError: name 'Github' is not defined 1329s 1329s plugins/modules/github_repo.py:150: NameError 1329s _________________ test_find_version_by_spec[None-(,3.9]-3.8.2] _________________ 1329s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1329s 1329s mocker = 1329s version_by_spec = '(,3.9]', version_choosed = '3.8.2' 1329s 1329s @pytest.mark.parametrize('patch_ansible_module, version_by_spec, version_choosed', [ 1329s (None, "(,3.9]", "3.8.2"), 1329s (None, "3.0", "3.8.2"), 1329s (None, "[3.7]", "3.7"), 1329s (None, "[4.10, 4.12]", "4.12"), 1329s (None, "[4.10, 4.12)", "4.11"), 1329s (None, "[2.0,)", "4.13-beta-2"), 1329s ]) 1329s def test_find_version_by_spec(mocker, version_by_spec, version_choosed): 1329s _getContent = mocker.patch('ansible_collections.community.general.plugins.modules.maven_artifact.MavenDownloader._getContent') 1329s _getContent.return_value = maven_metadata_example 1329s 1329s artifact = maven_artifact.Artifact("junit", "junit", None, version_by_spec, "jar") 1329s mvn_downloader = maven_artifact.MavenDownloader(basic.AnsibleModule, "https://repo1.maven.org/maven2") 1329s 1329s > assert mvn_downloader.find_version_by_spec(artifact) == version_choosed 1329s 1329s tests/unit/plugins/modules/test_maven_artifact.py:71: 1329s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1329s 1329s self = 1329s artifact = 1329s 1329s def find_version_by_spec(self, artifact): 1329s path = "/%s/%s" % (artifact.path(False), self.metadata_file_name) 1329s content = self._getContent(self.base + path, "Failed to retrieve the maven metadata file: " + path) 1329s xml = etree.fromstring(content) 1329s original_versions = xml.xpath("/metadata/versioning/versions/version/text()") 1329s versions = [] 1329s for version in original_versions: 1329s try: 1329s > versions.append(Version.coerce(version)) 1329s E NameError: name 'Version' is not defined 1329s 1329s plugins/modules/maven_artifact.py:407: NameError 1329s __________________ test_find_version_by_spec[None-3.0-3.8.2] ___________________ 1329s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1329s 1329s mocker = 1329s version_by_spec = '3.0', version_choosed = '3.8.2' 1329s 1329s @pytest.mark.parametrize('patch_ansible_module, version_by_spec, version_choosed', [ 1329s (None, "(,3.9]", "3.8.2"), 1329s (None, "3.0", "3.8.2"), 1329s (None, "[3.7]", "3.7"), 1329s (None, "[4.10, 4.12]", "4.12"), 1329s (None, "[4.10, 4.12)", "4.11"), 1329s (None, "[2.0,)", "4.13-beta-2"), 1329s ]) 1329s def test_find_version_by_spec(mocker, version_by_spec, version_choosed): 1329s _getContent = mocker.patch('ansible_collections.community.general.plugins.modules.maven_artifact.MavenDownloader._getContent') 1329s _getContent.return_value = maven_metadata_example 1329s 1329s artifact = maven_artifact.Artifact("junit", "junit", None, version_by_spec, "jar") 1329s mvn_downloader = maven_artifact.MavenDownloader(basic.AnsibleModule, "https://repo1.maven.org/maven2") 1329s 1329s > assert mvn_downloader.find_version_by_spec(artifact) == version_choosed 1329s 1329s tests/unit/plugins/modules/test_maven_artifact.py:71: 1329s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1329s 1329s self = 1329s artifact = 1329s 1329s def find_version_by_spec(self, artifact): 1329s path = "/%s/%s" % (artifact.path(False), self.metadata_file_name) 1329s content = self._getContent(self.base + path, "Failed to retrieve the maven metadata file: " + path) 1329s xml = etree.fromstring(content) 1329s original_versions = xml.xpath("/metadata/versioning/versions/version/text()") 1329s versions = [] 1329s for version in original_versions: 1329s try: 1329s > versions.append(Version.coerce(version)) 1329s E NameError: name 'Version' is not defined 1329s 1329s plugins/modules/maven_artifact.py:407: NameError 1329s __________________ test_find_version_by_spec[None-[3.7]-3.7] ___________________ 1329s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1329s 1329s mocker = 1329s version_by_spec = '[3.7]', version_choosed = '3.7' 1329s 1329s @pytest.mark.parametrize('patch_ansible_module, version_by_spec, version_choosed', [ 1329s (None, "(,3.9]", "3.8.2"), 1329s (None, "3.0", "3.8.2"), 1329s (None, "[3.7]", "3.7"), 1329s (None, "[4.10, 4.12]", "4.12"), 1329s (None, "[4.10, 4.12)", "4.11"), 1329s (None, "[2.0,)", "4.13-beta-2"), 1329s ]) 1329s def test_find_version_by_spec(mocker, version_by_spec, version_choosed): 1329s _getContent = mocker.patch('ansible_collections.community.general.plugins.modules.maven_artifact.MavenDownloader._getContent') 1329s _getContent.return_value = maven_metadata_example 1329s 1329s artifact = maven_artifact.Artifact("junit", "junit", None, version_by_spec, "jar") 1329s mvn_downloader = maven_artifact.MavenDownloader(basic.AnsibleModule, "https://repo1.maven.org/maven2") 1329s 1329s > assert mvn_downloader.find_version_by_spec(artifact) == version_choosed 1329s 1329s tests/unit/plugins/modules/test_maven_artifact.py:71: 1329s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1329s 1329s self = 1329s artifact = 1329s 1329s def find_version_by_spec(self, artifact): 1329s path = "/%s/%s" % (artifact.path(False), self.metadata_file_name) 1329s content = self._getContent(self.base + path, "Failed to retrieve the maven metadata file: " + path) 1329s xml = etree.fromstring(content) 1329s original_versions = xml.xpath("/metadata/versioning/versions/version/text()") 1329s versions = [] 1329s for version in original_versions: 1329s try: 1329s > versions.append(Version.coerce(version)) 1329s E NameError: name 'Version' is not defined 1329s 1329s plugins/modules/maven_artifact.py:407: NameError 1329s ______________ test_find_version_by_spec[None-[4.10, 4.12]-4.12] _______________ 1329s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1329s 1329s mocker = 1329s version_by_spec = '[4.10, 4.12]', version_choosed = '4.12' 1329s 1329s @pytest.mark.parametrize('patch_ansible_module, version_by_spec, version_choosed', [ 1329s (None, "(,3.9]", "3.8.2"), 1329s (None, "3.0", "3.8.2"), 1329s (None, "[3.7]", "3.7"), 1329s (None, "[4.10, 4.12]", "4.12"), 1329s (None, "[4.10, 4.12)", "4.11"), 1329s (None, "[2.0,)", "4.13-beta-2"), 1329s ]) 1329s def test_find_version_by_spec(mocker, version_by_spec, version_choosed): 1329s _getContent = mocker.patch('ansible_collections.community.general.plugins.modules.maven_artifact.MavenDownloader._getContent') 1329s _getContent.return_value = maven_metadata_example 1329s 1329s artifact = maven_artifact.Artifact("junit", "junit", None, version_by_spec, "jar") 1329s mvn_downloader = maven_artifact.MavenDownloader(basic.AnsibleModule, "https://repo1.maven.org/maven2") 1329s 1329s > assert mvn_downloader.find_version_by_spec(artifact) == version_choosed 1329s 1329s tests/unit/plugins/modules/test_maven_artifact.py:71: 1329s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1329s 1329s self = 1329s artifact = 1329s 1329s def find_version_by_spec(self, artifact): 1329s path = "/%s/%s" % (artifact.path(False), self.metadata_file_name) 1329s content = self._getContent(self.base + path, "Failed to retrieve the maven metadata file: " + path) 1329s xml = etree.fromstring(content) 1329s original_versions = xml.xpath("/metadata/versioning/versions/version/text()") 1329s versions = [] 1329s for version in original_versions: 1329s try: 1329s > versions.append(Version.coerce(version)) 1329s E NameError: name 'Version' is not defined 1329s 1329s plugins/modules/maven_artifact.py:407: NameError 1329s ______________ test_find_version_by_spec[None-[4.10, 4.12)-4.11] _______________ 1329s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1329s 1329s mocker = 1329s version_by_spec = '[4.10, 4.12)', version_choosed = '4.11' 1329s 1329s @pytest.mark.parametrize('patch_ansible_module, version_by_spec, version_choosed', [ 1329s (None, "(,3.9]", "3.8.2"), 1329s (None, "3.0", "3.8.2"), 1329s (None, "[3.7]", "3.7"), 1329s (None, "[4.10, 4.12]", "4.12"), 1329s (None, "[4.10, 4.12)", "4.11"), 1329s (None, "[2.0,)", "4.13-beta-2"), 1329s ]) 1329s def test_find_version_by_spec(mocker, version_by_spec, version_choosed): 1329s _getContent = mocker.patch('ansible_collections.community.general.plugins.modules.maven_artifact.MavenDownloader._getContent') 1329s _getContent.return_value = maven_metadata_example 1329s 1329s artifact = maven_artifact.Artifact("junit", "junit", None, version_by_spec, "jar") 1329s mvn_downloader = maven_artifact.MavenDownloader(basic.AnsibleModule, "https://repo1.maven.org/maven2") 1329s 1329s > assert mvn_downloader.find_version_by_spec(artifact) == version_choosed 1329s 1329s tests/unit/plugins/modules/test_maven_artifact.py:71: 1329s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1329s 1329s self = 1329s artifact = 1329s 1329s def find_version_by_spec(self, artifact): 1329s path = "/%s/%s" % (artifact.path(False), self.metadata_file_name) 1329s content = self._getContent(self.base + path, "Failed to retrieve the maven metadata file: " + path) 1329s xml = etree.fromstring(content) 1329s original_versions = xml.xpath("/metadata/versioning/versions/version/text()") 1329s versions = [] 1329s for version in original_versions: 1329s try: 1329s > versions.append(Version.coerce(version)) 1329s E NameError: name 'Version' is not defined 1329s 1329s plugins/modules/maven_artifact.py:407: NameError 1329s ______________ test_find_version_by_spec[None-[2.0,)-4.13-beta-2] ______________ 1329s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1329s 1329s mocker = 1329s version_by_spec = '[2.0,)', version_choosed = '4.13-beta-2' 1329s 1329s @pytest.mark.parametrize('patch_ansible_module, version_by_spec, version_choosed', [ 1329s (None, "(,3.9]", "3.8.2"), 1329s (None, "3.0", "3.8.2"), 1329s (None, "[3.7]", "3.7"), 1329s (None, "[4.10, 4.12]", "4.12"), 1329s (None, "[4.10, 4.12)", "4.11"), 1329s (None, "[2.0,)", "4.13-beta-2"), 1329s ]) 1329s def test_find_version_by_spec(mocker, version_by_spec, version_choosed): 1329s _getContent = mocker.patch('ansible_collections.community.general.plugins.modules.maven_artifact.MavenDownloader._getContent') 1329s _getContent.return_value = maven_metadata_example 1329s 1329s artifact = maven_artifact.Artifact("junit", "junit", None, version_by_spec, "jar") 1329s mvn_downloader = maven_artifact.MavenDownloader(basic.AnsibleModule, "https://repo1.maven.org/maven2") 1329s 1329s > assert mvn_downloader.find_version_by_spec(artifact) == version_choosed 1329s 1329s tests/unit/plugins/modules/test_maven_artifact.py:71: 1329s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1329s 1329s self = 1329s artifact = 1329s 1329s def find_version_by_spec(self, artifact): 1329s path = "/%s/%s" % (artifact.path(False), self.metadata_file_name) 1329s content = self._getContent(self.base + path, "Failed to retrieve the maven metadata file: " + path) 1329s xml = etree.fromstring(content) 1329s original_versions = xml.xpath("/metadata/versioning/versions/version/text()") 1329s versions = [] 1329s for version in original_versions: 1329s try: 1329s > versions.append(Version.coerce(version)) 1329s E NameError: name 'Version' is not defined 1329s 1329s plugins/modules/maven_artifact.py:407: NameError 1329s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/general/tests/output/junit/python3.13-modules-units.xml - 1329s =========================== short test summary info ============================ 1329s SKIPPED [1] tests/unit/plugins/modules/test_datadog_downtime.py:19: could not import 'datadog_api_client': No module named 'datadog_api_client' 1329s SKIPPED [1] tests/unit/plugins/modules/test_dnsimple.py:17: could not import 'dnsimple': No module named 'dnsimple' 1329s SKIPPED [1] tests/unit/plugins/modules/test_linode_v4.py:14: could not import 'linode_api4': No module named 'linode_api4' 1329s SKIPPED [1] tests/unit/plugins/modules/helper.py:99: test helper does not support check mode yet 1329s SKIPPED [1] tests/unit/plugins/modules/test_linode.py: test_linode.py requires the `linode-python` module 1329s SKIPPED [1] tests/unit/plugins/modules/test_redis_data.py:137: Redis version > 3.4.0 1329s SKIPPED [1] tests/unit/plugins/modules/test_redis_data_incr.py:107: Redis version > 3.4.0 1329s SKIPPED [1] tests/unit/plugins/modules/test_redis_data_info.py:68: Redis version > 3.4.0 1329s SKIPPED [1] tests/unit/plugins/modules/test_redis_data_info.py:85: Redis version > 3.4.0 1329s SKIPPED [1] tests/unit/plugins/modules/test_redis_data_info.py:101: Redis version > 3.4.0 1329s ERROR tests/unit/plugins/modules/test_jenkins_node.py 1329s ERROR tests/unit/plugins/modules/test_nomad_token.py 1329s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_create_new_org_repo 1329s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_create_new_org_repo_incomplete 1329s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_create_new_user_repo 1329s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_delete_org_repo 1329s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_delete_org_repo_notfound 1329s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_delete_user_repo 1329s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_idempotency_existing_org_private_repo 1329s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_patch_existing_org_repo 1329s FAILED tests/unit/plugins/modules/test_maven_artifact.py::test_find_version_by_spec[None-(,3.9]-3.8.2] 1329s FAILED tests/unit/plugins/modules/test_maven_artifact.py::test_find_version_by_spec[None-3.0-3.8.2] 1329s FAILED tests/unit/plugins/modules/test_maven_artifact.py::test_find_version_by_spec[None-[3.7]-3.7] 1329s FAILED tests/unit/plugins/modules/test_maven_artifact.py::test_find_version_by_spec[None-[4.10, 4.12]-4.12] 1329s FAILED tests/unit/plugins/modules/test_maven_artifact.py::test_find_version_by_spec[None-[4.10, 4.12)-4.11] 1329s FAILED tests/unit/plugins/modules/test_maven_artifact.py::test_find_version_by_spec[None-[2.0,)-4.13-beta-2] 1329s ======= 14 failed, 1261 passed, 10 skipped, 2 errors in 87.15s (0:01:27) ======= 1329s 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.HDQhnz/build.1ev/src/ansible_collections/community/general/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/general --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/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. 1329s ## return code is 1 1329s 1329s 1329s 1329s ############################################################ 1329s ############################################################ 1329s #### Running FLAKY tests in ansible_collections/community/hrobot 1329s ############################################################ 1329s ############################################################ 1329s Unit test modules with Python 3.13 1330s ============================= test session starts ============================== 1330s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1330s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hrobot 1330s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1330s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 1330s created: 2/2 workers 1330s 2 workers [0 items] 1330s 1330s 1330s ==================================== ERRORS ==================================== 1330s ___________ ERROR collecting tests/unit/plugins/modules/test_boot.py ___________ 1330s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_boot.py'. 1330s Hint: make sure your test modules/packages have valid Python names. 1330s Traceback: 1330s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1330s return _bootstrap._gcd_import(name[level:], package, level) 1330s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1330s assertion_rewriting_hook.exec_module(module) 1330s tests/unit/plugins/modules/test_boot.py:9: in 1330s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1330s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1330s _______ ERROR collecting tests/unit/plugins/modules/test_failover_ip.py ________ 1330s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_failover_ip.py'. 1330s Hint: make sure your test modules/packages have valid Python names. 1330s Traceback: 1330s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1330s return _bootstrap._gcd_import(name[level:], package, level) 1330s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1330s assertion_rewriting_hook.exec_module(module) 1330s tests/unit/plugins/modules/test_failover_ip.py:9: in 1330s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1330s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1330s _____ ERROR collecting tests/unit/plugins/modules/test_failover_ip_info.py _____ 1330s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_failover_ip_info.py'. 1330s Hint: make sure your test modules/packages have valid Python names. 1330s Traceback: 1330s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1330s return _bootstrap._gcd_import(name[level:], package, level) 1330s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1330s assertion_rewriting_hook.exec_module(module) 1330s tests/unit/plugins/modules/test_failover_ip_info.py:9: in 1330s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1330s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1330s _________ ERROR collecting tests/unit/plugins/modules/test_firewall.py _________ 1330s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_firewall.py'. 1330s Hint: make sure your test modules/packages have valid Python names. 1330s Traceback: 1330s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1330s return _bootstrap._gcd_import(name[level:], package, level) 1330s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1330s assertion_rewriting_hook.exec_module(module) 1330s tests/unit/plugins/modules/test_firewall.py:11: in 1330s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1330s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1330s ______ ERROR collecting tests/unit/plugins/modules/test_firewall_info.py _______ 1330s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_firewall_info.py'. 1330s Hint: make sure your test modules/packages have valid Python names. 1330s Traceback: 1330s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1330s return _bootstrap._gcd_import(name[level:], package, level) 1330s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1330s assertion_rewriting_hook.exec_module(module) 1330s tests/unit/plugins/modules/test_firewall_info.py:9: in 1330s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1330s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1330s __________ ERROR collecting tests/unit/plugins/modules/test_reset.py ___________ 1330s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_reset.py'. 1330s Hint: make sure your test modules/packages have valid Python names. 1330s Traceback: 1330s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1330s return _bootstrap._gcd_import(name[level:], package, level) 1330s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1330s assertion_rewriting_hook.exec_module(module) 1330s tests/unit/plugins/modules/test_reset.py:9: in 1330s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1330s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1330s _______ ERROR collecting tests/unit/plugins/modules/test_reverse_dns.py ________ 1330s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_reverse_dns.py'. 1330s Hint: make sure your test modules/packages have valid Python names. 1330s Traceback: 1330s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1330s return _bootstrap._gcd_import(name[level:], package, level) 1330s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1330s assertion_rewriting_hook.exec_module(module) 1330s tests/unit/plugins/modules/test_reverse_dns.py:9: in 1330s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1330s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1330s __________ ERROR collecting tests/unit/plugins/modules/test_server.py __________ 1330s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_server.py'. 1330s Hint: make sure your test modules/packages have valid Python names. 1330s Traceback: 1330s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1330s return _bootstrap._gcd_import(name[level:], package, level) 1330s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1330s assertion_rewriting_hook.exec_module(module) 1330s tests/unit/plugins/modules/test_server.py:9: in 1330s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1330s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1330s _______ ERROR collecting tests/unit/plugins/modules/test_server_info.py ________ 1330s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_server_info.py'. 1330s Hint: make sure your test modules/packages have valid Python names. 1330s Traceback: 1330s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1330s return _bootstrap._gcd_import(name[level:], package, level) 1330s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1330s assertion_rewriting_hook.exec_module(module) 1330s tests/unit/plugins/modules/test_server_info.py:9: in 1330s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1330s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1330s _________ ERROR collecting tests/unit/plugins/modules/test_ssh_key.py __________ 1330s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_ssh_key.py'. 1330s Hint: make sure your test modules/packages have valid Python names. 1330s Traceback: 1330s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1330s return _bootstrap._gcd_import(name[level:], package, level) 1330s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1330s assertion_rewriting_hook.exec_module(module) 1330s tests/unit/plugins/modules/test_ssh_key.py:9: in 1330s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1330s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1330s _______ ERROR collecting tests/unit/plugins/modules/test_ssh_key_info.py _______ 1330s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_ssh_key_info.py'. 1330s Hint: make sure your test modules/packages have valid Python names. 1330s Traceback: 1330s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1330s return _bootstrap._gcd_import(name[level:], package, level) 1330s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1330s assertion_rewriting_hook.exec_module(module) 1330s tests/unit/plugins/modules/test_ssh_key_info.py:9: in 1330s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1330s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1330s ________ ERROR collecting tests/unit/plugins/modules/test_storagebox.py ________ 1330s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_storagebox.py'. 1330s Hint: make sure your test modules/packages have valid Python names. 1330s Traceback: 1330s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1330s return _bootstrap._gcd_import(name[level:], package, level) 1330s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1330s assertion_rewriting_hook.exec_module(module) 1330s tests/unit/plugins/modules/test_storagebox.py:9: in 1330s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1330s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1330s _____ ERROR collecting tests/unit/plugins/modules/test_storagebox_info.py ______ 1330s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_storagebox_info.py'. 1330s Hint: make sure your test modules/packages have valid Python names. 1330s Traceback: 1330s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1330s return _bootstrap._gcd_import(name[level:], package, level) 1330s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1330s assertion_rewriting_hook.exec_module(module) 1330s tests/unit/plugins/modules/test_storagebox_info.py:9: in 1330s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1330s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1330s _ ERROR collecting tests/unit/plugins/modules/test_storagebox_set_password.py __ 1330s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_storagebox_set_password.py'. 1330s Hint: make sure your test modules/packages have valid Python names. 1330s Traceback: 1330s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1330s return _bootstrap._gcd_import(name[level:], package, level) 1330s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1330s assertion_rewriting_hook.exec_module(module) 1330s tests/unit/plugins/modules/test_storagebox_set_password.py:9: in 1330s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1330s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1330s _ ERROR collecting tests/unit/plugins/modules/test_storagebox_snapshot_plan.py _ 1330s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_storagebox_snapshot_plan.py'. 1330s Hint: make sure your test modules/packages have valid Python names. 1330s Traceback: 1330s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1330s return _bootstrap._gcd_import(name[level:], package, level) 1330s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1330s assertion_rewriting_hook.exec_module(module) 1330s tests/unit/plugins/modules/test_storagebox_snapshot_plan.py:9: in 1330s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1330s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1330s _ ERROR collecting tests/unit/plugins/modules/test_storagebox_snapshot_plan_info.py _ 1330s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_storagebox_snapshot_plan_info.py'. 1330s Hint: make sure your test modules/packages have valid Python names. 1330s Traceback: 1330s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1330s return _bootstrap._gcd_import(name[level:], package, level) 1330s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1330s assertion_rewriting_hook.exec_module(module) 1330s tests/unit/plugins/modules/test_storagebox_snapshot_plan_info.py:9: in 1330s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1330s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1330s _________ ERROR collecting tests/unit/plugins/modules/test_v_switch.py _________ 1330s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_v_switch.py'. 1330s Hint: make sure your test modules/packages have valid Python names. 1330s Traceback: 1330s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1330s return _bootstrap._gcd_import(name[level:], package, level) 1330s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1330s assertion_rewriting_hook.exec_module(module) 1330s tests/unit/plugins/modules/test_v_switch.py:12: in 1330s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1330s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1330s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hrobot/tests/output/junit/python3.13-modules-units.xml - 1330s =========================== short test summary info ============================ 1330s ERROR tests/unit/plugins/modules/test_boot.py 1330s ERROR tests/unit/plugins/modules/test_failover_ip.py 1330s ERROR tests/unit/plugins/modules/test_failover_ip_info.py 1330s ERROR tests/unit/plugins/modules/test_firewall.py 1330s ERROR tests/unit/plugins/modules/test_firewall_info.py 1330s ERROR tests/unit/plugins/modules/test_reset.py 1330s ERROR tests/unit/plugins/modules/test_reverse_dns.py 1330s ERROR tests/unit/plugins/modules/test_server.py 1330s ERROR tests/unit/plugins/modules/test_server_info.py 1330s ERROR tests/unit/plugins/modules/test_ssh_key.py 1330s ERROR tests/unit/plugins/modules/test_ssh_key_info.py 1330s ERROR tests/unit/plugins/modules/test_storagebox.py 1330s ERROR tests/unit/plugins/modules/test_storagebox_info.py 1330s ERROR tests/unit/plugins/modules/test_storagebox_set_password.py 1330s ERROR tests/unit/plugins/modules/test_storagebox_snapshot_plan.py 1330s ERROR tests/unit/plugins/modules/test_storagebox_snapshot_plan_info.py 1330s ERROR tests/unit/plugins/modules/test_v_switch.py 1330s ============================== 17 errors in 0.96s ============================== 1330s 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.HDQhnz/build.1ev/src/ansible_collections/community/hrobot/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hrobot --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/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. 1330s ## return code is 1 1330s 1330s 1330s 1330s ############################################################ 1330s ############################################################ 1330s #### Running FLAKY tests in ansible_collections/community/library_inventory_filtering_v1 1330s ############################################################ 1330s ############################################################ 1331s Unit test controller with Python 3.13 1332s ============================= test session starts ============================== 1332s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1332s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/library_inventory_filtering_v1 1332s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1332s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 1332s created: 2/2 workers 1332s 2 workers [0 items] 1332s 1332s 1332s ==================================== ERRORS ==================================== 1332s __ ERROR collecting tests/unit/plugins/plugin_utils/test_inventory_filter.py ___ 1332s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/library_inventory_filtering_v1/tests/unit/plugins/plugin_utils/test_inventory_filter.py'. 1332s Hint: make sure your test modules/packages have valid Python names. 1332s Traceback: 1332s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1332s return _bootstrap._gcd_import(name[level:], package, level) 1332s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1332s assertion_rewriting_hook.exec_module(module) 1332s tests/unit/plugins/plugin_utils/test_inventory_filter.py:14: in 1332s from ansible_collections.community.internal_test_tools.tests.unit.mock.loader import DictDataLoader 1332s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1332s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/library_inventory_filtering_v1/tests/output/junit/python3.13-controller-units.xml - 1332s =========================== short test summary info ============================ 1332s ERROR tests/unit/plugins/plugin_utils/test_inventory_filter.py 1332s =============================== 1 error in 0.70s =============================== 1332s 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.HDQhnz/build.1ev/src/ansible_collections/community/library_inventory_filtering_v1/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/library_inventory_filtering_v1 --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/library_inventory_filtering_v1 tests/unit/plugins/plugin_utils/test_inventory_filter.py" returned exit status 1. 1332s ## return code is 1 1332s 1332s 1332s 1332s ############################################################ 1332s ############################################################ 1332s #### Running FLAKY tests in ansible_collections/infoblox/nios_modules 1332s ############################################################ 1332s ############################################################ 1332s Unit test modules with Python 3.13 1333s ============================= test session starts ============================== 1333s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1333s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/infoblox/nios_modules 1333s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1333s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 1333s created: 2/2 workers 1333s 2 workers [91 items] 1333s 1337s FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF [ 79%] 1338s FFFFFFFFFFFFFFFFFFF [100%] 1338s =================================== FAILURES =================================== 1338s ___________ TestNiosCNameRecordModule.test_nios_cname_record_create ____________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosCNameRecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_cname_record.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ______ TestNiosExtensibleAttributeModule.test_create_extensible_attribute ______ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosExtensibleAttributeModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_extensible_attribute.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ________ TestNiosExtensibleAttributeModule.test_nios_ea_update_comment _________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosExtensibleAttributeModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_extensible_attribute.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ___________ TestNiosCNameRecordModule.test_nios_cname_record_remove ____________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosCNameRecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_cname_record.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ______ TestNiosExtensibleAttributeModule.test_remove_extensible_attribute ______ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosExtensibleAttributeModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_extensible_attribute.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _______ TestNiosCNameRecordModule.test_nios_cname_record_update_comment ________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosCNameRecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_cname_record.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _______________ TestNiosARecordModule.test_nios_a_record_create ________________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosARecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_a_record.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _______________ TestNiosDnsViewModule.test_nios_dns_view_create ________________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosDnsViewModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_dns_view.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _______________ TestNiosARecordModule.test_nios_a_record_remove ________________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosARecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_a_record.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _______________ TestNiosDnsViewModule.test_nios_dns_view_remove ________________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosDnsViewModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_dns_view.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ___________ TestNiosARecordModule.test_nios_a_record_update_comment ____________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosARecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_a_record.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ___________ TestNiosDnsViewModule.test_nios_dns_view_update_comment ____________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosDnsViewModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_dns_view.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _________ TestNiosARecordModule.test_nios_a_record_update_record_name __________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosARecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_a_record.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ________ TestNiosDtcHttpMonitorModule.test_nios_dtc_monitor_http_create ________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosDtcHttpMonitorModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_dtc_monitor_http.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ____________ TestNiosAAAARecordModule.test_nios_aaaa_record_create _____________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosAAAARecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_aaaa_record.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ________ TestNiosDtcHttpMonitorModule.test_nios_dtc_monitor_http_remove ________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosDtcHttpMonitorModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_dtc_monitor_http.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ____________ TestNiosAAAARecordModule.test_nios_aaaa_record_remove _____________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosAAAARecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_aaaa_record.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ____ TestNiosDtcHttpMonitorModule.test_nios_dtc_monitor_http_update_comment ____ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosDtcHttpMonitorModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_dtc_monitor_http.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ________ TestNiosAAAARecordModule.test_nios_aaaa_record_update_comment _________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosAAAARecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_aaaa_record.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ________ TestNiosDtcIcmpMonitorModule.test_nios_dtc_monitor_icmp_create ________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosDtcIcmpMonitorModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ______ TestNiosAAAARecordModule.test_nios_aaaa_record_update_record_name _______ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosAAAARecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_aaaa_record.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ________ TestNiosDtcIcmpMonitorModule.test_nios_dtc_monitor_icmp_remove ________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosDtcIcmpMonitorModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ____ TestNiosDtcIcmpMonitorModule.test_nios_dtc_monitor_icmp_update_comment ____ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosDtcIcmpMonitorModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _________ TestNiosDtcTcpMonitorModule.test_nios_dtc_monitor_tcp_create _________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosDtcTcpMonitorModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _________ TestNiosDtcTcpMonitorModule.test_nios_dtc_monitor_pdp_create _________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosDtcTcpMonitorModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _________ TestNiosDtcTcpMonitorModule.test_nios_dtc_monitor_tcp_remove _________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosDtcTcpMonitorModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _________ TestNiosDtcTcpMonitorModule.test_nios_dtc_monitor_pdp_remove _________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosDtcTcpMonitorModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _____ TestNiosDtcTcpMonitorModule.test_nios_dtc_monitor_tcp_update_comment _____ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosDtcTcpMonitorModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _____ TestNiosDtcTcpMonitorModule.test_nios_dtc_monitor_pdp_update_comment _____ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosDtcTcpMonitorModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ___________ TestNiosDtcTopologyModule.test_nios_dtc_topology_create ____________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosDtcTopologyModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_dtc_topology.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _________ TestNiosDtcSipMonitorModule.test_nios_dtc_monitor_sip_create _________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosDtcSipMonitorModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ___________ TestNiosDtcTopologyModule.test_nios_dtc_topology_remove ____________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosDtcTopologyModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_dtc_topology.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _________ TestNiosDtcSipMonitorModule.test_nios_dtc_monitor_sip_remove _________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosDtcSipMonitorModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _______ TestNiosDtcTopologyModule.test_nios_dtc_topology_update_comment ________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosDtcTopologyModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_dtc_topology.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _____ TestNiosDtcSipMonitorModule.test_nios_dtc_monitor_sip_update_comment _____ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosDtcSipMonitorModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ________ TestNiosFixedAddressModule.test_nios_fixed_address_ipv4_create ________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosFixedAddressModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_fixed_address.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ________ TestNiosDtcSnmpMonitorModule.test_nios_dtc_monitor_snmp_create ________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosDtcSnmpMonitorModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _____ TestNiosFixedAddressModule.test_nios_fixed_address_ipv4_dhcp_update ______ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosFixedAddressModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_fixed_address.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ________ TestNiosDtcSnmpMonitorModule.test_nios_dtc_monitor_snmp_remove ________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosDtcSnmpMonitorModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ________ TestNiosFixedAddressModule.test_nios_fixed_address_ipv4_remove ________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosFixedAddressModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_fixed_address.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ____ TestNiosDtcSnmpMonitorModule.test_nios_dtc_monitor_snmp_update_comment ____ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosDtcSnmpMonitorModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ________ TestNiosFixedAddressModule.test_nios_fixed_address_ipv6_create ________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosFixedAddressModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_fixed_address.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _________________ TestNiosMemberModule.test_nios_member_create _________________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosMemberModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_member.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ________ TestNiosFixedAddressModule.test_nios_fixed_address_ipv6_remove ________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosFixedAddressModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_fixed_address.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _________________ TestNiosMemberModule.test_nios_member_remove _________________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosMemberModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_member.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ____________ TestNiosHostRecordModule.test_nios_host_record_create _____________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s 1338s super(TestNiosHostRecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_host_record.py:43: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _________________ TestNiosMemberModule.test_nios_member_update _________________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosMemberModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_member.py:40: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ____________ TestNiosHostRecordModule.test_nios_host_record_remove _____________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s 1338s super(TestNiosHostRecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_host_record.py:43: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ______________ TestNiosMXRecordModule.test_nios_mx_record_create _______________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosMXRecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_mx_record.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ________ TestNiosHostRecordModule.test_nios_host_record_update_comment _________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s 1338s super(TestNiosHostRecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_host_record.py:43: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ______________ TestNiosMXRecordModule.test_nios_mx_record_remove _______________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosMXRecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_mx_record.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ______ TestNiosHostRecordModule.test_nios_host_record_update_record_name _______ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s 1338s super(TestNiosHostRecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_host_record.py:43: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s __________ TestNiosMXRecordModule.test_nios_mx_record_update_comment ___________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosMXRecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_mx_record.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ___________ TestNiosNAPTRRecordModule.test_nios_naptr_record_remove ____________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosNAPTRRecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_naptr_record.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ___________ TestNiosNAPTRRecordModule.test_nios_naptr_record_create ____________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosNAPTRRecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_naptr_record.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _______ TestNiosNAPTRRecordModule.test_nios_naptr_record_update_comment ________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosNAPTRRecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_naptr_record.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _ TestNiosNetworkModule.test_nios_network_ipv4_update_with_use_logic_filter_rules _ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosNetworkModule, self).setUp() 1338s self.module = MagicMock( 1338s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1338s ) 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch( 1338s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1338s ) 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_network.py:44: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _____________ TestNiosNetworkModule.test_nios_network_ipv4_create ______________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosNetworkModule, self).setUp() 1338s self.module = MagicMock( 1338s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1338s ) 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch( 1338s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1338s ) 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_network.py:44: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _____________ TestNiosNetworkModule.test_nios_network_ipv6_create ______________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosNetworkModule, self).setUp() 1338s self.module = MagicMock( 1338s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1338s ) 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch( 1338s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1338s ) 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_network.py:44: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _ TestNiosNetworkModule.test_nios_network_ipv4_create_with_use_logic_filter_rules _ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosNetworkModule, self).setUp() 1338s self.module = MagicMock( 1338s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1338s ) 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch( 1338s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1338s ) 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_network.py:44: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ___________ TestNiosNetworkModule.test_nios_network_ipv6_dhcp_update ___________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosNetworkModule, self).setUp() 1338s self.module = MagicMock( 1338s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1338s ) 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch( 1338s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1338s ) 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_network.py:44: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ___________ TestNiosNetworkModule.test_nios_network_ipv4_dhcp_update ___________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosNetworkModule, self).setUp() 1338s self.module = MagicMock( 1338s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1338s ) 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch( 1338s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1338s ) 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_network.py:44: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _____________ TestNiosNetworkModule.test_nios_network_ipv6_remove ______________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosNetworkModule, self).setUp() 1338s self.module = MagicMock( 1338s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1338s ) 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch( 1338s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1338s ) 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_network.py:44: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _____________ TestNiosNetworkModule.test_nios_network_ipv4_remove ______________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosNetworkModule, self).setUp() 1338s self.module = MagicMock( 1338s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1338s ) 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch( 1338s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1338s ) 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_network.py:44: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _________ TestNiosNetworkModule.test_nios_networkcontainer_ipv4_create _________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosNetworkModule, self).setUp() 1338s self.module = MagicMock( 1338s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1338s ) 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch( 1338s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1338s ) 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_network.py:44: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _________ TestNiosNetworkModule.test_nios_networkcontainer_ipv4_remove _________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosNetworkModule, self).setUp() 1338s self.module = MagicMock( 1338s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1338s ) 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch( 1338s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1338s ) 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_network.py:44: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 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.HDQhnz/build.1ev/src/ansible_collections/infoblox/nios_modules/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/infoblox/nios_modules --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/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. 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _______ TestNiosNetworkViewModule.test_nios_network_view_update_comment ________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosNetworkViewModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_network_view.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _________ TestNiosNetworkModule.test_nios_networkcontainer_ipv6_create _________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosNetworkModule, self).setUp() 1338s self.module = MagicMock( 1338s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1338s ) 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch( 1338s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1338s ) 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_network.py:44: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _________ TestNiosNetworkViewModule.test_nios_network_view_update_name _________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosNetworkViewModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_network_view.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ___________ TestNiosNetworkViewModule.test_nios_network_view_create ____________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosNetworkViewModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_network_view.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ________________ TestNiosNSGroupModule.test_nios_nsgroup_create ________________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s 1338s super(TestNiosNSGroupModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_nsgroup.py:43: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ___________ TestNiosNetworkViewModule.test_nios_network_view_remove ____________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosNetworkViewModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_network_view.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ________________ TestNiosNSGroupModule.test_nios_nsgroup_remove ________________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s 1338s super(TestNiosNSGroupModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_nsgroup.py:43: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ____________ TestNiosNSGroupModule.test_nios_nsgroup_update_comment ____________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s 1338s super(TestNiosNSGroupModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_nsgroup.py:43: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _____________ TestNiosPTRRecordModule.test_nios_ptr_record_remove ______________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s 1338s super(TestNiosPTRRecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_ptr_record.py:43: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _____________ TestNiosPTRRecordModule.test_nios_ptr6_record_create _____________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s 1338s super(TestNiosPTRRecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_ptr_record.py:43: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _________ TestNiosPTRRecordModule.test_nios_ptr_record_update_comment __________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s 1338s super(TestNiosPTRRecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_ptr_record.py:43: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _____________ TestNiosPTRRecordModule.test_nios_ptr_record_create ______________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s 1338s super(TestNiosPTRRecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_ptr_record.py:43: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _____ TestNiosPTRRecordModule.test_nios_ptr_record_update_record_ptrdname ______ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s 1338s super(TestNiosPTRRecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_ptr_record.py:43: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _____________ TestNiosSRVRecordModule.test_nios_srv_record_remove ______________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosSRVRecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_srv_record.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _____________ TestNiosSRVRecordModule.test_nios_srv_record_create ______________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosSRVRecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_srv_record.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _________ TestNiosSRVRecordModule.test_nios_srv_record_update_comment __________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosSRVRecordModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_srv_record.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ___________________ TestNiosZoneModule.test_nios_zone_create ___________________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosZoneModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_zone.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _______ TestNiosZoneModule.test_nios_zone_create_using_name_server_group _______ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosZoneModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_zone.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ___ TestNiosZoneModule.test_nios_zone_create_using_grid_primary_secondaries ____ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosZoneModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_zone.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ___________________ TestNiosZoneModule.test_nios_zone_remove ___________________ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosZoneModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_zone.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s __________ TestNiosZoneModule.test_nios_zone_create_using_zone_format __________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosZoneModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_zone.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s ___ TestNiosZoneModule.test_nios_zone_remove_using_grid_primary_secondaries ____ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosZoneModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_zone.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _______ TestNiosZoneModule.test_nios_zone_remove_using_name_server_group _______ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosZoneModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_zone.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _______ TestNiosZoneModule.test_nios_zone_remove_using_using_zone_format _______ 1338s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosZoneModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_zone.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s _______________ TestNiosZoneModule.test_nios_zone_update_comment _______________ 1338s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1338s 1338s self = 1338s 1338s def setUp(self): 1338s super(TestNiosZoneModule, self).setUp() 1338s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1338s self.module.check_mode = False 1338s self.module.params = {'provider': None} 1338s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1338s self.exec_command = self.mock_wapi.start() 1338s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1338s self.mock_wapi_run.start() 1338s > self.load_config = self.mock_wapi_run.start() 1338s 1338s tests/unit/plugins/modules/test_nios_zone.py:42: 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s /usr/lib/python3.13/unittest/mock.py:1654: in start 1338s result = self.__enter__() 1338s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1338s 1338s self = 1338s 1338s def __enter__(self): 1338s """Perform the patch.""" 1338s if self.is_started: 1338s > raise RuntimeError("Patch is already started") 1338s E RuntimeError: Patch is already started 1338s 1338s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1338s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/infoblox/nios_modules/tests/output/junit/python3.13-modules-units.xml - 1338s =========================== short test summary info ============================ 1338s FAILED tests/unit/plugins/modules/test_nios_cname_record.py::TestNiosCNameRecordModule::test_nios_cname_record_create 1338s FAILED tests/unit/plugins/modules/test_extensible_attribute.py::TestNiosExtensibleAttributeModule::test_create_extensible_attribute 1338s FAILED tests/unit/plugins/modules/test_extensible_attribute.py::TestNiosExtensibleAttributeModule::test_nios_ea_update_comment 1338s FAILED tests/unit/plugins/modules/test_nios_cname_record.py::TestNiosCNameRecordModule::test_nios_cname_record_remove 1338s FAILED tests/unit/plugins/modules/test_extensible_attribute.py::TestNiosExtensibleAttributeModule::test_remove_extensible_attribute 1338s FAILED tests/unit/plugins/modules/test_nios_cname_record.py::TestNiosCNameRecordModule::test_nios_cname_record_update_comment 1338s FAILED tests/unit/plugins/modules/test_nios_a_record.py::TestNiosARecordModule::test_nios_a_record_create 1338s FAILED tests/unit/plugins/modules/test_nios_dns_view.py::TestNiosDnsViewModule::test_nios_dns_view_create 1338s FAILED tests/unit/plugins/modules/test_nios_a_record.py::TestNiosARecordModule::test_nios_a_record_remove 1338s FAILED tests/unit/plugins/modules/test_nios_dns_view.py::TestNiosDnsViewModule::test_nios_dns_view_remove 1338s FAILED tests/unit/plugins/modules/test_nios_a_record.py::TestNiosARecordModule::test_nios_a_record_update_comment 1338s FAILED tests/unit/plugins/modules/test_nios_dns_view.py::TestNiosDnsViewModule::test_nios_dns_view_update_comment 1338s FAILED tests/unit/plugins/modules/test_nios_a_record.py::TestNiosARecordModule::test_nios_a_record_update_record_name 1338s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_http.py::TestNiosDtcHttpMonitorModule::test_nios_dtc_monitor_http_create 1338s FAILED tests/unit/plugins/modules/test_nios_aaaa_record.py::TestNiosAAAARecordModule::test_nios_aaaa_record_create 1338s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_http.py::TestNiosDtcHttpMonitorModule::test_nios_dtc_monitor_http_remove 1338s FAILED tests/unit/plugins/modules/test_nios_aaaa_record.py::TestNiosAAAARecordModule::test_nios_aaaa_record_remove 1338s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_http.py::TestNiosDtcHttpMonitorModule::test_nios_dtc_monitor_http_update_comment 1338s FAILED tests/unit/plugins/modules/test_nios_aaaa_record.py::TestNiosAAAARecordModule::test_nios_aaaa_record_update_comment 1338s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py::TestNiosDtcIcmpMonitorModule::test_nios_dtc_monitor_icmp_create 1338s FAILED tests/unit/plugins/modules/test_nios_aaaa_record.py::TestNiosAAAARecordModule::test_nios_aaaa_record_update_record_name 1338s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py::TestNiosDtcIcmpMonitorModule::test_nios_dtc_monitor_icmp_remove 1338s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py::TestNiosDtcIcmpMonitorModule::test_nios_dtc_monitor_icmp_update_comment 1338s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py::TestNiosDtcTcpMonitorModule::test_nios_dtc_monitor_tcp_create 1338s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py::TestNiosDtcTcpMonitorModule::test_nios_dtc_monitor_pdp_create 1338s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py::TestNiosDtcTcpMonitorModule::test_nios_dtc_monitor_tcp_remove 1338s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py::TestNiosDtcTcpMonitorModule::test_nios_dtc_monitor_pdp_remove 1338s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py::TestNiosDtcTcpMonitorModule::test_nios_dtc_monitor_tcp_update_comment 1338s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py::TestNiosDtcTcpMonitorModule::test_nios_dtc_monitor_pdp_update_comment 1338s FAILED tests/unit/plugins/modules/test_nios_dtc_topology.py::TestNiosDtcTopologyModule::test_nios_dtc_topology_create 1338s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py::TestNiosDtcSipMonitorModule::test_nios_dtc_monitor_sip_create 1338s FAILED tests/unit/plugins/modules/test_nios_dtc_topology.py::TestNiosDtcTopologyModule::test_nios_dtc_topology_remove 1338s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py::TestNiosDtcSipMonitorModule::test_nios_dtc_monitor_sip_remove 1338s FAILED tests/unit/plugins/modules/test_nios_dtc_topology.py::TestNiosDtcTopologyModule::test_nios_dtc_topology_update_comment 1338s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py::TestNiosDtcSipMonitorModule::test_nios_dtc_monitor_sip_update_comment 1338s FAILED tests/unit/plugins/modules/test_nios_fixed_address.py::TestNiosFixedAddressModule::test_nios_fixed_address_ipv4_create 1338s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py::TestNiosDtcSnmpMonitorModule::test_nios_dtc_monitor_snmp_create 1338s FAILED tests/unit/plugins/modules/test_nios_fixed_address.py::TestNiosFixedAddressModule::test_nios_fixed_address_ipv4_dhcp_update 1338s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py::TestNiosDtcSnmpMonitorModule::test_nios_dtc_monitor_snmp_remove 1338s FAILED tests/unit/plugins/modules/test_nios_fixed_address.py::TestNiosFixedAddressModule::test_nios_fixed_address_ipv4_remove 1338s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py::TestNiosDtcSnmpMonitorModule::test_nios_dtc_monitor_snmp_update_comment 1338s FAILED tests/unit/plugins/modules/test_nios_fixed_address.py::TestNiosFixedAddressModule::test_nios_fixed_address_ipv6_create 1338s FAILED tests/unit/plugins/modules/test_nios_member.py::TestNiosMemberModule::test_nios_member_create 1338s FAILED tests/unit/plugins/modules/test_nios_fixed_address.py::TestNiosFixedAddressModule::test_nios_fixed_address_ipv6_remove 1338s FAILED tests/unit/plugins/modules/test_nios_member.py::TestNiosMemberModule::test_nios_member_remove 1338s FAILED tests/unit/plugins/modules/test_nios_host_record.py::TestNiosHostRecordModule::test_nios_host_record_create 1338s FAILED tests/unit/plugins/modules/test_nios_member.py::TestNiosMemberModule::test_nios_member_update 1338s FAILED tests/unit/plugins/modules/test_nios_host_record.py::TestNiosHostRecordModule::test_nios_host_record_remove 1338s FAILED tests/unit/plugins/modules/test_nios_mx_record.py::TestNiosMXRecordModule::test_nios_mx_record_create 1338s FAILED tests/unit/plugins/modules/test_nios_host_record.py::TestNiosHostRecordModule::test_nios_host_record_update_comment 1338s FAILED tests/unit/plugins/modules/test_nios_mx_record.py::TestNiosMXRecordModule::test_nios_mx_record_remove 1338s FAILED tests/unit/plugins/modules/test_nios_host_record.py::TestNiosHostRecordModule::test_nios_host_record_update_record_name 1338s FAILED tests/unit/plugins/modules/test_nios_mx_record.py::TestNiosMXRecordModule::test_nios_mx_record_update_comment 1338s FAILED tests/unit/plugins/modules/test_nios_naptr_record.py::TestNiosNAPTRRecordModule::test_nios_naptr_record_remove 1338s FAILED tests/unit/plugins/modules/test_nios_naptr_record.py::TestNiosNAPTRRecordModule::test_nios_naptr_record_create 1338s FAILED tests/unit/plugins/modules/test_nios_naptr_record.py::TestNiosNAPTRRecordModule::test_nios_naptr_record_update_comment 1338s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv4_update_with_use_logic_filter_rules 1338s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv4_create 1338s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv6_create 1338s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv4_create_with_use_logic_filter_rules 1338s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv6_dhcp_update 1338s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv4_dhcp_update 1338s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv6_remove 1338s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv4_remove 1338s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_networkcontainer_ipv4_create 1338s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_networkcontainer_ipv4_remove 1338s FAILED tests/unit/plugins/modules/test_nios_network_view.py::TestNiosNetworkViewModule::test_nios_network_view_update_comment 1338s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_networkcontainer_ipv6_create 1338s FAILED tests/unit/plugins/modules/test_nios_network_view.py::TestNiosNetworkViewModule::test_nios_network_view_update_name 1338s FAILED tests/unit/plugins/modules/test_nios_network_view.py::TestNiosNetworkViewModule::test_nios_network_view_create 1338s FAILED tests/unit/plugins/modules/test_nios_nsgroup.py::TestNiosNSGroupModule::test_nios_nsgroup_create 1338s FAILED tests/unit/plugins/modules/test_nios_network_view.py::TestNiosNetworkViewModule::test_nios_network_view_remove 1338s FAILED tests/unit/plugins/modules/test_nios_nsgroup.py::TestNiosNSGroupModule::test_nios_nsgroup_remove 1338s FAILED tests/unit/plugins/modules/test_nios_nsgroup.py::TestNiosNSGroupModule::test_nios_nsgroup_update_comment 1338s FAILED tests/unit/plugins/modules/test_nios_ptr_record.py::TestNiosPTRRecordModule::test_nios_ptr_record_remove 1338s FAILED tests/unit/plugins/modules/test_nios_ptr_record.py::TestNiosPTRRecordModule::test_nios_ptr6_record_create 1338s FAILED tests/unit/plugins/modules/test_nios_ptr_record.py::TestNiosPTRRecordModule::test_nios_ptr_record_update_comment 1338s FAILED tests/unit/plugins/modules/test_nios_ptr_record.py::TestNiosPTRRecordModule::test_nios_ptr_record_create 1338s FAILED tests/unit/plugins/modules/test_nios_ptr_record.py::TestNiosPTRRecordModule::test_nios_ptr_record_update_record_ptrdname 1338s FAILED tests/unit/plugins/modules/test_nios_srv_record.py::TestNiosSRVRecordModule::test_nios_srv_record_remove 1338s FAILED tests/unit/plugins/modules/test_nios_srv_record.py::TestNiosSRVRecordModule::test_nios_srv_record_create 1338s FAILED tests/unit/plugins/modules/test_nios_srv_record.py::TestNiosSRVRecordModule::test_nios_srv_record_update_comment 1338s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_create 1338s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_create_using_name_server_group 1338s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_create_using_grid_primary_secondaries 1338s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_remove 1338s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_create_using_zone_format 1338s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_remove_using_grid_primary_secondaries 1338s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_remove_using_name_server_group 1338s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_remove_using_using_zone_format 1338s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_update_comment 1338s ============================== 91 failed in 5.29s ============================== 1338s ## return code is 1 1338s 1338s 1338s 1338s ############################################################ 1338s ############################################################ 1338s #### Running FLAKY tests in ansible_collections/junipernetworks/junos 1338s ############################################################ 1338s ############################################################ 1338s Unit test controller with Python 3.13 1339s ============================= test session starts ============================== 1339s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1339s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/junipernetworks/junos 1339s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1339s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 1339s created: 2/2 workers 1339s 2 workers [305 items] 1339s 1342s ....F......FFFF.FFFFFFFFFFFFFFFFFFFFFFFFFF.F....F.FFFFFFFF....F....F.... [ 23%] 1344s .F.....F.....F.....F...FFFFFFFFFFFFFF.FFFFFFFFF.FFFF.FFFFFF..F..FFFFF... [ 47%] 1346s .F..FFFFFFF...F.FFFFFFFF.FFFFFFFF.FFFFFFF.......F...F....F.FFFFFFF.FFFFF [ 70%] 1348s FFFFF.FFFF.FFFF.....F...F...F.FFFF.FFF.F...F....FFFFF...FFFFFFFFFFFFFFFF [ 94%] 1349s F.FFF.FFF.FFF..F. [100%] 1349s =================================== FAILURES =================================== 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_001 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_001(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - af_type 1349s - afi 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="evpn", 1349s af_type=[dict(type="signaling", set=True)], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s 1349s commands = [ 1349s '' 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1654: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_002 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_002(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - accepted_prefix_limit 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="evpn", 1349s af_type=[ 1349s dict( 1349s type="signaling", 1349s accepted_prefix_limit=dict( 1349s limit_threshold=98, 1349s idle_timeout_value=2001, 1349s maximum=20, 1349s ), 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "2098" 1349s "2001" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1693: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ____________ TestJunosBgp_globalModule.test_junos_bgp_global_delete ____________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_global_delete(self): 1349s set_module_args(dict(config=dict(), state="deleted")) 1349s 1349s commands = [ 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s "", 1349s '' 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_global.py:436: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_global.py:1862: in main 1349s result = Bgp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1349s config_xmls = self.set_config(existing_bgp_global_facts) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_002_001 _ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_002_001(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - accepted_prefix_limit 1349s forever: true 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="evpn", 1349s af_type=[ 1349s dict( 1349s type="signaling", 1349s accepted_prefix_limit=dict( 1349s maximum=20, 1349s limit_threshold=98, 1349s forever=True, 1349s ), 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "2098" 1349s "" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1733: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ________ TestJunosBgp_globalModule.test_junos_bgp_global_delete_purged _________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_global_delete_purged(self): 1349s set_module_args(dict(config=dict(), state="purged")) 1349s 1349s commands = [ 1349s '', 1349s '', 1349s ] 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_global.py:446: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_global.py:1862: in main 1349s result = Bgp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1349s config_xmls = self.set_config(existing_bgp_global_facts) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_003 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_003(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - add_path 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="evpn", 1349s af_type=[ 1349s dict( 1349s type="signaling", 1349s add_path=dict( 1349s receive=True, 1349s send=dict( 1349s multipath=True, 1349s include_backup_path=1, 1349s path_count=10, 1349s prefix_policy="customer65443", 1349s path_selection_mode=dict( 1349s all_paths=True, 1349s equal_cost_paths=True, 1349s ), 1349s ), 1349s ), 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "10" 1349s "1" 1349s "" 1349s "customer65443" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1782: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _________ TestJunosBgp_globalModule.test_junos_bgp_global_merge_groups _________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_global_merge_groups(self): 1349s """ 1349s description: configure groups attributes: 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s groups=[ 1349s dict( 1349s name="internal", 1349s neighbors=[ 1349s dict( 1349s neighbor_address="11.11.11.11", 1349s peer_as="65534", 1349s out_delay=11, 1349s accept_remote_nexthop=True, 1349s ), 1349s dict( 1349s neighbor_address="11.11.11.12", 1349s peer_as="65534", 1349s out_delay=12, 1349s accept_remote_nexthop=True, 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "internal" 1349s "11.11.11.11" 1349s "65534" 1349s "11" 1349s "11.11.11.12" 1349s "6553412" 1349s "", 1349s '', 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_global.py:513: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_global.py:1862: in main 1349s result = Bgp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1349s config_xmls = self.set_config(existing_bgp_global_facts) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_004 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_004(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - aggregate_label 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="evpn", 1349s af_type=[ 1349s dict( 1349s type="signaling", 1349s aggregate_label=dict( 1349s set=True, 1349s community="cuastomerapn1", 1349s ), 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "cuastomerapn1" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1819: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ____________ TestJunosBgp_globalModule.test_junos_bgp_global_merged ____________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_global_merged(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s damping=True, 1349s description="This is configured with Junos_bgp resource module", 1349s preference="2", 1349s bfd_liveness_detection=dict( 1349s minimum_receive_interval=4, 1349s multiplier=10, 1349s no_adaptation=True, 1349s version="automatic", 1349s ), 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "This is configured with Junos_bgp resource module" 1349s "2" 1349s "4" 1349s "10" 1349s "automatic", 1349s '', 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_global.py:119: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_global.py:1862: in main 1349s result = Bgp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1349s config_xmls = self.set_config(existing_bgp_global_facts) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_005 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_005(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - aigp 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet6", 1349s af_type=[ 1349s dict( 1349s type="labeled-unicast", 1349s aigp=dict(set=True), 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1852: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosBgp_globalModule.test_junos_bgp_global_merged_advertise_bgp_static __ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_global_merged_advertise_bgp_static(self): 1349s """ 1349s configure advertise_bgp_static attributes: 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict(advertise_bgp_static=dict(policy="static-to-bgp")), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "static-to-bgp" 1349s "" 1349s "", 1349s '', 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_global.py:533: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_global.py:1862: in main 1349s result = Bgp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1349s config_xmls = self.set_config(existing_bgp_global_facts) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_globalModule.test_junos_bgp_global_merged_advertise_external ___ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_global_merged_advertise_external(self): 1349s """ 1349s configure advertise_external attributes: 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s advertise_external=dict(set=True, conditional=True), 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "", 1349s '', 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_global.py:554: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_global.py:1862: in main 1349s result = Bgp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1349s config_xmls = self.set_config(existing_bgp_global_facts) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_005_001 _ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_005_001(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - aigp 1349s disable: true 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet6", 1349s af_type=[ 1349s dict( 1349s type="labeled-unicast", 1349s aigp=dict(disable=True), 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1887: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosBgp_globalModule.test_junos_bgp_global_merged_bfd_liveness_detection _ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_global_merged_bfd_liveness_detection(self): 1349s """ 1349s configure bfd_liveness_detection attributes: 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s bfd_liveness_detection=dict( 1349s minimum_receive_interval=8, 1349s no_adaptation=True, 1349s authentication=dict( 1349s algorithm="keyed-md5", 1349s key_chain="junos", 1349s loose_check=True, 1349s ), 1349s detection_time=dict(threshold=1000000), 1349s transmit_interval=dict( 1349s minimum_interval=20, 1349s threshold=100000, 1349s ), 1349s holddown_interval=20, 1349s multiplier=20, 1349s session_mode="multihop", 1349s version="1", 1349s ), 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "keyed-md5junos" 1349s "" 1349s "1000000" 1349s "20" 1349s "208" 1349s "20" 1349s "multihop" 1349s "1" 1349s "", 1349s '', 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_global.py:600: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_global.py:1862: in main 1349s result = Bgp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1349s config_xmls = self.set_config(existing_bgp_global_facts) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_006 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_006(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - aigp 1349s damping: true 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet6", 1349s af_type=[ 1349s dict(type="labeled-unicast", damping=True), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1918: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_globalModule.test_junos_bgp_global_merged_bgp_error_tolerance __ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_global_merged_bgp_error_tolerance(self): 1349s """ 1349s configure bgp_error_tolerance attributes: 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s bgp_error_tolerance=dict( 1349s set=True, 1349s malformed_route_limit=10, 1349s malformed_update_log_interval=15, 1349s no_malformed_route_limit=True, 1349s ), 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "10" 1349s "15" 1349s "" 1349s "", 1349s '', 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_global.py:628: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_global.py:1862: in main 1349s result = Bgp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1349s config_xmls = self.set_config(existing_bgp_global_facts) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_007 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_007(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - aigp 1349s defer_initial_multipath_build 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet6", 1349s af_type=[ 1349s dict( 1349s type="labeled-unicast", 1349s defer_initial_multipath_build=dict( 1349s set=True, 1349s ), 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1954: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __________ TestJunosBgp_globalModule.test_junos_bgp_global_merged_bmp __________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_global_merged_bmp(self): 1349s """ 1349s configure bmp attributes: 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s bmp=dict( 1349s monitor=True, 1349s route_monitoring=dict( 1349s none=True, 1349s post_policy=True, 1349s post_policy_exclude_non_eligible=True, 1349s pre_policy=True, 1349s post_policy_exclude_non_feasible=True, 1349s ), 1349s ), 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "enable" 1349s "" 1349s "", 1349s '', 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_global.py:659: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_global.py:1862: in main 1349s result = Bgp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1349s config_xmls = self.set_config(existing_bgp_global_facts) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_007_001 _ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_007_001(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s defer_initial_multipath_build 1349s maximum_delay 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet6", 1349s af_type=[ 1349s dict( 1349s type="labeled-unicast", 1349s defer_initial_multipath_build=dict( 1349s maximum_delay=1200, 1349s ), 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "1200" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1991: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _________ TestJunosBgp_globalModule.test_junos_bgp_global_merged_bmp_2 _________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_global_merged_bmp_2(self): 1349s """ 1349s configure bmp attributes: 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s bmp=dict( 1349s monitor=False, 1349s route_monitoring=dict( 1349s none=False, 1349s post_policy=False, 1349s post_policy_exclude_non_eligible=False, 1349s pre_policy=False, 1349s post_policy_exclude_non_feasible=False, 1349s ), 1349s ), 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "disable" 1349s "", 1349s '', 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_global.py:689: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_global.py:1862: in main 1349s result = Bgp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1349s config_xmls = self.set_config(existing_bgp_global_facts) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_008 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_008(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - delay_route_advertisements 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet6", 1349s af_type=[ 1349s dict( 1349s type="labeled-unicast", 1349s delay_route_advertisements=dict( 1349s set=True, 1349s max_delay_route_age=12000, 1349s max_delay_routing_uptime=12000, 1349s min_delay_inbound_convergence=8000, 1349s min_delay_routing_uptime=8000, 1349s ), 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "1200012000" 1349s "8000" 1349s "8000" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2033: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _______ TestJunosBgp_globalModule.test_junos_bgp_global_merged_egress_te _______ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_global_merged_egress_te(self): 1349s """ 1349s configure egress_te attributes: 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict(egress_te=dict(set=True, backup_path="sample")), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "sample" 1349s "", 1349s '', 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_global.py:708: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_global.py:1862: in main 1349s result = Bgp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1349s config_xmls = self.set_config(existing_bgp_global_facts) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_009 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_009(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - entropy_label 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet", 1349s af_type=[ 1349s dict( 1349s type="labeled-unicast", 1349s entropy_label=dict( 1349s set=True, 1349s no_next_hop_validation=True, 1349s ), 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2070: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosBgp_globalModule.test_junos_bgp_global_merged_egress_te_backup_paths _ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_global_merged_egress_te_backup_paths(self): 1349s """ 1349s configure egress_te_backup_paths attributes: 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s egress_te_backup_paths=dict( 1349s templates=[ 1349s dict( 1349s path_name="temp", 1349s ip_forward=dict(set=True, rti_name="sample"), 1349s peers=["10.10.10.10", "11.11.11.11"], 1349s remote_nexthop="11.1.1.1", 1349s ), 1349s ], 1349s ), 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "temp" 1349s "10.10.10.1011.11.11.11" 1349s "11.1.1.1" 1349s "" 1349s "", 1349s '', 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_global.py:741: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_global.py:1862: in main 1349s result = Bgp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1349s config_xmls = self.set_config(existing_bgp_global_facts) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _____ TestJunosBgp_globalModule.test_junos_bgp_global_merged_groups_allow ______ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_global_merged_groups_allow(self): 1349s """ 1349s configure allow attributes: 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s groups=[dict(name="internal", allow=["all", "1.1.1.0/24"])], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "internalall" 1349s "1.1.1.0/24" 1349s "", 1349s '', 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_global.py:763: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_global.py:1862: in main 1349s result = Bgp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1349s config_xmls = self.set_config(existing_bgp_global_facts) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_010 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_010(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - explicit_null 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet", 1349s af_type=[ 1349s dict( 1349s type="labeled-unicast", 1349s explicit_null=dict( 1349s set=True, 1349s connected_only=True, 1349s ), 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2107: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ______ TestJunosBgp_globalModule.test_junos_bgp_global_merged_idempotent _______ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_global_merged_idempotent(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s accept_remote_nexthop=True, 1349s advertise_from_main_vpn_tables=True, 1349s advertise_inactive=True, 1349s as_number="65432", 1349s authentication_algorithm="md5", 1349s bgp_error_tolerance=dict(malformed_route_limit=30000000), 1349s damping=True, 1349s description="This is configured with Junos_bgp resource module", 1349s hold_time=5, 1349s holddown_all_stale_labels=True, 1349s log_updown=True, 1349s no_advertise_peer_as=True, 1349s no_aggregator_id=True, 1349s out_delay=10, 1349s preference="2", 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_global.py:145: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_global.py:1862: in main 1349s result = Bgp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1349s config_xmls = self.set_config(existing_bgp_global_facts) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_011 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_011(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - extended_nexthop 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet", 1349s af_type=[ 1349s dict(type="unicast", extended_nexthop=True), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2137: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosBgp_globalModule.test_junos_bgp_global_merged_optimal_route_reflection _ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_global_merged_optimal_route_reflection(self): 1349s """ 1349s configure optimal_route_reflection attributes: 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s groups=[ 1349s dict( 1349s name="internal", 1349s optimal_route_reflection=dict( 1349s igp_backup="test_igp", 1349s igp_primary="test_primary", 1349s ), 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "internal" 1349s "test_igptest_primary" 1349s "" 1349s "", 1349s '', 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_global.py:794: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_global.py:1862: in main 1349s result = Bgp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1349s config_xmls = self.set_config(existing_bgp_global_facts) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_012 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_012(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - extended_nexthop_color 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet6", 1349s af_type=[ 1349s dict( 1349s type="unicast", 1349s extended_nexthop_color=True, 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2170: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ____ TestJunosBgp_globalModule.test_junos_bgp_global_merged_routing_options ____ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_global_merged_routing_options(self): 1349s """ 1349s configure routing-options attributes: 1349s - loops 1349s - as_number 1349s - asdot_notation 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict(as_number="65432", loops=5, asdot_notation=True), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "", 1349s '' 1349s "654325" 1349s "", 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_global.py:469: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_global.py:1862: in main 1349s result = Bgp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1349s config_xmls = self.set_config(existing_bgp_global_facts) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_013 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_013(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - graceful_restart_forwarding_state_bit: from-fib 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet", 1349s af_type=[ 1349s dict( 1349s type="unicast", 1349s graceful_restart_forwarding_state_bit="from-fib", 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "from-fib" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2204: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_013_001 _ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_013_001(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - graceful_restart_forwarding_state_bit: set 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet", 1349s af_type=[ 1349s dict( 1349s type="unicast", 1349s graceful_restart_forwarding_state_bit="set", 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "set" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2238: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_014 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_014(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - local_ipv4_address 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet", 1349s af_type=[ 1349s dict( 1349s type="unicast", 1349s local_ipv4_address="11.11.11.11", 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "11.11.11.11" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2271: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ___________ TestJunosBgp_globalModule.test_junos_bgp_global_rendered ___________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_global_rendered(self): 1349s """ 1349s :return: 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s description="This is configured with Junos_bgp resource module", 1349s groups=[dict(name="internal", out_delay=22)], 1349s hold_time=4, 1349s holddown_all_stale_labels=True, 1349s include_mp_next_hop=True, 1349s log_updown=True, 1349s loops=5, 1349s keep="all", 1349s mtu_discovery=True, 1349s out_delay=10, 1349s preference="2", 1349s ), 1349s state="rendered", 1349s ), 1349s ) 1349s 1349s rendered = ( 1349s '' 1349s "" 1349s "" 1349s "This is configured with Junos_bgp resource module" 1349s "4all2" 1349s "10" 1349s "internal22" 1349s "" 1349s ) 1349s > result = self.execute_module(changed=False) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_global.py:295: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_global.py:1862: in main 1349s result = Bgp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:94: in execute_module 1349s config_xmls = self.set_config(existing_bgp_global_facts) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_015 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_015(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - legacy_redirect_ip_action 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet", 1349s af_type=[ 1349s dict( 1349s type="flow", 1349s legacy_redirect_ip_action=dict( 1349s set=True, 1349s send=True, 1349s receive=True, 1349s ), 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2309: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ________ TestJunosBgp_globalModule.test_junos_bgp_global_rendered_empty ________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_global_rendered_empty(self): 1349s """ 1349s :return: 1349s """ 1349s set_module_args(dict(config=dict(description=""), state="rendered")) 1349s rendered = "" 1349s > result = self.execute_module(changed=False) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_global.py:304: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_global.py:1862: in main 1349s result = Bgp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:94: in execute_module 1349s config_xmls = self.set_config(existing_bgp_global_facts) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_016 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_016(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - loops 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict(afi="inet", af_type=[dict(type="flow", loops=3)]), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "3" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2334: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ___________ TestJunosBgp_globalModule.test_junos_bgp_global_replaced ___________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_global_replaced(self): 1349s """ 1349s :return: 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s accept_remote_nexthop=True, 1349s advertise_from_main_vpn_tables=True, 1349s advertise_inactive=True, 1349s as_number="65432", 1349s authentication_algorithm="md5", 1349s bgp_error_tolerance=dict(malformed_route_limit=20000000), 1349s damping=True, 1349s description="This is configured with Junos_bgp resource module", 1349s groups=[ 1349s dict(name="internal", out_delay=22), 1349s dict(name="external", out_delay=20), 1349s ], 1349s hold_time=4, 1349s holddown_all_stale_labels=True, 1349s log_updown=True, 1349s keep="all", 1349s mtu_discovery=True, 1349s no_precision_timers=True, 1349s no_advertise_peer_as=True, 1349s no_aggregator_id=True, 1349s out_delay=10, 1349s preference="2", 1349s ), 1349s state="replaced", 1349s ), 1349s ) 1349s 1349s commands = [ 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s '' 1349s "" 1349s "" 1349s "" 1349s "" 1349s "md5" 1349s "This is configured with Junos_bgp resource module" 1349s "4all2" 1349s "10" 1349s "20000000" 1349s "internal" 1349s "22external" 1349s "20", 1349s '' 1349s '' 1349s "65432", 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_global.py:233: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_global.py:1862: in main 1349s result = Bgp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1349s config_xmls = self.set_config(existing_bgp_global_facts) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_017 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_017(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - no_install 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet", 1349s af_type=[dict(type="flow", no_install=True)], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2362: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _____ TestJunosBgp_globalModule.test_junos_bgp_global_replaced_idempotent ______ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_global_replaced_idempotent(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s accept_remote_nexthop=True, 1349s advertise_from_main_vpn_tables=True, 1349s advertise_inactive=True, 1349s as_number="65432", 1349s authentication_algorithm="md5", 1349s bgp_error_tolerance=dict(malformed_route_limit=30000000), 1349s damping=True, 1349s description="This is configured with Junos_bgp resource module", 1349s hold_time=5, 1349s holddown_all_stale_labels=True, 1349s log_updown=True, 1349s no_advertise_peer_as=True, 1349s no_aggregator_id=True, 1349s out_delay=10, 1349s preference="2", 1349s ), 1349s state="replaced", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_global.py:259: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_global.py:1862: in main 1349s result = Bgp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1349s config_xmls = self.set_config(existing_bgp_global_facts) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_018 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_018(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - no_validate 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet", 1349s af_type=[dict(type="flow", no_validate="sample")], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "sample" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2390: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_019 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_019(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - output_queue_priority_expedited 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet", 1349s af_type=[ 1349s dict( 1349s type="flow", 1349s output_queue_priority_expedited=True, 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2423: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_020 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_020(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - output_queue_priority_priority 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet", 1349s af_type=[ 1349s dict( 1349s type="flow", 1349s output_queue_priority_priority=15, 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "15" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2457: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_021 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_021(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - per_group_label 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet6", 1349s af_type=[ 1349s dict( 1349s type="labeled-unicast", 1349s per_group_label=True, 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2490: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_022 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_022(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - per_prefix_label 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet", 1349s af_type=[ 1349s dict( 1349s type="labeled-unicast", 1349s per_prefix_label=True, 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2523: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_023 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_023(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - prefix_limit 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet", 1349s af_type=[ 1349s dict( 1349s type="labeled-unicast", 1349s prefix_limit=dict( 1349s maximum=4294967290, 1349s teardown=True, 1349s limit_threshold=22, 1349s idle_timeout=True, 1349s idle_timeout_value=2200, 1349s ), 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "4294967290222200" 1349s "" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2564: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_023_001 _ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_023_001(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - prefix_limit 1349s forever: true 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet", 1349s af_type=[ 1349s dict( 1349s type="labeled-unicast", 1349s prefix_limit=dict( 1349s teardown=True, 1349s forever=True, 1349s ), 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2602: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _________ TestJunosL3InterfacesModule.test_junos_l3_interfaces_merged __________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_l3_interfaces_merged(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="ge-0/0/1", 1349s ipv4=[ 1349s dict(address="100.64.0.1/10"), 1349s dict(address="100.64.0.2/10"), 1349s ], 1349s ), 1349s ], 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "ge-0/0/10" 1349s "100.64.0.1/10" 1349s "100.64.0.2/10" 1349s "", 1349s ] 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:113: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_l3_interfaces.py:1021: in main 1349s result = L3_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:103: in execute_module 1349s config_xmls = self.set_config(existing_l3_interfaces_facts) 1349s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ____ TestJunosL3InterfacesModule.test_junos_l3_interfaces_merged_idempotent ____ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_l3_interfaces_merged_idempotent(self): 1349s self.get_config.return_value = load_fixture( 1349s "junos_interfaces_config.xml", 1349s ) 1349s src = load_fixture("junos_l3_interfaces.cfg", content="str") 1349s set_module_args(dict(src=src)) 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="ge-0/0/1", 1349s ipv4=[ 1349s dict(address="100.64.0.1/10"), 1349s dict(address="100.64.0.2/10"), 1349s ], 1349s ), 1349s ], 1349s state="merged", 1349s ), 1349s ) 1349s > self.execute_module(changed=False, commands=[]) 1349s 1349s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:136: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_l3_interfaces.py:1021: in main 1349s result = L3_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:103: in execute_module 1349s config_xmls = self.set_config(existing_l3_interfaces_facts) 1349s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_024 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_024(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - resolve_vpn 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet", 1349s af_type=[ 1349s dict(type="labeled-unicast", resolve_vpn=True), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2632: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _______ TestJunosL3InterfacesModule.test_junos_l3_interfaces_overridden ________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_l3_interfaces_overridden(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="ge-0/0/1", 1349s ipv4=[ 1349s dict(address="100.64.0.1/10"), 1349s dict(address="100.64.0.2/10"), 1349s ], 1349s ), 1349s ], 1349s state="overridden", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "ge-0/0/10" 1349s "100.64.0.1/10" 1349s "100.64.0.2/10" 1349s "", 1349s ] 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:208: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_l3_interfaces.py:1021: in main 1349s result = L3_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:103: in execute_module 1349s config_xmls = self.set_config(existing_l3_interfaces_facts) 1349s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_025 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_025(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - rib 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet6", 1349s af_type=[ 1349s dict(type="labeled-unicast", rib="inet.3"), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2662: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosL3InterfacesModule.test_junos_l3_interfaces_overridden_idempotent __ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_l3_interfaces_overridden_idempotent(self): 1349s self.get_config.return_value = load_fixture( 1349s "junos_interfaces_config.xml", 1349s ) 1349s src = load_fixture("junos_l3_interfaces.cfg", content="str") 1349s set_module_args(dict(src=src)) 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="ge-0/0/1", 1349s ipv4=[ 1349s dict(address="100.64.0.1/10"), 1349s dict(address="100.64.0.2/10"), 1349s ], 1349s ), 1349s ], 1349s state="overridden", 1349s ), 1349s ) 1349s > self.execute_module(changed=False, commands=[]) 1349s 1349s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:232: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_l3_interfaces.py:1021: in main 1349s result = L3_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:103: in execute_module 1349s config_xmls = self.set_config(existing_l3_interfaces_facts) 1349s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_026 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_026(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - ribgroup_name 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet6", 1349s af_type=[ 1349s dict( 1349s type="labeled-unicast", 1349s ribgroup_name="inet3", 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "inet3" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2695: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ________ TestJunosL3InterfacesModule.test_junos_l3_interfaces_rendered _________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_l3_interfaces_rendered(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="ge-0/0/1", 1349s ipv4=[ 1349s dict(address="100.64.0.1/10"), 1349s dict(address="100.64.0.2/10"), 1349s ], 1349s ), 1349s ], 1349s state="rendered", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "ge-0/0/10" 1349s "100.64.0.1/10" 1349s "100.64.0.2/10" 1349s "", 1349s ] 1349s > self.execute_module(changed=False, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:256: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_l3_interfaces.py:1021: in main 1349s result = L3_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:96: in execute_module 1349s config_xmls = self.set_config(existing_l3_interfaces_facts) 1349s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ________ TestJunosL3InterfacesModule.test_junos_l3_interfaces_replaced _________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_l3_interfaces_replaced(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="ge-0/0/2", 1349s ipv4=[ 1349s dict(address="100.64.0.1/10"), 1349s dict(address="100.64.0.2/10"), 1349s ], 1349s ), 1349s ], 1349s state="replaced", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "ge-0/0/20" 1349s "100.64.0.1/10" 1349s "100.64.0.2/10" 1349s "", 1349s ] 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:160: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_l3_interfaces.py:1021: in main 1349s result = L3_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:103: in execute_module 1349s config_xmls = self.set_config(existing_l3_interfaces_facts) 1349s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_027 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_027(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - route_refresh_priority_expedited 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet6", 1349s af_type=[ 1349s dict( 1349s type="labeled-unicast", 1349s route_refresh_priority_expedited=True, 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2729: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ___ TestJunosL3InterfacesModule.test_junos_l3_interfaces_replaced_idempotent ___ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_l3_interfaces_replaced_idempotent(self): 1349s self.get_config.return_value = load_fixture( 1349s "junos_interfaces_config.xml", 1349s ) 1349s src = load_fixture("junos_l3_interfaces.cfg", content="str") 1349s set_module_args(dict(src=src)) 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="ge-0/0/1", 1349s ipv4=[ 1349s dict(address="100.64.0.1/10"), 1349s dict(address="100.64.0.2/10"), 1349s ], 1349s ), 1349s ], 1349s state="merged", 1349s ), 1349s ) 1349s > self.execute_module(changed=False, commands=[]) 1349s 1349s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:184: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_l3_interfaces.py:1021: in main 1349s result = L3_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:103: in execute_module 1349s config_xmls = self.set_config(existing_l3_interfaces_facts) 1349s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_028 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_028(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - route_refresh_priority_priority 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet6", 1349s af_type=[ 1349s dict( 1349s type="labeled-unicast", 1349s route_refresh_priority_priority=15, 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "15" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2763: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ___ TestJunosLogging_globalModule.test_junos_logging_global_deleted_user_11 ____ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_logging_global_deleted_user_11(self): 1349s set_module_args(dict(config=dict(), state="deleted")) 1349s commands = [ 1349s '' 1349s '', 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_logging_global.py:381: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_logging_global.py:1738: in main 1349s result = Logging_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1349s config_xmls = self.set_config(existing_logging_global_facts) 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1349s self.root = build_root_xml_node("system") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_029 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_029(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - secondary_independent_resolution 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s address_family=[ 1349s dict( 1349s afi="inet", 1349s af_type=[ 1349s dict( 1349s type="flow", 1349s secondary_independent_resolution=True, 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2796: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ______ TestJunosLogging_globalModule.test_junos_logging_global_merged_07 _______ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_logging_global_merged_07(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s allow_duplicates=True, 1349s routing_instance="inst11", 1349s log_rotate_frequency=45, 1349s source_address="33.33.33.33", 1349s time_format=dict(millisecond=True, year=True), 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "45" 1349s "inst1133.33.33.33" 1349s "", 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_logging_global.py:275: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_logging_global.py:1738: in main 1349s result = Logging_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1349s config_xmls = self.set_config(existing_logging_global_facts) 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1349s self.root = build_root_xml_node("system") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_030 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_030(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - groups: 1349s address_family: 1349s topology 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s groups=[ 1349s dict( 1349s name="ebgp", 1349s address_family=[ 1349s dict( 1349s afi="inet", 1349s af_type=[ 1349s dict( 1349s type="unicast", 1349s topology=[ 1349s dict( 1349s name="voice", 1349s community=["target:40:40"], 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "ebgp" 1349s "voice" 1349s "target:40:40" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2843: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosLogging_globalModule.test_junos_logging_global_merged_archive_01 ___ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_logging_global_merged_archive_01(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s archive=dict( 1349s set=True, 1349s files=10, 1349s file_size=65578, 1349s no_binary_data=True, 1349s no_world_readable=True, 1349s ), 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "10" 1349s "65578" 1349s "", 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_logging_global.py:111: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_logging_global.py:1738: in main 1349s result = Logging_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1349s config_xmls = self.set_config(existing_logging_global_facts) 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1349s self.root = build_root_xml_node("system") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_033 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_config_033(self): 1349s """ 1349s This function generate the commands to configure attributes: 1349s - groups: 1349s address_family: 1349s topology 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s groups=[ 1349s dict( 1349s name="ebgp", 1349s neighbors=[ 1349s dict( 1349s neighbor_address="14.14.14.14", 1349s address_family=[ 1349s dict( 1349s afi="inet", 1349s af_type=[ 1349s dict( 1349s type="unicast", 1349s no_install=True, 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "ebgp" 1349s "14.14.14.14" 1349s "" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2958: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosLogging_globalModule.test_junos_logging_global_merged_console_02 ___ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_logging_global_merged_console_02(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s console=dict( 1349s any=dict(level="info"), 1349s authorization=dict(level="any"), 1349s change_log=dict(level="critical"), 1349s ftp=dict(level="none"), 1349s ), 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_logging_global.py:128: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_logging_global.py:1738: in main 1349s result = Logging_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1349s config_xmls = self.set_config(existing_logging_global_facts) 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1349s self.root = build_root_xml_node("system") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_deleted_031 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_deleted_031(self): 1349s """ 1349s This function generate the commands to to delete bgp_address family completely: 1349s """ 1349s set_module_args(dict(config=dict(), state="deleted")) 1349s commands = [ 1349s '' 1349s "internal" 1349s "ebgp" 1349s '' 1349s '' 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2861: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ___ TestJunosLogging_globalModule.test_junos_logging_global_merged_files_03 ____ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_logging_global_merged_files_03(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s files=[dict(name="file101", allow_duplicates=True)], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "file101" 1349s "", 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_logging_global.py:160: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_logging_global.py:1738: in main 1349s result = Logging_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1349s config_xmls = self.set_config(existing_logging_global_facts) 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1349s self.root = build_root_xml_node("system") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_deleted_032 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_bgp_address_family_deleted_032(self): 1349s """ 1349s This function generate the commands to to delete bgp_address family completely: 1349s """ 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s groups=[ 1349s dict( 1349s name="ebgp", 1349s address_family=[ 1349s dict( 1349s afi="inet", 1349s af_type=[ 1349s dict( 1349s type="unicast", 1349s topology=[ 1349s dict( 1349s name="voice", 1349s community=["target:40:40"], 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="overridden", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "internal" 1349s '' 1349s "ebgp" 1349s '' 1349s '' 1349s "ebgp" 1349s "voice" 1349s "target:40:40" 1349s "" 1349s "", 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2911: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_bgp_address_family.py:2004: in main 1349s result = Bgp_address_family(module).execute_module() 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1349s config_xmls = self.set_config(existing_bgp_address_family_facts) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ___ TestJunosLogging_globalModule.test_junos_logging_global_merged_files_04 ____ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_logging_global_merged_files_04(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s files=[ 1349s dict( 1349s name="file102", 1349s allow_duplicates=True, 1349s any=dict(level="any"), 1349s structured_data=dict(set=True), 1349s ), 1349s dict( 1349s name="file103", 1349s archive=dict( 1349s set=True, 1349s no_binary_data=True, 1349s files=10, 1349s file_size=65578, 1349s no_world_readable=True, 1349s ), 1349s explicit_priority=True, 1349s match="^set*", 1349s match_strings=["^delete", "^prompt"], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "file102" 1349s "any" 1349s "file103" 1349s "10" 1349s "65578" 1349s "^set*" 1349s "^delete" 1349s "^prompt", 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_logging_global.py:203: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_logging_global.py:1738: in main 1349s result = Logging_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1349s config_xmls = self.set_config(existing_logging_global_facts) 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1349s self.root = build_root_xml_node("system") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ____________ TestJunosHostnameModule.test_junos_hostname_merged_01 _____________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_hostname_merged_01(self): 1349s set_module_args(dict(config=dict(hostname="vsrx"), state="merged")) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_hostname.py:92: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_hostname.py:356: in main 1349s result = Hostname(module).execute_module() 1349s plugins/module_utils/network/junos/config/hostname/hostname.py:102: in execute_module 1349s config_xmls = self.set_config(existing_hostname_facts) 1349s plugins/module_utils/network/junos/config/hostname/hostname.py:140: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/hostname/hostname.py:152: in set_state 1349s self.root = build_root_xml_node("system") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ___ TestJunosLogging_globalModule.test_junos_logging_global_merged_hosts_05 ____ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_logging_global_merged_hosts_05(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s hosts=[ 1349s dict( 1349s name="host222", 1349s exclude_hostname=True, 1349s allow_duplicates=True, 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "host222" 1349s "", 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_logging_global.py:226: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_logging_global.py:1738: in main 1349s result = Logging_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1349s config_xmls = self.set_config(existing_logging_global_facts) 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1349s self.root = build_root_xml_node("system") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __________ TestJunosHostnameModule.test_junos_hostname_overridden_01 ___________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_hostname_overridden_01(self): 1349s set_module_args( 1349s dict(config=dict(hostname="vsrx12"), state="overridden"), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_hostname.py:118: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_hostname.py:356: in main 1349s result = Hostname(module).execute_module() 1349s plugins/module_utils/network/junos/config/hostname/hostname.py:102: in execute_module 1349s config_xmls = self.set_config(existing_hostname_facts) 1349s plugins/module_utils/network/junos/config/hostname/hostname.py:140: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/hostname/hostname.py:152: in set_state 1349s self.root = build_root_xml_node("system") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosLogging_globalModule.test_junos_logging_global_merged_hosts_idempotent_06 _ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_logging_global_merged_hosts_idempotent_06(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s hosts=[ 1349s dict( 1349s name="host111", 1349s exclude_hostname=True, 1349s allow_duplicates=True, 1349s any=dict(level="any"), 1349s structured_data=dict(set=True, brief=True), 1349s facility_override="ftp", 1349s log_prefix="field", 1349s match="^set*", 1349s match_strings=["^delete", "^prompt"], 1349s port=1231, 1349s routing_instance="inst11", 1349s source_address="11.11.11.11", 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_logging_global.py:253: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_logging_global.py:1738: in main 1349s result = Logging_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1349s config_xmls = self.set_config(existing_logging_global_facts) 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1349s self.root = build_root_xml_node("system") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _____________ TestJunosHostnameModule.test_junos_hostname_rendered _____________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_hostname_rendered(self): 1349s set_module_args(dict(config=dict(hostname="vsrx10"), state="rendered")) 1349s rendered = ( 1349s '' 1349s "vsrx10" 1349s ) 1349s > result = self.execute_module(changed=False) 1349s 1349s tests/unit/modules/network/junos/test_junos_hostname.py:139: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_hostname.py:356: in main 1349s result = Hostname(module).execute_module() 1349s plugins/module_utils/network/junos/config/hostname/hostname.py:96: in execute_module 1349s config_xmls = self.set_config(existing_hostname_facts) 1349s plugins/module_utils/network/junos/config/hostname/hostname.py:140: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/hostname/hostname.py:152: in set_state 1349s self.root = build_root_xml_node("system") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ____ TestJunosLogging_globalModule.test_junos_logging_global_merged_user_08 ____ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_logging_global_merged_user_08(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s users=[ 1349s dict(name="user1", allow_duplicates=True), 1349s dict( 1349s name="user2", 1349s allow_duplicates=True, 1349s any=dict(level="any"), 1349s user=dict(level="info"), 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_logging_global.py:295: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_logging_global.py:1738: in main 1349s result = Logging_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1349s config_xmls = self.set_config(existing_logging_global_facts) 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1349s self.root = build_root_xml_node("system") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _____________ TestJunosHostnameModule.test_junos_hostname_replaced _____________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_hostname_replaced(self): 1349s set_module_args(dict(config=dict(hostname="vsrx12"), state="replaced")) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_hostname.py:144: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_hostname.py:356: in main 1349s result = Hostname(module).execute_module() 1349s plugins/module_utils/network/junos/config/hostname/hostname.py:102: in execute_module 1349s config_xmls = self.set_config(existing_hostname_facts) 1349s plugins/module_utils/network/junos/config/hostname/hostname.py:140: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/hostname/hostname.py:152: in set_state 1349s self.root = build_root_xml_node("system") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ____________ TestJunosInterfacesModule.test_junos_interfaces_delete ____________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_interfaces_delete(self): 1349s set_module_args(dict(config=[dict(name="ge-0/0/2")], state="deleted")) 1349s 1349s commands = [ 1349s '', 1349s ] 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_interfaces.py:226: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_interfaces.py:961: in main 1349s result = Interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 1349s config_xmls = self.set_config(existing_interfaces_facts) 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosLogging_globalModule.test_junos_logging_global_overridden_user_10 __ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_logging_global_overridden_user_10(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s users=[ 1349s dict(name="user1", allow_duplicates=True), 1349s dict( 1349s name="user2", 1349s allow_duplicates=True, 1349s any=dict(level="any"), 1349s user=dict(level="info"), 1349s ), 1349s ], 1349s ), 1349s state="overridden", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_logging_global.py:361: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_logging_global.py:1738: in main 1349s result = Logging_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1349s config_xmls = self.set_config(existing_logging_global_facts) 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1349s self.root = build_root_xml_node("system") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ______ TestJunosInterfacesModule.test_junos_interfaces_delete_idempotent _______ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_interfaces_delete_idempotent(self): 1349s set_module_args(dict(config=[dict(name="ge-0/0/4")], state="deleted")) 1349s > self.execute_module(changed=False, commands=[]) 1349s 1349s tests/unit/modules/network/junos/test_junos_interfaces.py:231: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_interfaces.py:961: in main 1349s result = Interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 1349s config_xmls = self.set_config(existing_interfaces_facts) 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ____________ TestJunosInterfacesModule.test_junos_interfaces_merged ____________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_interfaces_merged(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="ge-0/0/1", 1349s description="This is configured with ansible resource module", 1349s mtu=1024, 1349s speed="100m", 1349s ), 1349s ], 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "ge-0/0/1This is configured with ansible resource module" 1349s "100m1024", 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_interfaces.py:111: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_interfaces.py:961: in main 1349s result = Interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 1349s config_xmls = self.set_config(existing_interfaces_facts) 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _____ TestJunosLogging_globalModule.test_junos_logging_global_rendered_12 ______ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_logging_global_rendered_12(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s archive=dict( 1349s set=True, 1349s files=10, 1349s file_size=65578, 1349s no_binary_data=True, 1349s no_world_readable=True, 1349s ), 1349s ), 1349s state="rendered", 1349s ), 1349s ) 1349s rendered = ( 1349s '' 1349s "10" 1349s "65578" 1349s ) 1349s > result = self.execute_module(changed=False) 1349s 1349s tests/unit/modules/network/junos/test_junos_logging_global.py:404: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_logging_global.py:1738: in main 1349s result = Logging_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:101: in execute_module 1349s config_xmls = self.set_config(existing_logging_global_facts) 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1349s self.root = build_root_xml_node("system") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ______ TestJunosInterfacesModule.test_junos_interfaces_merged_idempotent _______ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_interfaces_merged_idempotent(self): 1349s self.get_config.return_value = load_fixture( 1349s "junos_interfaces_config.xml", 1349s ) 1349s src = load_fixture("junos_interfaces.cfg", content="str") 1349s set_module_args(dict(src=src)) 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="ge-0/0/0", 1349s description="Configured by Ansi-Team", 1349s ), 1349s ], 1349s state="merged", 1349s ), 1349s ) 1349s > self.execute_module(changed=False, commands=[]) 1349s 1349s tests/unit/modules/network/junos/test_junos_interfaces.py:131: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_interfaces.py:961: in main 1349s result = Interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 1349s config_xmls = self.set_config(existing_interfaces_facts) 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ___ TestJunosLogging_globalModule.test_junos_logging_global_replaced_user_09 ___ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_logging_global_replaced_user_09(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s users=[ 1349s dict(name="user1", allow_duplicates=True), 1349s dict( 1349s name="user2", 1349s allow_duplicates=True, 1349s any=dict(level="any"), 1349s user=dict(level="info"), 1349s ), 1349s ], 1349s ), 1349s state="replaced", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_logging_global.py:326: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_logging_global.py:1738: in main 1349s result = Logging_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1349s config_xmls = self.set_config(existing_logging_global_facts) 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1349s self.root = build_root_xml_node("system") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __________ TestJunosInterfacesModule.test_junos_interfaces_overridden __________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_interfaces_overridden(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="ge-0/0/2", 1349s description="This is configured with ansible", 1349s mtu=1024, 1349s speed="100m", 1349s ), 1349s ], 1349s state="overridden", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "ge-0/0/2" 1349s "This is configured with ansible" 1349s "100m1024", 1349s ] 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_interfaces.py:197: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_interfaces.py:961: in main 1349s result = Interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 1349s config_xmls = self.set_config(existing_interfaces_facts) 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ____ TestJunosInterfacesModule.test_junos_interfaces_overridden_idempotent _____ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_interfaces_overridden_idempotent(self): 1349s self.get_config.return_value = load_fixture( 1349s "junos_interfaces_config.xml", 1349s ) 1349s src = load_fixture("junos_interfaces.cfg", content="str") 1349s set_module_args(dict(src=src)) 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="ge-0/0/0", 1349s description="Configured by Ansi-Team", 1349s ), 1349s ], 1349s state="overridden", 1349s ), 1349s ) 1349s 1349s > self.execute_module(changed=False, commands=[]) 1349s 1349s tests/unit/modules/network/junos/test_junos_interfaces.py:218: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_interfaces.py:961: in main 1349s result = Interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 1349s config_xmls = self.set_config(existing_interfaces_facts) 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ___________ TestJunosInterfacesModule.test_junos_interfaces_rendered ___________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_interfaces_rendered(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="ge-0/0/1", 1349s description="This is configured with ansible resource module", 1349s mtu=1024, 1349s speed="100m", 1349s ), 1349s ], 1349s state="rendered", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "ge-0/0/1" 1349s "This is configured with ansible resource module" 1349s "100m" 1349s "1024" 1349s "", 1349s ] 1349s > self.execute_module(changed=False, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_interfaces.py:255: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_interfaces.py:961: in main 1349s result = Interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:92: in execute_module 1349s config_xmls = self.set_config(existing_interfaces_facts) 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __________ TestJunosNtp_globalModule.test_junos_ntp_global_merged_01 ___________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ntp_global_merged_01(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s boot_server="78.46.194.186", 1349s broadcasts=[ 1349s dict( 1349s address="172.16.255.255", 1349s key="50", 1349s ttl=200, 1349s version=3, 1349s routing_instance_name="rt1", 1349s ), 1349s dict( 1349s address="192.16.255.255", 1349s key="50", 1349s ttl=200, 1349s version=3, 1349s routing_instance_name="rt1", 1349s ), 1349s ], 1349s broadcast_client=True, 1349s interval_range=2, 1349s multicast_client="224.0.0.1", 1349s peers=[ 1349s dict(peer="78.44.194.186"), 1349s dict( 1349s peer="172.44.194.186", 1349s key_id="10000", 1349s prefer=True, 1349s version=3, 1349s ), 1349s ], 1349s servers=[ 1349s dict( 1349s server="48.46.194.186", 1349s key_id=34, 1349s prefer=True, 1349s version=2, 1349s routing_instance="rt1", 1349s ), 1349s dict( 1349s server="48.45.194.186", 1349s key_id=34, 1349s prefer=True, 1349s version=2, 1349s ), 1349s ], 1349s source_addresses=[ 1349s dict( 1349s source_address="172.45.194.186", 1349s routing_instance="rt1", 1349s ), 1349s dict( 1349s source_address="171.45.194.186", 1349s routing_instance="rt2", 1349s ), 1349s ], 1349s threshold=dict(action="accept", value=300), 1349s trusted_keys=[dict(key_id=3000), dict(key_id=2000)], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_ntp_global.py:154: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ntp_global.py:1014: in main 1349s result = Ntp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:102: in execute_module 1349s config_xmls = self.set_config(existing_ntp_global_facts) 1349s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:140: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:152: in set_state 1349s self.root = build_root_xml_node("system") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ___________ TestJunosInterfacesModule.test_junos_interfaces_replaced ___________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_interfaces_replaced(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="ge-0/0/2", 1349s description="This is configured with ansible", 1349s mtu=1024, 1349s speed="100m", 1349s ), 1349s ], 1349s state="replaced", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_interfaces.py:147: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_interfaces.py:961: in main 1349s result = Interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 1349s config_xmls = self.set_config(existing_interfaces_facts) 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __________ TestJunosNtp_globalModule.test_junos_ntp_global_merged_02 ___________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ntp_global_merged_02(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s boot_server="78.46.194.186", 1349s authentication_keys=[ 1349s dict(id="2", algorithm="md5", key="asdfghd"), 1349s dict(id="5", algorithm="sha1", key="aasdad"), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_ntp_global.py:189: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ntp_global.py:1014: in main 1349s result = Ntp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:102: in execute_module 1349s config_xmls = self.set_config(existing_ntp_global_facts) 1349s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:140: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:152: in set_state 1349s self.root = build_root_xml_node("system") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _____ TestJunosInterfacesModule.test_junos_interfaces_replaced_idempotent ______ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_interfaces_replaced_idempotent(self): 1349s self.get_config.return_value = load_fixture( 1349s "junos_interfaces_config.xml", 1349s ) 1349s src = load_fixture("junos_interfaces.cfg", content="str") 1349s set_module_args(dict(src=src)) 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="ge-0/0/0", 1349s description="Configured by Ansi-Team", 1349s ), 1349s ], 1349s state="replaced", 1349s ), 1349s ) 1349s 1349s > self.execute_module(changed=False, commands=[]) 1349s 1349s tests/unit/modules/network/junos/test_junos_interfaces.py:175: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_interfaces.py:961: in main 1349s result = Interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 1349s config_xmls = self.set_config(existing_interfaces_facts) 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ________ TestJunosNtp_globalModule.test_junos_ntp_global_overridden_01 _________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ntp_global_overridden_01(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s boot_server="78.46.194.186", 1349s broadcasts=[ 1349s dict( 1349s address="172.16.255.255", 1349s key="50", 1349s ttl=200, 1349s version=3, 1349s routing_instance_name="rt1", 1349s ), 1349s dict( 1349s address="192.16.255.255", 1349s key="50", 1349s ttl=200, 1349s version=3, 1349s routing_instance_name="rt1", 1349s ), 1349s ], 1349s broadcast_client=True, 1349s interval_range=2, 1349s multicast_client="224.0.0.1", 1349s peers=[ 1349s dict(peer="78.44.194.186"), 1349s dict( 1349s peer="172.44.194.186", 1349s key_id="10000", 1349s prefer=True, 1349s version=3, 1349s ), 1349s ], 1349s servers=[ 1349s dict( 1349s server="48.46.194.186", 1349s key_id=34, 1349s prefer=True, 1349s version=2, 1349s routing_instance="rt1", 1349s ), 1349s dict( 1349s server="48.45.194.186", 1349s key_id=34, 1349s prefer=True, 1349s version=2, 1349s ), 1349s ], 1349s source_addresses=[ 1349s dict( 1349s source_address="172.45.194.186", 1349s routing_instance="rt1", 1349s ), 1349s dict( 1349s source_address="171.45.194.186", 1349s routing_instance="rt2", 1349s ), 1349s ], 1349s threshold=dict(action="accept", value=300), 1349s trusted_keys=[dict(key_id=3000), dict(key_id=2000)], 1349s ), 1349s state="overridden", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_ntp_global.py:567: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ntp_global.py:1014: in main 1349s result = Ntp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:102: in execute_module 1349s config_xmls = self.set_config(existing_ntp_global_facts) 1349s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:140: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:152: in set_state 1349s self.root = build_root_xml_node("system") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _________ TestJunosL2InterfacesModule.test_junos_l2_interfaces_delete __________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_l2_interfaces_delete(self): 1349s self.get_res_config.return_value = load_fixture( 1349s "junos_interfaces_config.xml", 1349s ) 1349s src = load_fixture("junos_l2_interfaces.cfg", content="str") 1349s set_module_args(dict(src=src)) 1349s set_module_args(dict(config=[dict(name="ge-0/0/1")], state="deleted")) 1349s commands = [ 1349s '' 1349s "ge-0/0/10" 1349s '' 1349s '' 1349s '', 1349s ] 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:234: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_l2_interfaces.py:1057: in main 1349s result = L2_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 1349s config_xmls = self.set_config(existing_l2_interfaces_facts) 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ____ TestJunosL2InterfacesModule.test_junos_l2_interfaces_delete_idempotent ____ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_l2_interfaces_delete_idempotent(self): 1349s set_module_args(dict(config=[dict(name="ge-0/0/3")], state="deleted")) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:239: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_l2_interfaces.py:1057: in main 1349s result = L2_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 1349s config_xmls = self.set_config(existing_l2_interfaces_facts) 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ___________ TestJunosNtp_globalModule.test_junos_ntp_global_rendered ___________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ntp_global_rendered(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s boot_server="78.46.194.186", 1349s authentication_keys=[ 1349s dict(id="2", algorithm="md5", key="asdfghd"), 1349s dict(id="5", algorithm="sha1", key="aasdad"), 1349s ], 1349s ), 1349s state="rendered", 1349s ), 1349s ) 1349s rendered = ( 1349s '' 1349s "2md5" 1349s "asdfghd" 1349s "5sha1aasdad" 1349s "78.46.194.186" 1349s ) 1349s > result = self.execute_module(changed=False) 1349s 1349s tests/unit/modules/network/junos/test_junos_ntp_global.py:631: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ntp_global.py:1014: in main 1349s result = Ntp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:96: in execute_module 1349s config_xmls = self.set_config(existing_ntp_global_facts) 1349s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:140: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:152: in set_state 1349s self.root = build_root_xml_node("system") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _________ TestJunosL2InterfacesModule.test_junos_l2_interfaces_merged __________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_l2_interfaces_merged(self): 1349s set_module_args( 1349s dict( 1349s config=[dict(name="ge-0/0/1", access=dict(vlan="vlan100"))], 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "ge-0/0/10" 1349s "access" 1349s "vlan100" 1349s "" 1349s "", 1349s ] 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:109: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_l2_interfaces.py:1057: in main 1349s result = L2_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 1349s config_xmls = self.set_config(existing_l2_interfaces_facts) 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _________ TestJunosNtp_globalModule.test_junos_ntp_global_replaced_01 __________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ntp_global_replaced_01(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s boot_server="78.46.194.186", 1349s broadcasts=[ 1349s dict( 1349s address="172.16.255.255", 1349s key="50", 1349s ttl=200, 1349s version=3, 1349s routing_instance_name="rt1", 1349s ), 1349s dict( 1349s address="192.16.255.255", 1349s key="50", 1349s ttl=200, 1349s version=3, 1349s routing_instance_name="rt1", 1349s ), 1349s ], 1349s broadcast_client=True, 1349s interval_range=2, 1349s multicast_client="224.0.0.1", 1349s peers=[ 1349s dict(peer="78.44.194.186"), 1349s dict( 1349s peer="172.44.194.186", 1349s key_id="10000", 1349s prefer=True, 1349s version=3, 1349s ), 1349s ], 1349s servers=[ 1349s dict( 1349s server="48.46.194.186", 1349s key_id=34, 1349s prefer=True, 1349s version=2, 1349s routing_instance="rt1", 1349s ), 1349s dict( 1349s server="48.45.194.186", 1349s key_id=34, 1349s prefer=True, 1349s version=2, 1349s ), 1349s ], 1349s source_addresses=[ 1349s dict( 1349s source_address="172.45.194.186", 1349s routing_instance="rt1", 1349s ), 1349s dict( 1349s source_address="171.45.194.186", 1349s routing_instance="rt2", 1349s ), 1349s ], 1349s threshold=dict(action="accept", value=300), 1349s trusted_keys=[dict(key_id=3000), dict(key_id=2000)], 1349s ), 1349s state="replaced", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_ntp_global.py:698: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ntp_global.py:1014: in main 1349s result = Ntp_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:102: in execute_module 1349s config_xmls = self.set_config(existing_ntp_global_facts) 1349s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:140: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:152: in set_state 1349s self.root = build_root_xml_node("system") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ____ TestJunosL2InterfacesModule.test_junos_l2_interfaces_merged_idempotent ____ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_l2_interfaces_merged_idempotent(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict(name="ge-0/0/1", access=dict(vlan="vlan100"), unit=0, enhanced_layer=True), 1349s dict( 1349s name="ge-0/0/2", 1349s trunk=dict(allowed_vlans=["vlan200", "vlan300"], native_vlan="400"), 1349s unit=0, 1349s enhanced_layer=True, 1349s ), 1349s ], 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:146: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_l2_interfaces.py:1057: in main 1349s result = L2_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 1349s config_xmls = self.set_config(existing_l2_interfaces_facts) 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ___________ TestJunosOspfv3Module.test_junos_ospf_interfaces_delete ____________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ospf_interfaces_delete(self): 1349s self.get_connection.return_value = load_fixture( 1349s "junos_ospf_interfaces_config.cfg", 1349s ) 1349s src = load_fixture("junos_ospf_interfaces.cfg", content="str") 1349s set_module_args(dict(src=src)) 1349s set_module_args( 1349s dict( 1349s config=[dict(router_id="10.200.16.75", name="ge-0/0/2.0")], 1349s state="deleted", 1349s ), 1349s ) 1349s 1349s commands = [ 1349s '', 1349s '', 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:303: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ospf_interfaces.py:607: in main 1349s result = Ospf_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 1349s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _______ TestJunosL2InterfacesModule.test_junos_l2_interfaces_overridden ________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_l2_interfaces_overridden(self): 1349s set_module_args( 1349s dict( 1349s config=[dict(name="ge-0/0/1", access=dict(vlan="vlan100"), enhanced_layer=False)], 1349s state="overridden", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "ge-0/0/10" 1349s "access" 1349s "vlan100" 1349s "", 1349s ] 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:199: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_l2_interfaces.py:1057: in main 1349s result = L2_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 1349s config_xmls = self.set_config(existing_l2_interfaces_facts) 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ______ TestJunosOspfv3Module.test_junos_ospf_interfaces_delete_idempotent ______ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ospf_interfaces_delete_idempotent(self): 1349s set_module_args( 1349s dict( 1349s config=[dict(router_id="10.200.16.75", name="ge-0/0/2.0")], 1349s state="deleted", 1349s ), 1349s ) 1349s > self.execute_module(changed=False, commands=[]) 1349s 1349s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:313: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ospf_interfaces.py:607: in main 1349s result = Ospf_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 1349s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosL2InterfacesModule.test_junos_l2_interfaces_overridden_idempotent __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_l2_interfaces_overridden_idempotent(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict(name="ge-0/0/1", access=dict(vlan="vlan100"), unit=0, enhanced_layer=True), 1349s dict( 1349s name="ge-0/0/2", 1349s trunk=dict(allowed_vlans=["vlan200", "vlan300"], native_vlan="400"), 1349s unit=0, 1349s enhanced_layer=True, 1349s ), 1349s ], 1349s state="overridden", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:217: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_l2_interfaces.py:1057: in main 1349s result = L2_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 1349s config_xmls = self.set_config(existing_l2_interfaces_facts) 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ___________ TestJunosOspfv3Module.test_junos_ospf_interfaces_merged ____________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ospf_interfaces_merged(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s router_id="10.200.16.75", 1349s name="ge-0/0/2.0", 1349s address_family=[ 1349s dict( 1349s afi="ipv4", 1349s processes=dict( 1349s area=dict(area_id="0.0.0.2"), 1349s priority=3, 1349s metric=5, 1349s ), 1349s ), 1349s ], 1349s ), 1349s ], 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "0.0.0.2ge-0/0/2.0" 1349s "35", 1349s '' 1349s "10.200.16.75", 1349s ] 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:129: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ospf_interfaces.py:607: in main 1349s result = Ospf_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 1349s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ________ TestJunosL2InterfacesModule.test_junos_l2_interfaces_rendered _________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_l2_interfaces_rendered(self): 1349s set_module_args( 1349s dict( 1349s config=[dict(name="ge-0/0/4", access=dict(vlan="vlan100"))], 1349s state="rendered", 1349s ), 1349s ) 1349s rendered = ( 1349s '' 1349s "ge-0/0/40" 1349s "access" 1349s "vlan100" 1349s "" 1349s ) 1349s > result = self.execute_module(changed=False) 1349s 1349s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:315: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_l2_interfaces.py:1057: in main 1349s result = L2_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:99: in execute_module 1349s config_xmls = self.set_config(existing_l2_interfaces_facts) 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ______ TestJunosOspfv3Module.test_junos_ospf_interfaces_merged_idempotent ______ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ospf_interfaces_merged_idempotent(self): 1349s self.get_connection.return_value = load_fixture( 1349s "junos_ospf_interfaces_config.cfg", 1349s ) 1349s src = load_fixture("junos_ospf_interfaces.cfg", content="str") 1349s set_module_args(dict(src=src)) 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s router_id="10.200.16.77", 1349s name="so-0/0/0.0", 1349s address_family=[ 1349s dict( 1349s afi="ipv4", 1349s processes=dict( 1349s area=dict(area_id="0.0.0.10"), 1349s priority=3, 1349s metric=5, 1349s ), 1349s ), 1349s ], 1349s ), 1349s ], 1349s state="merged", 1349s ), 1349s ) 1349s > self.execute_module(changed=False, commands=[]) 1349s 1349s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:159: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ospf_interfaces.py:607: in main 1349s result = Ospf_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 1349s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ________ TestJunosL2InterfacesModule.test_junos_l2_interfaces_replaced _________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_l2_interfaces_replaced(self): 1349s set_module_args( 1349s dict( 1349s config=[dict(name="ge-0/0/1", access=dict(vlan="vlan100"), enhanced_layer=False)], 1349s state="replaced", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "ge-0/0/10" 1349s "access" 1349s "vlan100" 1349s "", 1349s ] 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:163: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_l2_interfaces.py:1057: in main 1349s result = L2_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 1349s config_xmls = self.set_config(existing_l2_interfaces_facts) 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ___ TestJunosL2InterfacesModule.test_junos_l2_interfaces_replaced_idempotent ___ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_l2_interfaces_replaced_idempotent(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict(name="ge-0/0/1", access=dict(vlan="vlan100"), unit=0, enhanced_layer=True), 1349s dict( 1349s name="ge-0/0/2", 1349s trunk=dict(allowed_vlans=["vlan200", "vlan300"], native_vlan="400"), 1349s unit=0, 1349s enhanced_layer=True, 1349s ), 1349s ], 1349s state="replaced", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:182: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_l2_interfaces.py:1057: in main 1349s result = L2_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 1349s config_xmls = self.set_config(existing_l2_interfaces_facts) 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1349s root = build_root_xml_node("interfaces") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _________ TestJunosOspfv3Module.test_junos_ospf_interfaces_overridden __________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ospf_interfaces_overridden(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s router_id="10.200.16.75", 1349s name="ge-0/0/2.0", 1349s address_family=[ 1349s dict( 1349s afi="ipv4", 1349s processes=dict( 1349s area=dict(area_id="0.0.0.1"), 1349s priority=6, 1349s metric=7, 1349s ), 1349s ), 1349s ], 1349s ), 1349s ], 1349s state="overridden", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "0.0.0.1ge-0/0/2.0" 1349s "67", 1349s '' 1349s "10.200.16.75", 1349s ] 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:252: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ospf_interfaces.py:607: in main 1349s result = Ospf_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 1349s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ____ TestJunosOspfv3Module.test_junos_ospf_interfaces_overridden_idempotent ____ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ospf_interfaces_overridden_idempotent(self): 1349s self.get_connection.return_value = load_fixture( 1349s "junos_ospf_interfaces_config.cfg", 1349s ) 1349s src = load_fixture("junos_ospf_interfaces.cfg", content="str") 1349s set_module_args(dict(src=src)) 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s router_id="10.200.16.75", 1349s name="ge-0/0/2.0", 1349s address_family=[ 1349s dict( 1349s afi="ipv4", 1349s processes=dict( 1349s area=dict(area_id="0.0.0.1"), 1349s priority=6, 1349s metric=7, 1349s ), 1349s ), 1349s ], 1349s ), 1349s ], 1349s state="overridden", 1349s ), 1349s ) 1349s 1349s > self.execute_module(changed=False, commands=[]) 1349s 1349s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:283: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ospf_interfaces.py:607: in main 1349s result = Ospf_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 1349s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ________ TestJunosOspfv3Module.test_junos_ospfv3_overridden_idempotent _________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ospfv3_overridden_idempotent(self): 1349s self.get_connection.return_value = load_fixture( 1349s "junos_ospfv3_config.cfg", 1349s ) 1349s src = load_fixture("junos_ospfv3.cfg", content="str") 1349s set_module_args(dict(src=src)) 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s router_id="30", 1349s areas=[ 1349s dict( 1349s area_id="100", 1349s stub=dict(default_metric=10, set=True), 1349s interfaces=[ 1349s dict( 1349s name="so-0/0/0.0", 1349s priority=3, 1349s metric=5, 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s ], 1349s state="overridden", 1349s ), 1349s ) 1349s 1349s > self.execute_module(changed=False, commands=[]) 1349s 1349s tests/unit/modules/network/junos/test_junos_ospfv3.py:303: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ospfv3.py:748: in main 1349s result = Ospfv3(module).execute_module() 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 1349s config_xmls = self.set_config(existing_ospfv3_facts) 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __________ TestJunosOspfv3Module.test_junos_ospf_interfaces_rendered ___________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ospf_interfaces_rendered(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s router_id="10.200.16.75", 1349s name="ge-0/0/2.0", 1349s address_family=[ 1349s dict( 1349s afi="ipv4", 1349s processes=dict( 1349s area=dict(area_id="0.0.0.1"), 1349s priority=6, 1349s metric=7, 1349s ), 1349s ), 1349s ], 1349s ), 1349s ], 1349s state="rendered", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "0.0.0.1ge-0/0/2.0" 1349s "67", 1349s '' 1349s "10.200.16.75", 1349s ] 1349s > self.execute_module(changed=False, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:344: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ospf_interfaces.py:607: in main 1349s result = Ospf_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:100: in execute_module 1349s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _______________ TestJunosOspfv3Module.test_junos_ospfv3_rendered _______________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ospfv3_rendered(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s router_id="10.200.16.75", 1349s areas=[ 1349s dict( 1349s area_id="0.0.0.100", 1349s stub=dict(default_metric=200, set=True), 1349s interfaces=[ 1349s dict( 1349s name="so-0/0/0.0", 1349s priority=3, 1349s metric=5, 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s ], 1349s state="rendered", 1349s ), 1349s ) 1349s commands = ( 1349s '' 1349s "0.0.0.100so-0/0/0.0" 1349s "35" 1349s "200" 1349s ) 1349s > self.execute_module(changed=False, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_ospfv3.py:403: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ospfv3.py:748: in main 1349s result = Ospfv3(module).execute_module() 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:106: in execute_module 1349s config_xmls = self.set_config(existing_ospfv3_facts) 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __________ TestJunosOspfv3Module.test_junos_ospf_interfaces_replaced ___________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ospf_interfaces_replaced(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s router_id="10.200.16.75", 1349s name="ge-0/0/2.0", 1349s address_family=[ 1349s dict( 1349s afi="ipv4", 1349s processes=dict( 1349s area=dict(area_id="0.0.0.1"), 1349s priority=6, 1349s metric=7, 1349s ), 1349s ), 1349s ], 1349s ), 1349s ], 1349s state="replaced", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:183: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ospf_interfaces.py:607: in main 1349s result = Ospf_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 1349s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _______________ TestJunosOspfv3Module.test_junos_ospfv3_replaced _______________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ospfv3_replaced(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s router_id="10.200.16.75", 1349s areas=[ 1349s dict( 1349s area_id="0.0.0.100", 1349s stub=dict(default_metric=200, set=True), 1349s interfaces=[ 1349s dict( 1349s name="so-0/0/0.0", 1349s priority=3, 1349s metric=5, 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s ], 1349s state="replaced", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_ospfv3.py:189: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ospfv3.py:748: in main 1349s result = Ospfv3(module).execute_module() 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 1349s config_xmls = self.set_config(existing_ospfv3_facts) 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _____ TestJunosOspfv3Module.test_junos_ospf_interfaces_replaced_idempotent _____ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ospf_interfaces_replaced_idempotent(self): 1349s self.get_connection.return_value = load_fixture( 1349s "junos_ospf_interfaces_config.cfg", 1349s ) 1349s src = load_fixture("junos_ospf_interfaces.cfg", content="str") 1349s set_module_args(dict(src=src)) 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s router_id="10.200.16.75", 1349s name="ge-0/0/2.0", 1349s address_family=[ 1349s dict( 1349s afi="ipv4", 1349s processes=dict( 1349s area=dict(area_id="0.0.0.1"), 1349s priority=6, 1349s metric=7, 1349s ), 1349s ), 1349s ], 1349s ), 1349s ], 1349s state="replaced", 1349s ), 1349s ) 1349s 1349s > self.execute_module(changed=False, commands=[]) 1349s 1349s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:221: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ospf_interfaces.py:607: in main 1349s result = Ospf_interfaces(module).execute_module() 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 1349s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _________ TestJunosOspfv3Module.test_junos_ospfv3_replaced_idempotent __________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ospfv3_replaced_idempotent(self): 1349s self.get_connection.return_value = load_fixture( 1349s "junos_ospfv3_config.cfg", 1349s ) 1349s src = load_fixture("junos_ospfv3.cfg", content="str") 1349s set_module_args(dict(src=src)) 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s router_id="30", 1349s areas=[ 1349s dict( 1349s area_id="100", 1349s stub=dict(default_metric=10, set=True), 1349s interfaces=[ 1349s dict( 1349s name="so-0/0/0.0", 1349s priority=3, 1349s metric=5, 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s ], 1349s state="replaced", 1349s ), 1349s ) 1349s 1349s > self.execute_module(changed=False, commands=[]) 1349s 1349s tests/unit/modules/network/junos/test_junos_ospfv3.py:235: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ospfv3.py:748: in main 1349s result = Ospfv3(module).execute_module() 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 1349s config_xmls = self.set_config(existing_ospfv3_facts) 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _______________ TestJunosOspfv2Module.test_junos_ospfv2_deleted ________________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ospfv2_deleted(self): 1349s set_module_args( 1349s dict( 1349s config=[], 1349s state="deleted", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s '0.0.0.1000.0.0.200' 1349s '' 1349s '' 1349s '', 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_ospfv2.py:585: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ospfv2.py:1168: in main 1349s result = Ospfv2(module).execute_module() 1349s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:113: in execute_module 1349s config_xmls = self.set_config(existing_ospf_facts) 1349s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:150: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:163: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ________________ TestJunosOspfv2Module.test_junos_ospfv2_merged ________________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ospfv2_merged(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s router_id="10.200.16.75", 1349s rfc1583compatibility="False", 1349s external_preference=10, 1349s overload=dict( 1349s allow_route_leaking=True, 1349s as_external=True, 1349s stub_network=True, 1349s timeout=1200, 1349s ), 1349s spf_options=dict( 1349s delay=3000, 1349s holddown=4000, 1349s rapid_runs=9, 1349s no_ignore_our_externals=True, 1349s ), 1349s prefix_export_limit=30000, 1349s areas=[ 1349s dict( 1349s area_id="0.0.0.100", 1349s stub=dict(default_metric=200, set=True), 1349s area_ranges=[ 1349s dict( 1349s address="10.200.17.0/24", 1349s exact=True, 1349s restrict=True, 1349s override_metric=2000, 1349s ), 1349s ], 1349s interfaces=[ 1349s dict( 1349s name="so-0/0/0.0", 1349s priority=3, 1349s metric=5, 1349s flood_reduction=False, 1349s passive=True, 1349s bandwidth_based_metrics=[ 1349s dict( 1349s bandwidth="1g", 1349s metric=5, 1349s ), 1349s ], 1349s timers=dict( 1349s dead_interval=4, 1349s hello_interval=2, 1349s poll_interval=2, 1349s retransmit_interval=2, 1349s ), 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s ], 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "30004000" 1349s "9" 1349s "1200" 1349s "10" 1349s "30000" 1349s "" 1349s "0.0.0.10010.200.17.0/24" 1349s "2000" 1349s "so-0/0/0.035" 1349s "1g5" 1349s "42" 1349s "22" 1349s "200", 1349s '' 1349s "10.200.16.75", 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_ospfv2.py:188: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ospfv2.py:1168: in main 1349s result = Ospfv2(module).execute_module() 1349s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:113: in execute_module 1349s config_xmls = self.set_config(existing_ospf_facts) 1349s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:150: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:163: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _____________ TestJunosOspfv2Module.test_junos_ospfv2_merged_areas _____________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ospfv2_merged_areas(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s areas=[ 1349s dict( 1349s area_id="0.0.0.100", 1349s stub=dict(default_metric=200, set=True), 1349s area_ranges=[ 1349s dict( 1349s address="10.200.17.0/24", 1349s ), 1349s dict( 1349s address="10.200.18.0/24", 1349s ), 1349s ], 1349s interfaces=[ 1349s dict( 1349s name="so-0/1/0.0", 1349s bandwidth_based_metrics=[ 1349s dict( 1349s bandwidth="1g", 1349s metric=5, 1349s ), 1349s dict( 1349s bandwidth="10g", 1349s metric=5, 1349s ), 1349s ], 1349s ), 1349s dict( 1349s name="so-0/1/0.0", 1349s priority=3, 1349s ), 1349s ], 1349s ), 1349s dict( 1349s area_id="0.0.0.200", 1349s area_range="10.200.20.0/24", 1349s interfaces=[ 1349s dict( 1349s name="so-0/1/0.0", 1349s bandwidth_based_metrics=[ 1349s dict( 1349s bandwidth="1g", 1349s metric=5, 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s ], 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "0.0.0.100" 1349s "10.200.17.0/24" 1349s "10.200.18.0/24" 1349s "so-0/1/0.0" 1349s "1g5" 1349s "10g5" 1349s "so-0/1/0.03" 1349s "200" 1349s "0.0.0.20010.200.20.0/24" 1349s "so-0/1/0.0" 1349s "1g5" 1349s "", 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_ospfv2.py:264: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ospfv2.py:1168: in main 1349s result = Ospfv2(module).execute_module() 1349s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:113: in execute_module 1349s config_xmls = self.set_config(existing_ospf_facts) 1349s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:150: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:163: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ______________ TestJunosOspfv2Module.test_junos_ospfv2_overridden ______________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ospfv2_overridden(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s router_id="10.200.16.75", 1349s rfc1583compatibility="False", 1349s external_preference=10, 1349s overload=dict( 1349s allow_route_leaking=True, 1349s as_external=True, 1349s stub_network=True, 1349s timeout=1200, 1349s ), 1349s spf_options=dict( 1349s delay=3000, 1349s holddown=4000, 1349s rapid_runs=9, 1349s no_ignore_our_externals=True, 1349s ), 1349s prefix_export_limit=30000, 1349s areas=[ 1349s dict( 1349s area_id="0.0.0.100", 1349s stub=dict(default_metric=200, set=True), 1349s area_ranges=[ 1349s dict( 1349s address="10.200.17.0/24", 1349s exact=True, 1349s restrict=True, 1349s override_metric=2000, 1349s ), 1349s ], 1349s interfaces=[ 1349s dict( 1349s name="so-0/0/0.0", 1349s priority=3, 1349s metric=5, 1349s flood_reduction=False, 1349s passive=True, 1349s bandwidth_based_metrics=[ 1349s dict( 1349s bandwidth="1g", 1349s metric=5, 1349s ), 1349s ], 1349s timers=dict( 1349s dead_interval=4, 1349s hello_interval=2, 1349s poll_interval=2, 1349s retransmit_interval=2, 1349s ), 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s ], 1349s state="overridden", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s '0.0.0.100' 1349s '0.0.0.200' 1349s '' 1349s '' 1349s '' 1349s "30004000" 1349s "9" 1349s "1200" 1349s "" 1349s "10" 1349s "30000" 1349s "0.0.0.100" 1349s "10.200.17.0/24" 1349s "2000" 1349s "so-0/0/0.035" 1349s "" 1349s "1g5" 1349s "42" 1349s "22" 1349s "200" 1349s "", 1349s '' 1349s "10.200.16.75", 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_ospfv2.py:568: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ospfv2.py:1168: in main 1349s result = Ospfv2(module).execute_module() 1349s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:113: in execute_module 1349s config_xmls = self.set_config(existing_ospf_facts) 1349s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:150: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:163: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ________ TestJunosPrefix_listsModule.test_junos_prefix_lists_merged_01 _________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_prefix_lists_merged_01(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="Internal", 1349s address_prefixes=["172.16.1.32", "172.16.3.32"], 1349s ), 1349s dict(name="Test1", dynamic_db=True), 1349s dict( 1349s name="Test2", 1349s address_prefixes=[ 1349s "172.16.2.32", 1349s "172.16.7.32", 1349s "172.16.9.32", 1349s ], 1349s ), 1349s ], 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "Internal" 1349s "172.16.1.32" 1349s "172.16.3.32" 1349s "" 1349s "Test1" 1349s "Test2" 1349s "172.16.2.32" 1349s "172.16.7.32" 1349s "" 1349s "172.16.9.32" 1349s "", 1349s ] 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_prefix_lists.py:125: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_prefix_lists.py:653: in main 1349s result = Prefix_lists(module).execute_module() 1349s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:104: in execute_module 1349s config_xmls = self.set_config(existing_prefix_lists_facts) 1349s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 1349s self.root = build_root_xml_node("policy-options") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _______________ TestJunosOspfv2Module.test_junos_ospfv2_rendered _______________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ospfv2_rendered(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s router_id="10.200.16.75", 1349s rfc1583compatibility="False", 1349s external_preference=10, 1349s overload=dict( 1349s allow_route_leaking=True, 1349s as_external=True, 1349s stub_network=True, 1349s timeout=1200, 1349s ), 1349s spf_options=dict( 1349s delay=3000, 1349s holddown=4000, 1349s rapid_runs=9, 1349s no_ignore_our_externals=True, 1349s ), 1349s prefix_export_limit=30000, 1349s areas=[ 1349s dict( 1349s area_id="0.0.0.100", 1349s stub=dict(default_metric=200, set=True), 1349s area_ranges=[ 1349s dict( 1349s address="10.200.17.0/24", 1349s exact=True, 1349s restrict=True, 1349s override_metric=2000, 1349s ), 1349s ], 1349s interfaces=[ 1349s dict( 1349s name="so-0/0/0.0", 1349s priority=3, 1349s metric=5, 1349s flood_reduction=False, 1349s passive=True, 1349s bandwidth_based_metrics=[ 1349s dict( 1349s bandwidth="1g", 1349s metric=5, 1349s ), 1349s ], 1349s timers=dict( 1349s dead_interval=4, 1349s hello_interval=2, 1349s poll_interval=2, 1349s retransmit_interval=2, 1349s ), 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s ], 1349s state="rendered", 1349s ), 1349s ) 1349s rendered = ( 1349s '' 1349s "30004000" 1349s "9" 1349s "1200" 1349s "" 1349s "10" 1349s "30000" 1349s "0.0.0.100" 1349s "10.200.17.0/24" 1349s "2000" 1349s "so-0/0/0.0" 1349s "35" 1349s "1g" 1349s "5" 1349s "42" 1349s "2" 1349s "2" 1349s "200" 1349s "" 1349s ) 1349s > result = self.execute_module(changed=False) 1349s 1349s tests/unit/modules/network/junos/test_junos_ospfv2.py:807: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ospfv2.py:1168: in main 1349s result = Ospfv2(module).execute_module() 1349s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:106: in execute_module 1349s config_xmls = self.set_config(existing_ospf_facts) 1349s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:150: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:163: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ___ TestJunosPrefix_listsModule.test_junos_prefix_lists_merged_idempotent_01 ___ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_prefix_lists_merged_idempotent_01(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict(name="customer_64510"), 1349s dict( 1349s name="customer_64500", 1349s dynamic_db=True, 1349s address_prefixes=["172.16.1.16/28", "172.16.1.32/28"], 1349s ), 1349s ], 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_prefix_lists.py:142: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_prefix_lists.py:653: in main 1349s result = Prefix_lists(module).execute_module() 1349s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:104: in execute_module 1349s config_xmls = self.set_config(existing_prefix_lists_facts) 1349s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 1349s self.root = build_root_xml_node("policy-options") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _______________ TestJunosOspfv2Module.test_junos_ospfv2_replaced _______________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ospfv2_replaced(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s router_id="10.200.16.75", 1349s rfc1583compatibility="False", 1349s external_preference=10, 1349s overload=dict( 1349s allow_route_leaking=True, 1349s as_external=True, 1349s stub_network=True, 1349s timeout=1200, 1349s ), 1349s spf_options=dict( 1349s delay=3000, 1349s holddown=4000, 1349s rapid_runs=9, 1349s no_ignore_our_externals=True, 1349s ), 1349s prefix_export_limit=30000, 1349s areas=[ 1349s dict( 1349s area_id="0.0.0.100", 1349s stub=dict(default_metric=200, set=True), 1349s area_ranges=[ 1349s dict( 1349s address="10.200.17.0/24", 1349s exact=True, 1349s restrict=True, 1349s override_metric=2000, 1349s ), 1349s ], 1349s interfaces=[ 1349s dict( 1349s name="so-0/0/0.0", 1349s priority=3, 1349s metric=5, 1349s flood_reduction=False, 1349s passive=True, 1349s bandwidth_based_metrics=[ 1349s dict( 1349s bandwidth="1g", 1349s metric=5, 1349s ), 1349s ], 1349s timers=dict( 1349s dead_interval=4, 1349s hello_interval=2, 1349s poll_interval=2, 1349s retransmit_interval=2, 1349s ), 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s ], 1349s state="replaced", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s '0.0.0.1000.0.0.200' 1349s '' 1349s '' 1349s '' 1349s "300040009" 1349s "1200" 1349s "" 1349s "1030000" 1349s "0.0.0.10010.200.17.0/24" 1349s "2000" 1349s "so-0/0/0.035" 1349s "1g5" 1349s "42" 1349s "22" 1349s "200", 1349s '' 1349s "10.200.16.75", 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_ospfv2.py:478: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ospfv2.py:1168: in main 1349s result = Ospfv2(module).execute_module() 1349s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:113: in execute_module 1349s config_xmls = self.set_config(existing_ospf_facts) 1349s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:150: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:163: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ______ TestJunosPrefix_listsModule.test_junos_prefix_lists_overridden_01 _______ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_prefix_lists_overridden_01(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="customer_65500", 1349s address_prefixes=["172.16.2.16/28", "172.16.1.32/28"], 1349s ), 1349s ], 1349s state="overridden", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s 'customer_64510' 1349s 'customer_64500' 1349s "customer_65500" 1349s "172.16.2.16/28" 1349s "172.16.1.32/28" 1349s "", 1349s ] 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_prefix_lists.py:217: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_prefix_lists.py:653: in main 1349s result = Prefix_lists(module).execute_module() 1349s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:104: in execute_module 1349s config_xmls = self.set_config(existing_prefix_lists_facts) 1349s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 1349s self.root = build_root_xml_node("policy-options") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ________________ TestJunosOspfv3Module.test_junos_ospfv3_delete ________________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ospfv3_delete(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s router_id="10.200.16.75", 1349s areas=[ 1349s dict( 1349s area_id="0.0.0.100", 1349s stub=dict(default_metric=200, set=True), 1349s interfaces=[dict(name="so-0/0/0.0")], 1349s ), 1349s ], 1349s ), 1349s ], 1349s state="deleted", 1349s ), 1349s ) 1349s 1349s commands = [ 1349s '' 1349s "0.0.0.100so-0/0/0.0" 1349s "200", 1349s '' 1349s "10.200.16.75", 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_ospfv3.py:332: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ospfv3.py:748: in main 1349s result = Ospfv3(module).execute_module() 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 1349s config_xmls = self.set_config(existing_ospfv3_facts) 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosPrefix_listsModule.test_junos_prefix_lists_overridden_idempotent_01 _ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_prefix_lists_overridden_idempotent_01(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict(name="customer_64510"), 1349s dict( 1349s name="customer_64500", 1349s dynamic_db=True, 1349s address_prefixes=["172.16.1.16/28", "172.16.1.32/28"], 1349s ), 1349s ], 1349s state="overridden", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_prefix_lists.py:234: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_prefix_lists.py:653: in main 1349s result = Prefix_lists(module).execute_module() 1349s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:104: in execute_module 1349s config_xmls = self.set_config(existing_prefix_lists_facts) 1349s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 1349s self.root = build_root_xml_node("policy-options") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __________ TestJunosOspfv3Module.test_junos_ospfv3_delete_idempotent ___________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ospfv3_delete_idempotent(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s router_id="10.200.16.70", 1349s areas=[ 1349s dict( 1349s area_id="0.0.0.100", 1349s stub=dict(default_metric=200, set=True), 1349s interfaces=[dict(name="so-0/0/0.0")], 1349s ), 1349s ], 1349s ), 1349s ], 1349s state="deleted", 1349s ), 1349s ) 1349s > self.execute_module(changed=False, commands=[]) 1349s 1349s tests/unit/modules/network/junos/test_junos_ospfv3.py:353: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ospfv3.py:748: in main 1349s result = Ospfv3(module).execute_module() 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 1349s config_xmls = self.set_config(existing_ospfv3_facts) 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _______ TestJunosPrefix_listsModule.test_junos_prefix_lists_rendered_01 ________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_prefix_lists_rendered_01(self): 1349s """ 1349s :return: 1349s """ 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="Internal", 1349s address_prefixes=["172.16.1.32", "172.16.3.32"], 1349s ), 1349s dict(name="Test1", dynamic_db=True), 1349s dict( 1349s name="Test2", 1349s address_prefixes=[ 1349s "172.16.2.32", 1349s "172.16.7.32", 1349s "172.16.9.32", 1349s ], 1349s ), 1349s ], 1349s state="rendered", 1349s ), 1349s ) 1349s 1349s rendered = ( 1349s '' 1349s "Internal" 1349s "172.16.1.32" 1349s "172.16.3.32" 1349s "" 1349s "Test1" 1349s "Test2" 1349s "172.16.2.32" 1349s "172.16.7.32" 1349s "" 1349s "172.16.9.32" 1349s "" 1349s ) 1349s > result = self.execute_module(changed=False) 1349s 1349s tests/unit/modules/network/junos/test_junos_prefix_lists.py:326: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_prefix_lists.py:653: in main 1349s result = Prefix_lists(module).execute_module() 1349s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:96: in execute_module 1349s config_xmls = self.set_config(existing_prefix_lists_facts) 1349s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 1349s self.root = build_root_xml_node("policy-options") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ________________ TestJunosOspfv3Module.test_junos_ospfv3_merged ________________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ospfv3_merged(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s router_id="10.200.16.75", 1349s areas=[ 1349s dict( 1349s area_id="0.0.0.100", 1349s stub=dict(default_metric=200, set=True), 1349s interfaces=[ 1349s dict( 1349s name="so-0/0/0.0", 1349s priority=3, 1349s metric=5, 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s ], 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "0.0.0.100so-0/0/0.0" 1349s "35" 1349s "200", 1349s '' 1349s "10.200.16.75", 1349s ] 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_ospfv3.py:131: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ospfv3.py:748: in main 1349s result = Ospfv3(module).execute_module() 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 1349s config_xmls = self.set_config(existing_ospfv3_facts) 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _______ TestJunosPrefix_listsModule.test_junos_prefix_lists_replaced_01 ________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_prefix_lists_replaced_01(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="customer_64510", 1349s address_prefixes=["172.16.1.32/28", "172.16.3.32/28"], 1349s ), 1349s dict( 1349s name="customer_64500", 1349s address_prefixes=["172.16.2.16/28", "172.16.1.32/28"], 1349s ), 1349s ], 1349s state="replaced", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s 'customer_64510' 1349s '' 1349s "customer_64500" 1349s "customer_64510" 1349s "172.16.1.32/28" 1349s "" 1349s "172.16.3.32/28" 1349s "customer_64500" 1349s "172.16.2.16/28" 1349s "172.16.1.32/28" 1349s "", 1349s ] 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_prefix_lists.py:176: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_prefix_lists.py:653: in main 1349s result = Prefix_lists(module).execute_module() 1349s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:104: in execute_module 1349s config_xmls = self.set_config(existing_prefix_lists_facts) 1349s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 1349s self.root = build_root_xml_node("policy-options") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __________ TestJunosOspfv3Module.test_junos_ospfv3_merged_idempotent ___________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ospfv3_merged_idempotent(self): 1349s self.get_connection.return_value = load_fixture( 1349s "junos_ospfv3_config.cfg", 1349s ) 1349s src = load_fixture("junos_ospfv3.cfg", content="str") 1349s set_module_args(dict(src=src)) 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s router_id="30", 1349s areas=[ 1349s dict( 1349s area_id="100", 1349s stub=dict(default_metric=10, set=True), 1349s interfaces=[ 1349s dict( 1349s name="so-0/0/0.0", 1349s priority=3, 1349s metric=5, 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s ], 1349s state="merged", 1349s ), 1349s ) 1349s > self.execute_module(changed=False, commands=[]) 1349s 1349s tests/unit/modules/network/junos/test_junos_ospfv3.py:163: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ospfv3.py:748: in main 1349s result = Ospfv3(module).execute_module() 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 1349s config_xmls = self.set_config(existing_ospfv3_facts) 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosPrefix_listsModule.test_junos_prefix_lists_replaced_idempotent_01 __ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_prefix_lists_replaced_idempotent_01(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict(name="customer_64510"), 1349s dict( 1349s name="customer_64500", 1349s dynamic_db=True, 1349s address_prefixes=["172.16.1.16/28", "172.16.1.32/28"], 1349s ), 1349s ], 1349s state="replaced", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_prefix_lists.py:193: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_prefix_lists.py:653: in main 1349s result = Prefix_lists(module).execute_module() 1349s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:104: in execute_module 1349s config_xmls = self.set_config(existing_prefix_lists_facts) 1349s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 1349s self.root = build_root_xml_node("policy-options") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ____ TestJunosRouting_instancesModule.test_junos_routing_instances_deleted _____ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_routing_instances_deleted(self): 1349s """ 1349s :return: 1349s """ 1349s set_module_args(dict(config=[], state="deleted")) 1349s 1349s commands = [ 1349s '' 1349s '', 1349s ] 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_routing_instances.py:411: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_routing_instances.py:796: in main 1349s result = Routing_instances(module).execute_module() 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1349s config_xmls = self.set_config(existing_routing_instances_facts) 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1349s self.root = build_root_xml_node("routing-instances") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ______________ TestJunosOspfv3Module.test_junos_ospfv3_overridden ______________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ospfv3_overridden(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s router_id="10.200.16.75", 1349s areas=[ 1349s dict( 1349s area_id="0.0.0.100", 1349s stub=dict(default_metric=200, set=True), 1349s interfaces=[ 1349s dict( 1349s name="so-0/0/0.0", 1349s priority=3, 1349s metric=5, 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s ], 1349s state="overridden", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "0.0.0.100so-0/0/0.0" 1349s "3" 1349s "5" 1349s "200", 1349s '' 1349s "10.200.16.75", 1349s ] 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_ospfv3.py:270: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_ospfv3.py:748: in main 1349s result = Ospfv3(module).execute_module() 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 1349s config_xmls = self.set_config(existing_ospfv3_facts) 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosRouting_instancesModule.test_junos_routing_instances_domains_merged _ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_routing_instances_domains_merged(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="EVPN", 1349s type="virtual-switch", 1349s route_distinguisher="10.0.0.21:444", 1349s bridge_domains=[ 1349s dict( 1349s name="BD456", 1349s vlan_id=456, 1349s enable_mac_move_action=True, 1349s mcae_mac_flush=True, 1349s no_local_switching=True, 1349s service_id=20, 1349s ), 1349s dict( 1349s name="BD457", 1349s vlan_id=457, 1349s ), 1349s ], 1349s ), 1349s dict( 1349s name="mgmt_junos", 1349s ), 1349s ], 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "EVPN" 1349s "virtual-switch" 1349s "" 1349s "BD456" 1349s "20" 1349s "456" 1349s "" 1349s "" 1349s "" 1349s "" 1349s "BD457" 1349s "457" 1349s "10.0.0.21:444" 1349s "mgmt_junos", 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_routing_instances.py:145: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_routing_instances.py:796: in main 1349s result = Routing_instances(module).execute_module() 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1349s config_xmls = self.set_config(existing_routing_instances_facts) 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1349s self.root = build_root_xml_node("routing-instances") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosRouting_instancesModule.test_junos_routing_instances_delted_single_entry _ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_routing_instances_delted_single_entry(self): 1349s """ 1349s :return: 1349s """ 1349s set_module_args( 1349s dict(config=[dict(name="forwardinst")], state="deleted"), 1349s ) 1349s 1349s commands = [ 1349s '' 1349s 'forwardinst', 1349s ] 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_routing_instances.py:426: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_routing_instances.py:796: in main 1349s result = Routing_instances(module).execute_module() 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1349s config_xmls = self.set_config(existing_routing_instances_facts) 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1349s self.root = build_root_xml_node("routing-instances") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosRouting_optionsModule.test_junos_routing_options_merged_idempotent __ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_routing_options_merged_idempotent(self): 1349s self.execute_show_command.return_value = load_fixture( 1349s "junos_routing_options_config.cfg", 1349s ) 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s router_id="12.12.12.13", 1349s autonomous_system=dict(as_number="1"), 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_routing_options.py:122: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_routing_options.py:397: in main 1349s result = Routing_options(module).execute_module() 1349s plugins/module_utils/network/junos/config/routing_options/routing_options.py:106: in execute_module 1349s config_xmls = self.set_config(existing_routing_options_facts) 1349s plugins/module_utils/network/junos/config/routing_options/routing_options.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/routing_options/routing_options.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _____ TestJunosRouting_instancesModule.test_junos_routing_instances_merged _____ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_routing_instances_merged(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="test", 1349s type="vrf", 1349s route_distinguisher="10.58.255.1:37", 1349s vrf_imports=["test-policy"], 1349s vrf_exports=["test-policy", "test-policy-1"], 1349s interfaces=[ 1349s dict(name="sp-0/0/0.0"), 1349s dict(name="gr-0/0/0.0"), 1349s ], 1349s connector_id_advertise=True, 1349s ), 1349s ], 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "test" 1349s "vrfsp-0/0/0.0" 1349s "gr-0/0/0.0" 1349s "10.58.255.1:37" 1349s "test-policy" 1349s "test-policytest-policy-1" 1349s "", 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_routing_instances.py:178: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_routing_instances.py:796: in main 1349s result = Routing_instances(module).execute_module() 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1349s config_xmls = self.set_config(existing_routing_instances_facts) 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1349s self.root = build_root_xml_node("routing-instances") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _____ TestJunosRouting_optionsModule.test_junos_routing_options_overridden _____ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_routing_options_overridden(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s autonomous_system=dict( 1349s as_number="1", 1349s loops=4, 1349s asdot_notation=True, 1349s ), 1349s ), 1349s state="overridden", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_routing_options.py:207: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_routing_options.py:397: in main 1349s result = Routing_options(module).execute_module() 1349s plugins/module_utils/network/junos/config/routing_options/routing_options.py:106: in execute_module 1349s config_xmls = self.set_config(existing_routing_options_facts) 1349s plugins/module_utils/network/junos/config/routing_options/routing_options.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/routing_options/routing_options.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosRouting_instancesModule.test_junos_routing_instances_merged_idempotent _ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_routing_instances_merged_idempotent(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="forwardinst", 1349s type="forwarding", 1349s description="Configured by Ansible Content Team", 1349s ), 1349s ], 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_routing_instances.py:194: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_routing_instances.py:796: in main 1349s result = Routing_instances(module).execute_module() 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1349s config_xmls = self.set_config(existing_routing_instances_facts) 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1349s self.root = build_root_xml_node("routing-instances") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ___ TestJunosRouting_instancesModule.test_junos_routing_instances_overridden ___ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_routing_instances_overridden(self): 1349s """ 1349s :return: 1349s """ 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="test1", 1349s type="vrf", 1349s route_distinguisher="10.58.255.1:37", 1349s vrf_imports=["test-policy"], 1349s vrf_exports=["test-policy", "test-policy-1"], 1349s interfaces=[ 1349s dict(name="sp-0/0/0.0"), 1349s dict(name="gr-0/0/0.0"), 1349s ], 1349s connector_id_advertise=True, 1349s ), 1349s ], 1349s state="overridden", 1349s ), 1349s ) 1349s 1349s commands = [ 1349s '' 1349s 'forwardinst' 1349s "test1" 1349s "vrfsp-0/0/0.0" 1349s "gr-0/0/0.0" 1349s "10.58.255.1:37" 1349s "test-policytest-policy" 1349s "test-policy-1", 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_routing_instances.py:293: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_routing_instances.py:796: in main 1349s result = Routing_instances(module).execute_module() 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1349s config_xmls = self.set_config(existing_routing_instances_facts) 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1349s self.root = build_root_xml_node("routing-instances") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ______ TestJunosRouting_optionsModule.test_junos_routing_options_rendered ______ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_routing_options_rendered(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s autonomous_system=dict( 1349s as_number="2", 1349s loops=4, 1349s asdot_notation=True, 1349s ), 1349s router_id="12.12.12.12", 1349s ), 1349s state="rendered", 1349s ), 1349s ) 1349s rendered = ( 1349s '' 1349s "24" 1349s "12.12.12.12" 1349s ) 1349s > result = self.execute_module(changed=False) 1349s 1349s tests/unit/modules/network/junos/test_junos_routing_options.py:191: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_routing_options.py:397: in main 1349s result = Routing_options(module).execute_module() 1349s plugins/module_utils/network/junos/config/routing_options/routing_options.py:100: in execute_module 1349s config_xmls = self.set_config(existing_routing_options_facts) 1349s plugins/module_utils/network/junos/config/routing_options/routing_options.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/routing_options/routing_options.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosRouting_instancesModule.test_junos_routing_instances_overridden_idempotent _ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_routing_instances_overridden_idempotent(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="forwardinst", 1349s type="forwarding", 1349s description="Configured by Ansible Content Team", 1349s ), 1349s ], 1349s state="overridden", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_routing_instances.py:309: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_routing_instances.py:796: in main 1349s result = Routing_instances(module).execute_module() 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1349s config_xmls = self.set_config(existing_routing_instances_facts) 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1349s self.root = build_root_xml_node("routing-instances") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ____ TestJunosRouting_optionsModule.test_junos_routing_options_replaced_01 _____ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_routing_options_replaced_01(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s autonomous_system=dict( 1349s as_number="1", 1349s loops=4, 1349s asdot_notation=True, 1349s ), 1349s ), 1349s state="replaced", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_routing_options.py:166: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_routing_options.py:397: in main 1349s result = Routing_options(module).execute_module() 1349s plugins/module_utils/network/junos/config/routing_options/routing_options.py:106: in execute_module 1349s config_xmls = self.set_config(existing_routing_options_facts) 1349s plugins/module_utils/network/junos/config/routing_options/routing_options.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/routing_options/routing_options.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ____ TestJunosRouting_instancesModule.test_junos_routing_instances_rendered ____ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_routing_instances_rendered(self): 1349s """ 1349s :return: 1349s """ 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="test", 1349s type="vrf", 1349s route_distinguisher="10.58.255.1:37", 1349s vrf_imports=["test-policy"], 1349s vrf_exports=["test-policy", "test-policy-1"], 1349s interfaces=[ 1349s dict(name="sp-0/0/0.0"), 1349s dict(name="gr-0/0/0.0"), 1349s ], 1349s connector_id_advertise=True, 1349s ), 1349s ], 1349s state="rendered", 1349s ), 1349s ) 1349s 1349s rendered = ( 1349s '' 1349s "test" 1349s "vrfsp-0/0/0.0" 1349s "gr-0/0/0.0" 1349s "10.58.255.1:37" 1349s "test-policy" 1349s "test-policytest-policy-1" 1349s "" 1349s ) 1349s > result = self.execute_module(changed=False) 1349s 1349s tests/unit/modules/network/junos/test_junos_routing_instances.py:346: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_routing_instances.py:796: in main 1349s result = Routing_instances(module).execute_module() 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:97: in execute_module 1349s config_xmls = self.set_config(existing_routing_instances_facts) 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1349s self.root = build_root_xml_node("routing-instances") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosRouting_instancesModule.test_junos_routing_instances_rendered_02 ___ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_routing_instances_rendered_02(self): 1349s """ 1349s :return: 1349s """ 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="test", 1349s type="mac-vrf", 1349s route_distinguisher="10.58.255.1:37", 1349s vrf_imports=["test-policy"], 1349s vrf_exports=["test-policy", "test-policy-1"], 1349s interfaces=[ 1349s dict(name="sp-0/0/0.0"), 1349s dict(name="gr-0/0/0.0"), 1349s ], 1349s connector_id_advertise=True, 1349s ), 1349s ], 1349s state="rendered", 1349s ), 1349s ) 1349s 1349s rendered = ( 1349s '' 1349s "test" 1349s "mac-vrfsp-0/0/0.0" 1349s "gr-0/0/0.0" 1349s "10.58.255.1:37" 1349s "test-policy" 1349s "test-policytest-policy-1" 1349s "" 1349s ) 1349s > result = self.execute_module(changed=False) 1349s 1349s tests/unit/modules/network/junos/test_junos_routing_instances.py:383: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_routing_instances.py:796: in main 1349s result = Routing_instances(module).execute_module() 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:97: in execute_module 1349s config_xmls = self.set_config(existing_routing_instances_facts) 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1349s self.root = build_root_xml_node("routing-instances") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ____ TestJunosRouting_instancesModule.test_junos_routing_instances_replaced ____ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_routing_instances_replaced(self): 1349s """ 1349s :return: 1349s """ 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="test", 1349s type="vrf", 1349s route_distinguisher="10.58.255.1:37", 1349s vrf_imports=["test-policy"], 1349s vrf_exports=["test-policy", "test-policy-1"], 1349s interfaces=[ 1349s dict(name="sp-0/0/0.0"), 1349s dict(name="gr-0/0/0.0"), 1349s ], 1349s connector_id_advertise=True, 1349s ), 1349s dict( 1349s name="forwardinst", 1349s type="forwarding", 1349s description="Replaced and Configured by Ansible Content Team", 1349s ), 1349s ], 1349s state="replaced", 1349s ), 1349s ) 1349s 1349s commands = [ 1349s '' 1349s 'forwardinst' 1349s "test" 1349s "vrfsp-0/0/0.0" 1349s "gr-0/0/0.0" 1349s "10.58.255.1:37" 1349s "test-policy" 1349s "test-policytest-policy-1" 1349s "forwardinst" 1349s "Replaced and Configured by Ansible Content Team" 1349s "forwarding" 1349s "", 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_routing_instances.py:240: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_routing_instances.py:796: in main 1349s result = Routing_instances(module).execute_module() 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1349s config_xmls = self.set_config(existing_routing_instances_facts) 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1349s self.root = build_root_xml_node("routing-instances") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosRouting_instancesModule.test_junos_routing_instances_replaced_idempotent _ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_routing_instances_replaced_idempotent(self): 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict( 1349s name="forwardinst", 1349s type="forwarding", 1349s description="Configured by Ansible Content Team", 1349s ), 1349s ], 1349s state="replaced", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_routing_instances.py:256: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_routing_instances.py:796: in main 1349s result = Routing_instances(module).execute_module() 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1349s config_xmls = self.set_config(existing_routing_instances_facts) 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1349s self.root = build_root_xml_node("routing-instances") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ___ TestJunosSecurity_policiesModule.test_junos_security_policies_merged_01 ____ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_security_policies_merged_01(self): 1349s set_module_args( 1349s dict( 1349s config={ 1349s "from_zones": [ 1349s { 1349s "name": "one", 1349s "to_zones": [ 1349s { 1349s "name": "two", 1349s "policies": [ 1349s { 1349s "match": { 1349s "application": { 1349s "names": [ 1349s "junos-dhcp-relay", 1349s "junos-finger", 1349s ], 1349s }, 1349s "destination_address": { 1349s "addresses": ["a2", "a4"], 1349s }, 1349s "destination_address_excluded": True, 1349s "dynamic_application": { 1349s "any": True, 1349s }, 1349s "source_address": { 1349s "addresses": ["a1", "a3"], 1349s }, 1349s "source_address_excluded": True, 1349s "source_end_user_profile": "test_end_user_profile", 1349s "source_identity": { 1349s "unknown_user": True, 1349s }, 1349s "url_category": { 1349s "names": [ 1349s "Enhanced_Web_Chat", 1349s "Enhanced_Web_Collaboration", 1349s ], 1349s }, 1349s }, 1349s "name": "test_policy_1", 1349s "then": { 1349s "count": True, 1349s "deny": True, 1349s "log": {"session_close": True}, 1349s }, 1349s }, 1349s { 1349s "match": { 1349s "application": { 1349s "names": [ 1349s "junos-dhcp-relay", 1349s ], 1349s }, 1349s "destination_address": { 1349s "addresses": ["a2"], 1349s }, 1349s "source_address": { 1349s "addresses": ["a1"], 1349s }, 1349s }, 1349s "name": "test_policy_2", 1349s "then": { 1349s "reject": { 1349s "enable": True, 1349s "profile": "test_dyn_app", 1349s "ssl_proxy": { 1349s "enable": True, 1349s "profile_name": "SECURITY-SSL-PROXY", 1349s }, 1349s }, 1349s }, 1349s }, 1349s ], 1349s }, 1349s { 1349s "name": "three", 1349s "policies": [ 1349s { 1349s "match": { 1349s "application": { 1349s "names": [ 1349s "junos-dhcp-relay", 1349s ], 1349s }, 1349s "destination_address": { 1349s "addresses": ["a2"], 1349s }, 1349s "source_address": { 1349s "addresses": ["a1"], 1349s }, 1349s }, 1349s "name": "test_policy_3", 1349s "then": { 1349s "permit": { 1349s "destination_address": "drop-translated", 1349s "application_services": { 1349s "advanced_anti_malware_policy": "test_anti_malware", 1349s "application_traffic_control_rule_set": "test_traffic_control", 1349s "gprs_gtp_profile": "gtp1", 1349s "gprs_sctp_profile": "sctp1", 1349s "icap_redirect": "test_icap", 1349s "idp_policy": "test_idp", 1349s "reverse_redirect_wx": True, 1349s "ssl_proxy": { 1349s "enable": True, 1349s "profile_name": "SECURITY-SSL-PROXY", 1349s }, 1349s "uac_policy": { 1349s "enable": True, 1349s }, 1349s "utm_policy": "test_utm", 1349s }, 1349s "firewall_authentication": { 1349s "pass_through": { 1349s "access_profile": "WEBAUTH", 1349s "auth_only_browser": True, 1349s "auth_user_agent": "Opera1", 1349s "client_match": "test-client", 1349s "ssl_termination_profile": "test_ssl_term", 1349s "web_redirect": True, 1349s "web_redirect_to_https": True, 1349s }, 1349s "push_to_identity_management": True, 1349s "user_firewall": { 1349s "access_profile": "WEBAUTH", 1349s "auth_only_browser": True, 1349s "auth_user_agent": "Opera1", 1349s "ssl_termination_profile": "test_ssl_term", 1349s "web_redirect": True, 1349s "web_redirect_to_https": True, 1349s }, 1349s "web_authentication": [ 1349s "FWClient1", 1349s "FWClient2", 1349s ], 1349s }, 1349s "tcp_options": { 1349s "initial_tcp_mss": 64, 1349s "reverse_tcp_mss": 64, 1349s "window_scale": True, 1349s }, 1349s }, 1349s }, 1349s }, 1349s ], 1349s }, 1349s ], 1349s }, 1349s ], 1349s "global": { 1349s "policies": [ 1349s { 1349s "match": { 1349s "application": { 1349s "names": ["junos-dhcp-relay"], 1349s }, 1349s "destination_address": { 1349s "addresses": ["a2"], 1349s }, 1349s "source_address": {"addresses": ["a1"]}, 1349s }, 1349s "name": "test_glob_1", 1349s "then": {"deny": True}, 1349s }, 1349s { 1349s "match": { 1349s "application": { 1349s "names": ["junos-dhcp-relay"], 1349s }, 1349s "destination_address": { 1349s "addresses": ["a2"], 1349s }, 1349s "source_address": {"addresses": ["a1"]}, 1349s }, 1349s "name": "test_glob_2", 1349s "then": {"deny": True}, 1349s }, 1349s ], 1349s }, 1349s }, 1349s state="merged", 1349s ), 1349s ) 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_security_policies.py:295: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_security_policies.py:2700: in main 1349s result = Security_policies(module).execute_module() 1349s plugins/module_utils/network/junos/config/security_policies/security_policies.py:106: in execute_module 1349s config_xmls = self.set_config(existing_security_policies_facts) 1349s plugins/module_utils/network/junos/config/security_policies/security_policies.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/security_policies/security_policies.py:154: in set_state 1349s self.root = build_root_xml_node("security") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _____ TestJunosRouting_optionsModule.test_junos_routing_options_merged_01 ______ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_routing_options_merged_01(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s autonomous_system=dict( 1349s as_number="2", 1349s loops=4, 1349s asdot_notation=True, 1349s ), 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_routing_options.py:103: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_routing_options.py:397: in main 1349s result = Routing_options(module).execute_module() 1349s plugins/module_utils/network/junos/config/routing_options/routing_options.py:106: in execute_module 1349s config_xmls = self.set_config(existing_routing_options_facts) 1349s plugins/module_utils/network/junos/config/routing_options/routing_options.py:144: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/routing_options/routing_options.py:156: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ___ TestJunosSecurity_policiesModule.test_junos_security_policies_merged_02 ____ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_security_policies_merged_02(self): 1349s set_module_args( 1349s dict( 1349s config={ 1349s "from_zones": [ 1349s { 1349s "name": "one", 1349s "to_zones": [ 1349s { 1349s "name": "two", 1349s "policies": [ 1349s { 1349s "match": { 1349s "application": {"any": True}, 1349s "destination_address": { 1349s "any_ipv4": True, 1349s "any_ipv6": True, 1349s "any": True, 1349s }, 1349s "dynamic_application": { 1349s "names": [ 1349s "test1", 1349s "test2", 1349s ], 1349s "none": True, 1349s }, 1349s "source_address": { 1349s "any_ipv4": True, 1349s "any_ipv6": True, 1349s "any": True, 1349s }, 1349s "source_identity": { 1349s "unknown_user": True, 1349s "unauthenticated_user": True, 1349s "authenticated_user": True, 1349s "names": ["test1"], 1349s }, 1349s "url_category": { 1349s "any": True, 1349s "none": True, 1349s }, 1349s }, 1349s "name": "test_policy_1", 1349s "then": { 1349s "count": True, 1349s "deny": True, 1349s "log": {"session_init": True}, 1349s }, 1349s }, 1349s ], 1349s }, 1349s { 1349s "name": "three", 1349s "policies": [ 1349s { 1349s "match": { 1349s "application": { 1349s "names": [ 1349s "junos-dhcp-relay", 1349s ], 1349s }, 1349s "destination_address": { 1349s "any": True, 1349s }, 1349s "source_address": { 1349s "any": True, 1349s }, 1349s }, 1349s "name": "test_policy_3", 1349s "then": { 1349s "permit": { 1349s "application_services": { 1349s "idp": True, 1349s "redirect_wx": True, 1349s "uac_policy": { 1349s "captive_portal": "test", 1349s }, 1349s }, 1349s "firewall_authentication": { 1349s "user_firewall": { 1349s "domain": "test", 1349s }, 1349s }, 1349s "destination_address": "drop-untranslated", 1349s "tunnel": { 1349s "ipsec_vpn": "test_vpn", 1349s "pair_policy": "test_policy", 1349s }, 1349s }, 1349s }, 1349s }, 1349s ], 1349s }, 1349s ], 1349s }, 1349s ], 1349s }, 1349s state="merged", 1349s ), 1349s ) 1349s 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_security_policies.py:450: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_security_policies.py:2700: in main 1349s result = Security_policies(module).execute_module() 1349s plugins/module_utils/network/junos/config/security_policies/security_policies.py:106: in execute_module 1349s config_xmls = self.set_config(existing_security_policies_facts) 1349s plugins/module_utils/network/junos/config/security_policies/security_policies.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/security_policies/security_policies.py:154: in set_state 1349s self.root = build_root_xml_node("security") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ____ TestJunosSecurity_policiesModule.test_junos_security_policies_rendered ____ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_security_policies_rendered(self): 1349s set_module_args( 1349s dict( 1349s config={ 1349s "global": { 1349s "policies": [ 1349s { 1349s "description": "test update", 1349s "match": { 1349s "application": {"any": True}, 1349s "destination_address": {"any_ipv6": True}, 1349s "source_address": {"any": True}, 1349s }, 1349s "name": "test_glob_3", 1349s "then": {"deny": True}, 1349s }, 1349s ], 1349s }, 1349s }, 1349s state="rendered", 1349s ), 1349s ) 1349s rendered = ( 1349s '' 1349s "test_glob_3test update" 1349s "anyany-ipv6" 1349s "any" 1349s "" 1349s ) 1349s > result = self.execute_module(changed=False) 1349s 1349s tests/unit/modules/network/junos/test_junos_security_policies.py:1055: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_security_policies.py:2700: in main 1349s result = Security_policies(module).execute_module() 1349s plugins/module_utils/network/junos/config/security_policies/security_policies.py:100: in execute_module 1349s config_xmls = self.set_config(existing_security_policies_facts) 1349s plugins/module_utils/network/junos/config/security_policies/security_policies.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/security_policies/security_policies.py:154: in set_state 1349s self.root = build_root_xml_node("security") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosSecurity_policiesModule.test_junos_security_policies_overridden_01 __ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_security_policies_overridden_01(self): 1349s set_module_args( 1349s dict( 1349s config={ 1349s "global": { 1349s "policies": [ 1349s { 1349s "description": "test update", 1349s "match": { 1349s "application": {"any": True}, 1349s "destination_address": {"any_ipv6": True}, 1349s "source_address": {"any": True}, 1349s }, 1349s "name": "test_glob_3", 1349s "then": {"deny": True}, 1349s }, 1349s ], 1349s }, 1349s }, 1349s state="overridden", 1349s ), 1349s ) 1349s commands = ( 1349s '' 1349s "test_glob_3test updateany" 1349s "any-ipv6any" 1349s "" 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_security_policies.py:825: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_security_policies.py:2700: in main 1349s result = Security_policies(module).execute_module() 1349s plugins/module_utils/network/junos/config/security_policies/security_policies.py:106: in execute_module 1349s config_xmls = self.set_config(existing_security_policies_facts) 1349s plugins/module_utils/network/junos/config/security_policies/security_policies.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/security_policies/security_policies.py:154: in set_state 1349s self.root = build_root_xml_node("security") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosSecurity_policiesModule.test_junos_security_policies_replaced_01 ___ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_security_policies_replaced_01(self): 1349s set_module_args( 1349s dict( 1349s config={ 1349s "global": { 1349s "policies": [ 1349s { 1349s "description": "test update", 1349s "match": { 1349s "application": {"any": True}, 1349s "destination_address": {"any_ipv6": True}, 1349s "source_address": {"any": True}, 1349s }, 1349s "name": "test_glob_3", 1349s "then": {"deny": True}, 1349s }, 1349s ], 1349s }, 1349s }, 1349s state="replaced", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_security_policies.py:1080: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_security_policies.py:2700: in main 1349s result = Security_policies(module).execute_module() 1349s plugins/module_utils/network/junos/config/security_policies/security_policies.py:106: in execute_module 1349s config_xmls = self.set_config(existing_security_policies_facts) 1349s plugins/module_utils/network/junos/config/security_policies/security_policies.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/security_policies/security_policies.py:154: in set_state 1349s self.root = build_root_xml_node("security") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_overridden_01 _ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_security_policies_global_overridden_01(self): 1349s set_module_args( 1349s dict( 1349s config={ 1349s "default_policy": "permit-all", 1349s "policy_rematch": {"enable": True, "extensive": True}, 1349s "policy_stats": {"enable": True, "system_wide": True}, 1349s "pre_id_default_policy_action": { 1349s "log": {"session_init": True}, 1349s "session_timeout": {"icmp": 10, "others": 10}, 1349s }, 1349s "traceoptions": { 1349s "file": { 1349s "files": 3, 1349s "match": "/[A-Z]*/gm", 1349s "no_world_readable": True, 1349s "size": "10k", 1349s }, 1349s "flag": "ipc", 1349s "no_remote_trace": True, 1349s }, 1349s }, 1349s state="overridden", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_security_policies_global.py:509: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_security_policies_global.py:989: in main 1349s result = Security_policies_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:108: in execute_module 1349s config_xmls = self.set_config( 1349s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 1349s self.root = build_root_xml_node("security") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_merged_01 _ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_security_policies_global_merged_01(self): 1349s set_module_args( 1349s dict( 1349s config={ 1349s "default_policy": "permit-all", 1349s "policy_rematch": {"enable": True, "extensive": True}, 1349s "policy_stats": {"enable": True, "system_wide": True}, 1349s "pre_id_default_policy_action": { 1349s "log": {"session_init": True, "session_close": True}, 1349s "session_timeout": {"icmp": 10, "others": 10}, 1349s }, 1349s "traceoptions": { 1349s "file": { 1349s "files": 3, 1349s "match": "/[A-Z]*/gm", 1349s "no_world_readable": True, 1349s "size": "10k", 1349s }, 1349s "flag": "all", 1349s "no_remote_trace": True, 1349s }, 1349s }, 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_security_policies_global.py:136: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_security_policies_global.py:989: in main 1349s result = Security_policies_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:108: in execute_module 1349s config_xmls = self.set_config( 1349s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 1349s self.root = build_root_xml_node("security") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_merged_02 _ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_security_policies_global_merged_02(self): 1349s set_module_args( 1349s dict( 1349s config={ 1349s "default_policy": "deny-all", 1349s "policy_rematch": {"enable": True, "extensive": True}, 1349s "policy_stats": {"enable": True, "system_wide": False}, 1349s "pre_id_default_policy_action": { 1349s "log": {"session_init": True}, 1349s "session_timeout": { 1349s "icmp": 10, 1349s "others": 10, 1349s "icmp6": 10, 1349s "ospf": 10, 1349s "tcp": 10, 1349s "udp": 10, 1349s }, 1349s }, 1349s "traceoptions": { 1349s "file": { 1349s "files": 3, 1349s "match": "/[A-Z]*/gm", 1349s "world_readable": True, 1349s "size": "10k", 1349s }, 1349s "flag": "configuration", 1349s "no_remote_trace": True, 1349s }, 1349s }, 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_security_policies_global.py:185: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_security_policies_global.py:989: in main 1349s result = Security_policies_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:108: in execute_module 1349s config_xmls = self.set_config( 1349s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 1349s self.root = build_root_xml_node("security") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_rendered _ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_security_policies_global_rendered(self): 1349s set_module_args( 1349s dict( 1349s config={ 1349s "default_policy": "permit-all", 1349s "policy_rematch": {"enable": True, "extensive": True}, 1349s "policy_stats": {"enable": True, "system_wide": True}, 1349s "pre_id_default_policy_action": { 1349s "log": {"session_init": True}, 1349s "session_timeout": {"icmp": 10, "others": 10}, 1349s }, 1349s "traceoptions": { 1349s "file": { 1349s "files": 3, 1349s "match": "/[A-Z]*/gm", 1349s "no_world_readable": True, 1349s "size": "10k", 1349s }, 1349s "flag": "routing-socket", 1349s "no_remote_trace": True, 1349s }, 1349s }, 1349s state="rendered", 1349s ), 1349s ) 1349s rendered = ( 1349s '' 1349s " " 1349s " enable" 1349s "" 1349s "1010" 1349s "3" 1349s "/[A-Z]*/gm10k" 1349s "routing-socket" 1349s "" 1349s ) 1349s > result = self.execute_module(changed=False) 1349s 1349s tests/unit/modules/network/junos/test_junos_security_policies_global.py:590: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_security_policies_global.py:989: in main 1349s result = Security_policies_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:100: in execute_module 1349s config_xmls = self.set_config( 1349s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 1349s self.root = build_root_xml_node("security") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_merged_03 _ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_security_policies_global_merged_03(self): 1349s set_module_args( 1349s dict( 1349s config={"traceoptions": {"flag": "compilation"}}, 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_security_policies_global.py:209: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_security_policies_global.py:989: in main 1349s result = Security_policies_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:108: in execute_module 1349s config_xmls = self.set_config( 1349s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 1349s self.root = build_root_xml_node("security") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_replaced_01 _ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_security_policies_global_replaced_01(self): 1349s set_module_args( 1349s dict( 1349s config={ 1349s "default_policy": "permit-all", 1349s "policy_rematch": {"enable": True, "extensive": True}, 1349s "policy_stats": {"enable": True, "system_wide": True}, 1349s "pre_id_default_policy_action": { 1349s "log": {"session_init": True}, 1349s "session_timeout": {"icmp": 10, "others": 10}, 1349s }, 1349s "traceoptions": { 1349s "file": { 1349s "files": 3, 1349s "match": "/[A-Z]*/gm", 1349s "no_world_readable": True, 1349s "size": "10k", 1349s }, 1349s "flag": "rules", 1349s "no_remote_trace": True, 1349s }, 1349s }, 1349s state="replaced", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_security_policies_global.py:623: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_security_policies_global.py:989: in main 1349s result = Security_policies_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:108: in execute_module 1349s config_xmls = self.set_config( 1349s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 1349s self.root = build_root_xml_node("security") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_merged_04 _ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_security_policies_global_merged_04(self): 1349s set_module_args( 1349s dict(config={"traceoptions": {"flag": "lookup"}}, state="merged"), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_security_policies_global.py:224: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_security_policies_global.py:989: in main 1349s result = Security_policies_global(module).execute_module() 1349s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:108: in execute_module 1349s config_xmls = self.set_config( 1349s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 1349s self.root = build_root_xml_node("security") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ______ TestJunosSecurity_zonesModule.test_junos_security_zones_merged_01 _______ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_security_zones_merged_01(self): 1349s set_module_args( 1349s dict( 1349s config={ 1349s "functional_zone_management": { 1349s "description": "test description", 1349s "host_inbound_traffic": { 1349s "protocols": [ 1349s {"name": "all"}, 1349s {"except": True, "name": "bgp"}, 1349s ], 1349s "system_services": [ 1349s {"name": "all"}, 1349s {"except": True, "name": "dhcp"}, 1349s ], 1349s }, 1349s "interfaces": ["ge-0/0/1.0", "ge-0/0/2.0"], 1349s "screen": "test_screen", 1349s }, 1349s "zones": [ 1349s { 1349s "address_book": { 1349s "address_sets": [ 1349s { 1349s "addresses": [ 1349s "test_adr1", 1349s "test_adr2", 1349s ], 1349s "name": "test_adrset1", 1349s }, 1349s { 1349s "addresses": [ 1349s "test_adr3", 1349s "test_adr4", 1349s ], 1349s "name": "test_adrset2", 1349s }, 1349s { 1349s "address_sets": [ 1349s "test_adrset1", 1349s "test_adrset2", 1349s ], 1349s "addresses": ["test_adr5"], 1349s "description": "test description", 1349s "name": "test_adrset3", 1349s }, 1349s ], 1349s "addresses": [ 1349s { 1349s "description": "test desc", 1349s "ip_prefix": "10.0.0.0/24", 1349s "name": "test_adr1", 1349s }, 1349s { 1349s "dns_name": { 1349s "ipv6_only": True, 1349s "name": "1.1.1.1", 1349s }, 1349s "name": "test_adr2", 1349s }, 1349s { 1349s "name": "test_adr3", 1349s "range_address": { 1349s "from": "10.2.0.1", 1349s "to": "10.2.0.2", 1349s }, 1349s }, 1349s { 1349s "name": "test_adr4", 1349s "wildcard_address": "10.3.0.1/24", 1349s }, 1349s { 1349s "description": "test desc", 1349s "ip_prefix": "10.1.0.0/24", 1349s "name": "test_adr5", 1349s }, 1349s ], 1349s }, 1349s "advance_policy_based_routing_profile": "test_profile", 1349s "advanced_connection_tracking": { 1349s "mode": "allow-any-host", 1349s "timeout": "20", 1349s "track_all_policies_to_this_zone": True, 1349s }, 1349s "application_tracking": True, 1349s "description": "test description", 1349s "enable_reverse_reroute": True, 1349s "host_inbound_traffic": { 1349s "protocols": [ 1349s {"name": "all"}, 1349s {"except": True, "name": "bgp"}, 1349s ], 1349s "system_services": [ 1349s {"name": "all"}, 1349s {"except": True, "name": "dhcp"}, 1349s ], 1349s }, 1349s "interfaces": ["ge-0/0/3.0", "ge-0/0/4.0"], 1349s "name": "test_sec_zone1", 1349s "screen": "test_screen", 1349s "source_identity_log": True, 1349s "tcp_rst": True, 1349s "unidirectional_session_refreshing": True, 1349s }, 1349s ], 1349s }, 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_security_zones.py:218: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_security_zones.py:1997: in main 1349s result = Security_zones(module).execute_module() 1349s plugins/module_utils/network/junos/config/security_zones/security_zones.py:106: in execute_module 1349s config_xmls = self.set_config(existing_security_zones_facts) 1349s plugins/module_utils/network/junos/config/security_zones/security_zones.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/security_zones/security_zones.py:154: in set_state 1349s self.root = build_root_xml_node("security") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _______ TestJunosSecurity_zonesModule.test_junos_security_zones_rendered _______ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_security_zones_rendered(self): 1349s set_module_args( 1349s dict( 1349s config={ 1349s "functional_zone_management": { 1349s "description": "test description", 1349s "host_inbound_traffic": { 1349s "protocols": [ 1349s {"name": "all"}, 1349s {"except": True, "name": "bgp"}, 1349s ], 1349s "system_services": [ 1349s {"name": "all"}, 1349s {"except": True, "name": "dhcp"}, 1349s ], 1349s }, 1349s "interfaces": ["ge-0/0/1.0", "ge-0/0/2.0"], 1349s "screen": "test_screen", 1349s }, 1349s "zones": [ 1349s { 1349s "address_book": { 1349s "address_sets": [ 1349s { 1349s "addresses": [ 1349s "test_adr1", 1349s "test_adr2", 1349s ], 1349s "name": "test_adrset1", 1349s }, 1349s { 1349s "addresses": [ 1349s "test_adr3", 1349s "test_adr4", 1349s ], 1349s "name": "test_adrset2", 1349s }, 1349s { 1349s "address_sets": [ 1349s "test_adrset1", 1349s "test_adrset2", 1349s ], 1349s "addresses": ["test_adr5"], 1349s "description": "test description", 1349s "name": "test_adrset3", 1349s }, 1349s ], 1349s "addresses": [ 1349s { 1349s "description": "test desc", 1349s "ip_prefix": "10.0.0.0/24", 1349s "name": "test_adr1", 1349s }, 1349s { 1349s "dns_name": { 1349s "ipv6_only": True, 1349s "name": "1.1.1.1", 1349s }, 1349s "name": "test_adr2", 1349s }, 1349s { 1349s "name": "test_adr3", 1349s "range_address": { 1349s "from": "10.2.0.1", 1349s "to": "10.2.0.2", 1349s }, 1349s }, 1349s { 1349s "name": "test_adr4", 1349s "wildcard_address": "10.3.0.1/24", 1349s }, 1349s { 1349s "description": "test desc", 1349s "ip_prefix": "10.1.0.0/24", 1349s "name": "test_adr5", 1349s }, 1349s ], 1349s }, 1349s "advance_policy_based_routing_profile": "test_profile", 1349s "application_tracking": True, 1349s "description": "test description", 1349s "enable_reverse_reroute": True, 1349s "host_inbound_traffic": { 1349s "protocols": [ 1349s {"name": "all"}, 1349s {"except": True, "name": "bgp"}, 1349s ], 1349s "system_services": [ 1349s {"name": "all"}, 1349s {"except": True, "name": "dhcp"}, 1349s ], 1349s }, 1349s "interfaces": ["ge-0/0/3.0", "ge-0/0/4.0"], 1349s "name": "test_sec_zone1", 1349s "screen": "test_screen", 1349s "source_identity_log": True, 1349s "tcp_rst": True, 1349s }, 1349s ], 1349s }, 1349s state="rendered", 1349s ), 1349s ) 1349s rendered = ( 1349s 't' 1349s "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" 1349s "_adr2test_adrset2test_adr3test_adr4test_adrset3test_adr5test_adrset1test_adrset2test descriptiontest_profiletest descriptionallbgpalldhcpge-0/0/3.0ge-0/0/4.0test_screen" 1349s ) 1349s > result = self.execute_module(changed=False) 1349s 1349s tests/unit/modules/network/junos/test_junos_security_zones.py:1114: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_security_zones.py:1997: in main 1349s result = Security_zones(module).execute_module() 1349s plugins/module_utils/network/junos/config/security_zones/security_zones.py:100: in execute_module 1349s config_xmls = self.set_config(existing_security_zones_facts) 1349s plugins/module_utils/network/junos/config/security_zones/security_zones.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/security_zones/security_zones.py:154: in set_state 1349s self.root = build_root_xml_node("security") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ____ TestJunosSecurity_zonesModule.test_junos_security_zones_overridden_01 _____ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_security_zones_overridden_01(self): 1349s set_module_args( 1349s dict( 1349s config={ 1349s "functional_zone_management": { 1349s "description": "test description 2", 1349s "host_inbound_traffic": { 1349s "protocols": [{"name": "all"}], 1349s "system_services": [{"name": "all"}], 1349s }, 1349s "interfaces": ["ge-0/0/1.0", "ge-0/0/2.0"], 1349s "screen": "test_screen", 1349s }, 1349s "zones": [ 1349s { 1349s "address_book": { 1349s "address_sets": [ 1349s { 1349s "addresses": [ 1349s "test_adr1", 1349s "test_adr2", 1349s ], 1349s "name": "test_adrset1", 1349s }, 1349s { 1349s "addresses": [ 1349s "test_adr3", 1349s "test_adr4", 1349s ], 1349s "name": "test_adrset2", 1349s }, 1349s { 1349s "address_sets": [ 1349s "test_adrset1", 1349s "test_adrset2", 1349s ], 1349s "addresses": ["test_adr5"], 1349s "description": "test description", 1349s "name": "test_adrset3", 1349s }, 1349s ], 1349s "addresses": [ 1349s { 1349s "description": "test desc", 1349s "ip_prefix": "10.0.0.0/24", 1349s "name": "test_adr1", 1349s }, 1349s { 1349s "dns_name": { 1349s "ipv6_only": True, 1349s "name": "1.1.1.1", 1349s }, 1349s "name": "test_adr2", 1349s }, 1349s { 1349s "name": "test_adr3", 1349s "range_address": { 1349s "from": "10.2.0.1", 1349s "to": "10.2.0.2", 1349s }, 1349s }, 1349s { 1349s "name": "test_adr4", 1349s "wildcard_address": "10.3.0.1/24", 1349s }, 1349s { 1349s "description": "test desc", 1349s "ip_prefix": "10.1.0.0/24", 1349s "name": "test_adr5", 1349s }, 1349s ], 1349s }, 1349s "advance_policy_based_routing_profile": "test_profile", 1349s "application_tracking": True, 1349s "description": "test description", 1349s "enable_reverse_reroute": True, 1349s "host_inbound_traffic": { 1349s "protocols": [ 1349s {"name": "all"}, 1349s {"except": True, "name": "bgp"}, 1349s ], 1349s "system_services": [ 1349s {"name": "all"}, 1349s {"except": True, "name": "dhcp"}, 1349s ], 1349s }, 1349s "interfaces": ["ge-0/0/3.0", "ge-0/0/4.0"], 1349s "name": "test_sec_zone1", 1349s "screen": "test_screen", 1349s "source_identity_log": True, 1349s "tcp_rst": True, 1349s }, 1349s ], 1349s }, 1349s state="overridden", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_security_zones.py:850: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_security_zones.py:1997: in main 1349s result = Security_zones(module).execute_module() 1349s plugins/module_utils/network/junos/config/security_zones/security_zones.py:106: in execute_module 1349s config_xmls = self.set_config(existing_security_zones_facts) 1349s plugins/module_utils/network/junos/config/security_zones/security_zones.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/security_zones/security_zones.py:154: in set_state 1349s self.root = build_root_xml_node("security") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _____ TestJunosSecurity_zonesModule.test_junos_security_zones_replaced_01 ______ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_security_zones_replaced_01(self): 1349s set_module_args( 1349s dict( 1349s config={ 1349s "functional_zone_management": { 1349s "description": "test description 2", 1349s "host_inbound_traffic": { 1349s "protocols": [{"name": "all"}], 1349s "system_services": [{"name": "all"}], 1349s }, 1349s "interfaces": ["ge-0/0/1.0", "ge-0/0/2.0"], 1349s "screen": "test_screen", 1349s }, 1349s "zones": [ 1349s { 1349s "address_book": { 1349s "address_sets": [ 1349s { 1349s "addresses": [ 1349s "test_adr1", 1349s "test_adr2", 1349s ], 1349s "name": "test_adrset1", 1349s }, 1349s { 1349s "addresses": [ 1349s "test_adr3", 1349s "test_adr4", 1349s ], 1349s "name": "test_adrset2", 1349s }, 1349s { 1349s "address_sets": [ 1349s "test_adrset1", 1349s "test_adrset2", 1349s ], 1349s "addresses": ["test_adr5"], 1349s "description": "test description", 1349s "name": "test_adrset3", 1349s }, 1349s ], 1349s "addresses": [ 1349s { 1349s "description": "test desc", 1349s "ip_prefix": "10.0.0.0/24", 1349s "name": "test_adr1", 1349s }, 1349s { 1349s "dns_name": { 1349s "ipv6_only": True, 1349s "name": "1.1.1.1", 1349s }, 1349s "name": "test_adr2", 1349s }, 1349s { 1349s "name": "test_adr3", 1349s "range_address": { 1349s "from": "10.2.0.1", 1349s "to": "10.2.0.2", 1349s }, 1349s }, 1349s { 1349s "name": "test_adr4", 1349s "wildcard_address": "10.3.0.1/24", 1349s }, 1349s { 1349s "description": "test desc", 1349s "ip_prefix": "10.1.0.0/24", 1349s "name": "test_adr5", 1349s }, 1349s ], 1349s }, 1349s "advance_policy_based_routing_profile": "test_profile", 1349s "application_tracking": True, 1349s "description": "test description", 1349s "enable_reverse_reroute": True, 1349s "host_inbound_traffic": { 1349s "protocols": [ 1349s {"name": "all"}, 1349s {"except": True, "name": "bgp"}, 1349s ], 1349s "system_services": [ 1349s {"name": "all"}, 1349s {"except": True, "name": "dhcp"}, 1349s ], 1349s }, 1349s "interfaces": ["ge-0/0/3.0", "ge-0/0/4.0"], 1349s "name": "test_sec_zone1", 1349s "screen": "test_screen", 1349s "source_identity_log": True, 1349s "tcp_rst": True, 1349s }, 1349s ], 1349s }, 1349s state="replaced", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_security_zones.py:1217: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_security_zones.py:1997: in main 1349s result = Security_zones(module).execute_module() 1349s plugins/module_utils/network/junos/config/security_zones/security_zones.py:106: in execute_module 1349s config_xmls = self.set_config(existing_security_zones_facts) 1349s plugins/module_utils/network/junos/config/security_zones/security_zones.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/security_zones/security_zones.py:154: in set_state 1349s self.root = build_root_xml_node("seFATAL: 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.HDQhnz/build.1ev/src/ansible_collections/junipernetworks/junos/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/junipernetworks/junos --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/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. 1349s curity") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _________ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_06 __________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_snmp_server_merged_06(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s communities=[ 1349s dict( 1349s name="comm1", 1349s clients=[ 1349s dict(address="24.0.0.0/32", restrict=True), 1349s dict(address="30.0.0.0/32", restrict=True), 1349s ], 1349s routing_instances=[ 1349s dict( 1349s name="clv1", 1349s clients=[ 1349s dict( 1349s address="13.13.13.13/24", 1349s restrict=True, 1349s ), 1349s dict(address="24.0.0.0/32"), 1349s dict(address="30.0.0.0/32"), 1349s ], 1349s ), 1349s dict( 1349s name="clv2", 1349s clients=[dict(address="15.15.15.15/24")], 1349s ), 1349s ], 1349s ), 1349s dict(name="comm2"), 1349s ], 1349s contact="rohitthakur2590", 1349s customization=dict(ether_stats_ifd_only=True), 1349s description="Local SNMP Server", 1349s engine_id=dict( 1349s local="local1", 1349s use_default_ip_address=True, 1349s use_mac_address=True, 1349s ), 1349s filter_duplicates=True, 1349s filter_interfaces=dict( 1349s all_internal_interfaces=True, 1349s interfaces=["eth1", "eth2"], 1349s ), 1349s health_monitor=dict( 1349s falling_threshold=50, 1349s idp=True, 1349s interval=100, 1349s rising_threshold=60, 1349s ), 1349s if_count_with_filter_interfaces=True, 1349s interfaces=["eth1", "eth2", "eth3"], 1349s location="inter_lab", 1349s logical_system_trap_filter=True, 1349s name="SNMP_LAB_SERVER", 1349s nonvolatile=dict(commit_delay=30), 1349s rmon=dict( 1349s alarms=[ 1349s dict( 1349s id=4, 1349s variable="1.x.y.z", 1349s sample_type="absolute-value", 1349s rising_threshold=1020, 1349s ), 1349s dict( 1349s id=5, 1349s variable="1.x.y.z", 1349s sample_type="absolute-value", 1349s rising_threshold=1020, 1349s ), 1349s ], 1349s events=[ 1349s dict(id=100, type="log"), 1349s dict(id=200, type="log"), 1349s ], 1349s ), 1349s routing_instance_access=dict( 1349s access_lists=["clv1", "clv2"], 1349s ), 1349s subagent=dict(tcp=dict(routing_instances_default=True)), 1349s snmp_v3=dict( 1349s notify=[dict(name="not1", type="inform", tag="tag2")], 1349s notify_filter=[ 1349s dict( 1349s name="not_fil_01", 1349s oids=[dict(include=True, oid="1.a.s.b.d")], 1349s ), 1349s dict( 1349s name="not_fil_02", 1349s oids=[ 1349s dict(include=True, oid="1.x.b.b.d"), 1349s dict(include=True, oid="1.a.c.b.d"), 1349s ], 1349s ), 1349s ], 1349s snmp_community=[ 1349s dict( 1349s community_index="v3_comm1", 1349s community_name="mycommu", 1349s security_name="sec101", 1349s context="cont1", 1349s tag="109", 1349s ), 1349s dict( 1349s community_index="v3_comm2", 1349s community_name="mycomm", 1349s security_name="sec102", 1349s context="cont1", 1349s tag="109", 1349s ), 1349s ], 1349s target_addresses=[ 1349s dict( 1349s name="tar201", 1349s address="162.12.10.2", 1349s port=23122, 1349s timeout=300, 1349s retry_count=200, 1349s tag_list="tag101", 1349s address_mask="24", 1349s routing_instance="clv2", 1349s target_parameters="tarparam2", 1349s ), 1349s dict( 1349s name="tar202", 1349s address="162.12.10.2", 1349s port=23122, 1349s timeout=300, 1349s retry_count=200, 1349s tag_list="tag101", 1349s address_mask="24", 1349s routing_instance="clv2", 1349s target_parameters="tarparam2", 1349s ), 1349s ], 1349s target_parameters=[ 1349s dict( 1349s name="param111", 1349s notify_filter="not121", 1349s parameters=dict( 1349s message_processing_model="v1", 1349s security_model="v1", 1349s security_level="none", 1349s security_name="secure111", 1349s ), 1349s ), 1349s ], 1349s ), 1349s traceoptions=dict( 1349s file=dict( 1349s files=20, 1349s match="snmp_cfg", 1349s no_world_readable=True, 1349s size=20000, 1349s ), 1349s flag=dict( 1349s all=True, 1349s general=True, 1349s interface_stats=True, 1349s nonvolatile_sets=True, 1349s pdu=True, 1349s protocol_timeouts=True, 1349s routing_socket=True, 1349s subagent=True, 1349s timer=True, 1349s varbind_error=True, 1349s ), 1349s memory_trace=dict(size=1350), 1349s ), 1349s trap_groups=[ 1349s dict( 1349s name="trgrp_01", 1349s destination_port=2346, 1349s categories=dict( 1349s authentication=True, 1349s chassis=True, 1349s otn_alarms=dict( 1349s oc_lof=True, 1349s otu_uas_threshold=True, 1349s ), 1349s ), 1349s targets=["11.11.11.11", "12.12.12.12"], 1349s routing_instance="clv1", 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_snmp_server.py:616: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_snmp_server.py:1579: in main 1349s result = Snmp_server(module).execute_module() 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1349s config_xmls = self.set_config(existing_snmp_server_facts) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __________ TestJunosSnmp_serverModule.test_junos_ntp_global_rendered ___________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_ntp_global_rendered(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s client_lists=[ 1349s dict( 1349s name="cl2", 1349s addresses=[dict(address="192.16.4.0/24")], 1349s ), 1349s ], 1349s ), 1349s state="rendered", 1349s ), 1349s ) 1349s rendered = ( 1349s 'cl2' 1349s "192.16.4.0/24" 1349s "" 1349s ) 1349s > result = self.execute_module(changed=False) 1349s 1349s tests/unit/modules/network/junos/test_junos_snmp_server.py:1082: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_snmp_server.py:1579: in main 1349s result = Snmp_server(module).execute_module() 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:98: in execute_module 1349s config_xmls = self.set_config(existing_snmp_server_facts) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _______ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_arp_01 ________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_snmp_server_merged_arp_01(self): 1349s set_module_args( 1349s dict( 1349s config=dict(arp=dict(set=True, host_name_resolution=True)), 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_snmp_server.py:97: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_snmp_server.py:1579: in main 1349s result = Snmp_server(module).execute_module() 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1349s config_xmls = self.set_config(existing_snmp_server_facts) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_routing_access_04 __ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_snmp_server_merged_routing_access_04(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s routing_instance_access=dict( 1349s set=True, 1349s access_lists=["clv1"], 1349s ), 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_snmp_server.py:379: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_snmp_server.py:1579: in main 1349s result = Snmp_server(module).execute_module() 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1349s config_xmls = self.set_config(existing_snmp_server_facts) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ______ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_client_02 ______ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_snmp_server_merged_client_02(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s client_lists=[ 1349s dict( 1349s name="cl2", 1349s addresses=[dict(address="192.16.4.0/24")], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_snmp_server.py:314: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_snmp_server.py:1579: in main 1349s result = Snmp_server(module).execute_module() 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1349s config_xmls = self.set_config(existing_snmp_server_facts) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _____ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_trap_groups _____ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_snmp_server_merged_trap_groups(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s trap_groups=[ 1349s dict( 1349s categories=dict( 1349s authentication=True, 1349s ), 1349s name="egress", 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_snmp_server.py:179: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_snmp_server.py:1579: in main 1349s result = Snmp_server(module).execute_module() 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1349s config_xmls = self.set_config(existing_snmp_server_facts) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _____ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_clients_03 ______ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_snmp_server_merged_clients_03(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s client_lists=[ 1349s dict( 1349s name="cl3", 1349s addresses=[ 1349s dict(address="172.16.1.0/24"), 1349s dict(address="10.11.11.11", restrict=True), 1349s ], 1349s ), 1349s dict( 1349s name="cl4", 1349s addresses=[dict(address="172.16.4.0/24")], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_snmp_server.py:353: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_snmp_server.py:1579: in main 1349s result = Snmp_server(module).execute_module() 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1349s config_xmls = self.set_config(existing_snmp_server_facts) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ___ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_trap_groups_02 ____ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_snmp_server_merged_trap_groups_02(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s trap_groups=[ 1349s dict( 1349s categories=dict( 1349s chassis=True, 1349s chassis_cluster=True, 1349s configuration=True, 1349s dot3oam_events=True, 1349s link=True, 1349s ), 1349s name="monitor", 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_snmp_server.py:213: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_snmp_server.py:1579: in main 1349s result = Snmp_server(module).execute_module() 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1349s config_xmls = self.set_config(existing_snmp_server_facts) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ___ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_communities_05 ____ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_snmp_server_merged_communities_05(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s communities=[ 1349s dict( 1349s name="comm1", 1349s clients=[ 1349s dict(address="24.0.0.0/32", restrict=True), 1349s ], 1349s routing_instances=[ 1349s dict( 1349s name="clv1", 1349s clients=[ 1349s dict( 1349s address="13.13.13.13/24", 1349s restrict=True, 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_snmp_server.py:415: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_snmp_server.py:1579: in main 1349s result = Snmp_server(module).execute_module() 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1349s config_xmls = self.set_config(existing_snmp_server_facts) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_trap_groups_otn_alrams _ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_snmp_server_merged_trap_groups_otn_alrams(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s trap_groups=[ 1349s dict( 1349s categories=dict( 1349s otn_alarms=dict( 1349s oc_lof=True, 1349s oc_lom=True, 1349s oc_los=True, 1349s ), 1349s ), 1349s name="monitor", 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_snmp_server.py:243: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_snmp_server.py:1579: in main 1349s result = Snmp_server(module).execute_module() 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1349s config_xmls = self.set_config(existing_snmp_server_facts) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ____ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_trap_options _____ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_snmp_server_merged_trap_options(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s trap_options=dict( 1349s agent_address=dict( 1349s outgoing_interface=True, 1349s ), 1349s context_oid=True, 1349s ), 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_snmp_server.py:149: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_snmp_server.py:1579: in main 1349s result = Snmp_server(module).execute_module() 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1349s config_xmls = self.set_config(existing_snmp_server_facts) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ________ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_views ________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_snmp_server_merged_views(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s views=[ 1349s dict( 1349s name="all", 1349s oids=[dict(oid=".1")], 1349s ), 1349s ], 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_snmp_server.py:121: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_snmp_server.py:1579: in main 1349s result = Snmp_server(module).execute_module() 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1349s config_xmls = self.set_config(existing_snmp_server_facts) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ___ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_trap_options_02 ___ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_snmp_server_merged_trap_options_02(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s trap_options=dict( 1349s enterprise_oid=True, 1349s source_address=dict( 1349s address="192.168.2.0", 1349s ), 1349s ), 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_snmp_server.py:286: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_snmp_server.py:1579: in main 1349s result = Snmp_server(module).execute_module() 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1349s config_xmls = self.set_config(existing_snmp_server_facts) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_trap_options_set ___ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_snmp_server_merged_trap_options_set(self): 1349s set_module_args( 1349s dict( 1349s config=dict( 1349s trap_options=dict( 1349s set=True, 1349s ), 1349s ), 1349s state="merged", 1349s ), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_snmp_server.py:268: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_snmp_server.py:1579: in main 1349s result = Snmp_server(module).execute_module() 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1349s config_xmls = self.set_config(existing_snmp_server_facts) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1349s self.root = build_root_xml_node("configuration") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ________________ TestJunosVlansModule.test_junos_vlans_deleted _________________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_vlans_deleted(self): 1349s """ 1349s :return: 1349s """ 1349s set_module_args(dict(config=[dict(name="vlan1")], state="deleted")) 1349s 1349s commands = [ 1349s '' 1349s 'vlan1', 1349s ] 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_vlans.py:193: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_vlans.py:462: in main 1349s result = Vlans(module).execute_module() 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 1349s config_xmls = self.set_config(existing_vlans_facts) 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1349s root = build_root_xml_node("vlans") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _______________ TestJunosVlansModule.test_junos_vlans_deleted_01 _______________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_vlans_deleted_01(self): 1349s """ 1349s :return: 1349s """ 1349s set_module_args(dict(config=[], state="deleted")) 1349s 1349s commands = [ 1349s '' 1349s 'vlan1', 1349s ] 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_vlans.py:206: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_vlans.py:462: in main 1349s result = Vlans(module).execute_module() 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 1349s config_xmls = self.set_config(existing_vlans_facts) 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1349s root = build_root_xml_node("vlans") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _________________ TestJunosVlansModule.test_junos_vlans_merged _________________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_vlans_merged(self): 1349s set_module_args( 1349s dict( 1349s config=[dict(name="vlan2", vlan_id=2, l3_interface="irb.12")], 1349s state="merged", 1349s ), 1349s ) 1349s commands = [ 1349s '' 1349s "vlan22" 1349s "irb.12", 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_vlans.py:105: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_vlans.py:462: in main 1349s result = Vlans(module).execute_module() 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 1349s config_xmls = self.set_config(existing_vlans_facts) 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1349s root = build_root_xml_node("vlans") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _______________ TestJunosVlansModule.test_junos_vlans_overridden _______________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_vlans_overridden(self): 1349s """ 1349s :return: 1349s """ 1349s set_module_args( 1349s dict( 1349s config=[dict(name="vlan3", vlan_id=3, l3_interface="irb.13")], 1349s state="overridden", 1349s ), 1349s ) 1349s 1349s commands = [ 1349s '' 1349s 'vlan1' 1349s "vlan33" 1349s "irb.13", 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_vlans.py:164: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_vlans.py:462: in main 1349s result = Vlans(module).execute_module() 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 1349s config_xmls = self.set_config(existing_vlans_facts) 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1349s root = build_root_xml_node("vlans") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ___________ TestJunosVlansModule.test_junos_vlans_merged_idempotent ____________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_vlans_merged_idempotent(self): 1349s set_module_args( 1349s dict(config=[dict(name="vlan1", vlan_id=1)], state="merged"), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_vlans.py:112: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_vlans.py:462: in main 1349s result = Vlans(module).execute_module() 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 1349s config_xmls = self.set_config(existing_vlans_facts) 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1349s root = build_root_xml_node("vlans") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s _________ TestJunosVlansModule.test_junos_vlans_overridden_idempotent __________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_vlans_overridden_idempotent(self): 1349s set_module_args( 1349s dict(config=[dict(name="vlan1", vlan_id=1)], state="overridden"), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_vlans.py:171: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_vlans.py:462: in main 1349s result = Vlans(module).execute_module() 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 1349s config_xmls = self.set_config(existing_vlans_facts) 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1349s root = build_root_xml_node("vlans") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ________________ TestJunosVlansModule.test_junos_vlans_replaced ________________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_vlans_replaced(self): 1349s """ 1349s :return: 1349s """ 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict(name="vlan1", vlan_id=1, l3_interface="irb.10"), 1349s dict(name="vlan2", vlan_id=2), 1349s ], 1349s state="replaced", 1349s ), 1349s ) 1349s 1349s commands = [ 1349s '' 1349s 'vlan1' 1349s 'vlan2' 1349s "vlan11" 1349s "irb.10" 1349s "vlan22", 1349s ] 1349s > result = self.execute_module(changed=True, commands=commands) 1349s 1349s tests/unit/modules/network/junos/test_junos_vlans.py:137: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_vlans.py:462: in main 1349s result = Vlans(module).execute_module() 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 1349s config_xmls = self.set_config(existing_vlans_facts) 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1349s root = build_root_xml_node("vlans") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s ________________ TestJunosVlansModule.test_junos_vlans_rendered ________________ 1349s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_vlans_rendered(self): 1349s """ 1349s :return: 1349s """ 1349s set_module_args( 1349s dict( 1349s config=[ 1349s dict(name="vlan1", vlan_id=1), 1349s dict(name="vlan2", vlan_id=2, l3_interface="irb.12"), 1349s ], 1349s state="rendered", 1349s ), 1349s ) 1349s rendered = ( 1349s '' 1349s "vlan11" 1349s "vlan22" 1349s "irb.12" 1349s ) 1349s > result = self.execute_module(changed=False) 1349s 1349s tests/unit/modules/network/junos/test_junos_vlans.py:228: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_vlans.py:462: in main 1349s result = Vlans(module).execute_module() 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:102: in execute_module 1349s config_xmls = self.set_config(existing_vlans_facts) 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1349s root = build_root_xml_node("vlans") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s __________ TestJunosVlansModule.test_junos_vlans_replaced_idempotent ___________ 1349s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1349s 1349s self = 1349s 1349s def test_junos_vlans_replaced_idempotent(self): 1349s set_module_args( 1349s dict(config=[dict(name="vlan1", vlan_id=1)], state="replaced"), 1349s ) 1349s > result = self.execute_module(changed=True) 1349s 1349s tests/unit/modules/network/junos/test_junos_vlans.py:144: 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1349s result = self.changed(changed) 1349s tests/unit/modules/network/junos/junos_module.py:97: in changed 1349s self.module.main() 1349s plugins/modules/junos_vlans.py:462: in main 1349s result = Vlans(module).execute_module() 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 1349s config_xmls = self.set_config(existing_vlans_facts) 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1349s resp = self.set_state(want, have) 1349s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1349s root = build_root_xml_node("vlans") 1349s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1349s 1349s def build_root_xml_node(tag): 1349s > return new_ele(tag) 1349s E NameError: name 'new_ele' is not defined 1349s 1349s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1349s =============================== warnings summary =============================== 1349s tests/unit/modules/network/junos/test_junos_config.py::TestJunosConfigModule::test_junos_config_confirm 1349s tests/unit/modules/network/junos/test_junos_config.py::TestJunosConfigModule::test_junos_config_lines 1349s tests/unit/modules/network/junos/test_junos_config.py::TestJunosConfigModule::test_junos_config_src_json 1349s tests/unit/modules/network/junos/test_junos_config.py::TestJunosConfigModule::test_junos_config_src_set 1349s tests/unit/modules/network/junos/test_junos_config.py::TestJunosConfigModule::test_junos_config_src_text 1349s tests/unit/modules/network/junos/test_junos_config.py::TestJunosConfigModule::test_junos_config_src_xml 1349s /tmp/autopkgtest.HDQhnz/build.1ev/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. 1349s if diff: 1349s 1349s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 1349s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/junipernetworks/junos/tests/output/junit/python3.13-controller-units.xml - 1349s =========================== short test summary info ============================ 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_001 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_002 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_delete 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_002_001 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_delete_purged 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_003 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merge_groups 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_004 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_005 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_advertise_bgp_static 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_advertise_external 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_005_001 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_bfd_liveness_detection 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_006 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_bgp_error_tolerance 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_007 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_bmp 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_007_001 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_bmp_2 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_008 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_egress_te 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_009 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_egress_te_backup_paths 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_groups_allow 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_010 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_011 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_optimal_route_reflection 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_012 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_routing_options 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_013 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_013_001 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_014 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_rendered 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_015 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_rendered_empty 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_016 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_replaced 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_017 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_replaced_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_018 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_019 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_020 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_021 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_022 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_023 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_023_001 1349s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_merged 1349s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_merged_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_024 1349s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_overridden 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_025 1349s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_overridden_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_026 1349s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_rendered 1349s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_replaced 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_027 1349s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_replaced_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_028 1349s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_deleted_user_11 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_029 1349s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_07 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_030 1349s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_archive_01 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_033 1349s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_console_02 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_deleted_031 1349s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_files_03 1349s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_deleted_032 1349s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_files_04 1349s FAILED tests/unit/modules/network/junos/test_junos_hostname.py::TestJunosHostnameModule::test_junos_hostname_merged_01 1349s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_hosts_05 1349s FAILED tests/unit/modules/network/junos/test_junos_hostname.py::TestJunosHostnameModule::test_junos_hostname_overridden_01 1349s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_hosts_idempotent_06 1349s FAILED tests/unit/modules/network/junos/test_junos_hostname.py::TestJunosHostnameModule::test_junos_hostname_rendered 1349s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_user_08 1349s FAILED tests/unit/modules/network/junos/test_junos_hostname.py::TestJunosHostnameModule::test_junos_hostname_replaced 1349s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_delete 1349s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_overridden_user_10 1349s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_delete_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_merged 1349s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_rendered_12 1349s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_merged_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_replaced_user_09 1349s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_overridden 1349s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_overridden_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_rendered 1349s FAILED tests/unit/modules/network/junos/test_junos_ntp_global.py::TestJunosNtp_globalModule::test_junos_ntp_global_merged_01 1349s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_replaced 1349s FAILED tests/unit/modules/network/junos/test_junos_ntp_global.py::TestJunosNtp_globalModule::test_junos_ntp_global_merged_02 1349s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_replaced_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_ntp_global.py::TestJunosNtp_globalModule::test_junos_ntp_global_overridden_01 1349s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_delete 1349s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_delete_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_ntp_global.py::TestJunosNtp_globalModule::test_junos_ntp_global_rendered 1349s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_merged 1349s FAILED tests/unit/modules/network/junos/test_junos_ntp_global.py::TestJunosNtp_globalModule::test_junos_ntp_global_replaced_01 1349s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_merged_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_delete 1349s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_overridden 1349s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_delete_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_overridden_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_merged 1349s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_rendered 1349s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_merged_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_replaced 1349s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_replaced_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_overridden 1349s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_overridden_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_overridden_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_rendered 1349s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_rendered 1349s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_replaced 1349s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_replaced 1349s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_replaced_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_replaced_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_ospfv2.py::TestJunosOspfv2Module::test_junos_ospfv2_deleted 1349s FAILED tests/unit/modules/network/junos/test_junos_ospfv2.py::TestJunosOspfv2Module::test_junos_ospfv2_merged 1349s FAILED tests/unit/modules/network/junos/test_junos_ospfv2.py::TestJunosOspfv2Module::test_junos_ospfv2_merged_areas 1349s FAILED tests/unit/modules/network/junos/test_junos_ospfv2.py::TestJunosOspfv2Module::test_junos_ospfv2_overridden 1349s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_merged_01 1349s FAILED tests/unit/modules/network/junos/test_junos_ospfv2.py::TestJunosOspfv2Module::test_junos_ospfv2_rendered 1349s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_merged_idempotent_01 1349s FAILED tests/unit/modules/network/junos/test_junos_ospfv2.py::TestJunosOspfv2Module::test_junos_ospfv2_replaced 1349s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_overridden_01 1349s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_delete 1349s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_overridden_idempotent_01 1349s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_delete_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_rendered_01 1349s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_merged 1349s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_replaced_01 1349s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_merged_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_replaced_idempotent_01 1349s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_deleted 1349s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_overridden 1349s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_domains_merged 1349s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_delted_single_entry 1349s FAILED tests/unit/modules/network/junos/test_junos_routing_options.py::TestJunosRouting_optionsModule::test_junos_routing_options_merged_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_merged 1349s FAILED tests/unit/modules/network/junos/test_junos_routing_options.py::TestJunosRouting_optionsModule::test_junos_routing_options_overridden 1349s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_merged_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_overridden 1349s FAILED tests/unit/modules/network/junos/test_junos_routing_options.py::TestJunosRouting_optionsModule::test_junos_routing_options_rendered 1349s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_overridden_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_routing_options.py::TestJunosRouting_optionsModule::test_junos_routing_options_replaced_01 1349s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_rendered 1349s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_rendered_02 1349s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_replaced 1349s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_replaced_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_security_policies.py::TestJunosSecurity_policiesModule::test_junos_security_policies_merged_01 1349s FAILED tests/unit/modules/network/junos/test_junos_routing_options.py::TestJunosRouting_optionsModule::test_junos_routing_options_merged_01 1349s FAILED tests/unit/modules/network/junos/test_junos_security_policies.py::TestJunosSecurity_policiesModule::test_junos_security_policies_merged_02 1349s FAILED tests/unit/modules/network/junos/test_junos_security_policies.py::TestJunosSecurity_policiesModule::test_junos_security_policies_rendered 1349s FAILED tests/unit/modules/network/junos/test_junos_security_policies.py::TestJunosSecurity_policiesModule::test_junos_security_policies_overridden_01 1349s FAILED tests/unit/modules/network/junos/test_junos_security_policies.py::TestJunosSecurity_policiesModule::test_junos_security_policies_replaced_01 1349s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_overridden_01 1349s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_merged_01 1349s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_merged_02 1349s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_rendered 1349s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_merged_03 1349s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_replaced_01 1349s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_merged_04 1349s FAILED tests/unit/modules/network/junos/test_junos_security_zones.py::TestJunosSecurity_zonesModule::test_junos_security_zones_merged_01 1349s FAILED tests/unit/modules/network/junos/test_junos_security_zones.py::TestJunosSecurity_zonesModule::test_junos_security_zones_rendered 1349s FAILED tests/unit/modules/network/junos/test_junos_security_zones.py::TestJunosSecurity_zonesModule::test_junos_security_zones_overridden_01 1349s FAILED tests/unit/modules/network/junos/test_junos_security_zones.py::TestJunosSecurity_zonesModule::test_junos_security_zones_replaced_01 1349s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_06 1349s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_ntp_global_rendered 1349s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_arp_01 1349s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_routing_access_04 1349s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_client_02 1349s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_trap_groups 1349s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_clients_03 1349s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_trap_groups_02 1349s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_communities_05 1349s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_trap_groups_otn_alrams 1349s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_trap_options 1349s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_views 1349s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_trap_options_02 1349s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_trap_options_set 1349s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_deleted 1349s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_deleted_01 1349s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_merged 1349s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_overridden 1349s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_merged_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_overridden_idempotent 1349s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_replaced 1349s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_rendered 1349s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_replaced_idempotent 1349s ================= 190 failed, 115 passed, 6 warnings in 10.52s ================= 1349s ## return code is 1 1349s 1349s 1349s 1349s ############################################################ 1349s ############################################################ 1349s #### Running FLAKY tests in ansible_collections/netapp_eseries/santricity 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.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity 1351s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1351s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 1351s created: 2/2 workers 1351s 2 workers [0 items] 1351s 1351s 1351s ==================================== ERRORS ==================================== 1351s _______ ERROR collecting tests/unit/modules/test_na_santricity_alerts.py _______ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_alerts.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_alerts.py:7: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s ___ ERROR collecting tests/unit/modules/test_na_santricity_alerts_syslog.py ____ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_alerts_syslog.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_alerts_syslog.py:7: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s ________ ERROR collecting tests/unit/modules/test_na_santricity_asup.py ________ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_asup.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_asup.py:8: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s ______ ERROR collecting tests/unit/modules/test_na_santricity_auditlog.py ______ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_auditlog.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_auditlog.py:7: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s ________ ERROR collecting tests/unit/modules/test_na_santricity_auth.py ________ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_auth.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_auth.py:7: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s _ ERROR collecting tests/unit/modules/test_na_santricity_client_certificate.py _ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_client_certificate.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_client_certificate.py:10: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s ______ ERROR collecting tests/unit/modules/test_na_santricity_discover.py ______ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_discover.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_discover.py:9: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s ___ ERROR collecting tests/unit/modules/test_na_santricity_drive_firmware.py ___ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_drive_firmware.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_drive_firmware.py:7: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s _______ ERROR collecting tests/unit/modules/test_na_santricity_facts.py ________ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_facts.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_facts.py:9: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s ______ ERROR collecting tests/unit/modules/test_na_santricity_firmware.py ______ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_firmware.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_firmware.py:10: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s _______ ERROR collecting tests/unit/modules/test_na_santricity_global.py _______ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_global.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_global.py:9: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s ________ ERROR collecting tests/unit/modules/test_na_santricity_host.py ________ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_host.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_host.py:9: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s _____ ERROR collecting tests/unit/modules/test_na_santricity_hostgroup.py ______ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_hostgroup.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_hostgroup.py:7: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s _ ERROR collecting tests/unit/modules/test_na_santricity_ib_iser_interface.py __ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_ib_iser_interface.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_ib_iser_interface.py:9: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s __ ERROR collecting tests/unit/modules/test_na_santricity_iscsi_interface.py ___ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_iscsi_interface.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_iscsi_interface.py:9: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s ____ ERROR collecting tests/unit/modules/test_na_santricity_iscsi_target.py ____ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_iscsi_target.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_iscsi_target.py:7: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s ________ ERROR collecting tests/unit/modules/test_na_santricity_ldap.py ________ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_ldap.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_ldap.py:7: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s ____ ERROR collecting tests/unit/modules/test_na_santricity_lun_mapping.py _____ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_lun_mapping.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_lun_mapping.py:7: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s ___ ERROR collecting tests/unit/modules/test_na_santricity_mgmt_interface.py ___ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_mgmt_interface.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_mgmt_interface.py:7: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s ___ ERROR collecting tests/unit/modules/test_na_santricity_nvme_interface.py ___ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_nvme_interface.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_nvme_interface.py:7: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s _ ERROR collecting tests/unit/modules/test_na_santricity_proxy_drive_firmware_upload.py _ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_proxy_drive_firmware_upload.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_proxy_drive_firmware_upload.py:7: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s _ ERROR collecting tests/unit/modules/test_na_santricity_proxy_firmware_upload.py _ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_proxy_firmware_upload.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_proxy_firmware_upload.py:7: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s ___ ERROR collecting tests/unit/modules/test_na_santricity_proxy_systems.py ____ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_proxy_systems.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_proxy_systems.py:9: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s ____ ERROR collecting tests/unit/modules/test_na_santricity_storagepool.py _____ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_storagepool.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_storagepool.py:9: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s _______ ERROR collecting tests/unit/modules/test_na_santricity_syslog.py _______ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_syslog.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_syslog.py:7: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s _______ ERROR collecting tests/unit/modules/test_na_santricity_volume.py _______ 1351s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_volume.py'. 1351s Hint: make sure your test modules/packages have valid Python names. 1351s Traceback: 1351s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1351s return _bootstrap._gcd_import(name[level:], package, level) 1351s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1351s assertion_rewriting_hook.exec_module(module) 1351s tests/unit/modules/test_na_santricity_volume.py:9: in 1351s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1351s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1351s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/output/junit/python3.13-controller-units.xml - 1351s =========================== short test summary info ============================ 1351s ERROR tests/unit/modules/test_na_santricity_alerts.py 1351s ERROR tests/unit/modules/test_na_santricity_alerts_syslog.py 1351s ERROR tests/unit/modules/test_na_santricity_asup.py 1351s ERROR tests/unit/modules/test_na_santricity_auditlog.py 1351s ERROR tests/unit/modules/test_na_santricity_auth.py 1351s ERROR tests/unit/modules/test_na_santricity_client_certificate.py 1351s ERROR tests/unit/modules/test_na_santricity_discover.py 1351s ERROR tests/unit/modules/test_na_santricity_drive_firmware.py 1351s ERROR tests/unit/modules/test_na_santricity_facts.py 1351s ERROR tests/unit/modules/test_na_santricity_firmware.py 1351s ERROR tests/unit/modules/test_na_santricity_global.py 1351s ERROR tests/unit/modules/test_na_santricity_host.py 1351s ERROR tests/unit/modules/test_na_santricity_hostgroup.py 1351s ERROR tests/unit/modules/test_na_santricity_ib_iser_interface.py 1351s ERROR tests/unit/modules/test_na_santricity_iscsi_interface.py 1351s ERROR tests/unit/modules/test_na_santricity_iscsi_target.py 1351s ERROR tests/unit/modules/test_na_santricity_ldap.py 1351s ERROR tests/unit/modules/test_na_santricity_lun_mapping.py 1351s ERROR tests/unit/modules/test_na_santricity_mgmt_interface.py 1351s ERROR tests/unit/modules/test_na_santricity_nvme_interface.py 1351s ERROR tests/unit/modules/test_na_santricity_proxy_drive_firmware_upload.py 1351s ERROR tests/unit/modules/test_na_santricity_proxy_firmware_upload.py 1351s ERROR tests/unit/modules/test_na_santricity_proxy_systems.py 1351s ERROR tests/unit/modules/test_na_santricity_storagepool.py 1351s ERROR tests/unit/modules/test_na_santricity_syslog.py 1351s ERROR tests/unit/modules/test_na_santricity_volume.py 1351s ============================== 26 errors in 1.22s ============================== 1351s 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.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/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. 1351s ## return code is 1 1351s 1351s 1351s 1351s ############################################################ 1351s ############################################################ 1351s #### Running FLAKY tests in ansible_collections/netapp/ontap 1351s ############################################################ 1351s ############################################################ 1351s Unit test modules 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.HDQhnz/build.1ev/src/ansible_collections/netapp/ontap 1358s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1358s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 1358s created: 2/2 workers 1358s 2 workers [3004 items] 1358s 1359s s.s.ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 2%] 1359s sssssssssssssssssssssssssssssssssssssssssssssssssssssssss.ss.ss.ss.ss.s. [ 4%] 1360s ss.ss.................ss.ss.s.ss.ss.ss.ss.ss.ss.s.ss.s.ss.ss.s.ss.ss.s.s [ 7%] 1360s s.ss.s.ss.ss.ss.ss.s.ssssssssssssssssssssss.s.sss.F..................... [ 9%] 1361s .........................ss.ss.ss.s.ss.ss.ss.ss.s.ss.ss.ss.ss.ss.ss.ss.s [ 11%] 1361s .ss.s..s.ss.s.s.s.s.ss.s.ss.s.ss.s.ss.sssssssssssssssssssssss.ss.ss.ss.s [ 14%] 1362s s.ss.ss.s.s.s.ss.s.ss.s.ss.s.ss.s.ss.s.s.s.s.s.ss.s.ss.s.s.s.ss.ss.s.s.s [ 16%] 1363s s.ssssssss.sss.ss.s.sss.ss.ss.s.ss.sss.s.ss......................ss.ss.s [ 19%] 1363s sssssssssssssss.ss.s.ss.s.ss.s.ss.ss.s.ss.ss.s.ss.ssssssssssssssssssssss [ 21%] 1363s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 23%] 1364s ssss.s.ss.ss.s.ss.s.ss.ss.s.ss.s.s.ss.s.ssssssssssssssssssssssssssssssss [ 26%] 1364s ssssssssssssss.ss.s.ss.sssssssssssssssssssssssssssssssssssssssssssssssss [ 28%] 1365s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 31%] 1365s ssssssssssssssssssssssssssssss.ss.s.ss.s.ss.s.ss.ss.s.ssssssssssssssssss [ 33%] 1366s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 35%] 1366s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 38%] 1367s sssssssssssssssssssssssssssssssssssssss.s.ss.ss.s.ss.s.ss.s.ss.s.ss.ss.s [ 40%] 1367s .ss.ss.s.ss.s.ss.ss...............s.ss.ss.s.ss.ss.ss.s.ssssssss.s.ss.ss. [ 43%] 1368s ss.s.ss.ss.s.ss.ss.ss.s.ss.sssssssssssssssssssssssssssssssssssssssssssss [ 45%] 1368s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 47%] 1369s sssssssssssssssssssssssssssssssssssssssssssssssssssssss.ss.ss.ss.s.s.... [ 50%] 1369s ............ss.ss.s.ss.ss.s.ssss.s.ss.s.s.ss.ss.ss.s.ss.ss.ss.s.ss.ss.ss [ 52%] 1370s .ssssssssssssssssssssssssssssssssssssssssssssssssssss.s.ss.ss.ss.s.ss.ss [ 55%] 1370s .s.ss.ss.s.sssssssssssssssssssssssssssss.s.ss.ss.ss.s.ss.ss.ss.ss.ss.ss. [ 57%] 1371s ss.ss.ss.sss.ss.ss.ss.s.ss.ss.ss.s.ss.s.s.ss.ss.s....................... [ 59%] 1372s ........................................................................ [ 62%] 1372s .....s.ss.ss.sss.ss.ssssssss.ss.ss.s.ss................................. [ 64%] 1373s ....ss.s.ss.s.ss.ss.s.ss.s.ss.s.s.ss.s.s.s.ss.s.s.ss.s.ss.s.s......ss.s. [ 67%] 1373s ss.ss.ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 69%] 1374s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 71%] 1374s ssssssssssssssssssssssssssssssssssssssssssssssssssss.s.s.s.ss.s.s..ss.s. [ 74%] 1375s sss.s.ss.ss.sss.ssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 76%] 1375s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 79%] 1376s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 81%] 1376s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 83%] 1377s sssssssss.ss.ss.s.s..........s.ss.s.ss.ss.ss.ss.ss.ss.ss.sss.sss.ss.ssss [ 86%] 1377s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 88%] 1378s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 91%] 1378s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 93%] 1379s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 95%] 1379s sssss.ss.......s.ss.s.ssssssssssssssssssssssssssssssssssssssssss.s.s.... [ 98%] 1380s .....ss.sssssssssssssssss.s....s.ss.ssssssssss...... [100%] 1380s =================================== FAILURES =================================== 1380s ______________________ TestMyModule.test_zapi_send_error _______________________ 1380s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1380s 1380s self = 1380s 1380s def test_zapi_send_error(self): 1380s '''Test rest send error''' 1380s data = self.mock_args() 1380s data['use_rest'] = 'Never' 1380s set_module_args(data) 1380s with pytest.raises(AnsibleFailJson) as exc: 1380s self.get_invoke_mock_object(use_rest=False).apply() 1380s msg = "Error on sending autosupport message to node %s: NetApp API failed. Reason - test:Expected error." % data['name'] 1380s > assert exc.value.args[0]['msg'] == msg 1380s E assert "Error: the p... 'netapp_lib'" == 'Error on sen...pected error.' 1380s E 1380s E - Error on sending autosupport message to node test_node: NetApp API failed. Reason - test:Expected error. 1380s E + Error: the python NetApp-Lib module is required. Import error: No module named 'netapp_lib' 1380s 1380s tests/unit/plugins/modules/test_na_ontap_autosupport_invoke.py:103: AssertionError 1380s ----------------------------- Captured stdout call ----------------------------- 1380s WARNING: Error: "message" option conflicts with Ansible internal variable - please use "autosupport_message". 1380s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp/ontap/tests/output/junit/python3.13-modules-units.xml - 1380s =========================== short test summary info ============================ 1380s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_active_directory.py: skipping as missing required netapp_lib 1380s SKIPPED [27] tests/unit/plugins/modules/test_na_ontap_cluster.py: skipping as missing required netapp_lib 1380s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_active_directory_domain_controllers.py: skipping as missing required netapp_lib 1380s SKIPPED [39] tests/unit/plugins/modules/test_na_ontap_aggregate.py: skipping as missing required netapp_lib 1380s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_cluster_ha.py: skipping as missing required netapp_lib 1380s SKIPPED [19] tests/unit/plugins/modules/test_na_ontap_cluster_peer.py: skipping as missing required netapp_lib 1380s SKIPPED [12] tests/unit/plugins/modules/test_na_ontap_command.py: skipping as missing required netapp_lib 1380s SKIPPED [15] tests/unit/plugins/modules/test_na_ontap_debug.py: skipping as missing required netapp_lib 1380s SKIPPED [9] tests/unit/plugins/modules/test_na_ontap_disks.py: skipping as missing required netapp_lib 1380s SKIPPED [17] tests/unit/plugins/modules/test_na_ontap_dns.py: skipping as missing required netapp_lib 1380s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_domain_tunnel.py: skipping as missing required netapp_lib 1380s SKIPPED [29] tests/unit/plugins/modules/test_na_ontap_efficiency_policy.py: skipping as missing required netapp_lib 1380s SKIPPED [10] tests/unit/plugins/modules/test_na_ontap_autosupport.py: skipping as missing required netapp_lib 1380s SKIPPED [32] tests/unit/plugins/modules/test_na_ontap_broadcast_domain.py: skipping as missing required netapp_lib 1380s SKIPPED [2] tests/unit/plugins/modules/test_na_ontap_cg_snapshot.py: skipping as missing required netapp_lib 1380s SKIPPED [11] tests/unit/plugins/modules/test_na_ontap_export_policy.py: skipping as missing required netapp_lib 1380s SKIPPED [18] tests/unit/plugins/modules/test_na_ontap_export_policy_rule.py: skipping as missing required netapp_lib 1380s SKIPPED [34] tests/unit/plugins/modules/test_na_ontap_cifs.py: skipping as missing required netapp_lib 1380s SKIPPED [25] tests/unit/plugins/modules/test_na_ontap_cifs_acl.py: skipping as missing required netapp_lib 1380s SKIPPED [12] tests/unit/plugins/modules/test_na_ontap_cifs_local_group.py: skipping as missing required netapp_lib 1380s SKIPPED [3] tests/unit/plugins/modules/test_na_ontap_file_directory_policy.py: skipping as missing required netapp_lib 1380s SKIPPED [18] tests/unit/plugins/modules/test_na_ontap_cifs_local_group_member.py: skipping as missing required netapp_lib 1380s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_cifs_local_user_modify.py: skipping as missing required netapp_lib 1380s SKIPPED [16] tests/unit/plugins/modules/test_na_ontap_firewall_policy.py: skipping as missing required netapp_lib 1380s SKIPPED [4] tests/unit/plugins/modules/test_na_ontap_cifs_local_user_set_password.py: skipping as missing required netapp_lib 1380s SKIPPED [40] tests/unit/plugins/modules/test_na_ontap_firmware_upgrade.py: skipping as missing required netapp_lib 1380s SKIPPED [49] tests/unit/plugins/modules/test_na_ontap_cifs_server.py: skipping as missing required netapp_lib 1380s SKIPPED [43] tests/unit/plugins/modules/test_na_ontap_flexcache.py: skipping as missing required netapp_lib 1380s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_fpolicy_event.py: skipping as missing required netapp_lib 1380s SKIPPED [30] tests/unit/plugins/modules/test_na_ontap_job_schedule.py: skipping as missing required netapp_lib 1380s SKIPPED [13] tests/unit/plugins/modules/test_na_ontap_fpolicy_ext_engine.py: skipping as missing required netapp_lib 1380s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_fpolicy_policy.py: skipping as missing required netapp_lib 1380s SKIPPED [12] tests/unit/plugins/modules/test_na_ontap_kerberos_realm.py: skipping as missing required netapp_lib 1380s SKIPPED [30] tests/unit/plugins/modules/test_na_ontap_ldap_client.py: skipping as missing required netapp_lib 1380s SKIPPED [13] tests/unit/plugins/modules/test_na_ontap_fpolicy_scope.py: skipping as missing required netapp_lib 1380s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_fpolicy_status.py: skipping as missing required netapp_lib 1380s SKIPPED [27] tests/unit/plugins/modules/test_na_ontap_igroup.py: skipping as missing required netapp_lib 1380s SKIPPED [19] tests/unit/plugins/modules/test_na_ontap_license.py: skipping as missing required netapp_lib 1380s SKIPPED [15] tests/unit/plugins/modules/test_na_ontap_license_nlf.py: skipping as missing required netapp_lib 1380s SKIPPED [17] tests/unit/plugins/modules/test_na_ontap_igroup_initiator.py: skipping as missing required netapp_lib 1380s SKIPPED [48] tests/unit/plugins/modules/test_na_ontap_info.py: skipping as missing required netapp_lib 1380s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_log_forward.py: skipping as missing required netapp_lib 1380s SKIPPED [15] tests/unit/plugins/modules/test_na_ontap_login_messages.py: skipping as missing required netapp_lib 1380s SKIPPED [13] tests/unit/plugins/modules/test_na_ontap_lun.py: skipping as missing required netapp_lib 1380s SKIPPED [77] tests/unit/plugins/modules/test_na_ontap_interface.py: skipping as missing required netapp_lib 1380s SKIPPED [20] tests/unit/plugins/modules/test_na_ontap_lun_app_rest.py: skipping as missing required netapp_lib 1380s SKIPPED [5] tests/unit/plugins/modules/test_na_ontap_lun_copy.py: skipping as missing required netapp_lib 1380s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_lun_map.py: skipping as missing required netapp_lib 1380s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_lun_map_reporting_nodes.py: skipping as missing required netapp_lib 1380s SKIPPED [12] tests/unit/plugins/modules/test_na_ontap_lun_map_rest.py: skipping as missing required netapp_lib 1380s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_ipspace.py: skipping as missing required netapp_lib 1380s SKIPPED [21] tests/unit/plugins/modules/test_na_ontap_iscsi.py: skipping as missing required netapp_lib 1380s SKIPPED [11] tests/unit/plugins/modules/test_na_ontap_nvme_subsystem.py: skipping as missing required netapp_lib 1380s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_motd.py: skipping as missing required netapp_lib 1380s SKIPPED [15] tests/unit/plugins/modules/test_na_ontap_name_mappings.py: skipping as missing required netapp_lib 1380s SKIPPED [11] tests/unit/plugins/modules/test_na_ontap_name_service_switch.py: skipping as missing required netapp_lib 1380s SKIPPED [20] tests/unit/plugins/modules/test_na_ontap_object_store.py: skipping as missing required netapp_lib 1380s SKIPPED [4] tests/unit/plugins/modules/test_na_ontap_ndmp.py: skipping as missing required netapp_lib 1380s SKIPPED [32] tests/unit/plugins/modules/test_na_ontap_net_ifgrp.py: skipping as missing required netapp_lib 1380s SKIPPED [10] tests/unit/plugins/modules/test_na_ontap_partitions.py: skipping as missing required netapp_lib 1380s SKIPPED [30] tests/unit/plugins/modules/test_na_ontap_ports.py: skipping as missing required netapp_lib 1380s SKIPPED [17] tests/unit/plugins/modules/test_na_ontap_net_port.py: skipping as missing required netapp_lib 1380s SKIPPED [23] tests/unit/plugins/modules/test_na_ontap_net_routes.py: skipping as missing required netapp_lib 1380s SKIPPED [23] tests/unit/plugins/modules/test_na_ontap_portset.py: skipping as missing required netapp_lib 1380s SKIPPED [13] tests/unit/plugins/modules/test_na_ontap_net_subnet.py: skipping as missing required netapp_lib 1380s SKIPPED [12] tests/unit/plugins/modules/test_na_ontap_nfs.py: skipping as missing required netapp_lib 1380s SKIPPED [16] tests/unit/plugins/modules/test_na_ontap_qos_adaptive_policy_group.py: skipping as missing required netapp_lib 1380s SKIPPED [39] tests/unit/plugins/modules/test_na_ontap_qos_policy_group.py: skipping as missing required netapp_lib 1380s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_node.py: skipping as missing required netapp_lib 1380s SKIPPED [9] tests/unit/plugins/modules/test_na_ontap_ntfs_dacl.py: skipping as missing required netapp_lib 1380s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_ntfs_sd.py: skipping as missing required netapp_lib 1380s SKIPPED [29] tests/unit/plugins/modules/test_na_ontap_qtree.py: skipping as missing required netapp_lib 1380s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_nvme.py: skipping as missing required netapp_lib 1380s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_nvme_namespace.py: skipping as missing required netapp_lib 1380s SKIPPED [9] tests/unit/plugins/modules/test_na_ontap_quota_policy.py: skipping as missing required netapp_lib 1380s SKIPPED [47] tests/unit/plugins/modules/test_na_ontap_quotas.py: skipping as missing required netapp_lib 1380s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_security_config.py: skipping as missing required netapp_lib 1380s SKIPPED [11] tests/unit/plugins/modules/test_na_ontap_restit.py: skipping as missing required netapp_lib 1380s SKIPPED [27] tests/unit/plugins/modules/test_na_ontap_security_key_manager.py: skipping as missing required netapp_lib 1380s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_security_ssh.py: skipping as missing required netapp_lib 1380s SKIPPED [17] tests/unit/plugins/modules/test_na_ontap_service_processor_network.py: skipping as missing required netapp_lib 1380s SKIPPED [33] tests/unit/plugins/modules/test_na_ontap_snapmirror_policy.py: skipping as missing required netapp_lib 1380s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_snaplock_clock.py: skipping as missing required netapp_lib 1380s SKIPPED [79] tests/unit/plugins/modules/test_na_ontap_snapmirror.py: skipping as missing required netapp_lib 1380s SKIPPED [19] tests/unit/plugins/modules/test_na_ontap_snapshot.py: skipping as missing required netapp_lib 1380s SKIPPED [20] tests/unit/plugins/modules/test_na_ontap_snapshot_policy.py: skipping as missing required netapp_lib 1380s SKIPPED [30] tests/unit/plugins/modules/test_na_ontap_snapshot_policy_rest.py: skipping as missing required netapp_lib 1380s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_snmp_traphosts.py: skipping as missing required netapp_lib 1380s SKIPPED [44] tests/unit/plugins/modules/test_na_ontap_software_update.py: skipping as missing required netapp_lib 1380s SKIPPED [83] tests/unit/plugins/modules/test_na_ontap_svm.py: skipping as missing required netapp_lib 1380s SKIPPED [10] tests/unit/plugins/modules/test_na_ontap_storage_auto_giveback.py: skipping as missing required netapp_lib 1380s SKIPPED [15] tests/unit/plugins/modules/test_na_ontap_storage_failover.py: skipping as missing required netapp_lib 1380s SKIPPED [2] tests/unit/plugins/modules/test_na_ontap_template.py: skipping as missing required netapp_lib 1380s SKIPPED [35] tests/unit/plugins/modules/test_na_ontap_unix_group.py: skipping as missing required netapp_lib 1380s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_ucadapter.py: skipping as missing required netapp_lib 1380s SKIPPED [39] tests/unit/plugins/modules/test_na_ontap_user.py: skipping as missing required netapp_lib 1380s SKIPPED [26] tests/unit/plugins/modules/test_na_ontap_unix_user.py: skipping as missing required netapp_lib 1380s SKIPPED [25] tests/unit/plugins/modules/test_na_ontap_user_dicts.py: skipping as missing required netapp_lib 1380s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_user_role.py: skipping as missing required netapp_lib 1380s SKIPPED [111] tests/unit/plugins/modules/test_na_ontap_volume.py: skipping as missing required netapp_lib 1380s SKIPPED [20] tests/unit/plugins/modules/test_na_ontap_volume_autosize.py: skipping as missing required netapp_lib 1380s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_volume_clone_rest.py: skipping as missing required netapp_lib 1380s SKIPPED [11] tests/unit/plugins/modules/test_na_ontap_volume_clone.py: skipping as missing required netapp_lib 1380s SKIPPED [16] tests/unit/plugins/modules/test_na_ontap_volume_efficiency.py: skipping as missing required netapp_lib 1380s SKIPPED [94] tests/unit/plugins/modules/test_na_ontap_volume_rest.py: skipping as missing required netapp_lib 1380s SKIPPED [10] tests/unit/plugins/modules/test_na_ontap_vscan.py: skipping as missing required netapp_lib 1380s SKIPPED [21] tests/unit/plugins/modules/test_na_ontap_vscan_on_access_policy.py: skipping as missing required netapp_lib 1380s SKIPPED [4] tests/unit/plugins/modules/test_na_ontap_volume_snaplock.py: skipping as missing required netapp_lib 1380s SKIPPED [9] tests/unit/plugins/modules/test_na_ontap_vscan_on_demand_task_rest.py: skipping as missing required netapp_lib 1380s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_vscan_on_demand_task.py: skipping as missing required netapp_lib 1380s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_vscan_scanner_pool.py: skipping as missing required netapp_lib 1380s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_vserver_audit.py: skipping as missing required netapp_lib 1380s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_vserver_cifs_security.py: skipping as missing required netapp_lib 1380s SKIPPED [28] tests/unit/plugins/modules/test_na_ontap_vserver_peer.py: skipping as missing required netapp_lib 1380s SKIPPED [20] tests/unit/plugins/modules/test_na_ontap_wait_for_condition.py: skipping as missing required netapp_lib 1380s SKIPPED [13] tests/unit/plugins/modules/test_na_ontap_zapit.py: skipping as missing required netapp_lib 1380s FAILED tests/unit/plugins/modules/test_na_ontap_autosupport_invoke.py::TestMyModule::test_zapi_send_error 1380s ================= 1 failed, 645 passed, 2358 skipped in 29.02s ================= 1380s 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.HDQhnz/build.1ev/src/ansible_collections/netapp/ontap/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp/ontap --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/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. 1380s ## return code is 1 1380s 1380s 1380s 1380s ############################################################ 1380s ############################################################ 1380s #### Running FLAKY tests in ansible_collections/ngine_io/cloudstack 1380s ############################################################ 1380s ############################################################ 1381s Unit test controller 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.HDQhnz/build.1ev/src/ansible_collections/ngine_io/cloudstack 1381s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1381s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 1381s created: 2/2 workers 1381s 2 workers [0 items] 1381s 1381s 1381s ==================================== ERRORS ==================================== 1381s _________ ERROR collecting tests/unit/modules/test_cs_traffic_type.py __________ 1381s ImportError while importing test module '/tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ngine_io/cloudstack/tests/unit/modules/test_cs_traffic_type.py'. 1381s Hint: make sure your test modules/packages have valid Python names. 1381s Traceback: 1381s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1381s return _bootstrap._gcd_import(name[level:], package, level) 1381s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1381s assertion_rewriting_hook.exec_module(module) 1381s tests/unit/modules/test_cs_traffic_type.py:4: in 1381s from units.compat import unittest 1381s E ModuleNotFoundError: No module named 'units' 1381s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ngine_io/cloudstack/tests/output/junit/python3.13-controller-units.xml - 1381s =========================== short test summary info ============================ 1381s ERROR tests/unit/modules/test_cs_traffic_type.py 1381s =============================== 1 error in 0.47s =============================== 1381s 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.HDQhnz/build.1ev/src/ansible_collections/ngine_io/cloudstack/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ngine_io/cloudstack --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ngine_io/cloudstack tests/unit/modules/test_cs_traffic_type.py" returned exit status 1. 1381s ## return code is 1 1381s 1381s 1381s 1381s ############################################################ 1381s ############################################################ 1381s #### Running FLAKY tests in ansible_collections/sensu/sensu_go 1381s ############################################################ 1381s ############################################################ 1382s Unit test modules with Python 3.13 1383s ============================= test session starts ============================== 1383s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1383s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/sensu/sensu_go 1383s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1383s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 1383s created: 2/2 workers 1383s 2 workers [346 items] 1383s 1384s ........................................................................ [ 20%] 1384s ..................................................................F..... [ 41%] 1385s ........................................................................ [ 62%] 1386s ........................................................................ [ 83%] 1386s .......................................................... [100%] 1386s =================================== FAILURES =================================== 1386s _ TestDatastoreParams.test_parameters_datastore[my_resource-absent--None-None-None-None-None-None-False-True-expected_payload2] _ 1386s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1386s 1386s self = 1386s mocker = 1386s name = 'my_resource', state = 'absent', dsn = '', pool_size = None 1386s max_conn_lifetime = None, max_idle_conns = None, batch_workers = None 1386s batch_buffer = None, batch_size = None, enable_round_robin = False 1387s strict = True 1387s expected_payload = {'api_version': 'store/v1', 'metadata': {'name': 'my_resource'}, 'spec': {'dsn': '', 'enable_round_robin': False, 'strict': True}, 'type': 'PostgresConfig'} 1387s 1387s @pytest.mark.parametrize( 1387s # name ... Resource name 1387s # state ... Prefered resource state (Present/Absent) 1387s # dsn ... url or postgre connection string 1387s # pool_size ... max number of connections 1387s 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.HDQhnz/build.1ev/src/ansible_collections/sensu/sensu_go/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/sensu/sensu_go --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/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. 1387s # max_conn_lifetime ... max time a connection can persist 1387s # max_idle_conns ... max number of idle connections 1387s # batch_workers ... number of GOroutines 1387s # batch_buffer ... max requests to buffer in memory 1387s # batch_size ... number of requests in each transaction 1387s # enable_round_robin ... round robin (True/False) 1387s # strict ... strict (True/False) 1387s # expected_payload ... expected payload 1387s ("name", "state", "dsn", "pool_size", "max_conn_lifetime", "max_idle_conns", "batch_workers", 1387s "batch_buffer", "batch_size", "enable_round_robin", "strict", "expected_payload"), 1387s [ 1387s # Present 1387s ("my_resource", "present", "postgresql://user:secret@host:port/dbname", 2, 1, 1, 1, 1, 1, 1387s False, True, 1387s {'type': 'PostgresConfig', 'api_version': 'store/v1', 'metadata': {'name': 'my_resource'}, 1387s 'spec': 1387s { 1387s 'dsn': 'postgresql://user:secret@host:port/dbname', 'pool_size': 2, 'max_conn_lifetime': '1', 1387s 'max_idle_conns': 1, 'batch_workers': 1, 'batch_buffer': 1, 'batch_size': 1, 1387s 'enable_round_robin': False, 'strict': True}}), 1387s 1387s ("another_resource", "present", "postgresql://user:secret@host:port/dbname", 0, 0, 0, 0, 0, 0, 1387s False, False, 1387s {'type': 'PostgresConfig', 'api_version': 'store/v1', 'metadata': {'name': 'another_resource'}, 1387s 'spec': 1387s { 1387s 'dsn': 'postgresql://user:secret@host:port/dbname', 'pool_size': 0, 'max_conn_lifetime': '0', 1387s 'max_idle_conns': 0, 'batch_workers': 0, 'batch_buffer': 0, 'batch_size': 0, 1387s 'enable_round_robin': False, 'strict': False}}), 1387s # Absent 1387s ("my_resource", "absent", "", None, None, None, None, None, None, 1387s False, True, 1387s {'type': 'PostgresConfig', 'api_version': 'store/v1', 'metadata': {'name': 'my_resource'}, 1387s 'spec': 1387s { 1387s 'dsn': '', 'enable_round_robin': False, 'strict': True}}), 1387s 1387s ("my_resource", "absent", "postgresql://user:secret@host:port/dbname", 2, 1, 1, 1, 2, 3, 1387s False, True, 1387s {'type': 'PostgresConfig', 'api_version': 'store/v1', 'metadata': {'name': 'my_resource'}, 1387s 'spec': 1387s { 1387s 'dsn': 'postgresql://user:secret@host:port/dbname', 'pool_size': 2, 'max_conn_lifetime': '1', 1387s 'max_idle_conns': 1, 'batch_workers': 1, 'batch_buffer': 2, 'batch_size': 3, 1387s 'enable_round_robin': False, 'strict': True}}), 1387s ], 1387s ) 1387s def test_parameters_datastore(self, mocker, name, state, dsn, pool_size, max_conn_lifetime, max_idle_conns, batch_workers, 1387s batch_buffer, batch_size, enable_round_robin, strict, expected_payload): 1387s sync_mock = mocker.patch.object(datastore, "sync") 1387s sync_mock.return_value = True, {} 1387s set_module_args( 1387s name=name, 1387s dsn=dsn, 1387s state=state, 1387s pool_size=pool_size, 1387s max_conn_lifetime=max_conn_lifetime, 1387s max_idle_conns=max_idle_conns, 1387s batch_workers=batch_workers, 1387s batch_buffer=batch_buffer, 1387s batch_size=batch_size, 1387s enable_round_robin=enable_round_robin, 1387s strict=strict, 1387s ) 1387s with pytest.raises(AnsibleExitJson): 1387s > datastore.main() 1387s 1387s tests/unit/plugins/modules/test_datastore.py:343: 1387s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1387s plugins/modules/datastore.py:184: in main 1387s module = AnsibleModule( 1387s /tmp/ansible-test-6qmra9gn/ansible/module_utils/basic.py:445: in __init__ 1387s self.fail_json(msg=msg) 1387s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1387s 1387s args = (,) 1387s 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'} 1387s 1387s def fail_json(*args, **kwargs): 1387s kwargs['failed'] = True 1387s > raise AnsibleFailJson(kwargs) 1387s 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} 1387s 1387s tests/unit/plugins/modules/common/utils.py:38: AnsibleFailJson 1387s =============================== warnings summary =============================== 1387s tests/unit/plugins/modules/test_user.py::TestUpdatePassword::test_password_is_invalid_older_than_5_21_0 1387s /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/sensu/sensu_go/tests/unit/plugins/modules/test_user.py:39: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. 1387s client.version = version.StrictVersion("5.20.2") 1387s 1387s tests/unit/plugins/modules/test_user.py::TestUpdatePasswordHash::test_sensu_go_older_than_5_21_0[False] 1387s tests/unit/plugins/modules/test_user.py::TestUpdatePasswordHash::test_sensu_go_older_than_5_21_0[True] 1387s /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/sensu/sensu_go/tests/unit/plugins/modules/test_user.py:120: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. 1387s client.version = version.StrictVersion("5.20.0") 1387s 1387s tests/unit/plugins/modules/test_user.py::TestUpdatePasswordHash::test_sensu_go_newer_than_5_21_0 1387s /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/sensu/sensu_go/tests/unit/plugins/modules/test_user.py:129: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. 1387s client.version = version.StrictVersion("5.21.0") 1387s 1387s tests/unit/plugins/modules/test_user.py::TestUpdatePasswordHash::test_sensu_go_newer_than_5_21_0_check_mode 1387s /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/sensu/sensu_go/tests/unit/plugins/modules/test_user.py:146: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. 1387s client.version = version.StrictVersion("5.21.0") 1387s 1387s tests/unit/plugins/modules/test_user.py::TestUpdatePassword::test_password_is_invalid_5_21_0_or_newer 1387s /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/sensu/sensu_go/tests/unit/plugins/modules/test_user.py:53: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. 1387s client.version = version.StrictVersion("5.21.0") 1387s 1387s tests/unit/plugins/modules/test_user.py::TestUpdatePassword::test_missing_bcrypt_library[True-False-True] 1387s tests/unit/plugins/modules/test_user.py::TestUpdatePassword::test_missing_bcrypt_library[False-True-None] 1387s /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/sensu/sensu_go/tests/unit/plugins/modules/test_user.py:105: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. 1387s client.version = version.StrictVersion("5.21.1") 1387s 1387s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 1387s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/sensu/sensu_go/tests/output/junit/python3.13-modules-units.xml - 1387s =========================== short test summary info ============================ 1387s 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] 1387s ================== 1 failed, 345 passed, 8 warnings in 4.48s =================== 1387s ## return code is 1 1387s 1387s 1387s 1387s ############################################################ 1387s ############################################################ 1387s #### Running FLAKY tests in ansible_collections/splunk/es 1387s ############################################################ 1387s ############################################################ 1387s Unit test controller with Python 3.13 1388s ============================= test session starts ============================== 1388s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1388s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/splunk/es 1388s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1388s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 1388s created: 2/2 workers 1388s 2 workers [31 items] 1388s 1388s ..............F................ [100%] 1388s =================================== FAILURES =================================== 1388s _ TestSplunkEsCorrelationSearches.test_es_correlation_searches_replaced_idempotent _ 1388s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1388s 1388s self = 1388s conn = 1388s monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x75cc5f300510> 1388s 1388s @patch("ansible.module_utils.connection.Connection.__rpc__") 1388s def test_es_correlation_searches_replaced_idempotent( 1388s self, 1388s conn, 1388s monkeypatch, 1388s ): 1388s self._plugin._connection.socket_path = tempfile.NamedTemporaryFile().name 1388s self._plugin._connection._shell = MagicMock() 1388s 1388s def create_update(self, rest_path, data=None): 1388s return RESPONSE_PAYLOAD 1388s 1388s def get_by_path(self, path): 1388s return RESPONSE_PAYLOAD 1388s 1388s def delete_by_path(self, path): 1388s return {} 1388s 1388s monkeypatch.setattr(SplunkRequest, "create_update", create_update) 1388s monkeypatch.setattr(SplunkRequest, "get_by_path", get_by_path) 1388s monkeypatch.setattr(SplunkRequest, "delete_by_path", delete_by_path) 1388s 1388s self._plugin._task.args = { 1388s "state": "replaced", 1388s "config": [REQUEST_PAYLOAD[0]], 1388s } 1388s result = self._plugin.run(task_vars=self._task_vars) 1388s 1388s > assert result["changed"] is True 1388s E assert False is True 1388s 1388s tests/unit/plugins/action/test_es_correlation_searches.py:309: AssertionError 1388s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/splunk/es/tests/output/junit/python3.13-controller-units.xml - 1388s =========================== short test summary info ============================ 1388s FAILED tests/unit/plugins/action/test_es_correlation_searches.py::TestSplunkEsCorrelationSearches::test_es_correlation_searches_replaced_idempotent 1388s ========================= 1 failed, 30 passed in 1.20s ========================= 1388s 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.HDQhnz/build.1ev/src/ansible_collections/splunk/es/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/splunk/es --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/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. 1388s ## return code is 1 1388s 1388s 1388s 1388s ############################################################ 1388s ############################################################ 1388s #### Running FLAKY tests in ansible_collections/vmware/vmware 1388s ############################################################ 1388s ############################################################ 1389s Unit test modules with Python 3.13 1390s ============================= test session starts ============================== 1390s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1390s rootdir: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/vmware/vmware 1390s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1390s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0 1390s created: 2/2 workers 1390s 2 workers [18 items] 1390s 1390s ............FF...F [100%] 1390s =================================== FAILURES =================================== 1390s ____________________ TestModuleRestBase.test_get_vm_by_name ____________________ 1390s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1390s 1390s self = 1390s mocker = 1390s 1390s def test_get_vm_by_name(self, mocker): 1390s > self.__prepare(mocker) 1390s 1390s tests/unit/plugins/modules/test_utils_module_rest_base.py:21: 1390s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1390s tests/unit/plugins/modules/test_utils_module_rest_base.py:16: in __prepare 1390s self.base = ModuleRestBase( 1390s plugins/module_utils/_module_rest_base.py:29: in __init__ 1390s super().__init__(connection_params=module.params) 1390s plugins/module_utils/clients/_rest.py:48: in __init__ 1390s self.check_requirements() 1390s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1390s 1390s self = 1390s 1390s def check_requirements(self): 1390s """ 1390s Check all requirements for this client are satisfied 1390s """ 1390s if REQUESTS_IMP_ERR: 1390s raise MissingLibError('requests', REQUESTS_IMP_ERR) 1390s if VSPHERE_IMP_ERR: 1390s > raise MissingLibError( 1390s 'vSphere Automation SDK', VSPHERE_IMP_ERR, 1390s url='https://code.vmware.com/web/sdk/7.0/vsphere-automation-python' 1390s ) 1390s E ansible_collections.vmware.vmware.plugins.module_utils.clients._errors.MissingLibError: Failed to import the required Python library (vSphere Automation SDK) on autopkgtest'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 1390s 1390s plugins/module_utils/clients/_rest.py:65: MissingLibError 1390s _______________ TestModuleRestBase.test_get_content_library_ids ________________ 1390s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1390s 1390s self = 1390s mocker = 1390s 1390s def test_get_content_library_ids(self, mocker): 1390s > self.__prepare(mocker) 1390s 1390s tests/unit/plugins/modules/test_utils_module_rest_base.py:29: 1390s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1390s tests/unit/plugins/modules/test_utils_module_rest_base.py:16: in __prepare 1390s self.base = ModuleRestBase( 1390s plugins/module_utils/_module_rest_base.py:29: in __init__ 1390s super().__init__(connection_params=module.params) 1390s plugins/module_utils/clients/_rest.py:48: in __init__ 1390s self.check_requirements() 1390s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1390s 1390s self = 1390s 1390s def check_requirements(self): 1390s """ 1390s Check all requirements for this client are satisfied 1390s """ 1390s if REQUESTS_IMP_ERR: 1390s raise MissingLibError('requests', REQUESTS_IMP_ERR) 1390s if VSPHERE_IMP_ERR: 1390s > raise MissingLibError( 1390s 'vSphere Automation SDK', VSPHERE_IMP_ERR, 1390s url='https://code.vmware.com/web/sdk/7.0/vsphere-automation-python' 1390s ) 1390s E ansible_collections.vmware.vmware.plugins.module_utils.clients._errors.MissingLibError: Failed to import the required Python library (vSphere Automation SDK) on autopkgtest'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 1390s 1390s plugins/module_utils/clients/_rest.py:65: MissingLibError 1390s _____________________ TestRestClient.test_get_tags_by_moid _____________________ 1390s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1390s 1390s self = 1390s mocker = 1390s 1390s def test_get_tags_by_moid(self, mocker): 1390s > self.__prepare(mocker) 1390s 1390s tests/unit/plugins/modules/test_utils_rest_client.py:21: 1390s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1390s tests/unit/plugins/modules/test_utils_rest_client.py:10: in __prepare 1390s client_mock = mocker.patch('ansible_collections.vmware.vmware.plugins.module_utils.clients._rest.create_vsphere_client') 1390s /usr/lib/python3/dist-packages/pytest_mock/plugin.py:440: in __call__ 1390s return self._start_patch( 1390s /usr/lib/python3/dist-packages/pytest_mock/plugin.py:258: in _start_patch 1390s mocked: MockType = p.start() 1390s /usr/lib/python3.13/unittest/mock.py:1654: in start 1390s result = self.__enter__() 1390s /usr/lib/python3.13/unittest/mock.py:1497: in __enter__ 1390s original, local = self.get_original() 1390s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1390s 1390s self = 1390s 1390s def get_original(self): 1390s target = self.getter() 1390s name = self.attribute 1390s 1390s original = DEFAULT 1390s local = False 1390s 1390s try: 1390s original = target.__dict__[name] 1390s except (AttributeError, KeyError): 1390s original = getattr(target, name, DEFAULT) 1390s else: 1390s local = True 1390s 1390s if name in _builtins and isinstance(target, ModuleType): 1390s self.create = True 1390s 1390s if not self.create and original is DEFAULT: 1390s > raise AttributeError( 1390s "%s does not have the attribute %r" % (target, name) 1390s ) 1390s E AttributeError: does not have the attribute 'create_vsphere_client' 1390s 1390s /usr/lib/python3.13/unittest/mock.py:1467: AttributeError 1390s =============================== warnings summary =============================== 1390s tests/unit/plugins/modules/test_utils_pyvmomi_client.py::TestPyvmomiClient::test_get_all_objs_by_type 1390s /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/vmware/vmware/plugins/module_utils/clients/_pyvmomi.py:130: DeprecationWarning: ssl.PROTOCOL_TLS is deprecated 1390s ssl_context = ssl.SSLContext(ssl.PROTOCOL_SSLv23) 1390s 1390s tests/unit/plugins/modules/test_utils_pyvmomi_client.py::TestPyvmomiClient::test_class_init 1390s /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/vmware/vmware/plugins/module_utils/clients/_pyvmomi.py:125: DeprecationWarning: ssl.PROTOCOL_TLS is deprecated 1390s ssl_context = ssl.SSLContext(ssl.PROTOCOL_SSLv23) 1390s 1390s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 1390s - generated xml file: /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/vmware/vmware/tests/output/junit/python3.13-modules-units.xml - 1390s =========================== short test summary info ============================ 1390s FAILED tests/unit/plugins/modules/test_utils_module_rest_base.py::TestModuleRestBase::test_get_vm_by_name 1390s FAILED tests/unit/plugins/modules/test_utils_module_rest_base.py::TestModuleRestBase::test_get_content_library_ids 1390s FAILED tests/unit/plugins/modules/test_utils_rest_client.py::TestRestClient::test_get_tags_by_moid 1390s =================== 3 failed, 15 passed, 2 warnings in 1.09s =================== 1390s 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.HDQhnz/build.1ev/src/ansible_collections/vmware/vmware/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/vmware/vmware --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/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. 1390s ## return code is 1 1390s ############################################################ 1390s ############################################################ 1390s #### failed tests are: 1390s #### ansible_collections/ansible/utils 1390s #### ansible_collections/cisco/aci 1390s #### ansible_collections/cisco/dnac 1390s #### ansible_collections/community/dns 1390s #### ansible_collections/community/general 1390s #### ansible_collections/community/hrobot 1390s #### ansible_collections/community/library_inventory_filtering_v1 1390s #### ansible_collections/infoblox/nios_modules 1390s #### ansible_collections/junipernetworks/junos 1390s #### ansible_collections/netapp_eseries/santricity 1390s #### ansible_collections/netapp/ontap 1390s #### ansible_collections/ngine_io/cloudstack 1390s #### ansible_collections/sensu/sensu_go 1390s #### ansible_collections/splunk/es 1390s #### ansible_collections/vmware/vmware 1390s ############################################################ 1390s ############################################################ 1390s autopkgtest [22:08:12]: test unit-tests-flaky.py: -----------------------] 1391s autopkgtest [22:08:13]: test unit-tests-flaky.py: - - - - - - - - - - results - - - - - - - - - - 1391s unit-tests-flaky.py FLAKY non-zero exit status 1 1392s autopkgtest [22:08:14]: test unit-tests-flaky.py: - - - - - - - - - - stderr - - - - - - - - - - 1392s 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.HDQhnz/build.1ev/src/ansible_collections/ansible/utils/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ansible/utils --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/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. 1392s 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.HDQhnz/build.1ev/src/ansible_collections/cisco/aci/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/aci --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/aci tests/unit/module_utils/test_aci.py" returned exit status 1. 1392s 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.HDQhnz/build.1ev/src/ansible_collections/cisco/dnac/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/cisco/dnac --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/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. 1392s 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.HDQhnz/build.1ev/src/ansible_collections/community/dns/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/dns --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/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. 1392s 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.HDQhnz/build.1ev/src/ansible_collections/community/general/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/general --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/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. 1392s 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.HDQhnz/build.1ev/src/ansible_collections/community/hrobot/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/hrobot --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/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. 1392s 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.HDQhnz/build.1ev/src/ansible_collections/community/library_inventory_filtering_v1/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/library_inventory_filtering_v1 --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/community/library_inventory_filtering_v1 tests/unit/plugins/plugin_utils/test_inventory_filter.py" returned exit status 1. 1392s 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.HDQhnz/build.1ev/src/ansible_collections/infoblox/nios_modules/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/infoblox/nios_modules --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/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. 1392s 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.HDQhnz/build.1ev/src/ansible_collections/junipernetworks/junos/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/junipernetworks/junos --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/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. 1392s 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.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp_eseries/santricity --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/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. 1392s 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.HDQhnz/build.1ev/src/ansible_collections/netapp/ontap/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/netapp/ontap --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/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. 1392s 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.HDQhnz/build.1ev/src/ansible_collections/ngine_io/cloudstack/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ngine_io/cloudstack --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/ngine_io/cloudstack tests/unit/modules/test_cs_traffic_type.py" returned exit status 1. 1392s 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.HDQhnz/build.1ev/src/ansible_collections/sensu/sensu_go/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/sensu/sensu_go --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/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. 1392s 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.HDQhnz/build.1ev/src/ansible_collections/splunk/es/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/splunk/es --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/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. 1392s 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.HDQhnz/build.1ev/src/ansible_collections/vmware/vmware/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HDQhnz/build.1ev/src/ansible_collections/vmware/vmware --confcutdir /tmp/autopkgtest.HDQhnz/build.1ev/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. 1392s autopkgtest [22:08:14]: @@@@@@@@@@@@@@@@@@@@ summary 1392s unit-tests-stable.py PASS 1392s unit-tests-flaky.py FLAKY non-zero exit status 1 1410s nova [W] Skipping flock for amd64 1410s Creating nova instance adt-questing-amd64-ansible-20250503-214502-juju-7f2275-prod-proposed-migration-environment-15-b3ee08dc-3783-4b96-a9f5-005736827d30 from image adt/ubuntu-questing-amd64-server-20250503.img (UUID 57b7c1b6-ad80-4bdb-b031-36f045f7f3b3)... 1410s nova [W] Timed out waiting for 34ac08d2-37c4-4a46-a382-424883d3107e to get deleted. 1410s nova [W] Skipping flock for amd64 1410s Creating nova instance adt-questing-amd64-ansible-20250503-214502-juju-7f2275-prod-proposed-migration-environment-15-b3ee08dc-3783-4b96-a9f5-005736827d30 from image adt/ubuntu-questing-amd64-server-20250503.img (UUID 57b7c1b6-ad80-4bdb-b031-36f045f7f3b3)... 1410s nova [W] Timed out waiting for afee3deb-b91c-484b-a40f-52dec09265b0 to get deleted.