0s autopkgtest [03:53:19]: starting date and time: 2025-05-03 03:53:19+0000
0s autopkgtest [03:53:19]: git checkout: 9986aa8c Merge branch 'skia/fix_network_interface' into 'ubuntu/production'
0s autopkgtest [03:53:19]: host juju-7f2275-prod-proposed-migration-environment-21; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.elfo21p2/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:python-azure --apt-upgrade ansible --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=python-azure/20250401+git-1 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor builder-cpu2-ram4-disk20 --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-21@bos03-8.secgroup --name adt-questing-amd64-ansible-20250503-035319-juju-7f2275-prod-proposed-migration-environment-21-79388640-9d21-4aae-9aaf-af5ead31287a --image adt/ubuntu-questing-amd64-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-21 --net-id=net_prod-proposed-migration-amd64 -e TERM=linux --mirror=http://ftpmaster.internal/ubuntu/
50s autopkgtest [03:54:09]: testbed dpkg architecture: amd64
51s autopkgtest [03:54:10]: testbed apt version: 3.0.0
51s autopkgtest [03:54:10]: @@@@@@@@@@@@@@@@@@@@ test bed setup
51s autopkgtest [03:54:10]: testbed release detected to be: None
52s autopkgtest [03:54:11]: updating testbed package index (apt update)
52s Get:1 http://ftpmaster.internal/ubuntu questing-proposed InRelease [110 kB]
52s Hit:2 http://ftpmaster.internal/ubuntu questing InRelease
53s Hit:3 http://ftpmaster.internal/ubuntu questing-updates InRelease
53s Hit:4 http://ftpmaster.internal/ubuntu questing-security InRelease
53s Get:5 http://ftpmaster.internal/ubuntu questing-proposed/universe Sources [1920 kB]
53s Get:6 http://ftpmaster.internal/ubuntu questing-proposed/main Sources [168 kB]
53s Get:7 http://ftpmaster.internal/ubuntu questing-proposed/multiverse Sources [43.3 kB]
53s Get:8 http://ftpmaster.internal/ubuntu questing-proposed/main amd64 Packages [232 kB]
53s Get:9 http://ftpmaster.internal/ubuntu questing-proposed/main i386 Packages [177 kB]
53s Get:10 http://ftpmaster.internal/ubuntu questing-proposed/universe amd64 Packages [1520 kB]
53s Get:11 http://ftpmaster.internal/ubuntu questing-proposed/universe i386 Packages [672 kB]
53s Get:12 http://ftpmaster.internal/ubuntu questing-proposed/multiverse amd64 Packages [14.8 kB]
53s Get:13 http://ftpmaster.internal/ubuntu questing-proposed/multiverse i386 Packages [13.5 kB]
53s Fetched 4871 kB in 1s (4026 kB/s)
54s Reading package lists...
55s autopkgtest [03:54:14]: upgrading testbed (apt dist-upgrade and autopurge)
55s Reading package lists...
55s Building dependency tree...
55s Reading state information...
56s Calculating upgrade...Starting pkgProblemResolver with broken count: 0
56s Starting 2 pkgProblemResolver with broken count: 0
56s Done
57s Entering ResolveByKeep
57s
58s Calculating upgrade...
58s The following packages will be upgraded:
58s ed fwupd htop libftdi1-2 libfwupd3 libnpth0t64 libnvme1t64 libsensors-config
58s libsensors5 liburcu8t64 mokutil nano usb.ids
58s 13 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
58s Need to get 6529 kB of archives.
58s After this operation, 209 kB disk space will be freed.
58s Get:1 http://ftpmaster.internal/ubuntu questing/main amd64 libnpth0t64 amd64 1.8-3 [9294 B]
58s Get:2 http://ftpmaster.internal/ubuntu questing/main amd64 ed amd64 1.21.1-1 [57.2 kB]
58s Get:3 http://ftpmaster.internal/ubuntu questing/main amd64 libsensors-config all 1:3.6.2-2 [6756 B]
58s Get:4 http://ftpmaster.internal/ubuntu questing/main amd64 libsensors5 amd64 1:3.6.2-2 [28.7 kB]
58s Get:5 http://ftpmaster.internal/ubuntu questing/main amd64 liburcu8t64 amd64 0.15.2-2 [63.9 kB]
58s Get:6 http://ftpmaster.internal/ubuntu questing/main amd64 nano amd64 8.4-1 [290 kB]
58s Get:7 http://ftpmaster.internal/ubuntu questing/main amd64 usb.ids all 2025.04.01-1 [223 kB]
58s Get:8 http://ftpmaster.internal/ubuntu questing/main amd64 fwupd amd64 2.0.8-3 [5396 kB]
59s Get:9 http://ftpmaster.internal/ubuntu questing/main amd64 libfwupd3 amd64 2.0.8-3 [136 kB]
59s Get:10 http://ftpmaster.internal/ubuntu questing/main amd64 htop amd64 3.4.1-4 [175 kB]
59s Get:11 http://ftpmaster.internal/ubuntu questing/main amd64 libftdi1-2 amd64 1.5-10 [30.7 kB]
59s Get:12 http://ftpmaster.internal/ubuntu questing/main amd64 libnvme1t64 amd64 1.13-2 [84.2 kB]
59s Get:13 http://ftpmaster.internal/ubuntu questing/main amd64 mokutil amd64 0.7.2-1 [27.9 kB]
59s Fetched 6529 kB in 1s (8069 kB/s)
59s (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.)
59s Preparing to unpack .../libnpth0t64_1.8-3_amd64.deb ...
59s Unpacking libnpth0t64:amd64 (1.8-3) over (1.8-2) ...
59s Setting up libnpth0t64:amd64 (1.8-3) ...
59s (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.)
59s Preparing to unpack .../00-ed_1.21.1-1_amd64.deb ...
59s Unpacking ed (1.21.1-1) over (1.21-1) ...
59s Preparing to unpack .../01-libsensors-config_1%3a3.6.2-2_all.deb ...
59s Unpacking libsensors-config (1:3.6.2-2) over (1:3.6.0-10) ...
60s Preparing to unpack .../02-libsensors5_1%3a3.6.2-2_amd64.deb ...
60s Unpacking libsensors5:amd64 (1:3.6.2-2) over (1:3.6.0-10) ...
60s Preparing to unpack .../03-liburcu8t64_0.15.2-2_amd64.deb ...
60s Unpacking liburcu8t64:amd64 (0.15.2-2) over (0.15.1-1) ...
60s Preparing to unpack .../04-nano_8.4-1_amd64.deb ...
60s Unpacking nano (8.4-1) over (8.3-1) ...
60s Preparing to unpack .../05-usb.ids_2025.04.01-1_all.deb ...
60s Unpacking usb.ids (2025.04.01-1) over (2025.01.14-1) ...
60s Preparing to unpack .../06-fwupd_2.0.8-3_amd64.deb ...
60s Unpacking fwupd (2.0.8-3) over (2.0.7-1) ...
60s Preparing to unpack .../07-libfwupd3_2.0.8-3_amd64.deb ...
60s Unpacking libfwupd3:amd64 (2.0.8-3) over (2.0.7-1) ...
60s Preparing to unpack .../08-htop_3.4.1-4_amd64.deb ...
60s Unpacking htop (3.4.1-4) over (3.4.0-2) ...
60s Preparing to unpack .../09-libftdi1-2_1.5-10_amd64.deb ...
60s Unpacking libftdi1-2:amd64 (1.5-10) over (1.5-8build1) ...
60s Preparing to unpack .../10-libnvme1t64_1.13-2_amd64.deb ...
60s Unpacking libnvme1t64 (1.13-2) over (1.11.1-2) ...
60s Preparing to unpack .../11-mokutil_0.7.2-1_amd64.deb ...
60s Unpacking mokutil (0.7.2-1) over (0.6.0-2build3) ...
60s Setting up liburcu8t64:amd64 (0.15.2-2) ...
60s Setting up mokutil (0.7.2-1) ...
60s Setting up htop (3.4.1-4) ...
60s Setting up libsensors-config (1:3.6.2-2) ...
60s Installing new version of config file /etc/sensors3.conf ...
60s Setting up libfwupd3:amd64 (2.0.8-3) ...
60s Setting up libftdi1-2:amd64 (1.5-10) ...
60s Setting up libnvme1t64 (1.13-2) ...
60s Setting up ed (1.21.1-1) ...
60s Setting up usb.ids (2025.04.01-1) ...
60s Setting up libsensors5:amd64 (1:3.6.2-2) ...
60s Setting up nano (8.4-1) ...
60s Installing new version of config file /etc/nanorc ...
60s Setting up fwupd (2.0.8-3) ...
61s fwupd-refresh.service is a disabled or a static unit not running, not starting it.
61s fwupd.service is a disabled or a static unit not running, not starting it.
61s Processing triggers for man-db (2.13.0-1) ...
62s Processing triggers for dbus (1.16.2-2ubuntu1) ...
62s Processing triggers for install-info (7.1.1-1) ...
62s Processing triggers for libc-bin (2.41-6ubuntu1) ...
62s Reading package lists...
63s Building dependency tree...
63s Reading state information...
63s Starting pkgProblemResolver with broken count: 0
63s Starting 2 pkgProblemResolver with broken count: 0
63s Done
63s Solving dependencies...
63s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
64s autopkgtest [03:54:23]: rebooting testbed after setup commands that affected boot
87s autopkgtest [03:54:46]: testbed running kernel: Linux 6.14.0-15-generic #15-Ubuntu SMP PREEMPT_DYNAMIC Sun Apr 6 15:05:05 UTC 2025
89s autopkgtest [03:54:48]: @@@@@@@@@@@@@@@@@@@@ apt-source ansible
92s Get:1 http://ftpmaster.internal/ubuntu questing/universe ansible 11.2.0+dfsg-1 (dsc) [3353 B]
92s Get:2 http://ftpmaster.internal/ubuntu questing/universe ansible 11.2.0+dfsg-1 (tar) [26.7 MB]
92s Get:3 http://ftpmaster.internal/ubuntu questing/universe ansible 11.2.0+dfsg-1 (diff) [32.9 kB]
92s gpgv: Signature made Thu Feb 27 17:38:46 2025 UTC
92s gpgv: using RSA key D847C62510A9C2FF242CE02CD604A1C4823EE0F8
92s gpgv: Can't check signature: No public key
92s dpkg-source: warning: cannot verify inline signature for ./ansible_11.2.0+dfsg-1.dsc: no acceptable signature found
97s autopkgtest [03:54:56]: testing package ansible version 11.2.0+dfsg-1
97s autopkgtest [03:54:56]: build not needed
111s autopkgtest [03:55:10]: test unit-tests-stable.py: preparing testbed
111s Reading package lists...
111s Building dependency tree...
111s Reading state information...
111s Starting pkgProblemResolver with broken count: 0
111s Starting 2 pkgProblemResolver with broken count: 0
111s Done
112s The following NEW packages will be installed:
112s ansible ansible-core fontconfig-config fonts-dejavu-core fonts-dejavu-mono
112s gir1.2-secret-1 git git-man libcairo-gobject2 libcairo2 liberror-perl
112s libfontconfig1 libpixman-1-0 libsecret-1-0 libsecret-common libsodium23
112s libxcb-render0 libxcb-shm0 libxrender1 libxslt1.1 python3-adal
112s python3-aiohappyeyeballs python3-aiohttp python3-aiosignal
112s python3-async-timeout python3-avro python3-azure python3-azure-storage
112s python3-cachetools python3-cairo python3-click python3-colorama
112s python3-deprecated python3-dnspython python3-execnet python3-flake8
112s python3-freezegun python3-frozenlist python3-gi-cairo python3-gitlab
112s python3-google-auth python3-httmock python3-hvac python3-iniconfig
112s python3-isodate python3-joblib python3-kubernetes python3-lxml
112s python3-marshmallow python3-mccabe python3-mock python3-msal
112s python3-msal-extensions python3-msrest python3-msrestazure python3-multidict
112s python3-nacl python3-nltk python3-paramiko python3-pathspec python3-pluggy
112s python3-portalocker python3-proxmoxer python3-psutil python3-py
112s python3-pyasn1 python3-pyasn1-modules python3-pycodestyle python3-pydash
112s python3-pyflakes python3-pyhcl python3-pytest python3-pytest-forked
112s python3-pytest-mock python3-pytest-xdist python3-pyu2f python3-pyvmomi
112s python3-redis python3-regex python3-requests-oauthlib
112s python3-requests-toolbelt python3-resolvelib python3-responses python3-rsa
112s python3-ruamel.yaml python3-ruamel.yaml.clib python3-strictyaml
112s python3-textfsm python3-tqdm python3-websocket python3-wrapt
112s python3-xmltodict python3-yarl yamllint
112s 0 upgraded, 94 newly installed, 0 to remove and 0 not upgraded.
112s Need to get 52.7 MB of archives.
112s After this operation, 889 MB of additional disk space will be used.
112s Get:1 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-resolvelib all 1.1.0-1 [25.8 kB]
112s Get:2 http://ftpmaster.internal/ubuntu questing/main amd64 libsodium23 amd64 1.0.18-1build3 [161 kB]
112s Get:3 http://ftpmaster.internal/ubuntu questing/main amd64 python3-nacl amd64 1.5.0-7 [61.0 kB]
112s Get:4 http://ftpmaster.internal/ubuntu questing/main amd64 python3-paramiko all 3.5.1-2ubuntu1 [147 kB]
113s Get:5 http://ftpmaster.internal/ubuntu questing/main amd64 python3-dnspython all 2.7.0-1ubuntu1 [167 kB]
113s Get:6 http://ftpmaster.internal/ubuntu questing/universe amd64 ansible-core all 2.18.1-4ubuntu1 [1273 kB]
113s Get:7 http://ftpmaster.internal/ubuntu questing/universe amd64 ansible all 11.2.0+dfsg-1 [18.1 MB]
113s Get:8 http://ftpmaster.internal/ubuntu questing/main amd64 fonts-dejavu-mono all 2.37-8 [502 kB]
113s Get:9 http://ftpmaster.internal/ubuntu questing/main amd64 fonts-dejavu-core all 2.37-8 [835 kB]
113s Get:10 http://ftpmaster.internal/ubuntu questing/main amd64 fontconfig-config amd64 2.15.0-2.2ubuntu1 [37.8 kB]
113s Get:11 http://ftpmaster.internal/ubuntu questing/main amd64 libsecret-common all 0.21.7-1 [5160 B]
113s Get:12 http://ftpmaster.internal/ubuntu questing/main amd64 libsecret-1-0 amd64 0.21.7-1 [118 kB]
113s Get:13 http://ftpmaster.internal/ubuntu questing/main amd64 gir1.2-secret-1 amd64 0.21.7-1 [9388 B]
113s Get:14 http://ftpmaster.internal/ubuntu questing/main amd64 liberror-perl all 0.17030-1 [23.5 kB]
114s Get:15 http://ftpmaster.internal/ubuntu questing/main amd64 git-man all 1:2.48.1-0ubuntu1 [1148 kB]
114s Get:16 http://ftpmaster.internal/ubuntu questing/main amd64 git amd64 1:2.48.1-0ubuntu1 [4759 kB]
114s Get:17 http://ftpmaster.internal/ubuntu questing/main amd64 libfontconfig1 amd64 2.15.0-2.2ubuntu1 [164 kB]
114s Get:18 http://ftpmaster.internal/ubuntu questing/main amd64 libpixman-1-0 amd64 0.44.0-3 [427 kB]
114s Get:19 http://ftpmaster.internal/ubuntu questing/main amd64 libxcb-render0 amd64 1.17.0-2 [16.2 kB]
114s Get:20 http://ftpmaster.internal/ubuntu questing/main amd64 libxcb-shm0 amd64 1.17.0-2 [5758 B]
114s Get:21 http://ftpmaster.internal/ubuntu questing/main amd64 libxrender1 amd64 1:0.9.10-1.1build1 [19.0 kB]
114s Get:22 http://ftpmaster.internal/ubuntu questing/main amd64 libcairo2 amd64 1.18.4-1 [662 kB]
114s Get:23 http://ftpmaster.internal/ubuntu questing/main amd64 libcairo-gobject2 amd64 1.18.4-1 [127 kB]
114s Get:24 http://ftpmaster.internal/ubuntu questing/main amd64 libxslt1.1 amd64 1.1.39-0exp1ubuntu4 [176 kB]
114s Get:25 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-adal all 1.2.7-5 [33.0 kB]
114s Get:26 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-aiohappyeyeballs all 2.6.1-1 [11.1 kB]
114s Get:27 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-multidict amd64 6.2.0-2 [35.6 kB]
114s Get:28 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-yarl amd64 1.13.1-1build2 [99.7 kB]
114s Get:29 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-async-timeout all 5.0.1-1 [6830 B]
114s Get:30 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-frozenlist amd64 1.5.0-1build2 [51.6 kB]
114s Get:31 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-aiosignal all 1.3.2-1 [5182 B]
114s Get:32 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-aiohttp amd64 3.10.11-1build1 [316 kB]
114s Get:33 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-avro all 1.12.0+dfsg-1 [75.3 kB]
114s Get:34 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-isodate all 0.7.0-1 [18.6 kB]
114s Get:35 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-requests-oauthlib all 1.3.1-1 [18.8 kB]
114s Get:36 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-msrest all 0.6.21-5 [48.7 kB]
114s Get:37 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-msrestazure all 0.6.4-4 [27.1 kB]
114s Get:38 http://ftpmaster.internal/ubuntu questing-proposed/universe amd64 python3-azure-storage all 20250401+git-1 [300 kB]
114s Get:39 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-colorama all 0.4.6-4 [32.1 kB]
114s Get:40 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-marshmallow all 3.26.1-0.2 [47.5 kB]
114s Get:41 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-msal all 1.32.0-1 [100 kB]
114s Get:42 http://ftpmaster.internal/ubuntu questing/main amd64 python3-cairo amd64 1.27.0-2 [124 kB]
114s Get:43 http://ftpmaster.internal/ubuntu questing/main amd64 python3-gi-cairo amd64 3.50.0-4build1 [8232 B]
114s Get:44 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-portalocker all 2.2.1-1 [17.2 kB]
114s Get:45 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-msal-extensions all 1.3.1-1 [18.2 kB]
114s Get:46 http://ftpmaster.internal/ubuntu questing/main amd64 python3-click all 8.2.0+0.really.8.1.8-1 [80.0 kB]
114s Get:47 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-joblib all 1.4.2-3 [205 kB]
114s Get:48 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-regex amd64 0.1.20241106-1build1 [304 kB]
114s Get:49 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-tqdm all 4.67.1-3 [91.6 kB]
114s Get:50 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-nltk all 3.9.1-2 [1006 kB]
114s Get:51 http://ftpmaster.internal/ubuntu questing/main amd64 python3-psutil amd64 5.9.8-2build3 [196 kB]
114s Get:52 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pydash all 8.0.3-3 [93.0 kB]
114s Get:53 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-ruamel.yaml.clib amd64 0.2.12+ds-1build1 [164 kB]
114s Get:54 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-ruamel.yaml all 0.18.10+ds-1 [127 kB]
114s Get:55 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-strictyaml all 1.6.1-3 [89.1 kB]
114s Get:56 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-websocket all 1.8.0-2 [38.5 kB]
114s Get:57 http://ftpmaster.internal/ubuntu questing-proposed/universe amd64 python3-azure all 20250401+git-1 [16.0 MB]
115s Get:58 http://ftpmaster.internal/ubuntu questing/main amd64 python3-cachetools all 5.3.3-1 [10.3 kB]
115s Get:59 http://ftpmaster.internal/ubuntu questing/main amd64 python3-wrapt amd64 1.15.0-4build1 [34.7 kB]
115s Get:60 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-deprecated all 1.2.18-1 [10.6 kB]
115s Get:61 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-execnet all 2.1.1-1 [33.4 kB]
115s Get:62 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-mccabe all 0.7.0-1 [8678 B]
115s Get:63 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pycodestyle all 2.12.1-2 [30.2 kB]
115s Get:64 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pyflakes all 3.2.0-3 [53.0 kB]
115s Get:65 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-flake8 all 7.1.1-3 [44.0 kB]
115s Get:66 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-freezegun all 1.5.1-1.2 [15.9 kB]
115s Get:67 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-requests-toolbelt all 1.0.0-4 [37.0 kB]
115s Get:68 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-gitlab all 1:4.9.0-1 [75.0 kB]
115s Get:69 http://ftpmaster.internal/ubuntu questing/main amd64 python3-pyasn1 all 0.6.1-1 [56.4 kB]
115s Get:70 http://ftpmaster.internal/ubuntu questing/main amd64 python3-pyasn1-modules all 0.4.1-2 [80.3 kB]
115s Get:71 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pyu2f all 0.1.5-4 [22.9 kB]
115s Get:72 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-responses all 0.25.6-1 [40.5 kB]
115s Get:73 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-rsa all 4.9-2 [28.2 kB]
115s Get:74 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-google-auth all 2.28.2-3 [91.0 kB]
115s Get:75 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-httmock all 1.4.0-5 [6544 B]
115s Get:76 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pyhcl all 0.4.4-6 [43.1 kB]
115s Get:77 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-hvac all 2.3.0-3 [88.1 kB]
115s Get:78 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-iniconfig all 1.1.1-2 [6024 B]
115s Get:79 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-kubernetes all 30.1.0-2 [385 kB]
115s Get:80 http://ftpmaster.internal/ubuntu questing/main amd64 python3-lxml amd64 5.3.2-1 [1407 kB]
115s Get:81 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pathspec all 0.12.1-1 [24.5 kB]
115s Get:82 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pluggy all 1.5.0-1 [21.0 kB]
115s Get:83 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-proxmoxer all 2.2.0-1 [16.2 kB]
115s Get:84 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-py all 1.11.0-4 [72.7 kB]
115s Get:85 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pytest all 8.3.5-1 [252 kB]
115s Get:86 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pytest-forked all 1.6.0-3 [7470 B]
115s Get:87 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pytest-mock all 3.14.0-2 [11.7 kB]
115s Get:88 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pytest-xdist all 3.6.1-1 [33.8 kB]
115s Get:89 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pyvmomi all 8.0.3.0.1-1 [532 kB]
115s Get:90 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-redis all 4.3.4-4 [166 kB]
115s Get:91 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-textfsm all 1.1.3-3 [29.3 kB]
115s Get:92 http://ftpmaster.internal/ubuntu questing/main amd64 python3-xmltodict all 0.13.0-1 [13.4 kB]
115s Get:93 http://ftpmaster.internal/ubuntu questing/universe amd64 yamllint all 1.35.1-2 [43.6 kB]
115s Get:94 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-mock all 5.1.0-1 [64.1 kB]
115s Fetched 52.7 MB in 3s (17.9 MB/s)
115s Selecting previously unselected package python3-resolvelib.
116s (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.)
116s Preparing to unpack .../00-python3-resolvelib_1.1.0-1_all.deb ...
116s Unpacking python3-resolvelib (1.1.0-1) ...
116s Selecting previously unselected package libsodium23:amd64.
116s Preparing to unpack .../01-libsodium23_1.0.18-1build3_amd64.deb ...
116s Unpacking libsodium23:amd64 (1.0.18-1build3) ...
116s Selecting previously unselected package python3-nacl.
116s Preparing to unpack .../02-python3-nacl_1.5.0-7_amd64.deb ...
116s Unpacking python3-nacl (1.5.0-7) ...
116s Selecting previously unselected package python3-paramiko.
116s Preparing to unpack .../03-python3-paramiko_3.5.1-2ubuntu1_all.deb ...
116s Unpacking python3-paramiko (3.5.1-2ubuntu1) ...
116s Selecting previously unselected package python3-dnspython.
116s Preparing to unpack .../04-python3-dnspython_2.7.0-1ubuntu1_all.deb ...
116s Unpacking python3-dnspython (2.7.0-1ubuntu1) ...
116s Selecting previously unselected package ansible-core.
116s Preparing to unpack .../05-ansible-core_2.18.1-4ubuntu1_all.deb ...
116s Unpacking ansible-core (2.18.1-4ubuntu1) ...
116s Selecting previously unselected package ansible.
116s Preparing to unpack .../06-ansible_11.2.0+dfsg-1_all.deb ...
116s Unpacking ansible (11.2.0+dfsg-1) ...
119s Selecting previously unselected package fonts-dejavu-mono.
119s Preparing to unpack .../07-fonts-dejavu-mono_2.37-8_all.deb ...
119s Unpacking fonts-dejavu-mono (2.37-8) ...
119s Selecting previously unselected package fonts-dejavu-core.
119s Preparing to unpack .../08-fonts-dejavu-core_2.37-8_all.deb ...
119s Unpacking fonts-dejavu-core (2.37-8) ...
119s Selecting previously unselected package fontconfig-config.
119s Preparing to unpack .../09-fontconfig-config_2.15.0-2.2ubuntu1_amd64.deb ...
119s Unpacking fontconfig-config (2.15.0-2.2ubuntu1) ...
119s Selecting previously unselected package libsecret-common.
119s Preparing to unpack .../10-libsecret-common_0.21.7-1_all.deb ...
119s Unpacking libsecret-common (0.21.7-1) ...
119s Selecting previously unselected package libsecret-1-0:amd64.
119s Preparing to unpack .../11-libsecret-1-0_0.21.7-1_amd64.deb ...
119s Unpacking libsecret-1-0:amd64 (0.21.7-1) ...
119s Selecting previously unselected package gir1.2-secret-1:amd64.
119s Preparing to unpack .../12-gir1.2-secret-1_0.21.7-1_amd64.deb ...
119s Unpacking gir1.2-secret-1:amd64 (0.21.7-1) ...
119s Selecting previously unselected package liberror-perl.
119s Preparing to unpack .../13-liberror-perl_0.17030-1_all.deb ...
119s Unpacking liberror-perl (0.17030-1) ...
119s Selecting previously unselected package git-man.
119s Preparing to unpack .../14-git-man_1%3a2.48.1-0ubuntu1_all.deb ...
119s Unpacking git-man (1:2.48.1-0ubuntu1) ...
119s Selecting previously unselected package git.
119s Preparing to unpack .../15-git_1%3a2.48.1-0ubuntu1_amd64.deb ...
119s Unpacking git (1:2.48.1-0ubuntu1) ...
119s Selecting previously unselected package libfontconfig1:amd64.
119s Preparing to unpack .../16-libfontconfig1_2.15.0-2.2ubuntu1_amd64.deb ...
119s Unpacking libfontconfig1:amd64 (2.15.0-2.2ubuntu1) ...
119s Selecting previously unselected package libpixman-1-0:amd64.
119s Preparing to unpack .../17-libpixman-1-0_0.44.0-3_amd64.deb ...
119s Unpacking libpixman-1-0:amd64 (0.44.0-3) ...
119s Selecting previously unselected package libxcb-render0:amd64.
119s Preparing to unpack .../18-libxcb-render0_1.17.0-2_amd64.deb ...
119s Unpacking libxcb-render0:amd64 (1.17.0-2) ...
119s Selecting previously unselected package libxcb-shm0:amd64.
119s Preparing to unpack .../19-libxcb-shm0_1.17.0-2_amd64.deb ...
119s Unpacking libxcb-shm0:amd64 (1.17.0-2) ...
119s Selecting previously unselected package libxrender1:amd64.
119s Preparing to unpack .../20-libxrender1_1%3a0.9.10-1.1build1_amd64.deb ...
119s Unpacking libxrender1:amd64 (1:0.9.10-1.1build1) ...
119s Selecting previously unselected package libcairo2:amd64.
119s Preparing to unpack .../21-libcairo2_1.18.4-1_amd64.deb ...
119s Unpacking libcairo2:amd64 (1.18.4-1) ...
120s Selecting previously unselected package libcairo-gobject2:amd64.
120s Preparing to unpack .../22-libcairo-gobject2_1.18.4-1_amd64.deb ...
120s Unpacking libcairo-gobject2:amd64 (1.18.4-1) ...
120s Selecting previously unselected package libxslt1.1:amd64.
120s Preparing to unpack .../23-libxslt1.1_1.1.39-0exp1ubuntu4_amd64.deb ...
120s Unpacking libxslt1.1:amd64 (1.1.39-0exp1ubuntu4) ...
120s Selecting previously unselected package python3-adal.
120s Preparing to unpack .../24-python3-adal_1.2.7-5_all.deb ...
120s Unpacking python3-adal (1.2.7-5) ...
120s Selecting previously unselected package python3-aiohappyeyeballs.
120s Preparing to unpack .../25-python3-aiohappyeyeballs_2.6.1-1_all.deb ...
120s Unpacking python3-aiohappyeyeballs (2.6.1-1) ...
120s Selecting previously unselected package python3-multidict.
120s Preparing to unpack .../26-python3-multidict_6.2.0-2_amd64.deb ...
120s Unpacking python3-multidict (6.2.0-2) ...
120s Selecting previously unselected package python3-yarl.
120s Preparing to unpack .../27-python3-yarl_1.13.1-1build2_amd64.deb ...
120s Unpacking python3-yarl (1.13.1-1build2) ...
120s Selecting previously unselected package python3-async-timeout.
120s Preparing to unpack .../28-python3-async-timeout_5.0.1-1_all.deb ...
120s Unpacking python3-async-timeout (5.0.1-1) ...
120s Selecting previously unselected package python3-frozenlist.
120s Preparing to unpack .../29-python3-frozenlist_1.5.0-1build2_amd64.deb ...
120s Unpacking python3-frozenlist (1.5.0-1build2) ...
120s Selecting previously unselected package python3-aiosignal.
120s Preparing to unpack .../30-python3-aiosignal_1.3.2-1_all.deb ...
120s Unpacking python3-aiosignal (1.3.2-1) ...
120s Selecting previously unselected package python3-aiohttp.
120s Preparing to unpack .../31-python3-aiohttp_3.10.11-1build1_amd64.deb ...
120s Unpacking python3-aiohttp (3.10.11-1build1) ...
120s Selecting previously unselected package python3-avro.
120s Preparing to unpack .../32-python3-avro_1.12.0+dfsg-1_all.deb ...
120s Unpacking python3-avro (1.12.0+dfsg-1) ...
120s Selecting previously unselected package python3-isodate.
120s Preparing to unpack .../33-python3-isodate_0.7.0-1_all.deb ...
120s Unpacking python3-isodate (0.7.0-1) ...
120s Selecting previously unselected package python3-requests-oauthlib.
120s Preparing to unpack .../34-python3-requests-oauthlib_1.3.1-1_all.deb ...
120s Unpacking python3-requests-oauthlib (1.3.1-1) ...
120s Selecting previously unselected package python3-msrest.
120s Preparing to unpack .../35-python3-msrest_0.6.21-5_all.deb ...
120s Unpacking python3-msrest (0.6.21-5) ...
120s Selecting previously unselected package python3-msrestazure.
120s Preparing to unpack .../36-python3-msrestazure_0.6.4-4_all.deb ...
120s Unpacking python3-msrestazure (0.6.4-4) ...
120s Selecting previously unselected package python3-azure-storage.
120s Preparing to unpack .../37-python3-azure-storage_20250401+git-1_all.deb ...
120s Unpacking python3-azure-storage (20250401+git-1) ...
120s Selecting previously unselected package python3-colorama.
120s Preparing to unpack .../38-python3-colorama_0.4.6-4_all.deb ...
120s Unpacking python3-colorama (0.4.6-4) ...
120s Selecting previously unselected package python3-marshmallow.
120s Preparing to unpack .../39-python3-marshmallow_3.26.1-0.2_all.deb ...
120s Unpacking python3-marshmallow (3.26.1-0.2) ...
120s Selecting previously unselected package python3-msal.
120s Preparing to unpack .../40-python3-msal_1.32.0-1_all.deb ...
120s Unpacking python3-msal (1.32.0-1) ...
120s Selecting previously unselected package python3-cairo.
120s Preparing to unpack .../41-python3-cairo_1.27.0-2_amd64.deb ...
120s Unpacking python3-cairo (1.27.0-2) ...
120s Selecting previously unselected package python3-gi-cairo.
120s Preparing to unpack .../42-python3-gi-cairo_3.50.0-4build1_amd64.deb ...
120s Unpacking python3-gi-cairo (3.50.0-4build1) ...
120s Selecting previously unselected package python3-portalocker.
120s Preparing to unpack .../43-python3-portalocker_2.2.1-1_all.deb ...
120s Unpacking python3-portalocker (2.2.1-1) ...
120s Selecting previously unselected package python3-msal-extensions.
120s Preparing to unpack .../44-python3-msal-extensions_1.3.1-1_all.deb ...
120s Unpacking python3-msal-extensions (1.3.1-1) ...
120s Selecting previously unselected package python3-click.
120s Preparing to unpack .../45-python3-click_8.2.0+0.really.8.1.8-1_all.deb ...
120s Unpacking python3-click (8.2.0+0.really.8.1.8-1) ...
120s Selecting previously unselected package python3-joblib.
120s Preparing to unpack .../46-python3-joblib_1.4.2-3_all.deb ...
120s Unpacking python3-joblib (1.4.2-3) ...
121s Selecting previously unselected package python3-regex.
121s Preparing to unpack .../47-python3-regex_0.1.20241106-1build1_amd64.deb ...
121s Unpacking python3-regex (0.1.20241106-1build1) ...
121s Selecting previously unselected package python3-tqdm.
121s Preparing to unpack .../48-python3-tqdm_4.67.1-3_all.deb ...
121s Unpacking python3-tqdm (4.67.1-3) ...
121s Selecting previously unselected package python3-nltk.
121s Preparing to unpack .../49-python3-nltk_3.9.1-2_all.deb ...
121s Unpacking python3-nltk (3.9.1-2) ...
121s Selecting previously unselected package python3-psutil.
121s Preparing to unpack .../50-python3-psutil_5.9.8-2build3_amd64.deb ...
121s Unpacking python3-psutil (5.9.8-2build3) ...
121s Selecting previously unselected package python3-pydash.
121s Preparing to unpack .../51-python3-pydash_8.0.3-3_all.deb ...
121s Unpacking python3-pydash (8.0.3-3) ...
121s Selecting previously unselected package python3-ruamel.yaml.clib.
121s Preparing to unpack .../52-python3-ruamel.yaml.clib_0.2.12+ds-1build1_amd64.deb ...
121s Unpacking python3-ruamel.yaml.clib (0.2.12+ds-1build1) ...
121s Selecting previously unselected package python3-ruamel.yaml.
121s Preparing to unpack .../53-python3-ruamel.yaml_0.18.10+ds-1_all.deb ...
121s Unpacking python3-ruamel.yaml (0.18.10+ds-1) ...
121s Selecting previously unselected package python3-strictyaml.
121s Preparing to unpack .../54-python3-strictyaml_1.6.1-3_all.deb ...
121s Unpacking python3-strictyaml (1.6.1-3) ...
121s Selecting previously unselected package python3-websocket.
121s Preparing to unpack .../55-python3-websocket_1.8.0-2_all.deb ...
121s Unpacking python3-websocket (1.8.0-2) ...
121s Selecting previously unselected package python3-azure.
121s Preparing to unpack .../56-python3-azure_20250401+git-1_all.deb ...
121s Unpacking python3-azure (20250401+git-1) ...
125s Selecting previously unselected package python3-cachetools.
125s Preparing to unpack .../57-python3-cachetools_5.3.3-1_all.deb ...
125s Unpacking python3-cachetools (5.3.3-1) ...
125s Selecting previously unselected package python3-wrapt.
125s Preparing to unpack .../58-python3-wrapt_1.15.0-4build1_amd64.deb ...
125s Unpacking python3-wrapt (1.15.0-4build1) ...
125s Selecting previously unselected package python3-deprecated.
125s Preparing to unpack .../59-python3-deprecated_1.2.18-1_all.deb ...
125s Unpacking python3-deprecated (1.2.18-1) ...
125s Selecting previously unselected package python3-execnet.
125s Preparing to unpack .../60-python3-execnet_2.1.1-1_all.deb ...
125s Unpacking python3-execnet (2.1.1-1) ...
125s Selecting previously unselected package python3-mccabe.
125s Preparing to unpack .../61-python3-mccabe_0.7.0-1_all.deb ...
125s Unpacking python3-mccabe (0.7.0-1) ...
125s Selecting previously unselected package python3-pycodestyle.
125s Preparing to unpack .../62-python3-pycodestyle_2.12.1-2_all.deb ...
125s Unpacking python3-pycodestyle (2.12.1-2) ...
125s Selecting previously unselected package python3-pyflakes.
125s Preparing to unpack .../63-python3-pyflakes_3.2.0-3_all.deb ...
125s Unpacking python3-pyflakes (3.2.0-3) ...
125s Selecting previously unselected package python3-flake8.
125s Preparing to unpack .../64-python3-flake8_7.1.1-3_all.deb ...
125s Unpacking python3-flake8 (7.1.1-3) ...
125s Selecting previously unselected package python3-freezegun.
125s Preparing to unpack .../65-python3-freezegun_1.5.1-1.2_all.deb ...
125s Unpacking python3-freezegun (1.5.1-1.2) ...
125s Selecting previously unselected package python3-requests-toolbelt.
125s Preparing to unpack .../66-python3-requests-toolbelt_1.0.0-4_all.deb ...
125s Unpacking python3-requests-toolbelt (1.0.0-4) ...
125s Selecting previously unselected package python3-gitlab.
125s Preparing to unpack .../67-python3-gitlab_1%3a4.9.0-1_all.deb ...
125s Unpacking python3-gitlab (1:4.9.0-1) ...
125s Selecting previously unselected package python3-pyasn1.
125s Preparing to unpack .../68-python3-pyasn1_0.6.1-1_all.deb ...
125s Unpacking python3-pyasn1 (0.6.1-1) ...
125s Selecting previously unselected package python3-pyasn1-modules.
125s Preparing to unpack .../69-python3-pyasn1-modules_0.4.1-2_all.deb ...
125s Unpacking python3-pyasn1-modules (0.4.1-2) ...
126s Selecting previously unselected package python3-pyu2f.
126s Preparing to unpack .../70-python3-pyu2f_0.1.5-4_all.deb ...
126s Unpacking python3-pyu2f (0.1.5-4) ...
126s Selecting previously unselected package python3-responses.
126s Preparing to unpack .../71-python3-responses_0.25.6-1_all.deb ...
126s Unpacking python3-responses (0.25.6-1) ...
126s Selecting previously unselected package python3-rsa.
126s Preparing to unpack .../72-python3-rsa_4.9-2_all.deb ...
126s Unpacking python3-rsa (4.9-2) ...
126s Selecting previously unselected package python3-google-auth.
126s Preparing to unpack .../73-python3-google-auth_2.28.2-3_all.deb ...
126s Unpacking python3-google-auth (2.28.2-3) ...
126s Selecting previously unselected package python3-httmock.
126s Preparing to unpack .../74-python3-httmock_1.4.0-5_all.deb ...
126s Unpacking python3-httmock (1.4.0-5) ...
126s Selecting previously unselected package python3-pyhcl.
126s Preparing to unpack .../75-python3-pyhcl_0.4.4-6_all.deb ...
126s Unpacking python3-pyhcl (0.4.4-6) ...
126s Selecting previously unselected package python3-hvac.
126s Preparing to unpack .../76-python3-hvac_2.3.0-3_all.deb ...
126s Unpacking python3-hvac (2.3.0-3) ...
126s Selecting previously unselected package python3-iniconfig.
126s Preparing to unpack .../77-python3-iniconfig_1.1.1-2_all.deb ...
126s Unpacking python3-iniconfig (1.1.1-2) ...
126s Selecting previously unselected package python3-kubernetes.
126s Preparing to unpack .../78-python3-kubernetes_30.1.0-2_all.deb ...
126s Unpacking python3-kubernetes (30.1.0-2) ...
126s Selecting previously unselected package python3-lxml:amd64.
126s Preparing to unpack .../79-python3-lxml_5.3.2-1_amd64.deb ...
126s Unpacking python3-lxml:amd64 (5.3.2-1) ...
126s Selecting previously unselected package python3-pathspec.
126s Preparing to unpack .../80-python3-pathspec_0.12.1-1_all.deb ...
126s Unpacking python3-pathspec (0.12.1-1) ...
126s Selecting previously unselected package python3-pluggy.
126s Preparing to unpack .../81-python3-pluggy_1.5.0-1_all.deb ...
126s Unpacking python3-pluggy (1.5.0-1) ...
126s Selecting previously unselected package python3-proxmoxer.
126s Preparing to unpack .../82-python3-proxmoxer_2.2.0-1_all.deb ...
126s Unpacking python3-proxmoxer (2.2.0-1) ...
126s Selecting previously unselected package python3-py.
126s Preparing to unpack .../83-python3-py_1.11.0-4_all.deb ...
126s Unpacking python3-py (1.11.0-4) ...
126s Selecting previously unselected package python3-pytest.
126s Preparing to unpack .../84-python3-pytest_8.3.5-1_all.deb ...
126s Unpacking python3-pytest (8.3.5-1) ...
126s Selecting previously unselected package python3-pytest-forked.
126s Preparing to unpack .../85-python3-pytest-forked_1.6.0-3_all.deb ...
126s Unpacking python3-pytest-forked (1.6.0-3) ...
126s Selecting previously unselected package python3-pytest-mock.
126s Preparing to unpack .../86-python3-pytest-mock_3.14.0-2_all.deb ...
126s Unpacking python3-pytest-mock (3.14.0-2) ...
126s Selecting previously unselected package python3-pytest-xdist.
126s Preparing to unpack .../87-python3-pytest-xdist_3.6.1-1_all.deb ...
126s Unpacking python3-pytest-xdist (3.6.1-1) ...
126s Selecting previously unselected package python3-pyvmomi.
126s Preparing to unpack .../88-python3-pyvmomi_8.0.3.0.1-1_all.deb ...
126s Unpacking python3-pyvmomi (8.0.3.0.1-1) ...
127s Selecting previously unselected package python3-redis.
127s Preparing to unpack .../89-python3-redis_4.3.4-4_all.deb ...
127s Unpacking python3-redis (4.3.4-4) ...
127s Selecting previously unselected package python3-textfsm.
127s Preparing to unpack .../90-python3-textfsm_1.1.3-3_all.deb ...
127s Unpacking python3-textfsm (1.1.3-3) ...
127s Selecting previously unselected package python3-xmltodict.
127s Preparing to unpack .../91-python3-xmltodict_0.13.0-1_all.deb ...
127s Unpacking python3-xmltodict (0.13.0-1) ...
127s Selecting previously unselected package yamllint.
127s Preparing to unpack .../92-yamllint_1.35.1-2_all.deb ...
127s Unpacking yamllint (1.35.1-2) ...
127s Selecting previously unselected package python3-mock.
127s Preparing to unpack .../93-python3-mock_5.1.0-1_all.deb ...
127s Unpacking python3-mock (5.1.0-1) ...
127s Setting up python3-iniconfig (1.1.1-2) ...
127s Setting up libpixman-1-0:amd64 (0.44.0-3) ...
127s Setting up libsodium23:amd64 (1.0.18-1build3) ...
127s Setting up python3-requests-toolbelt (1.0.0-4) ...
127s Setting up libxrender1:amd64 (1:0.9.10-1.1build1) ...
127s Setting up python3-py (1.11.0-4) ...
127s Setting up python3-joblib (1.4.2-3) ...
128s Setting up python3-cachetools (5.3.3-1) ...
128s Setting up python3-colorama (0.4.6-4) ...
128s Setting up libxcb-render0:amd64 (1.17.0-2) ...
128s Setting up python3-tqdm (4.67.1-3) ...
128s Setting up python3-pyflakes (3.2.0-3) ...
128s Setting up python3-ruamel.yaml.clib (0.2.12+ds-1build1) ...
128s Setting up python3-resolvelib (1.1.0-1) ...
128s Setting up python3-marshmallow (3.26.1-0.2) ...
128s Setting up python3-msal (1.32.0-1) ...
128s Setting up libxcb-shm0:amd64 (1.17.0-2) ...
128s Setting up python3-httmock (1.4.0-5) ...
129s Setting up python3-click (8.2.0+0.really.8.1.8-1) ...
129s Setting up python3-psutil (5.9.8-2build3) ...
129s Setting up python3-multidict (6.2.0-2) ...
129s Setting up python3-frozenlist (1.5.0-1build2) ...
129s Setting up python3-aiosignal (1.3.2-1) ...
129s Setting up python3-mock (5.1.0-1) ...
130s Setting up python3-async-timeout (5.0.1-1) ...
130s Setting up liberror-perl (0.17030-1) ...
130s Setting up python3-responses (0.25.6-1) ...
130s Setting up python3-pyvmomi (8.0.3.0.1-1) ...
130s Setting up python3-isodate (0.7.0-1) ...
131s Setting up python3-pycodestyle (2.12.1-2) ...
131s Setting up python3-xmltodict (0.13.0-1) ...
131s Setting up python3-pyu2f (0.1.5-4) ...
131s Setting up python3-avro (1.12.0+dfsg-1) ...
131s Setting up fonts-dejavu-mono (2.37-8) ...
131s Setting up python3-wrapt (1.15.0-4build1) ...
131s Setting up fonts-dejavu-core (2.37-8) ...
131s Setting up python3-aiohappyeyeballs (2.6.1-1) ...
131s Setting up python3-regex (0.1.20241106-1build1) ...
132s Setting up python3-pluggy (1.5.0-1) ...
132s Setting up python3-ruamel.yaml (0.18.10+ds-1) ...
132s Setting up python3-adal (1.2.7-5) ...
132s Setting up python3-dnspython (2.7.0-1ubuntu1) ...
132s Setting up python3-portalocker (2.2.1-1) ...
132s Setting up libxslt1.1:amd64 (1.1.39-0exp1ubuntu4) ...
132s Setting up python3-pyasn1 (0.6.1-1) ...
133s Setting up python3-proxmoxer (2.2.0-1) ...
133s Setting up git-man (1:2.48.1-0ubuntu1) ...
133s Setting up python3-textfsm (1.1.3-3) ...
133s Setting up python3-mccabe (0.7.0-1) ...
133s Setting up python3-execnet (2.1.1-1) ...
133s Setting up python3-pathspec (0.12.1-1) ...
133s Setting up python3-pydash (8.0.3-3) ...
134s Setting up python3-nltk (3.9.1-2) ...
134s Setting up python3-yarl (1.13.1-1build2) ...
134s Setting up python3-pyhcl (0.4.4-6) ...
135s Setting up python3-gitlab (1:4.9.0-1) ...
135s Setting up python3-websocket (1.8.0-2) ...
135s Setting up python3-deprecated (1.2.18-1) ...
135s Setting up libsecret-common (0.21.7-1) ...
135s Setting up python3-freezegun (1.5.1-1.2) ...
135s Setting up python3-nacl (1.5.0-7) ...
135s Setting up python3-requests-oauthlib (1.3.1-1) ...
136s Setting up fontconfig-config (2.15.0-2.2ubuntu1) ...
136s Setting up python3-pytest (8.3.5-1) ...
136s Setting up python3-aiohttp (3.10.11-1build1) ...
136s Setting up ansible-core (2.18.1-4ubuntu1) ...
137s Setting up python3-flake8 (7.1.1-3) ...
138s Setting up python3-msrest (0.6.21-5) ...
138s Setting up python3-pytest-forked (1.6.0-3) ...
138s Setting up python3-strictyaml (1.6.1-3) ...
138s Setting up libsecret-1-0:amd64 (0.21.7-1) ...
138s Setting up yamllint (1.35.1-2) ...
138s Setting up gir1.2-secret-1:amd64 (0.21.7-1) ...
138s Setting up python3-pyasn1-modules (0.4.1-2) ...
138s Setting up python3-hvac (2.3.0-3) ...
139s Setting up git (1:2.48.1-0ubuntu1) ...
139s Setting up python3-redis (4.3.4-4) ...
139s Setting up python3-pytest-mock (3.14.0-2) ...
139s Setting up python3-lxml:amd64 (5.3.2-1) ...
139s Setting up python3-rsa (4.9-2) ...
139s Setting up libfontconfig1:amd64 (2.15.0-2.2ubuntu1) ...
139s Setting up python3-msrestazure (0.6.4-4) ...
139s Setting up ansible (11.2.0+dfsg-1) ...
156s Setting up python3-paramiko (3.5.1-2ubuntu1) ...
157s Setting up python3-pytest-xdist (3.6.1-1) ...
157s Setting up libcairo2:amd64 (1.18.4-1) ...
157s Setting up python3-google-auth (2.28.2-3) ...
157s Setting up libcairo-gobject2:amd64 (1.18.4-1) ...
157s Setting up python3-cairo (1.27.0-2) ...
157s Setting up python3-kubernetes (30.1.0-2) ...
158s Setting up python3-gi-cairo (3.50.0-4build1) ...
158s Setting up python3-msal-extensions (1.3.1-1) ...
158s Setting up python3-azure-storage (20250401+git-1) ...
159s Setting up python3-azure (20250401+git-1) ...
169s /usr/lib/python3/dist-packages/azure/ai/ml/_vendor/azure_resources/aio/operations/_resources_operations.py:80: SyntaxWarning: invalid escape sequence '\ '
169s Valid values include ``createdTime``\ , ``changedTime`` and ``provisioningState``. For example,
169s /usr/lib/python3/dist-packages/azure/ai/ml/_vendor/azure_resources/aio/operations/_resources_operations.py:405: SyntaxWarning: invalid escape sequence '\ '
169s Valid values include ``createdTime``\ , ``changedTime`` and ``provisioningState``. For example,
170s /usr/lib/python3/dist-packages/azure/appconfiguration/_generated/models/_models.py:238: SyntaxWarning: invalid escape sequence '\ '
170s """An error, available when the status is ``Failed``\ , describing why the operation
170s /usr/lib/python3/dist-packages/azure/batch/models/_models.py:9067: SyntaxWarning: invalid escape sequence '\ '
170s """The source port ranges to match for the rule. Valid values are '\ *' (for all ports 0 - 65535),
170s /usr/lib/python3/dist-packages/azure/batch/models/_models.py:9235: SyntaxWarning: invalid escape sequence '\ '
170s using brackets (for example abc[\ *] would match a file named abc*\ ). Note that both and / are
171s /usr/lib/python3/dist-packages/azure/communication/jobrouter/models/_models.py:2326: SyntaxWarning: invalid escape sequence '\ '
171s payload to scoring rule. If not set, a job's labels (sent in the payload as ``job``\ ) and a
171s /usr/lib/python3/dist-packages/azure/communication/jobrouter/models/_models.py:2346: SyntaxWarning: invalid escape sequence '\ '
171s If not set, a job's labels (sent in the payload as ``job``\ ) and a job's worker selectors
173s /usr/lib/python3/dist-packages/azure/mgmt/advisor/aio/operations/_recommendations_operations.py:190: SyntaxWarning: invalid escape sequence '\ '
173s properties ['ResourceId', 'ResourceGroup', 'RecommendationTypeGuid', '\ `Category
173s /usr/lib/python3/dist-packages/azure/mgmt/advisor/operations/_recommendations_operations.py:303: SyntaxWarning: invalid escape sequence '\ '
173s properties ['ResourceId', 'ResourceGroup', 'RecommendationTypeGuid', '\ `Category
174s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:3917: SyntaxWarning: invalid escape sequence '\ '
174s Possible Values::code:`
`:code:`
` **Standard**\ :code:`
`:code:`
`
174s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10212: SyntaxWarning: invalid escape sequence '\ '
174s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
174s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10255: SyntaxWarning: invalid escape sequence '\ '
174s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
174s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10284: SyntaxWarning: invalid escape sequence '\ '
174s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
174s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10320: SyntaxWarning: invalid escape sequence '\ '
174s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
174s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10342: SyntaxWarning: invalid escape sequence '\ '
174s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
174s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10375: SyntaxWarning: invalid escape sequence '\ '
174s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
174s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10396: SyntaxWarning: invalid escape sequence '\ '
174s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
174s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10429: SyntaxWarning: invalid escape sequence '\ '
174s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
174s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:14746: SyntaxWarning: invalid escape sequence '\ '
174s :ivar allowed_sources: Allowed sources, e.g. ``*.trusted.com``\ , ``trusted.com``\ ,
174s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:14771: SyntaxWarning: invalid escape sequence '\ '
174s :keyword allowed_sources: Allowed sources, e.g. ``*.trusted.com``\ , ``trusted.com``\ ,
177s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models.py:1420: SyntaxWarning: invalid escape sequence '\ '
177s :param id: Required. The ID for the input directory. The job can use AZ_BATCHAI\ *INPUT*\
177s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models.py:2310: SyntaxWarning: invalid escape sequence '\ '
177s :param id: Required. The ID of the output directory. The job can use AZ_BATCHAI\ *OUTPUT*\
177s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models_py3.py:1547: SyntaxWarning: invalid escape sequence '\ '
177s :param id: Required. The ID for the input directory. The job can use AZ_BATCHAI\ *INPUT*\
177s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models_py3.py:2524: SyntaxWarning: invalid escape sequence '\ '
177s :param id: Required. The ID of the output directory. The job can use AZ_BATCHAI\ *OUTPUT*\
180s /usr/lib/python3/dist-packages/azure/mgmt/computefleet/models/_models.py:624: SyntaxWarning: invalid escape sequence '\ '
180s and Screenshot to diagnose VM status. **NOTE**\ : If storageUri is being
180s /usr/lib/python3/dist-packages/azure/mgmt/computefleet/models/_models.py:3707: SyntaxWarning: invalid escape sequence '\W'
180s characters :code:`
` Has a digit :code:`
` Has a special character (Regex match [\W_])
184s /usr/lib/python3/dist-packages/azure/mgmt/datamigration/models/_models_py3.py:16843: SyntaxWarning: invalid escape sequence '\S'
184s Protocol:MachineName\SQLServerInstanceName,PortNumber. Required.
184s /usr/lib/python3/dist-packages/azure/mgmt/datamigration/models/_models_py3.py:16916: SyntaxWarning: invalid escape sequence '\S'
184s Protocol:MachineName\SQLServerInstanceName,PortNumber. Required.
185s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:63: SyntaxWarning: invalid escape sequence '\w'
185s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
185s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:130: SyntaxWarning: invalid escape sequence '\w'
185s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
185s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:224: SyntaxWarning: invalid escape sequence '\w'
185s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
185s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:312: SyntaxWarning: invalid escape sequence '\w'
185s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
185s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:398: SyntaxWarning: invalid escape sequence '\w'
185s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
185s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:543: SyntaxWarning: invalid escape sequence '\w'
185s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
185s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:612: SyntaxWarning: invalid escape sequence '\w'
185s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
185s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:675: SyntaxWarning: invalid escape sequence '\w'
185s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
185s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:738: SyntaxWarning: invalid escape sequence '\w'
185s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
185s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:807: SyntaxWarning: invalid escape sequence '\w'
185s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
187s /usr/lib/python3/dist-packages/azure/mgmt/hybridnetwork/models/_models_py3.py:6032: SyntaxWarning: invalid escape sequence '\ '
187s :ivar provisioning_state: The provisioning state of the site resource. **TODO**\ : Confirm if
189s /usr/lib/python3/dist-packages/azure/mgmt/iotoperations/models/_models.py:3866: SyntaxWarning: invalid escape sequence '\ '
189s pattern set glob-style pattern (e.g., '\ *', 'clients/*\ '). Required."""
189s /usr/lib/python3/dist-packages/azure/mgmt/iotoperations/models/_models.py:3868: SyntaxWarning: invalid escape sequence '\ '
189s """Give access for ``Read``\ , ``Write`` and ``ReadWrite`` access level. Required. Known values
190s /usr/lib/python3/dist-packages/azure/mgmt/machinelearningservices/models/_machine_learning_services_mgmt_client_enums.py:169: SyntaxWarning: invalid escape sequence '\ '
190s #: The "forest"\ it builds, is an ensemble of decision trees, usually trained with the “bagging”\
190s /usr/lib/python3/dist-packages/azure/mgmt/machinelearningservices/models/_machine_learning_services_mgmt_client_enums.py:1032: SyntaxWarning: invalid escape sequence '\ '
190s #: The "forest"\ it builds, is an ensemble of decision trees, usually trained with the “bagging”\
196s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2542: SyntaxWarning: invalid escape sequence '\R'
196s """Execute Reverse Replication\Reprotect.
196s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2583: SyntaxWarning: invalid escape sequence '\R'
196s """Execute Reverse Replication\Reprotect.
196s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2622: SyntaxWarning: invalid escape sequence '\R'
196s """Execute Reverse Replication\Reprotect.
196s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:5397: SyntaxWarning: invalid escape sequence '\L'
196s :ivar lun_id: Ordinal\LunId of the disk for the Azure VM.
196s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:5448: SyntaxWarning: invalid escape sequence '\L'
196s :keyword lun_id: Ordinal\LunId of the disk for the Azure VM.
196s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:8836: SyntaxWarning: invalid escape sequence '\S'
196s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
196s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:8978: SyntaxWarning: invalid escape sequence '\S'
196s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
196s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:9510: SyntaxWarning: invalid escape sequence '\S'
196s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
196s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:9675: SyntaxWarning: invalid escape sequence '\S'
196s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
196s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:11412: SyntaxWarning: invalid escape sequence '\S'
196s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target VM after
196s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:11541: SyntaxWarning: invalid escape sequence '\S'
196s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target VM after
196s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:12193: SyntaxWarning: invalid escape sequence '\S'
196s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
196s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:12516: SyntaxWarning: invalid escape sequence '\S'
196s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
196s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:26323: SyntaxWarning: invalid escape sequence '\S'
196s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
196s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:26382: SyntaxWarning: invalid escape sequence '\S'
196s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
196s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3476: SyntaxWarning: invalid escape sequence '\R'
196s """Execute Reverse Replication\Reprotect.
196s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3517: SyntaxWarning: invalid escape sequence '\R'
196s """Execute Reverse Replication\Reprotect.
196s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3556: SyntaxWarning: invalid escape sequence '\R'
196s """Execute Reverse Replication\Reprotect.
196s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_azure_reservation_api_operations.py:163: SyntaxWarning: invalid escape sequence '\ '
196s """Get list of applicable ``Reservation``\ s.
196s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:377: SyntaxWarning: invalid escape sequence '\ '
196s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution.
196s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:407: SyntaxWarning: invalid escape sequence '\ '
196s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution.
196s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:437: SyntaxWarning: invalid escape sequence '\ '
196s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution.
196s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:583: SyntaxWarning: invalid escape sequence '\ '
196s """Merges two ``Reservation``\ s.
196s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:614: SyntaxWarning: invalid escape sequence '\ '
196s """Merges two ``Reservation``\ s.
196s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:645: SyntaxWarning: invalid escape sequence '\ '
196s """Merges two ``Reservation``\ s.
196s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:721: SyntaxWarning: invalid escape sequence '\ '
196s """Get ``Reservation``\ s in a given reservation Order.
196s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_order_operations.py:183: SyntaxWarning: invalid escape sequence '\ '
196s """Get all ``ReservationOrder``\ s.
196s /usr/lib/python3/dist-packages/azure/mgmt/reservations/models/_models_py3.py:3172: SyntaxWarning: invalid escape sequence '\ '
196s """List of ``Reservation``\ s.
196s /usr/lib/python3/dist-packages/azure/mgmt/reservations/models/_models_py3.py:3288: SyntaxWarning: invalid escape sequence '\ '
196s """List of ``ReservationOrder``\ s.
196s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_azure_reservation_api_operations.py:239: SyntaxWarning: invalid escape sequence '\ '
196s """Get list of applicable ``Reservation``\ s.
196s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:662: SyntaxWarning: invalid escape sequence '\ '
196s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution.
196s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:692: SyntaxWarning: invalid escape sequence '\ '
196s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution.
196s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:722: SyntaxWarning: invalid escape sequence '\ '
196s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution.
196s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:868: SyntaxWarning: invalid escape sequence '\ '
196s """Merges two ``Reservation``\ s.
196s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:899: SyntaxWarning: invalid escape sequence '\ '
196s """Merges two ``Reservation``\ s.
196s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:930: SyntaxWarning: invalid escape sequence '\ '
196s """Merges two ``Reservation``\ s.
196s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:1006: SyntaxWarning: invalid escape sequence '\ '
196s """Get ``Reservation``\ s in a given reservation Order.
196s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_order_operations.py:299: SyntaxWarning: invalid escape sequence '\ '
196s """Get all ``ReservationOrder``\ s.
199s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:68: SyntaxWarning: invalid escape sequence '\ '
199s **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after ``end``
199s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:90: SyntaxWarning: invalid escape sequence '\ '
199s ``[``\ **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after
199s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:1141: SyntaxWarning: invalid escape sequence '\ '
199s **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after ``end``
199s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:1163: SyntaxWarning: invalid escape sequence '\ '
199s ``[``\ **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after
202s /usr/lib/python3/dist-packages/azure/mgmt/signalr/models/_models_py3.py:2858: SyntaxWarning: invalid escape sequence '\ '
202s For example, if the urlTemplate is ``http://example.com/{hub}/api/{event}``\ , with a client
202s /usr/lib/python3/dist-packages/azure/mgmt/signalr/models/_models_py3.py:2925: SyntaxWarning: invalid escape sequence '\ '
202s For example, if the urlTemplate is ``http://example.com/{hub}/api/{event}``\ , with a client
203s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_functions_operations.py:595: SyntaxWarning: invalid escape sequence '\ '
203s properties to include in the response, or "\ *" to include all properties. By default, all
203s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_inputs_operations.py:593: SyntaxWarning: invalid escape sequence '\ '
203s properties to include in the response, or "\ *" to include all properties. By default, all
203s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_outputs_operations.py:593: SyntaxWarning: invalid escape sequence '\ '
203s properties to include in the response, or "\ *" to include all properties. By default, all
203s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/models/_stream_analytics_management_client_enums.py:14: SyntaxWarning: invalid escape sequence '\ '
203s """Authentication Mode. Valid modes are ``ConnectionString``\ , ``Msi`` and 'UserToken'."""
203s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_functions_operations.py:859: SyntaxWarning: invalid escape sequence '\ '
203s properties to include in the response, or "\ *" to include all properties. By default, all
203s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_inputs_operations.py:821: SyntaxWarning: invalid escape sequence '\ '
203s properties to include in the response, or "\ *" to include all properties. By default, all
203s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_outputs_operations.py:821: SyntaxWarning: invalid escape sequence '\ '
203s properties to include in the response, or "\ *" to include all properties. By default, all
203s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_communications_no_subscription_operations.py:193: SyntaxWarning: invalid escape sequence '\ '
203s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication
203s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_communications_operations.py:194: SyntaxWarning: invalid escape sequence '\ '
203s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication
203s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:177: SyntaxWarning: invalid escape sequence '\ '
203s tickets by *Status*\ , *CreatedDate*\ , *ServiceId*\ , and *ProblemClassificationId* using the
203s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:540: SyntaxWarning: invalid escape sequence '\ '
203s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket
203s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:582: SyntaxWarning: invalid escape sequence '\ '
203s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket
203s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:622: SyntaxWarning: invalid escape sequence '\ '
203s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket
203s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_communications_no_subscription_operations.py:308: SyntaxWarning: invalid escape sequence '\ '
203s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication
203s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_communications_operations.py:326: SyntaxWarning: invalid escape sequence '\ '
203s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication
203s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:319: SyntaxWarning: invalid escape sequence '\ '
203s tickets by *Status*\ , *CreatedDate*\ , *ServiceId*\ , and *ProblemClassificationId* using the
203s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:681: SyntaxWarning: invalid escape sequence '\ '
203s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket
203s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:723: SyntaxWarning: invalid escape sequence '\ '
203s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket
203s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:763: SyntaxWarning: invalid escape sequence '\ '
203s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket
204s /usr/lib/python3/dist-packages/azure/mgmt/synapse/models/_models_py3.py:6232: SyntaxWarning: invalid escape sequence '\ '
204s :ivar maintenance_window_cycles: Available maintenance cycles e.g. {Saturday, 0, 48\ *60},
204s /usr/lib/python3/dist-packages/azure/mgmt/synapse/models/_models_py3.py:6288: SyntaxWarning: invalid escape sequence '\ '
204s :keyword maintenance_window_cycles: Available maintenance cycles e.g. {Saturday, 0, 48\ *60},
208s /usr/lib/python3/dist-packages/azure/mgmt/workloads/models/_models_py3.py:2909: SyntaxWarning: invalid escape sequence '\W'
208s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
`
208s /usr/lib/python3/dist-packages/azure/mgmt/workloads/models/_models_py3.py:2954: SyntaxWarning: invalid escape sequence '\W'
208s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
`
208s /usr/lib/python3/dist-packages/azure/mgmt/workloadssapvirtualinstance/models/_models_py3.py:1980: SyntaxWarning: invalid escape sequence '\W'
208s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
`
208s /usr/lib/python3/dist-packages/azure/mgmt/workloadssapvirtualinstance/models/_models_py3.py:2025: SyntaxWarning: invalid escape sequence '\W'
208s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
`
208s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:2732: SyntaxWarning: invalid escape sequence '\:'
208s attr:\:code:``=:code:``.
208s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:3537: SyntaxWarning: invalid escape sequence '\:'
208s attr:\:code:``=\:code:``.
208s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:4216: SyntaxWarning: invalid escape sequence '\:'
208s typeName=\:code:``&attr_1:\:code:``=\:code:``&attr_2:\:code:``=\:code:``&attr_3:\:code:``=\:code:``
208s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:6219: SyntaxWarning: invalid escape sequence '\:'
208s attr:\:code:``=:code:``.
208s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:7024: SyntaxWarning: invalid escape sequence '\:'
208s attr:\:code:``=\:code:``.
208s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:7703: SyntaxWarning: invalid escape sequence '\:'
208s typeName=\:code:``&attr_1:\:code:``=\:code:``&attr_2:\:code:``=\:code:``&attr_3:\:code:``=\:code:``
209s /usr/lib/python3/dist-packages/azure/servicemanagement/schedulermanagementservice.py:59: SyntaxWarning: invalid escape sequence '\m'
209s CURRENT_USER\my\CertificateName format.
209s /usr/lib/python3/dist-packages/azure/servicemanagement/servicebusmanagementservice.py:59: SyntaxWarning: invalid escape sequence '\m'
209s CURRENT_USER\my\CertificateName format.
209s /usr/lib/python3/dist-packages/azure/servicemanagement/servicemanagementservice.py:81: SyntaxWarning: invalid escape sequence '\m'
209s CURRENT_USER\my\CertificateName format.
209s /usr/lib/python3/dist-packages/azure/servicemanagement/sqldatabasemanagementservice.py:55: SyntaxWarning: invalid escape sequence '\m'
209s CURRENT_USER\my\CertificateName format.
209s /usr/lib/python3/dist-packages/azure/servicemanagement/websitemanagementservice.py:55: SyntaxWarning: invalid escape sequence '\m'
209s CURRENT_USER\my\CertificateName format.
209s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:110: SyntaxWarning: invalid escape sequence '\d'
209s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
209s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:1328: SyntaxWarning: invalid escape sequence '\d'
209s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9]))..).
209s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:4218: SyntaxWarning: invalid escape sequence '\d'
209s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
209s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:4280: SyntaxWarning: invalid escape sequence '\d'
209s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
209s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:18198: SyntaxWarning: invalid escape sequence '\d'
209s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
209s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19096: SyntaxWarning: invalid escape sequence '\d'
209s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). Type: string (or Expression with
209s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19185: SyntaxWarning: invalid escape sequence '\d'
209s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
209s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19749: SyntaxWarning: invalid escape sequence '\d'
209s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
210s Processing triggers for libc-bin (2.41-6ubuntu1) ...
210s Processing triggers for man-db (2.13.0-1) ...
212s autopkgtest [03:56:51]: test unit-tests-stable.py: [-----------------------
212s
212s
212s
212s ############################################################
212s ############################################################
212s #### Running tests in ansible_collections/kubevirt/core
212s ############################################################
212s ############################################################
212s Unit test controller with Python 3.13
215s ============================= test session starts ==============================
215s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
215s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/kubevirt/core
215s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
215s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
215s created: 2/2 workers
215s 2 workers [190 items]
215s
215s ........................................................................ [ 37%]
216s ........................................................................ [ 75%]
216s .............................................. [100%]
216s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/kubevirt/core/tests/output/junit/python3.13-controller-units.xml -
216s ============================= 190 passed in 2.69s ==============================
216s Skipping ansible_collections/netapp_eseries/santricity
216s
216s
216s
216s ############################################################
216s ############################################################
216s #### Running tests in ansible_collections/ansible/windows
216s ############################################################
216s ############################################################
217s Unit test controller with Python 3.13
218s ============================= test session starts ==============================
218s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
218s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/ansible/windows
218s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
218s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
218s created: 2/2 workers
218s 2 workers [50 items]
218s
219s .................................................. [100%]
219s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/ansible/windows/tests/output/junit/python3.13-controller-units.xml -
219s ============================== 50 passed in 1.67s ==============================
219s
219s
219s
219s ############################################################
219s ############################################################
219s #### Running tests in ansible_collections/ansible/posix
219s ############################################################
219s ############################################################
219s Unit test controller with Python 3.13
220s ============================= test session starts ==============================
220s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
220s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/ansible/posix
220s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
220s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
220s created: 2/2 workers
220s 2 workers [14 items]
220s
220s .............. [100%]
220s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/ansible/posix/tests/output/junit/python3.13-controller-units.xml -
220s ============================== 14 passed in 0.87s ==============================
220s Skipping ansible_collections/ansible/utils
220s
220s
220s
220s ############################################################
220s ############################################################
220s #### Running tests in ansible_collections/ansible/netcommon
220s ############################################################
220s ############################################################
220s Unit test controller with Python 3.13
222s ============================= test session starts ==============================
222s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
222s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/ansible/netcommon
222s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
222s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
222s created: 2/2 workers
222s 2 workers [162 items]
222s
223s ........................................................................ [ 44%]
225s ...................................x..............x..................... [ 88%]
225s ..x............... [100%]
225s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/ansible/netcommon/tests/output/junit/python3.13-controller-units.xml -
225s =========================== short test summary info ============================
225s SKIPPED [1] tests/unit/plugins/cli_parsers/test_pyats_parser.py:21: could not import 'pyats': No module named 'pyats'
225s SKIPPED [1] tests/unit/plugins/connection/test_libssh.py:23: could not import 'pylibsshext': No module named 'pylibsshext'
225s SKIPPED [1] tests/unit/plugins/connection/test_netconf.py:19: could not import 'ncclient': No module named 'ncclient'
225s XFAIL tests/unit/plugins/connection/test_network_cli.py::test_network_cli_send[paramiko-response2]
225s XFAIL tests/unit/plugins/connection/test_network_cli.py::test_network_cli_send[libssh-response2]
225s XFAIL tests/unit/plugins/connection/test_network_cli.py::test_network_cli_send[auto-response2]
225s ================== 159 passed, 3 skipped, 3 xfailed in 4.59s ===================
225s
225s
225s
225s ############################################################
225s ############################################################
225s #### Running tests in ansible_collections/arista/eos
225s ############################################################
225s ############################################################
226s Unit test controller with Python 3.13
227s ============================= test session starts ==============================
227s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
227s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/arista/eos
227s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
227s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
227s created: 2/2 workers
227s 2 workers [307 items]
227s
228s ........................................................................ [ 23%]
229s ........................................................................ [ 46%]
231s ........................................................................ [ 70%]
233s ........................................................................ [ 93%]
233s ................... [100%]
233s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/arista/eos/tests/output/junit/python3.13-controller-units.xml -
233s ============================= 307 passed in 7.36s ==============================
233s Skipping ansible_collections/vmware/vmware
233s
233s
233s
233s ############################################################
233s ############################################################
233s #### Running tests in ansible_collections/ibm/qradar
233s ############################################################
233s ############################################################
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.6h2zC6/build.afB/src/ansible_collections/ibm/qradar
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 [5 items]
235s
235s ..... [100%]
235s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/ibm/qradar/tests/output/junit/python3.13-controller-units.xml -
235s ============================== 5 passed in 0.80s ===============================
235s
235s
235s
235s ############################################################
235s ############################################################
235s #### Running tests in ansible_collections/ibm/storage_virtualize
235s ############################################################
235s ############################################################
235s Unit test modules 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.6h2zC6/build.afB/src/ansible_collections/ibm/storage_virtualize
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 [762 items]
237s
238s ........................................................................ [ 9%]
238s ........................................................................ [ 18%]
239s ........................................................................ [ 28%]
240s ........................................................................ [ 37%]
241s ........................................................................ [ 47%]
242s ........................................................................ [ 56%]
244s ........................................................................ [ 66%]
245s ........................................................................ [ 75%]
245s ........................................................................ [ 85%]
246s ........................................................................ [ 94%]
247s .......................................... [100%]
247s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/ibm/storage_virtualize/tests/output/junit/python3.13-modules-units.xml -
247s ============================= 762 passed in 11.18s =============================
247s Unit test module_utils with Python 3.13
247s ============================= test session starts ==============================
247s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
247s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/ibm/storage_virtualize
247s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
247s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
247s created: 2/2 workers
247s 2 workers [12 items]
247s
248s ............ [100%]
248s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/ibm/storage_virtualize/tests/output/junit/python3.13-module_utils-units.xml -
248s ============================== 12 passed in 0.70s ==============================
248s
248s
248s
248s ############################################################
248s ############################################################
248s #### Running tests in ansible_collections/ibm/spectrum_virtualize
248s ############################################################
248s ############################################################
248s Unit test modules with Python 3.13
249s ============================= test session starts ==============================
249s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
249s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/ibm/spectrum_virtualize
249s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
249s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
249s created: 2/2 workers
249s 2 workers [613 items]
249s
250s ........................................................................ [ 11%]
251s ........................................................................ [ 23%]
252s ........................................................................ [ 35%]
253s ........................................................................ [ 46%]
254s ........................................................................ [ 58%]
255s ........................................................................ [ 70%]
255s ........................................................................ [ 82%]
256s ........................................................................ [ 93%]
256s ..................................... [100%]
256s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/ibm/spectrum_virtualize/tests/output/junit/python3.13-modules-units.xml -
256s ============================= 613 passed in 8.20s ==============================
256s Unit test module_utils with Python 3.13
257s ============================= test session starts ==============================
257s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
257s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/ibm/spectrum_virtualize
257s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
257s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
257s created: 2/2 workers
257s 2 workers [9 items]
257s
257s ......... [100%]
257s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/ibm/spectrum_virtualize/tests/output/junit/python3.13-module_utils-units.xml -
257s ============================== 9 passed in 0.72s ===============================
258s Skipping ansible_collections/netapp/ontap
258s
258s
258s
258s ############################################################
258s ############################################################
258s #### Running tests in ansible_collections/netapp/storagegrid
258s ############################################################
258s ############################################################
258s Unit test modules with Python 3.13
259s ============================= test session starts ==============================
259s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
259s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/netapp/storagegrid
259s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
259s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
259s created: 2/2 workers
259s 2 workers [154 items]
259s
259s ........................................................................ [ 46%]
260s ........................................................................ [ 93%]
260s .......... [100%]
260s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/netapp/storagegrid/tests/output/junit/python3.13-modules-units.xml -
260s ============================= 154 passed in 2.23s ==============================
260s
260s
260s
260s ############################################################
260s ############################################################
260s #### Running tests in ansible_collections/netapp/cloudmanager
260s ############################################################
260s ############################################################
261s Unit test modules with Python 3.13
262s ============================= test session starts ==============================
262s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
262s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/netapp/cloudmanager
262s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
262s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
262s created: 2/2 workers
262s 2 workers [106 items]
262s
278s ........................................................................ [ 67%]
309s .................................. [100%]
309s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/netapp/cloudmanager/tests/output/junit/python3.13-modules-units.xml -
309s ============================= 106 passed in 47.62s =============================
309s Unit test module_utils with Python 3.13
310s ============================= test session starts ==============================
310s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
310s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/netapp/cloudmanager
310s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
310s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
310s created: 2/2 workers
310s 2 workers [52 items]
310s
310s .................................................... [100%]
310s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/netapp/cloudmanager/tests/output/junit/python3.13-module_utils-units.xml -
310s ============================== 52 passed in 1.10s ==============================
310s
310s
310s
310s ############################################################
310s ############################################################
310s #### Running tests in ansible_collections/vultr/cloud
310s ############################################################
310s ############################################################
310s Unit test controller with Python 3.13
311s ============================= test session starts ==============================
311s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
311s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/vultr/cloud
311s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
311s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
311s created: 2/2 workers
311s 2 workers [15 items]
311s
311s ............... [100%]
311s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/vultr/cloud/tests/output/junit/python3.13-controller-units.xml -
311s ============================== 15 passed in 0.81s ==============================
311s
311s
311s
311s ############################################################
311s ############################################################
311s #### Running tests in ansible_collections/cisco/nxos
311s ############################################################
311s ############################################################
312s Unit test controller with Python 3.13
313s ============================= test session starts ==============================
313s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
313s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cisco/nxos
313s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
313s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
313s created: 2/2 workers
313s 2 workers [773 items]
313s
315s ........................................................................ [ 9%]
316s ........................................................................ [ 18%]
318s ........................................................................ [ 27%]
324s ........................................................................ [ 37%]
325s ........................................................................ [ 46%]
326s ........................................................................ [ 55%]
328s ........................................................................ [ 65%]
330s ........................................................................ [ 74%]
332s ........................................................................ [ 83%]
333s ........................................................................ [ 93%]
334s ..................................................... [100%]
334s =============================== warnings summary ===============================
334s tests/unit/modules/network/nxos/test_nxos_acls.py: 91 warnings
334s /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:270: DeprecationWarning: 'count' is passed as positional argument
334s ace = re.sub(seq, "", ace, 1)
334s
334s tests/unit/modules/network/nxos/test_nxos_acls.py: 84 warnings
334s /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:279: DeprecationWarning: 'count' is passed as positional argument
334s ace = re.sub(grant, "", ace, 1)
334s
334s tests/unit/modules/network/nxos/test_nxos_acls.py: 84 warnings
334s /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:287: DeprecationWarning: 'count' is passed as positional argument
334s ace = re.sub(pro, "", ace, 1)
334s
334s tests/unit/modules/network/nxos/test_nxos_acls.py: 168 warnings
334s /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:117: DeprecationWarning: 'count' is passed as positional argument
334s ace = re.sub(option, "", ace, 1)
334s
334s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_gathered
334s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark
334s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_ranges
334s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_ranges
334s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_ranges
334s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_ranges
334s /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:142: DeprecationWarning: 'count' is passed as positional argument
334s ace = re.sub(range_substring, "", ace, 1)
334s
334s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_gathered
334s /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:116: DeprecationWarning: 'count' is passed as positional argument
334s ace = re.sub("{0}".format(wb), "", ace, 1)
334s
334s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_gathered
334s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark
334s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark
334s /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:126: DeprecationWarning: 'count' is passed as positional argument
334s ace = re.sub(port_pro.group(1), "", ace, 1)
334s
334s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_gathered
334s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark
334s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark
334s /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:127: DeprecationWarning: 'count' is passed as positional argument
334s ace = re.sub(port_pro.group(2), "", ace, 1)
334s
334s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
334s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cisco/nxos/tests/output/junit/python3.13-controller-units.xml -
334s ====================== 773 passed, 440 warnings in 21.57s ======================
334s
334s
334s
334s ############################################################
334s ############################################################
334s #### Running tests in ansible_collections/cisco/asa
334s ############################################################
334s ############################################################
334s Unit test controller with Python 3.13
336s ============================= test session starts ==============================
336s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
336s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cisco/asa
336s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
336s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
336s created: 2/2 workers
336s 2 workers [21 items]
336s
340s ..................... [100%]
340s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cisco/asa/tests/output/junit/python3.13-controller-units.xml -
340s ============================== 21 passed in 5.93s ==============================
340s
340s
340s
340s ############################################################
340s ############################################################
340s #### Running tests in ansible_collections/cisco/ios
340s ############################################################
340s ############################################################
340s Unit test controller with Python 3.13
342s ============================= test session starts ==============================
342s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
342s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cisco/ios
342s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
342s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
342s created: 2/2 workers
342s 2 workers [425 items]
342s
344s ........................................................................ [ 16%]
346s ........................................................................ [ 33%]
348s ........................................................................ [ 50%]
354s ........................................................................ [ 67%]
356s ........................................................................ [ 84%]
390s ................................................................. [100%]
390s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cisco/ios/tests/output/junit/python3.13-controller-units.xml -
390s ============================= 425 passed in 49.66s =============================
391s
391s
391s
391s ############################################################
391s ############################################################
391s #### Running tests in ansible_collections/cisco/iosxr
391s ############################################################
391s ############################################################
391s Unit test controller with Python 3.13
393s ============================= test session starts ==============================
393s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
393s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cisco/iosxr
393s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
393s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
393s created: 2/2 workers
393s 2 workers [310 items]
393s
394s ........................................................................ [ 23%]
396s ........................................................................ [ 46%]
398s ........................................................................ [ 69%]
401s ........................................................................ [ 92%]
401s ...................... [100%]
401s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cisco/iosxr/tests/output/junit/python3.13-controller-units.xml -
401s ============================= 310 passed in 10.27s =============================
401s Skipping ansible_collections/cisco/aci
401s Skipping ansible_collections/cisco/dnac
401s
401s
401s
401s ############################################################
401s ############################################################
401s #### Running tests in ansible_collections/google/cloud
401s ############################################################
401s ############################################################
402s Unit test controller with Python 3.13
403s ============================= test session starts ==============================
403s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
403s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/google/cloud
403s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
403s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
403s created: 2/2 workers
403s 2 workers [17 items]
403s
403s ................. [100%]
403s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/google/cloud/tests/output/junit/python3.13-controller-units.xml -
403s ============================== 17 passed in 0.89s ==============================
403s Skipping ansible_collections/splunk/es
403s
403s
403s
403s ############################################################
403s ############################################################
403s #### Running tests in ansible_collections/cyberark/conjur
403s ############################################################
403s ############################################################
403s Unit test controller with Python 3.13
404s ============================= test session starts ==============================
404s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
404s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cyberark/conjur
404s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
404s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
404s created: 2/2 workers
404s 2 workers [21 items]
404s
405s ..................... [100%]
405s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cyberark/conjur/tests/output/junit/python3.13-controller-units.xml -
405s ============================== 21 passed in 1.07s ==============================
405s
405s
405s
405s ############################################################
405s ############################################################
405s #### Running tests in ansible_collections/kubernetes/core
405s ############################################################
405s ############################################################
405s Unit test controller with Python 3.13
407s ============================= test session starts ==============================
407s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
407s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/kubernetes/core
407s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
407s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
407s created: 2/2 workers
407s 2 workers [172 items]
407s
408s ........................................................................ [ 41%]
413s ........................................................................ [ 83%]
417s ............................ [100%]
417s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/kubernetes/core/tests/output/junit/python3.13-controller-units.xml -
417s ============================= 172 passed in 11.95s =============================
417s Skipping ansible_collections/sensu/sensu_go
417s
417s
417s
417s ############################################################
417s ############################################################
417s #### Running tests in ansible_collections/dellemc/powerflex
417s ############################################################
417s ############################################################
418s Unit test modules with Python 3.13
419s ============================= test session starts ==============================
419s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
419s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/dellemc/powerflex
419s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
419s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
419s created: 2/2 workers
419s 2 workers [405 items]
419s
419s ........................................................................ [ 17%]
420s ........................................................................ [ 35%]
421s ........................................................................ [ 53%]
422s ........................................................................ [ 71%]
422s ........................................................................ [ 88%]
423s ............................................. [100%]
423s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/dellemc/powerflex/tests/output/junit/python3.13-modules-units.xml -
423s ============================= 405 passed in 4.80s ==============================
423s
423s
423s
423s ############################################################
423s ############################################################
423s #### Running tests in ansible_collections/dellemc/openmanage
423s ############################################################
423s ############################################################
423s Unit test modules with Python 3.13
427s ============================= test session starts ==============================
427s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
427s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/dellemc/openmanage
427s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
427s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
427s created: 2/2 workers
427s 2 workers [2636 items]
427s
428s ........................................................................ [ 2%]
429s ........................................................................ [ 5%]
430s ........................................................................ [ 8%]
431s ........................................................................ [ 10%]
432s ........................................................................ [ 13%]
433s ........................................................................ [ 16%]
433s ........................................................................ [ 19%]
435s ........................................................................ [ 21%]
436s ........................................................................ [ 24%]
438s ........................................................................ [ 27%]
439s ........................................................................ [ 30%]
444s ........................................................................ [ 32%]
446s ........................................................................ [ 35%]
448s ........................................................................ [ 38%]
449s ........................................................................ [ 40%]
450s ........................................................................ [ 43%]
451s ........................................................................ [ 46%]
453s ........................................................................ [ 49%]
454s ........................................................................ [ 51%]
456s ........................................................................ [ 54%]
457s ........................................................................ [ 57%]
459s ........................................................................ [ 60%]
462s ........................................................................ [ 62%]
464s ........................................................................ [ 65%]
465s ........................................................................ [ 68%]
467s ........................................................................ [ 71%]
469s ........................................................................ [ 73%]
470s ........................................................................ [ 76%]
472s ........................................................................ [ 79%]
474s ........................................................................ [ 81%]
475s ........................................................................ [ 84%]
476s ........................................................................ [ 87%]
500s ........................................................................ [ 90%]
502s ........................................................................ [ 92%]
503s ........................................................................ [ 95%]
504s ........................................................................ [ 98%]
506s ............................................ [100%]
506s =============================== warnings summary ===============================
506s tests/unit/plugins/modules/test_idrac_support_assist.py: 30 warnings
506s tests/unit/plugins/modules/test_idrac_system_erase.py: 6 warnings
506s tests/unit/plugins/modules/test_idrac_diagnostics.py: 19 warnings
506s tests/unit/plugins/modules/test_idrac_firmware_info.py: 6 warnings
506s tests/unit/plugins/modules/test_ome_application_network_proxy.py: 1 warning
506s /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/dellemc/openmanage/plugins/module_utils/utils.py:117: DeprecationWarning: 'count' is passed as positional argument
506s ipv6_short = re.sub(r'(:0)+', ':', tempstr, 1)
506s
506s tests/unit/plugins/modules/test_idrac_server_config_profile.py::TestServerConfigProfile::test_compare_custom_default_configs[params0]
506s tests/unit/plugins/modules/test_idrac_server_config_profile.py::TestServerConfigProfile::test_compare_custom_default_configs[params0]
506s /tmp/autopkgtest.6h2zC6/build.afB/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.
506s if component:
506s
506s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
506s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/dellemc/openmanage/tests/output/junit/python3.13-modules-units.xml -
506s =========================== short test summary info ============================
506s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_configure_idrac_eventing.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk'
506s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_configure_idrac_services.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk'
506s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_idrac_lc_attributes.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk'
506s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_idrac_storage_volume.py:22: could not import 'omsdk.sdkfile': No module named 'omsdk'
506s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_system_lockdown_mode.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk'
506s SKIPPED [1] tests/unit/plugins/modules/test_idrac_firmware.py:27: could not import 'omsdk.sdkfile': No module named 'omsdk'
506s SKIPPED [1] tests/unit/plugins/modules/test_idrac_lifecycle_controller_job_status_info.py:25: could not import 'omsdk.sdkfile': No module named 'omsdk'
506s SKIPPED [1] tests/unit/plugins/modules/test_idrac_lifecycle_controller_jobs.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk'
506s SKIPPED [1] tests/unit/plugins/modules/test_idrac_lifecycle_controller_logs.py:25: could not import 'omsdk.sdkfile': No module named 'omsdk'
506s SKIPPED [1] tests/unit/plugins/modules/test_idrac_lifecycle_controller_status_info.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk'
506s SKIPPED [1] tests/unit/plugins/modules/test_idrac_network.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk'
506s SKIPPED [1] tests/unit/plugins/modules/test_idrac_os_deployment.py:22: could not import 'omsdk.sdkfile': No module named 'omsdk'
506s SKIPPED [1] tests/unit/plugins/modules/test_idrac_syslog.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk'
506s SKIPPED [1] tests/unit/plugins/modules/test_idrac_system_info.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk'
506s SKIPPED [1] tests/unit/plugins/modules/test_idrac_timezone_ntp.py:25: could not import 'omsdk.sdkfile': No module named 'omsdk'
506s =========== 2636 passed, 15 skipped, 64 warnings in 82.14s (0:01:22) ===========
506s Unit test module_utils with Python 3.13
507s ============================= test session starts ==============================
507s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
507s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/dellemc/openmanage
507s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
507s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
507s created: 2/2 workers
507s 2 workers [121 items]
507s
507s ........................................................................ [ 59%]
508s ................................................. [100%]
508s =============================== warnings summary ===============================
508s tests/unit/plugins/module_utils/test_idrac_redfish.py::TestIdracRedfishRest::test_invoke_request_without_session
508s tests/unit/plugins/module_utils/test_ome.py::TestOMERest::test_invoke_request_with_session
508s tests/unit/plugins/module_utils/test_redfish.py::TestRedfishRest::test_invoke_request_without_session
508s tests/unit/plugins/module_utils/test_rest_api.py::TestRestAPI::test_invoke_request_with_session
508s tests/unit/plugins/module_utils/test_session_utils.py::TestSessionRest::test_invoke_request_without_session
508s /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/dellemc/openmanage/plugins/module_utils/utils.py:117: DeprecationWarning: 'count' is passed as positional argument
508s ipv6_short = re.sub(r'(:0)+', ':', tempstr, 1)
508s
508s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
508s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/dellemc/openmanage/tests/output/junit/python3.13-module_utils-units.xml -
508s ======================= 121 passed, 5 warnings in 1.95s ========================
508s
508s
508s
508s ############################################################
508s ############################################################
508s #### Running tests in ansible_collections/dellemc/unity
508s ############################################################
508s ############################################################
508s Unit test modules with Python 3.13
510s ============================= test session starts ==============================
510s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
510s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/dellemc/unity
510s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
510s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
510s created: 2/2 workers
510s 2 workers [92 items]
510s
510s ........................................................................ [ 78%]
511s .................... [100%]
511s =============================== warnings summary ===============================
511s plugins/module_utils/storage/dell/utils.py:72
511s plugins/module_utils/storage/dell/utils.py:72
511s /tmp/autopkgtest.6h2zC6/build.afB/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
511s from pkg_resources import parse_version
511s
511s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
511s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/dellemc/unity/tests/output/junit/python3.13-modules-units.xml -
511s ======================== 92 passed, 2 warnings in 2.01s ========================
511s
511s
511s
511s ############################################################
511s ############################################################
511s #### Running tests in ansible_collections/dellemc/enterprise_sonic
511s ############################################################
511s ############################################################
511s Unit test controller with Python 3.13
513s ============================= test session starts ==============================
513s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
513s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/dellemc/enterprise_sonic
513s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
513s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
513s created: 2/2 workers
513s 2 workers [404 items]
513s
517s ........................................................................ [ 17%]
519s ........................................................................ [ 35%]
522s ........................................................................ [ 53%]
526s ........................................................................ [ 71%]
529s ........................................................................ [ 89%]
535s ............................................ [100%]
535s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/dellemc/enterprise_sonic/tests/output/junit/python3.13-controller-units.xml -
535s ============================= 404 passed in 23.36s =============================
535s
535s
535s
535s ############################################################
535s ############################################################
535s #### Running tests in ansible_collections/vyos/vyos
535s ############################################################
535s ############################################################
535s Unit test controller 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.6h2zC6/build.afB/src/ansible_collections/vyos/vyos
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 [212 items]
537s
538s ........................................................................ [ 33%]
539s ........................................................................ [ 67%]
541s .................................................................... [100%]
541s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/vyos/vyos/tests/output/junit/python3.13-controller-units.xml -
541s ============================= 212 passed in 5.57s ==============================
541s
541s
541s
541s ############################################################
541s ############################################################
541s #### Running tests in ansible_collections/hetzner/hcloud
541s ############################################################
541s ############################################################
542s Unit test controller with Python 3.13
543s ============================= test session starts ==============================
543s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
543s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/hetzner/hcloud
543s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
543s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
543s created: 2/2 workers
543s 2 workers [30 items]
543s
543s .............................. [100%]
543s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/hetzner/hcloud/tests/output/junit/python3.13-controller-units.xml -
543s ============================== 30 passed in 1.41s ==============================
543s
543s
543s
543s ############################################################
543s ############################################################
543s #### Running tests in ansible_collections/amazon/aws
543s ############################################################
543s ############################################################
544s Unit test modules with Python 3.13
545s ============================= test session starts ==============================
545s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
545s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/amazon/aws
545s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
545s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
545s created: 2/2 workers
545s 2 workers [348 items]
545s
546s ........................................................................ [ 20%]
546s ........................................................................ [ 41%]
546s ........................................................................ [ 62%]
547s ........................................................................ [ 82%]
547s ............................................................ [100%]
547s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/amazon/aws/tests/output/junit/python3.13-modules-units.xml -
547s =========================== short test summary info ============================
547s SKIPPED [1] tests/unit/utils/amazon_placebo_fixtures.py:16: could not import 'placebo': No module named 'placebo'
547s ======================== 348 passed, 1 skipped in 3.44s ========================
548s Unit test controller with Python 3.13
550s ============================= test session starts ==============================
550s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
550s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/amazon/aws
550s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
550s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
550s created: 2/2 workers
550s 2 workers [1252 items]
550s
550s ........................................................................ [ 5%]
551s ........................................................................ [ 11%]
552s ........................................................................ [ 17%]
552s ........................................................................ [ 23%]
553s ........................................................................ [ 28%]
555s ........................................................................ [ 34%]
571s ........................................................................ [ 40%]
573s ........................................................................ [ 46%]
574s ........................................................................ [ 51%]
575s ........................................................................ [ 57%]
576s ........................................................................ [ 63%]
577s ........................................................................ [ 69%]
578s ........................................................................ [ 74%]
579s ........................................................................ [ 80%]
580s ........................................................................ [ 86%]
581s ........................................................................ [ 92%]
756s ........................................................................ [ 97%]
757s ............................ [100%]
757s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/amazon/aws/tests/output/junit/python3.13-controller-units.xml -
757s ======================= 1252 passed in 208.61s (0:03:28) =======================
757s
757s
757s
757s ############################################################
757s ############################################################
757s #### Running tests in ansible_collections/wti/remote
757s ############################################################
757s ############################################################
757s Unit test controller with Python 3.13
758s ============================= test session starts ==============================
758s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
758s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/wti/remote
758s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
758s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
758s created: 2/2 workers
758s 2 workers [1 item]
758s
758s . [100%]
758s =============================== warnings summary ===============================
758s tests/unit/test_example.py::test_example
758s /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`?
758s warnings.warn(
758s
758s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
758s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/wti/remote/tests/output/junit/python3.13-controller-units.xml -
758s ========================= 1 passed, 1 warning in 0.49s =========================
758s Skipping ansible_collections/junipernetworks/junos
758s
758s
758s
758s ############################################################
758s ############################################################
758s #### Running tests in ansible_collections/cloud/common
758s ############################################################
758s ############################################################
758s Unit test module_utils with Python 3.13
759s ============================= test session starts ==============================
759s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
759s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cloud/common
759s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
759s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
759s created: 2/2 workers
759s 2 workers [19 items]
759s
760s ................... [100%]
760s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cloud/common/tests/output/junit/python3.13-module_utils-units.xml -
760s ============================== 19 passed in 2.05s ==============================
761s Skipping ansible_collections/ngine_io/cloudstack
761s
761s
761s
761s ############################################################
761s ############################################################
761s #### Running tests in ansible_collections/community/sap_libs
761s ############################################################
761s ############################################################
761s Unit test modules with Python 3.13
762s ============================= test session starts ==============================
762s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
762s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/sap_libs
762s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
762s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
762s created: 2/2 workers
762s 2 workers [49 items]
762s
762s ................................................. [100%]
762s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/sap_libs/tests/output/junit/python3.13-modules-units.xml -
762s ============================== 49 passed in 1.02s ==============================
762s
762s
762s
762s ############################################################
762s ############################################################
762s #### Running tests in ansible_collections/community/windows
762s ############################################################
762s ############################################################
762s Unit test controller with Python 3.13
763s ============================= test session starts ==============================
763s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
763s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/windows
763s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
763s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
763s created: 2/2 workers
763s 2 workers [32 items]
763s
764s ................................ [100%]
764s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/windows/tests/output/junit/python3.13-controller-units.xml -
764s ============================== 32 passed in 1.32s ==============================
764s
764s
764s
764s ############################################################
764s ############################################################
764s #### Running tests in ansible_collections/community/grafana
764s ############################################################
764s ############################################################
764s Unit test controller with Python 3.13
765s ============================= test session starts ==============================
765s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
765s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/grafana
765s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
765s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
765s created: 2/2 workers
765s 2 workers [31 items]
765s
766s ............................... [100%]
766s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/grafana/tests/output/junit/python3.13-controller-units.xml -
766s ============================== 31 passed in 1.03s ==============================
766s
766s
766s
766s ############################################################
766s ############################################################
766s #### Running tests in ansible_collections/community/docker
766s ############################################################
766s ############################################################
766s Unit test modules with Python 3.13
767s ============================= test session starts ==============================
767s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
767s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/docker
767s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
767s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
767s created: 2/2 workers
767s 2 workers [27 items]
767s
769s ........................... [100%]
769s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/docker/tests/output/junit/python3.13-modules-units.xml -
769s ============================== 27 passed in 3.02s ==============================
769s Unit test module_utils with Python 3.13
771s ============================= test session starts ==============================
771s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
771s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/docker
771s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
771s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
771s created: 2/2 workers
771s 2 workers [551 items]
771s
771s .................................................s.s.s.s.s.ss.s......... [ 13%]
771s .....s.s.s..ss.........s................................................ [ 26%]
772s .........s....................................................s......... [ 39%]
772s ...............................s........................................ [ 52%]
773s ........................................................................ [ 65%]
773s ........................................................................ [ 78%]
774s ........................................................................ [ 91%]
774s ............................................... [100%]
774s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/docker/tests/output/junit/python3.13-module_utils-units.xml -
774s =========================== short test summary info ============================
774s 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.
774s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:99: match_hostname is not available
774s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:92: match_hostname is not available
774s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:95: match_hostname is not available
774s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:86: match_hostname is not available
774s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:89: match_hostname is not available
774s SKIPPED [1] tests/unit/plugins/module_utils/_api/utils/test_build.py:254: Backslash patterns only on Windows
774s SKIPPED [1] tests/unit/plugins/module_utils/_api/utils/test_build.py:276: Backslash patterns only on Windows
774s SKIPPED [1] tests/unit/plugins/module_utils/_api/utils/test_config.py:76: condition: sys.platform != 'win32'
774s SKIPPED [1] tests/unit/plugins/module_utils/_api/utils/test_utils.py:471: shlex doesn't support bytes in py3
774s ======================= 534 passed, 17 skipped in 4.71s ========================
775s Unit test controller with Python 3.13
776s ============================= test session starts ==============================
776s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
776s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/docker
776s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
776s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
776s created: 2/2 workers
776s 2 workers [16 items]
776s
776s ................ [100%]
776s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/docker/tests/output/junit/python3.13-controller-units.xml -
776s ============================== 16 passed in 0.97s ==============================
776s
776s
776s
776s ############################################################
776s ############################################################
776s #### Running tests in ansible_collections/community/vmware
776s ############################################################
776s ############################################################
776s Unit test controller with Python 3.13
777s ============================= test session starts ==============================
777s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
777s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/vmware
777s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
777s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
777s created: 2/2 workers
777s 2 workers [32 items]
777s
777s ................................ [100%]
777s =============================== warnings summary ===============================
777s tests/unit/module_utils/test_vmware.py::test_required_params[validate_certs]
777s tests/unit/modules/cloud/vmware/test_vmware_guest.py::test_vmware_guest_with_parameters[patch_ansible_module0-testcase0]
777s tests/unit/modules/cloud/vmware/test_vmware_guest.py::test_vmware_guest_with_parameters[patch_ansible_module5-testcase5]
777s tests/unit/modules/cloud/vmware/test_vmware_guest.py::test_vmware_guest_with_parameters[patch_ansible_module7-testcase7]
777s /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/vmware/plugins/module_utils/vmware.py:752: DeprecationWarning: ssl.PROTOCOL_TLS is deprecated
777s ssl_context = ssl.SSLContext(ssl.PROTOCOL_SSLv23)
777s
777s tests/unit/module_utils/test_vmware.py::test_required_params[valid_http_proxy]
777s tests/unit/modules/cloud/vmware/test_vmware_guest.py::test_vmware_guest_with_parameters[patch_ansible_module6-testcase6]
777s /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/vmware/plugins/module_utils/vmware.py:757: DeprecationWarning: ssl.PROTOCOL_TLS is deprecated
777s ssl_context = ssl.SSLContext(ssl.PROTOCOL_SSLv23)
777s
777s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
777s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/vmware/tests/output/junit/python3.13-controller-units.xml -
777s ======================== 32 passed, 6 warnings in 1.06s ========================
778s
778s
778s
778s ############################################################
778s ############################################################
778s #### Running tests in ansible_collections/community/digitalocean
778s ############################################################
778s ############################################################
778s Unit test modules with Python 3.13
779s ============================= test session starts ==============================
779s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
779s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/digitalocean
779s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
779s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
779s created: 2/2 workers
779s 2 workers [32 items]
779s
779s ................................ [100%]
779s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/digitalocean/tests/output/junit/python3.13-modules-units.xml -
779s ============================== 32 passed in 0.92s ==============================
779s Unit test controller with Python 3.13
780s ============================= test session starts ==============================
780s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
780s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/digitalocean
780s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
780s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
780s created: 2/2 workers
780s 2 workers [14 items]
780s
780s .............. [100%]
780s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/digitalocean/tests/output/junit/python3.13-controller-units.xml -
780s ============================== 14 passed in 0.84s ==============================
780s
780s
780s
780s ############################################################
780s ############################################################
780s #### Running tests in ansible_collections/community/postgresql
780s ############################################################
780s ############################################################
780s Unit test modules with Python 3.13
781s ============================= test session starts ==============================
781s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
781s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/postgresql
781s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
781s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
781s created: 2/2 workers
781s 2 workers [30 items]
781s
782s .............................. [100%]
782s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/postgresql/tests/output/junit/python3.13-modules-units.xml -
782s ============================== 30 passed in 0.82s ==============================
782s Unit test module_utils with Python 3.13
782s ============================= test session starts ==============================
782s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
782s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/postgresql
782s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
782s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
782s created: 2/2 workers
782s 2 workers [41 items]
782s
783s ......................................... [100%]
783s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/postgresql/tests/output/junit/python3.13-module_utils-units.xml -
783s ============================== 41 passed in 0.73s ==============================
783s
783s
783s
783s ############################################################
783s ############################################################
783s #### Running tests in ansible_collections/community/crypto
783s ############################################################
783s ############################################################
783s Unit test modules with Python 3.13
784s ============================= test session starts ==============================
784s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
784s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/crypto
784s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
784s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
784s created: 2/2 workers
784s 2 workers [76 items]
784s
784s ........................................................................ [ 94%]
784s .... [100%]
784s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/crypto/tests/output/junit/python3.13-modules-units.xml -
784s ============================== 76 passed in 1.04s ==============================
784s Unit test module_utils with Python 3.13
786s ============================= test session starts ==============================
786s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
786s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/crypto
786s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
786s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
786s created: 2/2 workers
786s 2 workers [520 items]
786s
788s ........................................................................ [ 13%]
789s .......................................................................s [ 27%]
789s .s.s..s.s..s.s....................................ss..ss.s.s.s.s........ [ 41%]
790s ........................................................................ [ 55%]
792s ........................................................................ [ 69%]
795s ........................................................................ [ 83%]
797s ........................................................................ [ 96%]
798s ................ [100%]
798s =============================== warnings summary ===============================
798s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_default_key_params[dsa-None-None-None]
798s /tmp/autopkgtest.6h2zC6/build.afB/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
798s pair = OpensshKeypair.generate(keytype=keytype, size=size, passphrase=passphrase, comment=comment)
798s
798s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_default_key_params[dsa-None-None-None]
798s /tmp/autopkgtest.6h2zC6/build.afB/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
798s pair = OpensshKeypair.generate(keytype=keytype, size=size, passphrase=passphrase, comment=comment)
798s
798s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison
798s /tmp/autopkgtest.6h2zC6/build.afB/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
798s assert OpensshKeypair.generate() != OpensshKeypair.generate(keytype='dsa')
798s
798s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison
798s /tmp/autopkgtest.6h2zC6/build.afB/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
798s 'pair': OpensshKeypair.generate(keytype='dsa', passphrase='change_me'.encode('UTF-8')),
798s
798s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison
798s /tmp/autopkgtest.6h2zC6/build.afB/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.
798s privatekey = privatekey_loader(
798s
798s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison
798s /tmp/autopkgtest.6h2zC6/build.afB/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.
798s publickey = publickey_loader(
798s
798s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison
798s /tmp/autopkgtest.6h2zC6/build.afB/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
798s loaded_dsa_key = OpensshKeypair.load(path=keys['dsa']['filename'], passphrase='change_me'.encode('UTF-8'))
798s
798s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison
798s /tmp/autopkgtest.6h2zC6/build.afB/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
798s loaded_dsa_key.update_passphrase('change_me_again'.encode('UTF-8'))
798s
798s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison
798s /tmp/autopkgtest.6h2zC6/build.afB/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
798s loaded_dsa_key.update_passphrase('change_me'.encode('UTF-8'))
798s
798s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_valid_user_key_params[dsa-1024-change_me-comment]
798s /tmp/autopkgtest.6h2zC6/build.afB/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
798s pair = OpensshKeypair.generate(keytype=keytype, size=size, passphrase=passphrase, comment=comment)
798s
798s tests/unit/plugins/module_utils/test_time.py: 16 warnings
798s /tmp/autopkgtest.6h2zC6/build.afB/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).
798s return datetime.datetime.utcfromtimestamp(timestamp)
798s
798s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
798s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/crypto/tests/output/junit/python3.13-module_utils-units.xml -
798s =========================== short test summary info ============================
798s SKIPPED [15] tests/unit/plugins/module_utils/crypto/test_asn1.py:78: unconditional skip
798s ================ 505 passed, 15 skipped, 26 warnings in 12.82s =================
798s Skipping ansible_collections/community/general
798s Skipping ansible_collections/community/library_inventory_filtering_v1
798s
798s
798s
798s ############################################################
798s ############################################################
798s #### Running tests in ansible_collections/community/mysql
798s ############################################################
798s ############################################################
798s Unit test modules with Python 3.13
799s ============================= test session starts ==============================
799s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
799s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/mysql
799s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
799s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
799s created: 2/2 workers
799s 2 workers [43 items]
799s
799s ........................................... [100%]
799s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/mysql/tests/output/junit/python3.13-modules-units.xml -
799s ============================== 43 passed in 0.77s ==============================
799s Unit test module_utils with Python 3.13
800s ============================= test session starts ==============================
800s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
800s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/mysql
800s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
800s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
800s created: 2/2 workers
800s 2 workers [84 items]
800s
800s ........................................................................ [ 85%]
800s ............ [100%]
800s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/mysql/tests/output/junit/python3.13-module_utils-units.xml -
800s ============================== 84 passed in 0.98s ==============================
800s
800s
800s
800s ############################################################
800s ############################################################
800s #### Running tests in ansible_collections/community/network
800s ############################################################
800s ############################################################
800s Unit test modules 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.6h2zC6/build.afB/src/ansible_collections/community/network
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 [930 items]
804s
805s ........................................................................ [ 7%]
806s ........................................................................ [ 15%]
806s ........................................................................ [ 23%]
807s ........................................................................ [ 30%]
808s ........................................................................ [ 38%]
808s ........................................................................ [ 46%]
810s ........................................................................ [ 54%]
811s ........................................................................ [ 61%]
811s ...................................................................sss.s [ 69%]
812s s.ss.sss.ss.sss.s.ss.s.ss.s.ss.s.ss.s.ss.s.ss.ss.ss.s.ss.s.ss.s.ss.ss.ss [ 77%]
812s sssssssss.ss............................................................ [ 85%]
813s ........................................................................ [ 92%]
814s .................................................................. [100%]
814s =============================== warnings summary ===============================
814s tests/unit/plugins/modules/test_ce_is_is_instance.py::TestCloudEngineLacpModule::test_isis_instance_present
814s tests/unit/plugins/modules/test_ce_is_is_instance.py::TestCloudEngineLacpModule::test_isis_instance_present
814s /tmp/autopkgtest.6h2zC6/build.afB/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.
814s if glb:
814s
814s tests/unit/plugins/modules/test_ce_is_is_interface.py::TestCloudEngineLacpModule::test_isis_interface_absent
814s tests/unit/plugins/modules/test_ce_is_is_interface.py::TestCloudEngineLacpModule::test_isis_interface_absent
814s tests/unit/plugins/modules/test_ce_is_is_interface.py::TestCloudEngineLacpModule::test_isis_interface_present
814s tests/unit/plugins/modules/test_ce_is_is_interface.py::TestCloudEngineLacpModule::test_isis_interface_present
814s /tmp/autopkgtest.6h2zC6/build.afB/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.
814s if glb:
814s
814s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
814s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/network/tests/output/junit/python3.13-modules-units.xml -
814s =========================== short test summary info ============================
814s SKIPPED [61] tests/unit/plugins/modules/test_nuage_vspk.py: Nuage Ansible modules requires Python 2.7
814s ================= 869 passed, 61 skipped, 6 warnings in 12.99s =================
814s Unit test module_utils with Python 3.13
815s ============================= test session starts ==============================
815s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
815s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/network
815s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
815s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
815s created: 2/2 workers
815s 2 workers [172 items]
815s
816s ........................................................................ [ 41%]
816s ........................................................................ [ 83%]
817s ............................ [100%]
817s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/network/tests/output/junit/python3.13-module_utils-units.xml -
817s ============================= 172 passed in 2.34s ==============================
817s Unit test controller 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.6h2zC6/build.afB/src/ansible_collections/community/network
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 [50 items]
818s
818s .................................................. [100%]
818s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/network/tests/output/junit/python3.13-controller-units.xml -
818s ============================== 50 passed in 1.09s ==============================
818s Skipping ansible_collections/community/hrobot
818s Skipping ansible_collections/community/dns
818s
818s
818s
818s ############################################################
818s ############################################################
818s #### Running tests in ansible_collections/community/routeros
818s ############################################################
818s ############################################################
818s Unit test modules with Python 3.13
819s ============================= test session starts ==============================
819s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
819s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/routeros
819s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
819s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
819s created: 2/2 workers
819s 2 workers [115 items]
819s
820s ........................................................................ [ 62%]
820s ........................................... [100%]
820s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/routeros/tests/output/junit/python3.13-modules-units.xml -
820s ============================= 115 passed in 1.73s ==============================
820s Unit test module_utils with Python 3.13
821s ============================= test session starts ==============================
821s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
821s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/routeros
821s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
821s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
821s created: 2/2 workers
821s 2 workers [146 items]
821s
821s ........................................................................ [ 49%]
822s ........................................................................ [ 98%]
822s .. [100%]
822s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/routeros/tests/output/junit/python3.13-module_utils-units.xml -
822s ============================= 146 passed in 1.28s ==============================
822s
822s
822s
822s ############################################################
822s ############################################################
822s #### Running tests in ansible_collections/community/aws
822s ############################################################
822s ############################################################
822s Unit test modules 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.6h2zC6/build.afB/src/ansible_collections/community/aws
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 [33 items]
823s
824s ................................. [100%]
824s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/aws/tests/output/junit/python3.13-modules-units.xml -
824s =========================== short test summary info ============================
824s SKIPPED [1] ../../amazon/aws/tests/unit/utils/amazon_placebo_fixtures.py:16: could not import 'placebo': No module named 'placebo'
824s ======================== 33 passed, 1 skipped in 1.35s =========================
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.6h2zC6/build.afB/src/ansible_collections/community/aws
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 [52 items]
825s
826s .................................................... [100%]
826s =============================== warnings summary ===============================
826s tests/unit/plugins/connection/test_aws_ssm.py::TestConnectionBaseClass::test_plugins_connection_aws_ssm_start_session
826s /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:85: PytestUnraisableExceptionWarning: Exception ignored in:
826s
826s Traceback (most recent call last):
826s File "/tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/aws/plugins/connection/aws_ssm.py", line 496, in __del__
826s self.close()
826s ~~~~~~~~~~^^
826s File "/tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/aws/plugins/connection/aws_ssm.py", line 961, in close
826s self._vvv(f"CLOSING SSM CONNECTION TO: {self.instance_id}")
826s ^^^^^^^^^^^^^^^^
826s AttributeError: 'Connection' object has no attribute 'instance_id'
826s
826s warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
826s
826s tests/unit/plugins/connection/test_aws_ssm.py::TestConnectionBaseClass::test_plugins_connection_aws_ssm_exec_command
826s /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`?
826s warnings.warn(
826s
826s tests/unit/plugins/connection/test_aws_ssm.py::TestConnectionBaseClass::test_plugins_connection_aws_ssm_wrap_command
826s /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`?
826s warnings.warn(
826s
826s tests/unit/plugins/connection/test_aws_ssm.py::TestConnectionBaseClass::test_plugins_connection_aws_ssm_post_process
826s /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`?
826s warnings.warn(
826s
826s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
826s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/aws/tests/output/junit/python3.13-controller-units.xml -
826s ======================== 52 passed, 4 warnings in 1.55s ========================
826s
826s
826s
826s ############################################################
826s ############################################################
826s #### Running tests in ansible_collections/community/ciscosmb
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.6h2zC6/build.afB/src/ansible_collections/community/ciscosmb
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 [56 items]
827s
828s ........................................................ [100%]
828s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/ciscosmb/tests/output/junit/python3.13-modules-units.xml -
828s ============================== 56 passed in 1.19s ==============================
828s
828s
828s
828s ############################################################
828s ############################################################
828s #### Running tests in ansible_collections/community/libvirt
828s ############################################################
828s ############################################################
828s Unit test controller with Python 3.13
829s ============================= test session starts ==============================
829s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
829s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/libvirt
829s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
829s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
829s created: 2/2 workers
829s 2 workers [4 items]
829s
829s .... [100%]
829s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/libvirt/tests/output/junit/python3.13-controller-units.xml -
829s ============================== 4 passed in 0.61s ===============================
829s
829s
829s
829s ############################################################
829s ############################################################
829s #### Running tests in ansible_collections/community/okd
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.6h2zC6/build.afB/src/ansible_collections/community/okd
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 [13 items]
830s
831s ............. [100%]
831s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/okd/tests/output/junit/python3.13-modules-units.xml -
831s ============================== 13 passed in 1.12s ==============================
831s 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.6h2zC6/build.afB/src/ansible_collections/community/okd
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 [15 items]
831s
832s .ss............ [100%]
832s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/okd/tests/output/junit/python3.13-module_utils-units.xml -
832s =========================== short test summary info ============================
832s SKIPPED [2] tests/unit/plugins/module_utils/test_ldap_dn.py: This test requires the python-ldap library
832s ======================== 13 passed, 2 skipped in 0.58s =========================
832s
832s
832s
832s ############################################################
832s ############################################################
832s #### Running tests in ansible_collections/community/rabbitmq
832s ############################################################
832s ############################################################
832s Unit test controller 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.6h2zC6/build.afB/src/ansible_collections/community/rabbitmq
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 [30 items]
833s
833s .............................. [100%]
833s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/rabbitmq/tests/output/junit/python3.13-controller-units.xml -
833s ============================== 30 passed in 0.90s ==============================
833s
833s
833s
833s ############################################################
833s ############################################################
833s #### Running tests in ansible_collections/community/hashi_vault
833s ############################################################
833s ############################################################
833s Unit test modules with Python 3.13
835s ============================= test session starts ==============================
835s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
835s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/hashi_vault
835s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
835s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
835s created: 2/2 workers
835s 2 workers [281 items]
835s
836s ........................................................................ [ 25%]
836s ........................................................................ [ 51%]
837s ........................................................................ [ 76%]
838s ................................................................. [100%]
838s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/hashi_vault/tests/output/junit/python3.13-modules-units.xml -
838s ============================= 281 passed in 3.94s ==============================
838s Unit test module_utils with Python 3.13
839s ============================= test session starts ==============================
839s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
839s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/hashi_vault
839s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
839s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
839s created: 2/2 workers
839s 2 workers [1436 items]
839s
840s ........................................................................ [ 5%]
840s ........................................................................ [ 10%]
841s ........................................................................ [ 15%]
841s ........................................................................ [ 20%]
842s ........................................................................ [ 25%]
843s ........................................................................ [ 30%]
844s ........................................................................ [ 35%]
844s ........................................................................ [ 40%]
845s ........................................................................ [ 45%]
845s ........................................................................ [ 50%]
846s ........................................................................ [ 55%]
846s ........................................................................ [ 60%]
847s ........................................................................ [ 65%]
847s ........................................................................ [ 70%]
848s ........................................................................ [ 75%]
848s ........................................................................ [ 80%]
848s ........................................................................ [ 85%]
849s ........................................................................ [ 90%]
849s ........................................................................ [ 95%]
850s .................................................................... [100%]
850s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/hashi_vault/tests/output/junit/python3.13-module_utils-units.xml -
850s ============================ 1436 passed in 11.48s =============================
850s Unit test controller with Python 3.13
851s ============================= test session starts ==============================
851s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
851s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/hashi_vault
851s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
851s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
851s created: 2/2 workers
851s 2 workers [619 items]
851s
852s ........................................................................ [ 11%]
853s ........................................................................ [ 23%]
854s ........................................................................ [ 34%]
855s ........................................................................ [ 46%]
856s ........................................................................ [ 58%]
857s ........................................................................ [ 69%]
857s ........................................................................ [ 81%]
858s ........................................................................ [ 93%]
858s ........................................... [100%]
858s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/community/hashi_vault/tests/output/junit/python3.13-controller-units.xml -
858s ============================= 619 passed in 7.57s ==============================
858s
858s
858s
858s ############################################################
858s ############################################################
858s #### Running tests in ansible_collections/microsoft/ad
858s ############################################################
858s ############################################################
858s Unit test controller with Python 3.13
859s ============================= test session starts ==============================
859s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
859s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/microsoft/ad
859s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
859s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
859s created: 2/2 workers
859s 2 workers [118 items]
859s
859s ........................................................................ [ 61%]
862s ................s..s.......................... [100%]
862s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/microsoft/ad/tests/output/junit/python3.13-controller-units.xml -
862s =========================== short test summary info ============================
862s SKIPPED [1] tests/unit/plugins/plugin_utils/_ldap/test_laps.py:9: could not import 'dpapi_ng': No module named 'dpapi_ng'
862s SKIPPED [1] tests/unit/plugins/plugin_utils/_ldap/test_schema.py:8: could not import 'sansldap': No module named 'sansldap'
862s SKIPPED [1] tests/unit/plugins/plugin_utils/_ldap/test_certificate.py:179: Hash algorithm is unavailable: Hash algorithm "md5" not supported for signatures
862s SKIPPED [1] tests/unit/plugins/plugin_utils/_ldap/test_certificate.py:179: Hash algorithm is unavailable: Hash algorithm "sha1" not supported for signatures
862s ======================== 116 passed, 4 skipped in 3.50s ========================
862s
862s
862s
862s ############################################################
862s ############################################################
862s #### Running tests in ansible_collections/netbox/netbox
862s ############################################################
862s ############################################################
862s Unit test controller with Python 3.13
864s ============================= test session starts ==============================
864s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
864s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/netbox/netbox
864s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
864s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
864s created: 2/2 workers
864s 2 workers [208 items]
864s
864s ........................................................................ [ 34%]
865s ........................................................................ [ 69%]
865s ................................................................ [100%]
865s =============================== warnings summary ===============================
865s tests/unit/inventory/test_nb_inventory.py::test_refresh_lookups
865s /usr/lib/python3/dist-packages/_pytest/threadexception.py:82: PytestUnhandledThreadExceptionWarning: Exception in thread Thread-2 (wrapper)
865s
865s Traceback (most recent call last):
865s File "/usr/lib/python3.13/threading.py", line 1041, in _bootstrap_inner
865s self.run()
865s ~~~~~~~~^^
865s File "/usr/lib/python3.13/threading.py", line 992, in run
865s self._target(*self._args, **self._kwargs)
865s ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
865s File "/tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/netbox/netbox/plugins/inventory/nb_inventory.py", line 1569, in wrapper
865s raise e
865s File "/tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/netbox/netbox/plugins/inventory/nb_inventory.py", line 1564, in wrapper
865s lookup()
865s ~~~~~~^^
865s File "/tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/netbox/netbox/tests/unit/inventory/test_nb_inventory.py", line 154, in raises_exception
865s raise Exception("Error from within a thread")
865s Exception: Error from within a thread
865s
865s warnings.warn(pytest.PytestUnhandledThreadExceptionWarning(msg))
865s
865s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
865s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/netbox/netbox/tests/output/junit/python3.13-controller-units.xml -
865s ======================== 208 passed, 1 warning in 2.44s ========================
865s Skipping ansible_collections/infoblox/nios_modules
865s
865s
865s
865s ############################################################
865s ############################################################
865s #### Running tests in ansible_collections/containers/podman
865s ############################################################
865s ############################################################
865s Unit test modules 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.6h2zC6/build.afB/src/ansible_collections/containers/podman
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 [10 items]
866s
866s .......... [100%]
866s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/containers/podman/tests/output/junit/python3.13-modules-units.xml -
866s ============================== 10 passed in 0.68s ==============================
867s autopkgtest [04:07:46]: test unit-tests-stable.py: -----------------------]
867s unit-tests-stable.py PASS
867s autopkgtest [04:07:46]: test unit-tests-stable.py: - - - - - - - - - - results - - - - - - - - - -
868s autopkgtest [04:07:47]: test unit-tests-flaky.py: preparing testbed
918s autopkgtest [04:08:37]: testbed dpkg architecture: amd64
918s autopkgtest [04:08:37]: testbed apt version: 3.0.0
918s autopkgtest [04:08:37]: @@@@@@@@@@@@@@@@@@@@ test bed setup
919s autopkgtest [04:08:38]: testbed release detected to be: questing
919s autopkgtest [04:08:38]: updating testbed package index (apt update)
920s Get:1 http://ftpmaster.internal/ubuntu questing-proposed InRelease [110 kB]
920s Hit:2 http://ftpmaster.internal/ubuntu questing InRelease
920s Hit:3 http://ftpmaster.internal/ubuntu questing-updates InRelease
920s Hit:4 http://ftpmaster.internal/ubuntu questing-security InRelease
920s Get:5 http://ftpmaster.internal/ubuntu questing-proposed/universe Sources [1920 kB]
920s Get:6 http://ftpmaster.internal/ubuntu questing-proposed/main Sources [168 kB]
920s Get:7 http://ftpmaster.internal/ubuntu questing-proposed/multiverse Sources [43.3 kB]
920s Get:8 http://ftpmaster.internal/ubuntu questing-proposed/main i386 Packages [177 kB]
920s Get:9 http://ftpmaster.internal/ubuntu questing-proposed/main amd64 Packages [232 kB]
920s Get:10 http://ftpmaster.internal/ubuntu questing-proposed/universe amd64 Packages [1520 kB]
920s Get:11 http://ftpmaster.internal/ubuntu questing-proposed/universe i386 Packages [672 kB]
920s Get:12 http://ftpmaster.internal/ubuntu questing-proposed/multiverse i386 Packages [13.5 kB]
920s Get:13 http://ftpmaster.internal/ubuntu questing-proposed/multiverse amd64 Packages [14.8 kB]
921s Fetched 4871 kB in 1s (4019 kB/s)
921s Reading package lists...
922s autopkgtest [04:08:41]: upgrading testbed (apt dist-upgrade and autopurge)
922s Reading package lists...
923s Building dependency tree...
923s Reading state information...
923s Calculating upgrade...Starting pkgProblemResolver with broken count: 0
923s Starting 2 pkgProblemResolver with broken count: 0
923s Done
924s Entering ResolveByKeep
924s
924s Calculating upgrade...
925s The following packages will be upgraded:
925s ed fwupd htop libftdi1-2 libfwupd3 libnpth0t64 libnvme1t64 libsensors-config
925s libsensors5 liburcu8t64 mokutil nano usb.ids
925s 13 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
925s Need to get 6529 kB of archives.
925s After this operation, 209 kB disk space will be freed.
925s Get:1 http://ftpmaster.internal/ubuntu questing/main amd64 libnpth0t64 amd64 1.8-3 [9294 B]
925s Get:2 http://ftpmaster.internal/ubuntu questing/main amd64 ed amd64 1.21.1-1 [57.2 kB]
925s Get:3 http://ftpmaster.internal/ubuntu questing/main amd64 libsensors-config all 1:3.6.2-2 [6756 B]
925s Get:4 http://ftpmaster.internal/ubuntu questing/main amd64 libsensors5 amd64 1:3.6.2-2 [28.7 kB]
925s Get:5 http://ftpmaster.internal/ubuntu questing/main amd64 liburcu8t64 amd64 0.15.2-2 [63.9 kB]
925s Get:6 http://ftpmaster.internal/ubuntu questing/main amd64 nano amd64 8.4-1 [290 kB]
925s Get:7 http://ftpmaster.internal/ubuntu questing/main amd64 usb.ids all 2025.04.01-1 [223 kB]
925s Get:8 http://ftpmaster.internal/ubuntu questing/main amd64 fwupd amd64 2.0.8-3 [5396 kB]
925s Get:9 http://ftpmaster.internal/ubuntu questing/main amd64 libfwupd3 amd64 2.0.8-3 [136 kB]
925s Get:10 http://ftpmaster.internal/ubuntu questing/main amd64 htop amd64 3.4.1-4 [175 kB]
925s Get:11 http://ftpmaster.internal/ubuntu questing/main amd64 libftdi1-2 amd64 1.5-10 [30.7 kB]
925s Get:12 http://ftpmaster.internal/ubuntu questing/main amd64 libnvme1t64 amd64 1.13-2 [84.2 kB]
925s Get:13 http://ftpmaster.internal/ubuntu questing/main amd64 mokutil amd64 0.7.2-1 [27.9 kB]
926s Fetched 6529 kB in 1s (7981 kB/s)
926s (Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 80514 files and directories currently installed.)
926s Preparing to unpack .../libnpth0t64_1.8-3_amd64.deb ...
926s Unpacking libnpth0t64:amd64 (1.8-3) over (1.8-2) ...
926s Setting up libnpth0t64:amd64 (1.8-3) ...
926s (Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 80514 files and directories currently installed.)
926s Preparing to unpack .../00-ed_1.21.1-1_amd64.deb ...
926s Unpacking ed (1.21.1-1) over (1.21-1) ...
926s Preparing to unpack .../01-libsensors-config_1%3a3.6.2-2_all.deb ...
926s Unpacking libsensors-config (1:3.6.2-2) over (1:3.6.0-10) ...
926s Preparing to unpack .../02-libsensors5_1%3a3.6.2-2_amd64.deb ...
926s Unpacking libsensors5:amd64 (1:3.6.2-2) over (1:3.6.0-10) ...
926s Preparing to unpack .../03-liburcu8t64_0.15.2-2_amd64.deb ...
926s Unpacking liburcu8t64:amd64 (0.15.2-2) over (0.15.1-1) ...
926s Preparing to unpack .../04-nano_8.4-1_amd64.deb ...
926s Unpacking nano (8.4-1) over (8.3-1) ...
926s Preparing to unpack .../05-usb.ids_2025.04.01-1_all.deb ...
926s Unpacking usb.ids (2025.04.01-1) over (2025.01.14-1) ...
926s Preparing to unpack .../06-fwupd_2.0.8-3_amd64.deb ...
926s Unpacking fwupd (2.0.8-3) over (2.0.7-1) ...
927s Preparing to unpack .../07-libfwupd3_2.0.8-3_amd64.deb ...
927s Unpacking libfwupd3:amd64 (2.0.8-3) over (2.0.7-1) ...
927s Preparing to unpack .../08-htop_3.4.1-4_amd64.deb ...
927s Unpacking htop (3.4.1-4) over (3.4.0-2) ...
927s Preparing to unpack .../09-libftdi1-2_1.5-10_amd64.deb ...
927s Unpacking libftdi1-2:amd64 (1.5-10) over (1.5-8build1) ...
927s Preparing to unpack .../10-libnvme1t64_1.13-2_amd64.deb ...
927s Unpacking libnvme1t64 (1.13-2) over (1.11.1-2) ...
927s Preparing to unpack .../11-mokutil_0.7.2-1_amd64.deb ...
927s Unpacking mokutil (0.7.2-1) over (0.6.0-2build3) ...
927s Setting up liburcu8t64:amd64 (0.15.2-2) ...
927s Setting up mokutil (0.7.2-1) ...
927s Setting up htop (3.4.1-4) ...
927s Setting up libsensors-config (1:3.6.2-2) ...
927s Installing new version of config file /etc/sensors3.conf ...
927s Setting up libfwupd3:amd64 (2.0.8-3) ...
927s Setting up libftdi1-2:amd64 (1.5-10) ...
927s Setting up libnvme1t64 (1.13-2) ...
927s Setting up ed (1.21.1-1) ...
927s Setting up usb.ids (2025.04.01-1) ...
927s Setting up libsensors5:amd64 (1:3.6.2-2) ...
927s Setting up nano (8.4-1) ...
927s Installing new version of config file /etc/nanorc ...
927s Setting up fwupd (2.0.8-3) ...
927s fwupd-refresh.service is a disabled or a static unit not running, not starting it.
927s fwupd.service is a disabled or a static unit not running, not starting it.
927s Processing triggers for man-db (2.13.0-1) ...
928s Processing triggers for dbus (1.16.2-2ubuntu1) ...
928s Processing triggers for install-info (7.1.1-1) ...
929s Processing triggers for libc-bin (2.41-6ubuntu1) ...
929s Reading package lists...
929s Building dependency tree...
929s Reading state information...
929s Starting pkgProblemResolver with broken count: 0
929s Starting 2 pkgProblemResolver with broken count: 0
929s Done
930s Solving dependencies...
930s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
930s autopkgtest [04:08:49]: rebooting testbed after setup commands that affected boot
956s Reading package lists...
956s Building dependency tree...
956s Reading state information...
956s Starting pkgProblemResolver with broken count: 0
956s Starting 2 pkgProblemResolver with broken count: 0
956s Done
957s The following NEW packages will be installed:
957s ansible ansible-core fontconfig-config fonts-dejavu-core fonts-dejavu-mono
957s gir1.2-secret-1 git git-man libcairo-gobject2 libcairo2 liberror-perl
957s libfontconfig1 libpixman-1-0 libsecret-1-0 libsecret-common libsodium23
957s libxcb-render0 libxcb-shm0 libxrender1 libxslt1.1 python3-adal
957s python3-aiohappyeyeballs python3-aiohttp python3-aiosignal
957s python3-async-timeout python3-avro python3-azure python3-azure-storage
957s python3-cachetools python3-cairo python3-click python3-colorama
957s python3-deprecated python3-dnspython python3-execnet python3-flake8
957s python3-freezegun python3-frozenlist python3-gi-cairo python3-gitlab
957s python3-google-auth python3-httmock python3-hvac python3-iniconfig
957s python3-isodate python3-joblib python3-kubernetes python3-lxml
957s python3-marshmallow python3-mccabe python3-mock python3-msal
957s python3-msal-extensions python3-msrest python3-msrestazure python3-multidict
957s python3-nacl python3-nltk python3-paramiko python3-pathspec python3-pluggy
957s python3-portalocker python3-proxmoxer python3-psutil python3-py
957s python3-pyasn1 python3-pyasn1-modules python3-pycodestyle python3-pydash
957s python3-pyflakes python3-pyhcl python3-pytest python3-pytest-forked
957s python3-pytest-mock python3-pytest-xdist python3-pyu2f python3-pyvmomi
957s python3-redis python3-regex python3-requests-oauthlib
957s python3-requests-toolbelt python3-resolvelib python3-responses python3-rsa
957s python3-ruamel.yaml python3-ruamel.yaml.clib python3-strictyaml
957s python3-textfsm python3-tqdm python3-websocket python3-wrapt
957s python3-xmltodict python3-yarl yamllint
957s 0 upgraded, 94 newly installed, 0 to remove and 0 not upgraded.
957s Need to get 52.7 MB of archives.
957s After this operation, 889 MB of additional disk space will be used.
957s Get:1 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-resolvelib all 1.1.0-1 [25.8 kB]
957s Get:2 http://ftpmaster.internal/ubuntu questing/main amd64 libsodium23 amd64 1.0.18-1build3 [161 kB]
957s Get:3 http://ftpmaster.internal/ubuntu questing/main amd64 python3-nacl amd64 1.5.0-7 [61.0 kB]
957s Get:4 http://ftpmaster.internal/ubuntu questing/main amd64 python3-paramiko all 3.5.1-2ubuntu1 [147 kB]
957s Get:5 http://ftpmaster.internal/ubuntu questing/main amd64 python3-dnspython all 2.7.0-1ubuntu1 [167 kB]
957s Get:6 http://ftpmaster.internal/ubuntu questing/universe amd64 ansible-core all 2.18.1-4ubuntu1 [1273 kB]
958s Get:7 http://ftpmaster.internal/ubuntu questing/universe amd64 ansible all 11.2.0+dfsg-1 [18.1 MB]
960s Get:8 http://ftpmaster.internal/ubuntu questing/main amd64 fonts-dejavu-mono all 2.37-8 [502 kB]
960s Get:9 http://ftpmaster.internal/ubuntu questing/main amd64 fonts-dejavu-core all 2.37-8 [835 kB]
960s Get:10 http://ftpmaster.internal/ubuntu questing/main amd64 fontconfig-config amd64 2.15.0-2.2ubuntu1 [37.8 kB]
960s Get:11 http://ftpmaster.internal/ubuntu questing/main amd64 libsecret-common all 0.21.7-1 [5160 B]
960s Get:12 http://ftpmaster.internal/ubuntu questing/main amd64 libsecret-1-0 amd64 0.21.7-1 [118 kB]
960s Get:13 http://ftpmaster.internal/ubuntu questing/main amd64 gir1.2-secret-1 amd64 0.21.7-1 [9388 B]
960s Get:14 http://ftpmaster.internal/ubuntu questing/main amd64 liberror-perl all 0.17030-1 [23.5 kB]
960s Get:15 http://ftpmaster.internal/ubuntu questing/main amd64 git-man all 1:2.48.1-0ubuntu1 [1148 kB]
960s Get:16 http://ftpmaster.internal/ubuntu questing/main amd64 git amd64 1:2.48.1-0ubuntu1 [4759 kB]
960s Get:17 http://ftpmaster.internal/ubuntu questing/main amd64 libfontconfig1 amd64 2.15.0-2.2ubuntu1 [164 kB]
960s Get:18 http://ftpmaster.internal/ubuntu questing/main amd64 libpixman-1-0 amd64 0.44.0-3 [427 kB]
960s Get:19 http://ftpmaster.internal/ubuntu questing/main amd64 libxcb-render0 amd64 1.17.0-2 [16.2 kB]
960s Get:20 http://ftpmaster.internal/ubuntu questing/main amd64 libxcb-shm0 amd64 1.17.0-2 [5758 B]
960s Get:21 http://ftpmaster.internal/ubuntu questing/main amd64 libxrender1 amd64 1:0.9.10-1.1build1 [19.0 kB]
960s Get:22 http://ftpmaster.internal/ubuntu questing/main amd64 libcairo2 amd64 1.18.4-1 [662 kB]
960s Get:23 http://ftpmaster.internal/ubuntu questing/main amd64 libcairo-gobject2 amd64 1.18.4-1 [127 kB]
960s Get:24 http://ftpmaster.internal/ubuntu questing/main amd64 libxslt1.1 amd64 1.1.39-0exp1ubuntu4 [176 kB]
960s Get:25 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-adal all 1.2.7-5 [33.0 kB]
960s Get:26 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-aiohappyeyeballs all 2.6.1-1 [11.1 kB]
960s Get:27 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-multidict amd64 6.2.0-2 [35.6 kB]
960s Get:28 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-yarl amd64 1.13.1-1build2 [99.7 kB]
960s Get:29 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-async-timeout all 5.0.1-1 [6830 B]
960s Get:30 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-frozenlist amd64 1.5.0-1build2 [51.6 kB]
960s Get:31 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-aiosignal all 1.3.2-1 [5182 B]
960s Get:32 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-aiohttp amd64 3.10.11-1build1 [316 kB]
960s Get:33 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-avro all 1.12.0+dfsg-1 [75.3 kB]
960s Get:34 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-isodate all 0.7.0-1 [18.6 kB]
960s Get:35 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-requests-oauthlib all 1.3.1-1 [18.8 kB]
960s Get:36 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-msrest all 0.6.21-5 [48.7 kB]
960s Get:37 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-msrestazure all 0.6.4-4 [27.1 kB]
960s Get:38 http://ftpmaster.internal/ubuntu questing-proposed/universe amd64 python3-azure-storage all 20250401+git-1 [300 kB]
960s Get:39 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-colorama all 0.4.6-4 [32.1 kB]
960s Get:40 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-marshmallow all 3.26.1-0.2 [47.5 kB]
960s Get:41 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-msal all 1.32.0-1 [100 kB]
960s Get:42 http://ftpmaster.internal/ubuntu questing/main amd64 python3-cairo amd64 1.27.0-2 [124 kB]
960s Get:43 http://ftpmaster.internal/ubuntu questing/main amd64 python3-gi-cairo amd64 3.50.0-4build1 [8232 B]
961s Get:44 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-portalocker all 2.2.1-1 [17.2 kB]
961s Get:45 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-msal-extensions all 1.3.1-1 [18.2 kB]
961s Get:46 http://ftpmaster.internal/ubuntu questing/main amd64 python3-click all 8.2.0+0.really.8.1.8-1 [80.0 kB]
961s Get:47 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-joblib all 1.4.2-3 [205 kB]
961s Get:48 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-regex amd64 0.1.20241106-1build1 [304 kB]
961s Get:49 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-tqdm all 4.67.1-3 [91.6 kB]
961s Get:50 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-nltk all 3.9.1-2 [1006 kB]
961s Get:51 http://ftpmaster.internal/ubuntu questing/main amd64 python3-psutil amd64 5.9.8-2build3 [196 kB]
961s Get:52 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pydash all 8.0.3-3 [93.0 kB]
961s Get:53 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-ruamel.yaml.clib amd64 0.2.12+ds-1build1 [164 kB]
961s Get:54 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-ruamel.yaml all 0.18.10+ds-1 [127 kB]
961s Get:55 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-strictyaml all 1.6.1-3 [89.1 kB]
961s Get:56 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-websocket all 1.8.0-2 [38.5 kB]
961s Get:57 http://ftpmaster.internal/ubuntu questing-proposed/universe amd64 python3-azure all 20250401+git-1 [16.0 MB]
962s Get:58 http://ftpmaster.internal/ubuntu questing/main amd64 python3-cachetools all 5.3.3-1 [10.3 kB]
962s Get:59 http://ftpmaster.internal/ubuntu questing/main amd64 python3-wrapt amd64 1.15.0-4build1 [34.7 kB]
962s Get:60 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-deprecated all 1.2.18-1 [10.6 kB]
962s Get:61 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-execnet all 2.1.1-1 [33.4 kB]
962s Get:62 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-mccabe all 0.7.0-1 [8678 B]
962s Get:63 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pycodestyle all 2.12.1-2 [30.2 kB]
962s Get:64 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pyflakes all 3.2.0-3 [53.0 kB]
962s Get:65 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-flake8 all 7.1.1-3 [44.0 kB]
962s Get:66 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-freezegun all 1.5.1-1.2 [15.9 kB]
962s Get:67 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-requests-toolbelt all 1.0.0-4 [37.0 kB]
962s Get:68 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-gitlab all 1:4.9.0-1 [75.0 kB]
962s Get:69 http://ftpmaster.internal/ubuntu questing/main amd64 python3-pyasn1 all 0.6.1-1 [56.4 kB]
962s Get:70 http://ftpmaster.internal/ubuntu questing/main amd64 python3-pyasn1-modules all 0.4.1-2 [80.3 kB]
962s Get:71 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pyu2f all 0.1.5-4 [22.9 kB]
962s Get:72 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-responses all 0.25.6-1 [40.5 kB]
962s Get:73 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-rsa all 4.9-2 [28.2 kB]
962s Get:74 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-google-auth all 2.28.2-3 [91.0 kB]
962s Get:75 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-httmock all 1.4.0-5 [6544 B]
962s Get:76 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pyhcl all 0.4.4-6 [43.1 kB]
962s Get:77 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-hvac all 2.3.0-3 [88.1 kB]
962s Get:78 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-iniconfig all 1.1.1-2 [6024 B]
962s Get:79 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-kubernetes all 30.1.0-2 [385 kB]
962s Get:80 http://ftpmaster.internal/ubuntu questing/main amd64 python3-lxml amd64 5.3.2-1 [1407 kB]
962s Get:81 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pathspec all 0.12.1-1 [24.5 kB]
962s Get:82 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pluggy all 1.5.0-1 [21.0 kB]
962s Get:83 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-proxmoxer all 2.2.0-1 [16.2 kB]
962s Get:84 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-py all 1.11.0-4 [72.7 kB]
962s Get:85 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pytest all 8.3.5-1 [252 kB]
962s Get:86 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pytest-forked all 1.6.0-3 [7470 B]
962s Get:87 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pytest-mock all 3.14.0-2 [11.7 kB]
962s Get:88 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pytest-xdist all 3.6.1-1 [33.8 kB]
962s Get:89 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-pyvmomi all 8.0.3.0.1-1 [532 kB]
962s Get:90 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-redis all 4.3.4-4 [166 kB]
962s Get:91 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-textfsm all 1.1.3-3 [29.3 kB]
962s Get:92 http://ftpmaster.internal/ubuntu questing/main amd64 python3-xmltodict all 0.13.0-1 [13.4 kB]
962s Get:93 http://ftpmaster.internal/ubuntu questing/universe amd64 yamllint all 1.35.1-2 [43.6 kB]
962s Get:94 http://ftpmaster.internal/ubuntu questing/universe amd64 python3-mock all 5.1.0-1 [64.1 kB]
963s Fetched 52.7 MB in 5s (9688 kB/s)
963s Selecting previously unselected package python3-resolvelib.
963s (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.)
963s Preparing to unpack .../00-python3-resolvelib_1.1.0-1_all.deb ...
963s Unpacking python3-resolvelib (1.1.0-1) ...
963s Selecting previously unselected package libsodium23:amd64.
963s Preparing to unpack .../01-libsodium23_1.0.18-1build3_amd64.deb ...
963s Unpacking libsodium23:amd64 (1.0.18-1build3) ...
963s Selecting previously unselected package python3-nacl.
963s Preparing to unpack .../02-python3-nacl_1.5.0-7_amd64.deb ...
963s Unpacking python3-nacl (1.5.0-7) ...
963s Selecting previously unselected package python3-paramiko.
963s Preparing to unpack .../03-python3-paramiko_3.5.1-2ubuntu1_all.deb ...
963s Unpacking python3-paramiko (3.5.1-2ubuntu1) ...
963s Selecting previously unselected package python3-dnspython.
963s Preparing to unpack .../04-python3-dnspython_2.7.0-1ubuntu1_all.deb ...
963s Unpacking python3-dnspython (2.7.0-1ubuntu1) ...
963s Selecting previously unselected package ansible-core.
963s Preparing to unpack .../05-ansible-core_2.18.1-4ubuntu1_all.deb ...
963s Unpacking ansible-core (2.18.1-4ubuntu1) ...
963s Selecting previously unselected package ansible.
963s Preparing to unpack .../06-ansible_11.2.0+dfsg-1_all.deb ...
963s Unpacking ansible (11.2.0+dfsg-1) ...
966s Selecting previously unselected package fonts-dejavu-mono.
966s Preparing to unpack .../07-fonts-dejavu-mono_2.37-8_all.deb ...
966s Unpacking fonts-dejavu-mono (2.37-8) ...
966s Selecting previously unselected package fonts-dejavu-core.
966s Preparing to unpack .../08-fonts-dejavu-core_2.37-8_all.deb ...
966s Unpacking fonts-dejavu-core (2.37-8) ...
966s Selecting previously unselected package fontconfig-config.
966s Preparing to unpack .../09-fontconfig-config_2.15.0-2.2ubuntu1_amd64.deb ...
966s Unpacking fontconfig-config (2.15.0-2.2ubuntu1) ...
967s Selecting previously unselected package libsecret-common.
967s Preparing to unpack .../10-libsecret-common_0.21.7-1_all.deb ...
967s Unpacking libsecret-common (0.21.7-1) ...
967s Selecting previously unselected package libsecret-1-0:amd64.
967s Preparing to unpack .../11-libsecret-1-0_0.21.7-1_amd64.deb ...
967s Unpacking libsecret-1-0:amd64 (0.21.7-1) ...
967s Selecting previously unselected package gir1.2-secret-1:amd64.
967s Preparing to unpack .../12-gir1.2-secret-1_0.21.7-1_amd64.deb ...
967s Unpacking gir1.2-secret-1:amd64 (0.21.7-1) ...
967s Selecting previously unselected package liberror-perl.
967s Preparing to unpack .../13-liberror-perl_0.17030-1_all.deb ...
967s Unpacking liberror-perl (0.17030-1) ...
967s Selecting previously unselected package git-man.
967s Preparing to unpack .../14-git-man_1%3a2.48.1-0ubuntu1_all.deb ...
967s Unpacking git-man (1:2.48.1-0ubuntu1) ...
967s Selecting previously unselected package git.
967s Preparing to unpack .../15-git_1%3a2.48.1-0ubuntu1_amd64.deb ...
967s Unpacking git (1:2.48.1-0ubuntu1) ...
967s Selecting previously unselected package libfontconfig1:amd64.
967s Preparing to unpack .../16-libfontconfig1_2.15.0-2.2ubuntu1_amd64.deb ...
967s Unpacking libfontconfig1:amd64 (2.15.0-2.2ubuntu1) ...
967s Selecting previously unselected package libpixman-1-0:amd64.
967s Preparing to unpack .../17-libpixman-1-0_0.44.0-3_amd64.deb ...
967s Unpacking libpixman-1-0:amd64 (0.44.0-3) ...
967s Selecting previously unselected package libxcb-render0:amd64.
967s Preparing to unpack .../18-libxcb-render0_1.17.0-2_amd64.deb ...
967s Unpacking libxcb-render0:amd64 (1.17.0-2) ...
967s Selecting previously unselected package libxcb-shm0:amd64.
967s Preparing to unpack .../19-libxcb-shm0_1.17.0-2_amd64.deb ...
967s Unpacking libxcb-shm0:amd64 (1.17.0-2) ...
967s Selecting previously unselected package libxrender1:amd64.
967s Preparing to unpack .../20-libxrender1_1%3a0.9.10-1.1build1_amd64.deb ...
967s Unpacking libxrender1:amd64 (1:0.9.10-1.1build1) ...
967s Selecting previously unselected package libcairo2:amd64.
967s Preparing to unpack .../21-libcairo2_1.18.4-1_amd64.deb ...
967s Unpacking libcairo2:amd64 (1.18.4-1) ...
967s Selecting previously unselected package libcairo-gobject2:amd64.
967s Preparing to unpack .../22-libcairo-gobject2_1.18.4-1_amd64.deb ...
967s Unpacking libcairo-gobject2:amd64 (1.18.4-1) ...
967s Selecting previously unselected package libxslt1.1:amd64.
967s Preparing to unpack .../23-libxslt1.1_1.1.39-0exp1ubuntu4_amd64.deb ...
967s Unpacking libxslt1.1:amd64 (1.1.39-0exp1ubuntu4) ...
967s Selecting previously unselected package python3-adal.
967s Preparing to unpack .../24-python3-adal_1.2.7-5_all.deb ...
967s Unpacking python3-adal (1.2.7-5) ...
967s Selecting previously unselected package python3-aiohappyeyeballs.
967s Preparing to unpack .../25-python3-aiohappyeyeballs_2.6.1-1_all.deb ...
967s Unpacking python3-aiohappyeyeballs (2.6.1-1) ...
967s Selecting previously unselected package python3-multidict.
967s Preparing to unpack .../26-python3-multidict_6.2.0-2_amd64.deb ...
967s Unpacking python3-multidict (6.2.0-2) ...
967s Selecting previously unselected package python3-yarl.
967s Preparing to unpack .../27-python3-yarl_1.13.1-1build2_amd64.deb ...
967s Unpacking python3-yarl (1.13.1-1build2) ...
967s Selecting previously unselected package python3-async-timeout.
967s Preparing to unpack .../28-python3-async-timeout_5.0.1-1_all.deb ...
967s Unpacking python3-async-timeout (5.0.1-1) ...
967s Selecting previously unselected package python3-frozenlist.
967s Preparing to unpack .../29-python3-frozenlist_1.5.0-1build2_amd64.deb ...
967s Unpacking python3-frozenlist (1.5.0-1build2) ...
967s Selecting previously unselected package python3-aiosignal.
967s Preparing to unpack .../30-python3-aiosignal_1.3.2-1_all.deb ...
967s Unpacking python3-aiosignal (1.3.2-1) ...
967s Selecting previously unselected package python3-aiohttp.
967s Preparing to unpack .../31-python3-aiohttp_3.10.11-1build1_amd64.deb ...
967s Unpacking python3-aiohttp (3.10.11-1build1) ...
967s Selecting previously unselected package python3-avro.
967s Preparing to unpack .../32-python3-avro_1.12.0+dfsg-1_all.deb ...
967s Unpacking python3-avro (1.12.0+dfsg-1) ...
967s Selecting previously unselected package python3-isodate.
968s Preparing to unpack .../33-python3-isodate_0.7.0-1_all.deb ...
968s Unpacking python3-isodate (0.7.0-1) ...
968s Selecting previously unselected package python3-requests-oauthlib.
968s Preparing to unpack .../34-python3-requests-oauthlib_1.3.1-1_all.deb ...
968s Unpacking python3-requests-oauthlib (1.3.1-1) ...
968s Selecting previously unselected package python3-msrest.
968s Preparing to unpack .../35-python3-msrest_0.6.21-5_all.deb ...
968s Unpacking python3-msrest (0.6.21-5) ...
968s Selecting previously unselected package python3-msrestazure.
968s Preparing to unpack .../36-python3-msrestazure_0.6.4-4_all.deb ...
968s Unpacking python3-msrestazure (0.6.4-4) ...
968s Selecting previously unselected package python3-azure-storage.
968s Preparing to unpack .../37-python3-azure-storage_20250401+git-1_all.deb ...
968s Unpacking python3-azure-storage (20250401+git-1) ...
968s Selecting previously unselected package python3-colorama.
968s Preparing to unpack .../38-python3-colorama_0.4.6-4_all.deb ...
968s Unpacking python3-colorama (0.4.6-4) ...
968s Selecting previously unselected package python3-marshmallow.
968s Preparing to unpack .../39-python3-marshmallow_3.26.1-0.2_all.deb ...
968s Unpacking python3-marshmallow (3.26.1-0.2) ...
968s Selecting previously unselected package python3-msal.
968s Preparing to unpack .../40-python3-msal_1.32.0-1_all.deb ...
968s Unpacking python3-msal (1.32.0-1) ...
968s Selecting previously unselected package python3-cairo.
968s Preparing to unpack .../41-python3-cairo_1.27.0-2_amd64.deb ...
968s Unpacking python3-cairo (1.27.0-2) ...
968s Selecting previously unselected package python3-gi-cairo.
968s Preparing to unpack .../42-python3-gi-cairo_3.50.0-4build1_amd64.deb ...
968s Unpacking python3-gi-cairo (3.50.0-4build1) ...
968s Selecting previously unselected package python3-portalocker.
968s Preparing to unpack .../43-python3-portalocker_2.2.1-1_all.deb ...
968s Unpacking python3-portalocker (2.2.1-1) ...
968s Selecting previously unselected package python3-msal-extensions.
968s Preparing to unpack .../44-python3-msal-extensions_1.3.1-1_all.deb ...
968s Unpacking python3-msal-extensions (1.3.1-1) ...
968s Selecting previously unselected package python3-click.
968s Preparing to unpack .../45-python3-click_8.2.0+0.really.8.1.8-1_all.deb ...
968s Unpacking python3-click (8.2.0+0.really.8.1.8-1) ...
968s Selecting previously unselected package python3-joblib.
968s Preparing to unpack .../46-python3-joblib_1.4.2-3_all.deb ...
968s Unpacking python3-joblib (1.4.2-3) ...
968s Selecting previously unselected package python3-regex.
968s Preparing to unpack .../47-python3-regex_0.1.20241106-1build1_amd64.deb ...
968s Unpacking python3-regex (0.1.20241106-1build1) ...
968s Selecting previously unselected package python3-tqdm.
968s Preparing to unpack .../48-python3-tqdm_4.67.1-3_all.deb ...
968s Unpacking python3-tqdm (4.67.1-3) ...
968s Selecting previously unselected package python3-nltk.
968s Preparing to unpack .../49-python3-nltk_3.9.1-2_all.deb ...
968s Unpacking python3-nltk (3.9.1-2) ...
968s Selecting previously unselected package python3-psutil.
968s Preparing to unpack .../50-python3-psutil_5.9.8-2build3_amd64.deb ...
968s Unpacking python3-psutil (5.9.8-2build3) ...
968s Selecting previously unselected package python3-pydash.
968s Preparing to unpack .../51-python3-pydash_8.0.3-3_all.deb ...
968s Unpacking python3-pydash (8.0.3-3) ...
968s Selecting previously unselected package python3-ruamel.yaml.clib.
968s Preparing to unpack .../52-python3-ruamel.yaml.clib_0.2.12+ds-1build1_amd64.deb ...
968s Unpacking python3-ruamel.yaml.clib (0.2.12+ds-1build1) ...
968s Selecting previously unselected package python3-ruamel.yaml.
968s Preparing to unpack .../53-python3-ruamel.yaml_0.18.10+ds-1_all.deb ...
968s Unpacking python3-ruamel.yaml (0.18.10+ds-1) ...
968s Selecting previously unselected package python3-strictyaml.
968s Preparing to unpack .../54-python3-strictyaml_1.6.1-3_all.deb ...
968s Unpacking python3-strictyaml (1.6.1-3) ...
968s Selecting previously unselected package python3-websocket.
968s Preparing to unpack .../55-python3-websocket_1.8.0-2_all.deb ...
968s Unpacking python3-websocket (1.8.0-2) ...
968s Selecting previously unselected package python3-azure.
968s Preparing to unpack .../56-python3-azure_20250401+git-1_all.deb ...
968s Unpacking python3-azure (20250401+git-1) ...
973s Selecting previously unselected package python3-cachetools.
973s Preparing to unpack .../57-python3-cachetools_5.3.3-1_all.deb ...
973s Unpacking python3-cachetools (5.3.3-1) ...
973s Selecting previously unselected package python3-wrapt.
973s Preparing to unpack .../58-python3-wrapt_1.15.0-4build1_amd64.deb ...
973s Unpacking python3-wrapt (1.15.0-4build1) ...
973s Selecting previously unselected package python3-deprecated.
973s Preparing to unpack .../59-python3-deprecated_1.2.18-1_all.deb ...
973s Unpacking python3-deprecated (1.2.18-1) ...
973s Selecting previously unselected package python3-execnet.
973s Preparing to unpack .../60-python3-execnet_2.1.1-1_all.deb ...
973s Unpacking python3-execnet (2.1.1-1) ...
973s Selecting previously unselected package python3-mccabe.
973s Preparing to unpack .../61-python3-mccabe_0.7.0-1_all.deb ...
973s Unpacking python3-mccabe (0.7.0-1) ...
973s Selecting previously unselected package python3-pycodestyle.
973s Preparing to unpack .../62-python3-pycodestyle_2.12.1-2_all.deb ...
973s Unpacking python3-pycodestyle (2.12.1-2) ...
973s Selecting previously unselected package python3-pyflakes.
973s Preparing to unpack .../63-python3-pyflakes_3.2.0-3_all.deb ...
973s Unpacking python3-pyflakes (3.2.0-3) ...
973s Selecting previously unselected package python3-flake8.
973s Preparing to unpack .../64-python3-flake8_7.1.1-3_all.deb ...
973s Unpacking python3-flake8 (7.1.1-3) ...
973s Selecting previously unselected package python3-freezegun.
973s Preparing to unpack .../65-python3-freezegun_1.5.1-1.2_all.deb ...
973s Unpacking python3-freezegun (1.5.1-1.2) ...
973s Selecting previously unselected package python3-requests-toolbelt.
973s Preparing to unpack .../66-python3-requests-toolbelt_1.0.0-4_all.deb ...
973s Unpacking python3-requests-toolbelt (1.0.0-4) ...
973s Selecting previously unselected package python3-gitlab.
973s Preparing to unpack .../67-python3-gitlab_1%3a4.9.0-1_all.deb ...
973s Unpacking python3-gitlab (1:4.9.0-1) ...
973s Selecting previously unselected package python3-pyasn1.
973s Preparing to unpack .../68-python3-pyasn1_0.6.1-1_all.deb ...
973s Unpacking python3-pyasn1 (0.6.1-1) ...
973s Selecting previously unselected package python3-pyasn1-modules.
973s Preparing to unpack .../69-python3-pyasn1-modules_0.4.1-2_all.deb ...
973s Unpacking python3-pyasn1-modules (0.4.1-2) ...
973s Selecting previously unselected package python3-pyu2f.
973s Preparing to unpack .../70-python3-pyu2f_0.1.5-4_all.deb ...
973s Unpacking python3-pyu2f (0.1.5-4) ...
973s Selecting previously unselected package python3-responses.
973s Preparing to unpack .../71-python3-responses_0.25.6-1_all.deb ...
973s Unpacking python3-responses (0.25.6-1) ...
973s Selecting previously unselected package python3-rsa.
973s Preparing to unpack .../72-python3-rsa_4.9-2_all.deb ...
973s Unpacking python3-rsa (4.9-2) ...
973s Selecting previously unselected package python3-google-auth.
973s Preparing to unpack .../73-python3-google-auth_2.28.2-3_all.deb ...
973s Unpacking python3-google-auth (2.28.2-3) ...
973s Selecting previously unselected package python3-httmock.
973s Preparing to unpack .../74-python3-httmock_1.4.0-5_all.deb ...
973s Unpacking python3-httmock (1.4.0-5) ...
973s Selecting previously unselected package python3-pyhcl.
973s Preparing to unpack .../75-python3-pyhcl_0.4.4-6_all.deb ...
973s Unpacking python3-pyhcl (0.4.4-6) ...
973s Selecting previously unselected package python3-hvac.
973s Preparing to unpack .../76-python3-hvac_2.3.0-3_all.deb ...
973s Unpacking python3-hvac (2.3.0-3) ...
973s Selecting previously unselected package python3-iniconfig.
973s Preparing to unpack .../77-python3-iniconfig_1.1.1-2_all.deb ...
973s Unpacking python3-iniconfig (1.1.1-2) ...
973s Selecting previously unselected package python3-kubernetes.
973s Preparing to unpack .../78-python3-kubernetes_30.1.0-2_all.deb ...
973s Unpacking python3-kubernetes (30.1.0-2) ...
974s Selecting previously unselected package python3-lxml:amd64.
974s Preparing to unpack .../79-python3-lxml_5.3.2-1_amd64.deb ...
974s Unpacking python3-lxml:amd64 (5.3.2-1) ...
974s Selecting previously unselected package python3-pathspec.
974s Preparing to unpack .../80-python3-pathspec_0.12.1-1_all.deb ...
974s Unpacking python3-pathspec (0.12.1-1) ...
974s Selecting previously unselected package python3-pluggy.
974s Preparing to unpack .../81-python3-pluggy_1.5.0-1_all.deb ...
974s Unpacking python3-pluggy (1.5.0-1) ...
974s Selecting previously unselected package python3-proxmoxer.
974s Preparing to unpack .../82-python3-proxmoxer_2.2.0-1_all.deb ...
974s Unpacking python3-proxmoxer (2.2.0-1) ...
974s Selecting previously unselected package python3-py.
974s Preparing to unpack .../83-python3-py_1.11.0-4_all.deb ...
974s Unpacking python3-py (1.11.0-4) ...
974s Selecting previously unselected package python3-pytest.
974s Preparing to unpack .../84-python3-pytest_8.3.5-1_all.deb ...
974s Unpacking python3-pytest (8.3.5-1) ...
974s Selecting previously unselected package python3-pytest-forked.
974s Preparing to unpack .../85-python3-pytest-forked_1.6.0-3_all.deb ...
974s Unpacking python3-pytest-forked (1.6.0-3) ...
974s Selecting previously unselected package python3-pytest-mock.
974s Preparing to unpack .../86-python3-pytest-mock_3.14.0-2_all.deb ...
974s Unpacking python3-pytest-mock (3.14.0-2) ...
974s Selecting previously unselected package python3-pytest-xdist.
974s Preparing to unpack .../87-python3-pytest-xdist_3.6.1-1_all.deb ...
974s Unpacking python3-pytest-xdist (3.6.1-1) ...
974s Selecting previously unselected package python3-pyvmomi.
974s Preparing to unpack .../88-python3-pyvmomi_8.0.3.0.1-1_all.deb ...
974s Unpacking python3-pyvmomi (8.0.3.0.1-1) ...
974s Selecting previously unselected package python3-redis.
974s Preparing to unpack .../89-python3-redis_4.3.4-4_all.deb ...
974s Unpacking python3-redis (4.3.4-4) ...
974s Selecting previously unselected package python3-textfsm.
974s Preparing to unpack .../90-python3-textfsm_1.1.3-3_all.deb ...
974s Unpacking python3-textfsm (1.1.3-3) ...
974s Selecting previously unselected package python3-xmltodict.
974s Preparing to unpack .../91-python3-xmltodict_0.13.0-1_all.deb ...
974s Unpacking python3-xmltodict (0.13.0-1) ...
974s Selecting previously unselected package yamllint.
974s Preparing to unpack .../92-yamllint_1.35.1-2_all.deb ...
974s Unpacking yamllint (1.35.1-2) ...
974s Selecting previously unselected package python3-mock.
974s Preparing to unpack .../93-python3-mock_5.1.0-1_all.deb ...
974s Unpacking python3-mock (5.1.0-1) ...
975s Setting up python3-iniconfig (1.1.1-2) ...
975s Setting up libpixman-1-0:amd64 (0.44.0-3) ...
975s Setting up libsodium23:amd64 (1.0.18-1build3) ...
975s Setting up python3-requests-toolbelt (1.0.0-4) ...
975s Setting up libxrender1:amd64 (1:0.9.10-1.1build1) ...
975s Setting up python3-py (1.11.0-4) ...
975s Setting up python3-joblib (1.4.2-3) ...
975s Setting up python3-cachetools (5.3.3-1) ...
975s Setting up python3-colorama (0.4.6-4) ...
975s Setting up libxcb-render0:amd64 (1.17.0-2) ...
975s Setting up python3-tqdm (4.67.1-3) ...
975s Setting up python3-pyflakes (3.2.0-3) ...
976s Setting up python3-ruamel.yaml.clib (0.2.12+ds-1build1) ...
976s Setting up python3-resolvelib (1.1.0-1) ...
976s Setting up python3-marshmallow (3.26.1-0.2) ...
976s Setting up python3-msal (1.32.0-1) ...
976s Setting up libxcb-shm0:amd64 (1.17.0-2) ...
976s Setting up python3-httmock (1.4.0-5) ...
976s Setting up python3-click (8.2.0+0.really.8.1.8-1) ...
976s Setting up python3-psutil (5.9.8-2build3) ...
976s Setting up python3-multidict (6.2.0-2) ...
976s Setting up python3-frozenlist (1.5.0-1build2) ...
977s Setting up python3-aiosignal (1.3.2-1) ...
977s Setting up python3-mock (5.1.0-1) ...
977s Setting up python3-async-timeout (5.0.1-1) ...
977s Setting up liberror-perl (0.17030-1) ...
977s Setting up python3-responses (0.25.6-1) ...
977s Setting up python3-pyvmomi (8.0.3.0.1-1) ...
977s Setting up python3-isodate (0.7.0-1) ...
977s Setting up python3-pycodestyle (2.12.1-2) ...
978s Setting up python3-xmltodict (0.13.0-1) ...
978s Setting up python3-pyu2f (0.1.5-4) ...
978s Setting up python3-avro (1.12.0+dfsg-1) ...
978s Setting up fonts-dejavu-mono (2.37-8) ...
978s Setting up python3-wrapt (1.15.0-4build1) ...
978s Setting up fonts-dejavu-core (2.37-8) ...
978s Setting up python3-aiohappyeyeballs (2.6.1-1) ...
978s Setting up python3-regex (0.1.20241106-1build1) ...
978s Setting up python3-pluggy (1.5.0-1) ...
978s Setting up python3-ruamel.yaml (0.18.10+ds-1) ...
979s Setting up python3-adal (1.2.7-5) ...
979s Setting up python3-dnspython (2.7.0-1ubuntu1) ...
979s Setting up python3-portalocker (2.2.1-1) ...
979s Setting up libxslt1.1:amd64 (1.1.39-0exp1ubuntu4) ...
979s Setting up python3-pyasn1 (0.6.1-1) ...
979s Setting up python3-proxmoxer (2.2.0-1) ...
979s Setting up git-man (1:2.48.1-0ubuntu1) ...
979s Setting up python3-textfsm (1.1.3-3) ...
979s Setting up python3-mccabe (0.7.0-1) ...
980s Setting up python3-execnet (2.1.1-1) ...
980s Setting up python3-pathspec (0.12.1-1) ...
980s Setting up python3-pydash (8.0.3-3) ...
980s Setting up python3-nltk (3.9.1-2) ...
981s Setting up python3-yarl (1.13.1-1build2) ...
981s Setting up python3-pyhcl (0.4.4-6) ...
981s Setting up python3-gitlab (1:4.9.0-1) ...
981s Setting up python3-websocket (1.8.0-2) ...
981s Setting up python3-deprecated (1.2.18-1) ...
981s Setting up libsecret-common (0.21.7-1) ...
981s Setting up python3-freezegun (1.5.1-1.2) ...
982s Setting up python3-nacl (1.5.0-7) ...
982s Setting up python3-requests-oauthlib (1.3.1-1) ...
982s Setting up fontconfig-config (2.15.0-2.2ubuntu1) ...
982s Setting up python3-pytest (8.3.5-1) ...
982s Setting up python3-aiohttp (3.10.11-1build1) ...
983s Setting up ansible-core (2.18.1-4ubuntu1) ...
984s Setting up python3-flake8 (7.1.1-3) ...
984s Setting up python3-msrest (0.6.21-5) ...
984s Setting up python3-pytest-forked (1.6.0-3) ...
984s Setting up python3-strictyaml (1.6.1-3) ...
984s Setting up libsecret-1-0:amd64 (0.21.7-1) ...
984s Setting up yamllint (1.35.1-2) ...
984s Setting up gir1.2-secret-1:amd64 (0.21.7-1) ...
984s Setting up python3-pyasn1-modules (0.4.1-2) ...
984s Setting up python3-hvac (2.3.0-3) ...
984s Setting up git (1:2.48.1-0ubuntu1) ...
984s Setting up python3-redis (4.3.4-4) ...
985s Setting up python3-pytest-mock (3.14.0-2) ...
985s Setting up python3-lxml:amd64 (5.3.2-1) ...
985s Setting up python3-rsa (4.9-2) ...
985s Setting up libfontconfig1:amd64 (2.15.0-2.2ubuntu1) ...
985s Setting up python3-msrestazure (0.6.4-4) ...
985s Setting up ansible (11.2.0+dfsg-1) ...
1001s Setting up python3-paramiko (3.5.1-2ubuntu1) ...
1001s Setting up python3-pytest-xdist (3.6.1-1) ...
1001s Setting up libcairo2:amd64 (1.18.4-1) ...
1001s Setting up python3-google-auth (2.28.2-3) ...
1001s Setting up libcairo-gobject2:amd64 (1.18.4-1) ...
1001s Setting up python3-cairo (1.27.0-2) ...
1001s Setting up python3-kubernetes (30.1.0-2) ...
1002s Setting up python3-gi-cairo (3.50.0-4build1) ...
1002s Setting up python3-msal-extensions (1.3.1-1) ...
1002s Setting up python3-azure-storage (20250401+git-1) ...
1003s Setting up python3-azure (20250401+git-1) ...
1014s /usr/lib/python3/dist-packages/azure/ai/ml/_vendor/azure_resources/aio/operations/_resources_operations.py:80: SyntaxWarning: invalid escape sequence '\ '
1014s Valid values include ``createdTime``\ , ``changedTime`` and ``provisioningState``. For example,
1014s /usr/lib/python3/dist-packages/azure/ai/ml/_vendor/azure_resources/aio/operations/_resources_operations.py:405: SyntaxWarning: invalid escape sequence '\ '
1014s Valid values include ``createdTime``\ , ``changedTime`` and ``provisioningState``. For example,
1015s /usr/lib/python3/dist-packages/azure/appconfiguration/_generated/models/_models.py:238: SyntaxWarning: invalid escape sequence '\ '
1015s """An error, available when the status is ``Failed``\ , describing why the operation
1015s /usr/lib/python3/dist-packages/azure/batch/models/_models.py:9067: SyntaxWarning: invalid escape sequence '\ '
1015s """The source port ranges to match for the rule. Valid values are '\ *' (for all ports 0 - 65535),
1015s /usr/lib/python3/dist-packages/azure/batch/models/_models.py:9235: SyntaxWarning: invalid escape sequence '\ '
1015s using brackets (for example abc[\ *] would match a file named abc*\ ). Note that both and / are
1016s /usr/lib/python3/dist-packages/azure/communication/jobrouter/models/_models.py:2326: SyntaxWarning: invalid escape sequence '\ '
1016s payload to scoring rule. If not set, a job's labels (sent in the payload as ``job``\ ) and a
1016s /usr/lib/python3/dist-packages/azure/communication/jobrouter/models/_models.py:2346: SyntaxWarning: invalid escape sequence '\ '
1016s If not set, a job's labels (sent in the payload as ``job``\ ) and a job's worker selectors
1018s /usr/lib/python3/dist-packages/azure/mgmt/advisor/aio/operations/_recommendations_operations.py:190: SyntaxWarning: invalid escape sequence '\ '
1018s properties ['ResourceId', 'ResourceGroup', 'RecommendationTypeGuid', '\ `Category
1018s /usr/lib/python3/dist-packages/azure/mgmt/advisor/operations/_recommendations_operations.py:303: SyntaxWarning: invalid escape sequence '\ '
1018s properties ['ResourceId', 'ResourceGroup', 'RecommendationTypeGuid', '\ `Category
1018s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:3917: SyntaxWarning: invalid escape sequence '\ '
1018s Possible Values::code:`
`:code:`
` **Standard**\ :code:`
`:code:`
`
1018s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10212: SyntaxWarning: invalid escape sequence '\ '
1018s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
1018s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10255: SyntaxWarning: invalid escape sequence '\ '
1018s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
1018s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10284: SyntaxWarning: invalid escape sequence '\ '
1018s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
1018s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10320: SyntaxWarning: invalid escape sequence '\ '
1018s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
1018s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10342: SyntaxWarning: invalid escape sequence '\ '
1018s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
1018s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10375: SyntaxWarning: invalid escape sequence '\ '
1018s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
1018s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10396: SyntaxWarning: invalid escape sequence '\ '
1018s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
1018s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10429: SyntaxWarning: invalid escape sequence '\ '
1018s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
1018s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:14746: SyntaxWarning: invalid escape sequence '\ '
1018s :ivar allowed_sources: Allowed sources, e.g. ``*.trusted.com``\ , ``trusted.com``\ ,
1018s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:14771: SyntaxWarning: invalid escape sequence '\ '
1018s :keyword allowed_sources: Allowed sources, e.g. ``*.trusted.com``\ , ``trusted.com``\ ,
1021s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models.py:1420: SyntaxWarning: invalid escape sequence '\ '
1021s :param id: Required. The ID for the input directory. The job can use AZ_BATCHAI\ *INPUT*\
1021s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models.py:2310: SyntaxWarning: invalid escape sequence '\ '
1021s :param id: Required. The ID of the output directory. The job can use AZ_BATCHAI\ *OUTPUT*\
1021s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models_py3.py:1547: SyntaxWarning: invalid escape sequence '\ '
1021s :param id: Required. The ID for the input directory. The job can use AZ_BATCHAI\ *INPUT*\
1021s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models_py3.py:2524: SyntaxWarning: invalid escape sequence '\ '
1021s :param id: Required. The ID of the output directory. The job can use AZ_BATCHAI\ *OUTPUT*\
1024s /usr/lib/python3/dist-packages/azure/mgmt/computefleet/models/_models.py:624: SyntaxWarning: invalid escape sequence '\ '
1024s and Screenshot to diagnose VM status. **NOTE**\ : If storageUri is being
1024s /usr/lib/python3/dist-packages/azure/mgmt/computefleet/models/_models.py:3707: SyntaxWarning: invalid escape sequence '\W'
1024s characters :code:`
` Has a digit :code:`
` Has a special character (Regex match [\W_])
1028s /usr/lib/python3/dist-packages/azure/mgmt/datamigration/models/_models_py3.py:16843: SyntaxWarning: invalid escape sequence '\S'
1028s Protocol:MachineName\SQLServerInstanceName,PortNumber. Required.
1028s /usr/lib/python3/dist-packages/azure/mgmt/datamigration/models/_models_py3.py:16916: SyntaxWarning: invalid escape sequence '\S'
1028s Protocol:MachineName\SQLServerInstanceName,PortNumber. Required.
1029s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:63: SyntaxWarning: invalid escape sequence '\w'
1029s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
1029s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:130: SyntaxWarning: invalid escape sequence '\w'
1029s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
1029s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:224: SyntaxWarning: invalid escape sequence '\w'
1029s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
1029s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:312: SyntaxWarning: invalid escape sequence '\w'
1029s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
1029s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:398: SyntaxWarning: invalid escape sequence '\w'
1029s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
1029s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:543: SyntaxWarning: invalid escape sequence '\w'
1029s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
1029s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:612: SyntaxWarning: invalid escape sequence '\w'
1029s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
1029s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:675: SyntaxWarning: invalid escape sequence '\w'
1029s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
1029s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:738: SyntaxWarning: invalid escape sequence '\w'
1029s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
1029s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:807: SyntaxWarning: invalid escape sequence '\w'
1029s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
1032s /usr/lib/python3/dist-packages/azure/mgmt/hybridnetwork/models/_models_py3.py:6032: SyntaxWarning: invalid escape sequence '\ '
1032s :ivar provisioning_state: The provisioning state of the site resource. **TODO**\ : Confirm if
1033s /usr/lib/python3/dist-packages/azure/mgmt/iotoperations/models/_models.py:3866: SyntaxWarning: invalid escape sequence '\ '
1033s pattern set glob-style pattern (e.g., '\ *', 'clients/*\ '). Required."""
1033s /usr/lib/python3/dist-packages/azure/mgmt/iotoperations/models/_models.py:3868: SyntaxWarning: invalid escape sequence '\ '
1033s """Give access for ``Read``\ , ``Write`` and ``ReadWrite`` access level. Required. Known values
1034s /usr/lib/python3/dist-packages/azure/mgmt/machinelearningservices/models/_machine_learning_services_mgmt_client_enums.py:169: SyntaxWarning: invalid escape sequence '\ '
1034s #: The "forest"\ it builds, is an ensemble of decision trees, usually trained with the “bagging”\
1034s /usr/lib/python3/dist-packages/azure/mgmt/machinelearningservices/models/_machine_learning_services_mgmt_client_enums.py:1032: SyntaxWarning: invalid escape sequence '\ '
1034s #: The "forest"\ it builds, is an ensemble of decision trees, usually trained with the “bagging”\
1040s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2542: SyntaxWarning: invalid escape sequence '\R'
1040s """Execute Reverse Replication\Reprotect.
1040s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2583: SyntaxWarning: invalid escape sequence '\R'
1040s """Execute Reverse Replication\Reprotect.
1040s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2622: SyntaxWarning: invalid escape sequence '\R'
1040s """Execute Reverse Replication\Reprotect.
1040s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:5397: SyntaxWarning: invalid escape sequence '\L'
1040s :ivar lun_id: Ordinal\LunId of the disk for the Azure VM.
1040s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:5448: SyntaxWarning: invalid escape sequence '\L'
1040s :keyword lun_id: Ordinal\LunId of the disk for the Azure VM.
1040s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:8836: SyntaxWarning: invalid escape sequence '\S'
1040s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
1040s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:8978: SyntaxWarning: invalid escape sequence '\S'
1040s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
1040s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:9510: SyntaxWarning: invalid escape sequence '\S'
1040s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
1040s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:9675: SyntaxWarning: invalid escape sequence '\S'
1040s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
1040s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:11412: SyntaxWarning: invalid escape sequence '\S'
1040s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target VM after
1040s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:11541: SyntaxWarning: invalid escape sequence '\S'
1040s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target VM after
1040s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:12193: SyntaxWarning: invalid escape sequence '\S'
1040s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
1040s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:12516: SyntaxWarning: invalid escape sequence '\S'
1040s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
1040s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:26323: SyntaxWarning: invalid escape sequence '\S'
1040s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
1040s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:26382: SyntaxWarning: invalid escape sequence '\S'
1040s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
1040s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3476: SyntaxWarning: invalid escape sequence '\R'
1040s """Execute Reverse Replication\Reprotect.
1040s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3517: SyntaxWarning: invalid escape sequence '\R'
1040s """Execute Reverse Replication\Reprotect.
1040s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3556: SyntaxWarning: invalid escape sequence '\R'
1040s """Execute Reverse Replication\Reprotect.
1040s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_azure_reservation_api_operations.py:163: SyntaxWarning: invalid escape sequence '\ '
1040s """Get list of applicable ``Reservation``\ s.
1040s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:377: SyntaxWarning: invalid escape sequence '\ '
1040s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution.
1040s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:407: SyntaxWarning: invalid escape sequence '\ '
1040s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution.
1040s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:437: SyntaxWarning: invalid escape sequence '\ '
1040s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution.
1040s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:583: SyntaxWarning: invalid escape sequence '\ '
1040s """Merges two ``Reservation``\ s.
1040s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:614: SyntaxWarning: invalid escape sequence '\ '
1040s """Merges two ``Reservation``\ s.
1040s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:645: SyntaxWarning: invalid escape sequence '\ '
1040s """Merges two ``Reservation``\ s.
1040s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:721: SyntaxWarning: invalid escape sequence '\ '
1040s """Get ``Reservation``\ s in a given reservation Order.
1040s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_order_operations.py:183: SyntaxWarning: invalid escape sequence '\ '
1040s """Get all ``ReservationOrder``\ s.
1040s /usr/lib/python3/dist-packages/azure/mgmt/reservations/models/_models_py3.py:3172: SyntaxWarning: invalid escape sequence '\ '
1040s """List of ``Reservation``\ s.
1040s /usr/lib/python3/dist-packages/azure/mgmt/reservations/models/_models_py3.py:3288: SyntaxWarning: invalid escape sequence '\ '
1040s """List of ``ReservationOrder``\ s.
1040s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_azure_reservation_api_operations.py:239: SyntaxWarning: invalid escape sequence '\ '
1040s """Get list of applicable ``Reservation``\ s.
1040s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:662: SyntaxWarning: invalid escape sequence '\ '
1040s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution.
1040s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:692: SyntaxWarning: invalid escape sequence '\ '
1040s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution.
1040s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:722: SyntaxWarning: invalid escape sequence '\ '
1040s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution.
1040s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:868: SyntaxWarning: invalid escape sequence '\ '
1040s """Merges two ``Reservation``\ s.
1040s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:899: SyntaxWarning: invalid escape sequence '\ '
1040s """Merges two ``Reservation``\ s.
1040s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:930: SyntaxWarning: invalid escape sequence '\ '
1040s """Merges two ``Reservation``\ s.
1040s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:1006: SyntaxWarning: invalid escape sequence '\ '
1040s """Get ``Reservation``\ s in a given reservation Order.
1040s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_order_operations.py:299: SyntaxWarning: invalid escape sequence '\ '
1040s """Get all ``ReservationOrder``\ s.
1043s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:68: SyntaxWarning: invalid escape sequence '\ '
1043s **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after ``end``
1043s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:90: SyntaxWarning: invalid escape sequence '\ '
1043s ``[``\ **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after
1043s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:1141: SyntaxWarning: invalid escape sequence '\ '
1043s **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after ``end``
1043s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:1163: SyntaxWarning: invalid escape sequence '\ '
1043s ``[``\ **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after
1045s /usr/lib/python3/dist-packages/azure/mgmt/signalr/models/_models_py3.py:2858: SyntaxWarning: invalid escape sequence '\ '
1045s For example, if the urlTemplate is ``http://example.com/{hub}/api/{event}``\ , with a client
1045s /usr/lib/python3/dist-packages/azure/mgmt/signalr/models/_models_py3.py:2925: SyntaxWarning: invalid escape sequence '\ '
1045s For example, if the urlTemplate is ``http://example.com/{hub}/api/{event}``\ , with a client
1047s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_functions_operations.py:595: SyntaxWarning: invalid escape sequence '\ '
1047s properties to include in the response, or "\ *" to include all properties. By default, all
1047s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_inputs_operations.py:593: SyntaxWarning: invalid escape sequence '\ '
1047s properties to include in the response, or "\ *" to include all properties. By default, all
1047s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_outputs_operations.py:593: SyntaxWarning: invalid escape sequence '\ '
1047s properties to include in the response, or "\ *" to include all properties. By default, all
1047s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/models/_stream_analytics_management_client_enums.py:14: SyntaxWarning: invalid escape sequence '\ '
1047s """Authentication Mode. Valid modes are ``ConnectionString``\ , ``Msi`` and 'UserToken'."""
1047s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_functions_operations.py:859: SyntaxWarning: invalid escape sequence '\ '
1047s properties to include in the response, or "\ *" to include all properties. By default, all
1047s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_inputs_operations.py:821: SyntaxWarning: invalid escape sequence '\ '
1047s properties to include in the response, or "\ *" to include all properties. By default, all
1047s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_outputs_operations.py:821: SyntaxWarning: invalid escape sequence '\ '
1047s properties to include in the response, or "\ *" to include all properties. By default, all
1047s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_communications_no_subscription_operations.py:193: SyntaxWarning: invalid escape sequence '\ '
1047s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication
1047s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_communications_operations.py:194: SyntaxWarning: invalid escape sequence '\ '
1047s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication
1047s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:177: SyntaxWarning: invalid escape sequence '\ '
1047s tickets by *Status*\ , *CreatedDate*\ , *ServiceId*\ , and *ProblemClassificationId* using the
1047s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:540: SyntaxWarning: invalid escape sequence '\ '
1047s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket
1047s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:582: SyntaxWarning: invalid escape sequence '\ '
1047s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket
1047s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:622: SyntaxWarning: invalid escape sequence '\ '
1047s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket
1047s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_communications_no_subscription_operations.py:308: SyntaxWarning: invalid escape sequence '\ '
1047s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication
1047s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_communications_operations.py:326: SyntaxWarning: invalid escape sequence '\ '
1047s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication
1047s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:319: SyntaxWarning: invalid escape sequence '\ '
1047s tickets by *Status*\ , *CreatedDate*\ , *ServiceId*\ , and *ProblemClassificationId* using the
1047s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:681: SyntaxWarning: invalid escape sequence '\ '
1047s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket
1047s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:723: SyntaxWarning: invalid escape sequence '\ '
1047s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket
1047s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:763: SyntaxWarning: invalid escape sequence '\ '
1047s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket
1047s /usr/lib/python3/dist-packages/azure/mgmt/synapse/models/_models_py3.py:6232: SyntaxWarning: invalid escape sequence '\ '
1047s :ivar maintenance_window_cycles: Available maintenance cycles e.g. {Saturday, 0, 48\ *60},
1047s /usr/lib/python3/dist-packages/azure/mgmt/synapse/models/_models_py3.py:6288: SyntaxWarning: invalid escape sequence '\ '
1047s :keyword maintenance_window_cycles: Available maintenance cycles e.g. {Saturday, 0, 48\ *60},
1051s /usr/lib/python3/dist-packages/azure/mgmt/workloads/models/_models_py3.py:2909: SyntaxWarning: invalid escape sequence '\W'
1051s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
`
1051s /usr/lib/python3/dist-packages/azure/mgmt/workloads/models/_models_py3.py:2954: SyntaxWarning: invalid escape sequence '\W'
1051s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
`
1051s /usr/lib/python3/dist-packages/azure/mgmt/workloadssapvirtualinstance/models/_models_py3.py:1980: SyntaxWarning: invalid escape sequence '\W'
1051s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
`
1051s /usr/lib/python3/dist-packages/azure/mgmt/workloadssapvirtualinstance/models/_models_py3.py:2025: SyntaxWarning: invalid escape sequence '\W'
1051s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
`
1052s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:2732: SyntaxWarning: invalid escape sequence '\:'
1052s attr:\:code:``=:code:``.
1052s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:3537: SyntaxWarning: invalid escape sequence '\:'
1052s attr:\:code:``=\:code:``.
1052s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:4216: SyntaxWarning: invalid escape sequence '\:'
1052s typeName=\:code:``&attr_1:\:code:``=\:code:``&attr_2:\:code:``=\:code:``&attr_3:\:code:``=\:code:``
1052s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:6219: SyntaxWarning: invalid escape sequence '\:'
1052s attr:\:code:``=:code:``.
1052s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:7024: SyntaxWarning: invalid escape sequence '\:'
1052s attr:\:code:``=\:code:``.
1052s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:7703: SyntaxWarning: invalid escape sequence '\:'
1052s typeName=\:code:``&attr_1:\:code:``=\:code:``&attr_2:\:code:``=\:code:``&attr_3:\:code:``=\:code:``
1053s /usr/lib/python3/dist-packages/azure/servicemanagement/schedulermanagementservice.py:59: SyntaxWarning: invalid escape sequence '\m'
1053s CURRENT_USER\my\CertificateName format.
1053s /usr/lib/python3/dist-packages/azure/servicemanagement/servicebusmanagementservice.py:59: SyntaxWarning: invalid escape sequence '\m'
1053s CURRENT_USER\my\CertificateName format.
1053s /usr/lib/python3/dist-packages/azure/servicemanagement/servicemanagementservice.py:81: SyntaxWarning: invalid escape sequence '\m'
1053s CURRENT_USER\my\CertificateName format.
1053s /usr/lib/python3/dist-packages/azure/servicemanagement/sqldatabasemanagementservice.py:55: SyntaxWarning: invalid escape sequence '\m'
1053s CURRENT_USER\my\CertificateName format.
1053s /usr/lib/python3/dist-packages/azure/servicemanagement/websitemanagementservice.py:55: SyntaxWarning: invalid escape sequence '\m'
1053s CURRENT_USER\my\CertificateName format.
1053s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:110: SyntaxWarning: invalid escape sequence '\d'
1053s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
1053s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:1328: SyntaxWarning: invalid escape sequence '\d'
1053s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9]))..).
1053s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:4218: SyntaxWarning: invalid escape sequence '\d'
1053s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
1053s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:4280: SyntaxWarning: invalid escape sequence '\d'
1053s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
1053s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:18198: SyntaxWarning: invalid escape sequence '\d'
1053s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
1053s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19096: SyntaxWarning: invalid escape sequence '\d'
1053s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). Type: string (or Expression with
1053s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19185: SyntaxWarning: invalid escape sequence '\d'
1053s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
1053s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19749: SyntaxWarning: invalid escape sequence '\d'
1053s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
1053s Processing triggers for libc-bin (2.41-6ubuntu1) ...
1053s Processing triggers for man-db (2.13.0-1) ...
1091s autopkgtest [04:11:30]: test unit-tests-flaky.py: [-----------------------
1091s
1091s
1091s
1091s ############################################################
1091s ############################################################
1091s #### Running FLAKY tests in ansible_collections/ansible/utils
1091s ############################################################
1091s ############################################################
1092s Unit test controller with Python 3.13
1093s ============================= test session starts ==============================
1093s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
1093s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/ansible/utils
1093s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
1093s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
1093s created: 2/2 workers
1093s 2 workers [383 items]
1093s
1094s ........................................................................ [ 18%]
1094s ....................................................F................... [ 37%]
1095s ...................................................F...F...F............ [ 56%]
1097s ........................................................................ [ 75%]
1104s ........................................................................ [ 93%]
1105s ....................... [100%]
1105s =================================== FAILURES ===================================
1105s ___________________ TestIpFilter.test_ipaddr_undefined_value ___________________
1105s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1105s
1105s self =
1105s
1105s def test_ipaddr_undefined_value(self):
1105s """Check ipaddr filter undefined value"""
1105s args = ["", AnsibleUndefined(name="my_ip"), ""]
1105s with pytest.raises(
1105s AnsibleFilterError,
1105s match="Unrecognized type <> for ipaddr filter ",
1105s ):
1105s > _ipaddr(*args)
1105s
1105s tests/unit/plugins/filter/test_ipaddr.py:75:
1105s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1105s
1105s args = ('', AnsibleUndefined(hint=None, obj=missing, name='my_ip'), '')
1105s kwargs = {}, keys = ['value', 'query', 'version', 'alias']
1105s data = {'query': '', 'value': AnsibleUndefined(hint=None, obj=missing, name='my_ip')}
1105s
1105s @pass_environment
1105s def _ipaddr(*args, **kwargs):
1105s """This filter is designed to return the input value if a query is True, and False if a query is False"""
1105s keys = ["value", "query", "version", "alias"]
1105s data = dict(zip(keys, args[1:]))
1105s data.update(kwargs)
1105s try:
1105s if isinstance(data["value"], str):
1105s pass
1105s elif isinstance(data["value"], list):
1105s pass
1105s elif isinstance(data["value"], int):
1105s pass
1105s else:
1105s > raise AnsibleFilterError(
1105s "Unrecognized type <{0}> for ipaddr filter <{1}>".format(
1105s type(data["value"]),
1105s "value",
1105s ),
1105s )
1105s E ansible.errors.AnsibleFilterError: Unrecognized type <> for ipaddr filter
1105s
1105s plugins/filter/ipaddr.py:268: AnsibleFilterError
1105s
1105s During handling of the above exception, another exception occurred:
1105s
1105s self =
1105s
1105s def test_ipaddr_undefined_value(self):
1105s """Check ipaddr filter undefined value"""
1105s args = ["", AnsibleUndefined(name="my_ip"), ""]
1105s > with pytest.raises(
1105s AnsibleFilterError,
1105s match="Unrecognized type <> for ipaddr filter ",
1105s ):
1105s E AssertionError: Regex pattern did not match.
1105s E Regex: "Unrecognized type <> for ipaddr filter "
1105s E Input: "Unrecognized type <> for ipaddr filter "
1105s
1105s tests/unit/plugins/filter/test_ipaddr.py:71: AssertionError
1105s ______________________ TestIp4.test_ipv4_undefined_value _______________________
1105s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1105s
1105s self =
1105s
1105s def test_ipv4_undefined_value(self):
1105s """Check ipv4 filter undefined value"""
1105s args = ["", AnsibleUndefined(name="my_ip"), ""]
1105s with pytest.raises(
1105s AnsibleFilterError,
1105s match="Unrecognized type <> for ipv4 filter ",
1105s ):
1105s > _ipv4(*args)
1105s
1105s tests/unit/plugins/filter/test_ipv4.py:55:
1105s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1105s
1105s args = ('', AnsibleUndefined(hint=None, obj=missing, name='my_ip'), '')
1105s kwargs = {}, keys = ['value', 'query']
1105s data = {'query': '', 'value': AnsibleUndefined(hint=None, obj=missing, name='my_ip')}
1105s
1105s @pass_environment
1105s def _ipv4(*args, **kwargs):
1105s """This filter is designed to return the input value if a query is True, and False if a query is False"""
1105s keys = ["value", "query"]
1105s data = dict(zip(keys, args[1:]))
1105s data.update(kwargs)
1105s try:
1105s if isinstance(data["value"], str):
1105s pass
1105s elif isinstance(data["value"], list):
1105s pass
1105s elif isinstance(data["value"], int):
1105s pass
1105s else:
1105s > raise AnsibleFilterError(
1105s "Unrecognized type <{0}> for ipv4 filter <{1}>".format(
1105s type(data["value"]),
1105s "value",
1105s ),
1105s )
1105s E ansible.errors.AnsibleFilterError: Unrecognized type <> for ipv4 filter
1105s
1105s plugins/filter/ipv4.py:143: AnsibleFilterError
1105s
1105s During handling of the above exception, another exception occurred:
1105s
1105s self =
1105s
1105s def test_ipv4_undefined_value(self):
1105s """Check ipv4 filter undefined value"""
1105s args = ["", AnsibleUndefined(name="my_ip"), ""]
1105s > with pytest.raises(
1105s AnsibleFilterError,
1105s match="Unrecognized type <> for ipv4 filter ",
1105s ):
1105s E AssertionError: Regex pattern did not match.
1105s E Regex: "Unrecognized type <> for ipv4 filter "
1105s E Input: "Unrecognized type <> for ipv4 filter "
1105s
1105s tests/unit/plugins/filter/test_ipv4.py:51: AssertionError
1105s ______________________ TestIp6.test_ipv6_undefined_value _______________________
1105s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1105s
1105s self =
1105s
1105s def test_ipv6_undefined_value(self):
1105s """Check ipv6 filter undefined value"""
1105s args = ["", AnsibleUndefined(name="my_ip"), ""]
1105s with pytest.raises(
1105s AnsibleFilterError,
1105s match="Unrecognized type <> for ipv6 filter ",
1105s ):
1105s > _ipv6(*args)
1105s
1105s tests/unit/plugins/filter/test_ipv6.py:58:
1105s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1105s
1105s args = ('', AnsibleUndefined(hint=None, obj=missing, name='my_ip'), '')
1105s kwargs = {}, keys = ['value', 'query']
1105s data = {'query': '', 'value': AnsibleUndefined(hint=None, obj=missing, name='my_ip')}
1105s
1105s @pass_environment
1105s def _ipv6(*args, **kwargs):
1105s """This filter is designed to return the input value if a query is True, and False if a query is False"""
1105s keys = ["value", "query"]
1105s data = dict(zip(keys, args[1:]))
1105s data.update(kwargs)
1105s try:
1105s if isinstance(data["value"], str):
1105s pass
1105s elif isinstance(data["value"], list):
1105s pass
1105s elif isinstance(data["value"], int):
1105s pass
1105s else:
1105s > raise AnsibleFilterError(
1105s "Unrecognized type <{0}> for ipv6 filter <{1}>".format(
1105s type(data["value"]),
1105s "value",
1105s ),
1105s )
1105s E ansible.errors.AnsibleFilterError: Unrecognized type <> for ipv6 filter
1105s
1105s plugins/filter/ipv6.py:161: AnsibleFilterError
1105s
1105s During handling of the above exception, another exception occurred:
1105s
1105s self =
1105s
1105s def test_ipv6_undefined_value(self):
1105s """Check ipv6 filter undefined value"""
1105s args = ["", AnsibleUndefined(name="my_ip"), ""]
1105s > with pytest.raises(
1105s AnsibleFilterError,
1105s match="Unrecognized type <> for ipv6 filter ",
1105s ):
1105s E AssertionError: Regex pattern did not match.
1105s E Regex: "Unrecognized type <> for ipv6 filter "
1105s E Input: "Unrecognized type <> for ipv6 filter "
1105s
1105s tests/unit/plugins/filter/test_ipv6.py:54: AssertionError
1105s ____________________ TestIpWrap.test_ipwrap_undefined_value ____________________
1105s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1105s
1105s self =
1105s
1105s def test_ipwrap_undefined_value(self):
1105s """Check ipwrap filter undefined value"""
1105s args = ["", AnsibleUndefined(name="my_ip"), ""]
1105s with pytest.raises(
1105s AnsibleFilterError,
1105s match="Unrecognized type <> for ipwrap filter ",
1105s ):
1105s > _ipwrap(*args)
1105s
1105s tests/unit/plugins/filter/test_ipwrap.py:60:
1105s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1105s
1105s args = ('', AnsibleUndefined(hint=None, obj=missing, name='my_ip'), '')
1105s kwargs = {}, keys = ['value']
1105s 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.6h2zC6/build.afB/src/ansible_collections/ansible/utils/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/ansible/utils --confcutdir /tmp/autopkgtest.6h2zC6/build.afB/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.
1105s data = {'value': AnsibleUndefined(hint=None, obj=missing, name='my_ip')}
1105s
1105s @pass_environment
1105s def _ipwrap(*args, **kwargs):
1105s """This filter is designed to Wrap IPv6 addresses in [ ] brackets."""
1105s keys = ["value"]
1105s data = dict(zip(keys, args[1:]))
1105s data.update(kwargs)
1105s try:
1105s if isinstance(data["value"], str):
1105s pass
1105s elif isinstance(data["value"], list):
1105s pass
1105s elif isinstance(data["value"], bool):
1105s pass
1105s else:
1105s > raise AnsibleFilterError(
1105s "Unrecognized type <{0}> for ipwrap filter <{1}>".format(
1105s type(data["value"]),
1105s "value",
1105s ),
1105s )
1105s E ansible.errors.AnsibleFilterError: Unrecognized type <> for ipwrap filter
1105s
1105s plugins/filter/ipwrap.py:162: AnsibleFilterError
1105s
1105s During handling of the above exception, another exception occurred:
1105s
1105s self =
1105s
1105s def test_ipwrap_undefined_value(self):
1105s """Check ipwrap filter undefined value"""
1105s args = ["", AnsibleUndefined(name="my_ip"), ""]
1105s > with pytest.raises(
1105s AnsibleFilterError,
1105s match="Unrecognized type <> for ipwrap filter ",
1105s ):
1105s E AssertionError: Regex pattern did not match.
1105s E Regex: "Unrecognized type <> for ipwrap filter "
1105s E Input: "Unrecognized type <> for ipwrap filter "
1105s
1105s tests/unit/plugins/filter/test_ipwrap.py:56: AssertionError
1105s =============================== warnings summary ===============================
1105s tests/unit/plugins/action/test_validate.py::TestValidate::test_support_for_disabled_format_with_invalid_data
1105s tests/unit/plugins/action/test_validate.py::TestValidate::test_support_for_format
1105s tests/unit/plugins/action/test_validate.py::TestValidate::test_support_for_format_with_invalid_data
1105s /tmp/autopkgtest.6h2zC6/build.afB/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.
1105s validator_class = jsonschema.validators.validator_for(criteria)
1105s
1105s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
1105s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/ansible/utils/tests/output/junit/python3.13-controller-units.xml -
1105s =========================== short test summary info ============================
1105s SKIPPED [1] tests/unit/plugins/sub_plugins/cli_parsers/test_ttp_parser.py:18: could not import 'ttp': No module named 'ttp'
1105s FAILED tests/unit/plugins/filter/test_ipaddr.py::TestIpFilter::test_ipaddr_undefined_value
1105s FAILED tests/unit/plugins/filter/test_ipv4.py::TestIp4::test_ipv4_undefined_value
1105s FAILED tests/unit/plugins/filter/test_ipv6.py::TestIp6::test_ipv6_undefined_value
1105s FAILED tests/unit/plugins/filter/test_ipwrap.py::TestIpWrap::test_ipwrap_undefined_value
1105s ============ 4 failed, 379 passed, 1 skipped, 3 warnings in 12.67s =============
1105s ## return code is 1
1105s
1105s
1105s
1105s ############################################################
1105s ############################################################
1105s #### Running FLAKY tests in ansible_collections/cisco/aci
1105s ############################################################
1105s ############################################################
1105s Unit test controller with Python 3.13
1106s ============================= test session starts ==============================
1106s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
1106s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cisco/aci
1106s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
1106s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
1106s created: 2/2 workers
1106s 2 workers [5 items]
1106s
1106s .FF.. [100%]
1106s =================================== FAILURES ===================================
1106s __________________________ AciRest.test_invalid_input __________________________
1106s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1106s
1106s self =
1106s
1106s def test_invalid_input(self):
1106s self.maxDiff = None
1106s
1106s error = dict(
1106s code="401",
1106s text=("Username or password is incorrect - " "FAILED local authentication"),
1106s )
1106s
1106s imdata = [
1106s {
1106s "error": {
1106s "attributes": {
1106s "code": "401",
1106s "text": ("Username or password is incorrect - " "FAILED local authentication"),
1106s },
1106s },
1106s }
1106s ]
1106s
1106s totalCount = 1
1106s
1106s json_response = '{"totalCount":"1","imdata":[{"error":{"attributes":{"code":"401","text":"Username or password is incorrect - FAILED local authentication"}}}]}' # NOQA
1106s aci.response_json(json_response)
1106s self.assertEqual(aci.error, error)
1106s self.assertEqual(aci.imdata, imdata)
1106s self.assertEqual(aci.totalCount, totalCount)
1106s
1106s # Python 2.7+ is needed for xmljson
1106s if sys.version_info < (2, 7):
1106s return
1106s
1106s xml_response = """
1106s
1106s
1106s """
1106s aci.response_xml(xml_response)
1106s > self.assertEqual(aci.error, error)
1106s 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'}
1106s E - {'code': -1,
1106s E ? ^
1106s E
1106s E + {'code': '401',
1106s E ? ^^^ +
1106s E
1106s E + 'text': 'Username or password is incorrect - FAILED local authentication'}
1106s E - 'text': "Unable to parse output as XML, see 'raw' output. name 'cobra' is not "
1106s E - 'defined'}
1106s
1106s tests/unit/module_utils/test_aci.py:237: AssertionError
1106s ________________________ AciRest.test_invalid_aci_login ________________________
1106s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1106s
1106s self =
1106s
1106s def test_invalid_aci_login(self):
1106s self.maxDiff = None
1106s
1106s error = dict(
1106s code="401",
1106s text=("Username or password is incorrect - " "FAILED local authentication"),
1106s )
1106s
1106s imdata = [
1106s {
1106s "error": {
1106s "attributes": {
1106s "code": "401",
1106s "text": ("Username or password is incorrect - " "FAILED local authentication"),
1106s },
1106s },
1106s }
1106s ]
1106s
1106s totalCount = 1
1106s
1106s json_response = '{"totalCount":"1","imdata":[{"error":{"attributes":{"code":"401","text":"Username or password is incorrect - FAILED local authentication"}}}]}' # NOQA
1106s aci.response_json(json_response)
1106s self.assertEqual(aci.error, error)
1106s self.assertEqual(aci.imdata, imdata)
1106s self.assertEqual(aci.totalCount, totalCount)
1106s
1106s # Python 2.7+ is needed for xmljson
1106s if sys.version_info < (2, 7):
1106s return
1106s
1106s xml_response = """
1106s
1106s
1106s
1106s """
1106s aci.response_xml(xml_response)
1106s > self.assertEqual(aci.error, error)
1106s 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'}
1106s E - {'code': -1,
1106s E ? ^
1106s E
1106s E + {'code': '401',
1106s E ? ^^^ +
1106s E
1106s E + 'text': 'Username or password is incorrect - FAILED local authentication'}
1106s E - 'text': "Unable to parse output as XML, see 'raw' output. name 'cobra' is not "
1106s E - 'defined'}
1106s
1106s tests/unit/module_utils/test_aci.py:89: AssertionError
1106s - generated xml file: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cisco/aci/tests/output/junit/python3.13-controller-units.xml -
1106s =========================== short test summary info ============================
1106s FAILED tests/unit/module_utils/test_aci.py::AciRest::test_invalid_input - Ass...
1106s FAILED tests/unit/module_utils/test_aci.py::AciRest::test_invalid_aci_login
1106s ========================= 2 failed, 3 passed in 0.62s ==========================
1106s 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.6h2zC6/build.afB/src/ansible_collections/cisco/aci/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cisco/aci --confcutdir /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cisco/aci tests/unit/module_utils/test_aci.py" returned exit status 1.
1106s ## return code is 1
1106s
1106s
1106s
1106s ############################################################
1106s ############################################################
1106s #### Running FLAKY tests in ansible_collections/cisco/dnac
1106s ############################################################
1106s ############################################################
1106s Unit test controller with Python 3.13
1107s ============================= test session starts ==============================
1107s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
1107s rootdir: /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cisco/dnac
1107s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
1107s plugins: forked-1.6.0, typeguard-4.4.2, xdist-3.6.1, mock-3.14.0
1107s created: 2/2 workers
1107s 2 workers [167 items]
1107s
1113s ..FFF.FFFFFFF.F.FFFFFFF.FFF.FFFFFFFFFFFFFFF.FFFFFFFFFFFFFFFFFFFFFFFFFF.F [ 43%]
1119s FFFFFFFF....FF.F.FFFFFFFF.F....FF..FFFFFFFF..FF..FFFF.F...FF.FFF.FFFFFFF [ 86%]
1120s FFFFFF.FFFFFFFFFFFFFFFF [100%]
1120s ==================================== ERRORS ====================================
1120s ______ ERROR collecting tests/unit/modules/dnac/test_discovery_intent.py _______
1120s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call
1120s result: TResult | None = func()
1120s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect
1120s return list(collector.collect())
1120s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect
1120s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid)
1120s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance
1120s return self.obj("runTest")
1120s E TypeError: TestDnacDiscoveryIntent.__init__() takes 1 positional argument but 2 were given
1120s ______ ERROR collecting tests/unit/modules/dnac/test_discovery_intent.py _______
1120s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call
1120s result: TResult | None = func()
1120s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect
1120s return list(collector.collect())
1120s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect
1120s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid)
1120s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance
1120s return self.obj("runTest")
1120s E TypeError: TestDnacDiscoveryIntent.__init__() takes 1 positional argument but 2 were given
1120s _________ ERROR collecting tests/unit/modules/dnac/test_pnp_intent.py __________
1120s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call
1120s result: TResult | None = func()
1120s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect
1120s return list(collector.collect())
1120s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect
1120s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid)
1120s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance
1120s return self.obj("runTest")
1120s E TypeError: TestDnacPnPIntent.__init__() takes 1 positional argument but 2 were given
1120s _________ ERROR collecting tests/unit/modules/dnac/test_site_intent.py _________
1120s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call
1120s result: TResult | None = func()
1120s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect
1120s return list(collector.collect())
1120s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect
1120s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid)
1120s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance
1120s return self.obj("runTest")
1120s E TypeError: TestDnacSiteIntent.__init__() takes 1 positional argument but 2 were given
1120s _________ ERROR collecting tests/unit/modules/dnac/test_pnp_intent.py __________
1120s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call
1120s result: TResult | None = func()
1120s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect
1120s return list(collector.collect())
1120s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect
1120s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid)
1120s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance
1120s return self.obj("runTest")
1120s E TypeError: TestDnacPnPIntent.__init__() takes 1 positional argument but 2 were given
1120s _________ ERROR collecting tests/unit/modules/dnac/test_swim_intent.py _________
1120s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call
1120s result: TResult | None = func()
1120s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect
1120s return list(collector.collect())
1120s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect
1120s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid)
1120s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance
1120s return self.obj("runTest")
1120s E TypeError: TestDnacSwimIntent.__init__() takes 1 positional argument but 2 were given
1120s _________ ERROR collecting tests/unit/modules/dnac/test_site_intent.py _________
1120s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call
1120s result: TResult | None = func()
1120s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect
1120s return list(collector.collect())
1120s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect
1120s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid)
1120s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance
1120s return self.obj("runTest")
1120s E TypeError: TestDnacSiteIntent.__init__() takes 1 positional argument but 2 were given
1120s _______ ERROR collecting tests/unit/modules/dnac/test_template_intent.py _______
1120s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call
1120s result: TResult | None = func()
1120s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect
1120s return list(collector.collect())
1120s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect
1120s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid)
1120s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance
1120s return self.obj("runTest")
1120s E TypeError: TestDnacTemplateIntent.__init__() takes 1 positional argument but 2 were given
1120s _________ ERROR collecting tests/unit/modules/dnac/test_swim_intent.py _________
1120s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call
1120s result: TResult | None = func()
1120s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect
1120s return list(collector.collect())
1120s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect
1120s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid)
1120s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance
1120s return self.obj("runTest")
1120s E TypeError: TestDnacSwimIntent.__init__() takes 1 positional argument but 2 were given
1120s _______ ERROR collecting tests/unit/modules/dnac/test_template_intent.py _______
1120s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call
1120s result: TResult | None = func()
1120s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect
1120s return list(collector.collect())
1120s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect
1120s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid)
1120s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance
1120s return self.obj("runTest")
1120s E TypeError: TestDnacTemplateIntent.__init__() takes 1 positional argument but 2 were given
1120s =================================== FAILURES ===================================
1120s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_null_sync_status _
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_device_credentials_workflow_manager_null_sync_status(self):
1120s """
1120s Test case for device credential workflow manager when exception occured during sync credential.
1120s
1120s This test case checks the behavior of the device credential workflow manager, when exception occured during sync credential in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_version="2.3.7.6",
1120s dnac_log=True,
1120s state="merged",
1120s config=self.playbook_config_apply
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result['msg'],
1120s "Exception occurred while getting global device credentials sync status: "
1120s )
1120s E AssertionError: 'An exception occurred while retrieving Si[515 chars]rue}' != 'Exception occurred while getting global d[27 chars]us: '
1120s 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}
1120s E + Exception occurred while getting global device credentials sync status:
1120s
1120s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:411: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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}
1120s ------------------------------ Captured log call -------------------------------
1120s 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: .
1120s
1120s 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}
1120s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_negative_config_input _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_accesspoint_workflow_manager_negative_config_input(self):
1120s """
1120s Test case for access point workfollow manager and negative test verify ap update
1120s
1120s This test case checks the behavior of the update access point data in the specified Cisco Catalyst Center.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="merged",
1120s config_verify=True,
1120s dnac_version="2.3.7.6",
1120s config=self.playbook_config_update_some_missing_data
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s self.maxDiff = None
1120s > self.assertEqual(
1120s result.get('msg'),
1120s 'Invalid parameters in playbook config: \'[["Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' +
1120s 'for the radio type xor_radio allowed series 280", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' +
1120s 'for the radio type xor_radio allowed series 380", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' +
1120s 'for the radio type xor_radio allowed series 480", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' +
1120s 'for the radio type xor_radio allowed series 9120", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' +
1120s 'for the radio type xor_radio allowed series 9166", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' +
1120s 'for the radio type xor_radio allowed series IW9167EH", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' +
1120s 'for the radio type xor_radio allowed series IW9165E", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' +
1120s 'for the radio type xor_radio allowed series IW9165DH"], "management_ip_address: Invalid Management IP ' +
1120s 'Address \'204.192.12.201dsd\' in playbook.", \'ap_name:hostname,family,type,mac_address,management_ip_address,' +
1120s 'ap_ethernet_mac_address : The string exceeds the allowed range of max 32 char\', "led_status: Invalid LED Status \'Enableddd\' in ' +
1120s 'playbook.", "ap_mode: Invalid value \'Monitorw\' for ap_mode in playbook. Must be one of: Local, Monitor, Sniffer or ' +
1120s 'Bridge.", "failover_priority: Invalid value \'Lossw\' for failover_priority in playbook. Must be one of: Low, Medium, High or ' +
1120s 'Critical.", "clean_air_si_2.4ghz: Invalid value \'Disableds\' in playbook. Must be ' +
1120s 'either \'Enabled\' or \'Disabled\'.", "clean_air_si_5ghz: Invalid value \'Disableds\' in playbook. Must be ' +
1120s 'either \'Enabled\' or \'Disabled\'.", "clean_air_si_6ghz: Invalid value \'Enableds\' in playbook. Must be ' +
1120s 'either \'Enabled\' or \'Disabled\'.", "primary_ip_address: Invalid primary_ip_address \'{\'address\': \'204.192.4.20dfasd0\'}\' in ' +
1120s 'playbook", "secondary_ip_address: Invalid secondary_ip_address \'{\'address\': \'204.192.4.20dfasd0\'}\' in playbook", "tertiary_ip_address: ' +
1120s 'Invalid tertiary_ip_address \'{\'address\': \'204.192.4.20dfasd0\'}\' in playbook", \'Radio Params cannot be changed when AP mode is in ' +
1120s 'Monitorw.\', "admin_status: Invalid value \'Enabledsds\' for admin_status in playbook. Must be ' +
1120s 'either \'Enabled\' or \'Disabled\'.", "channel_assignment_mode: Invalid value \'any\' for Channel Assignment Mode in playbook. Must be ' +
1120s 'either \'Global\' or \'Custom\'.", "channel_number: Invalid value \'22\' for Channel Number in playbook. Must be one of: ' +
1120s '[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 ' +
1120s 'of: \'20 MHz\', \'40 MHz\', \'80 MHz\', \'160 MHz\', or \'320 MHz\'.", "power_assignment_mode: Invalid ' +
1120s 'value \'any\' for Power assignment mode in ' +
1120s 'playbook. Must be either \'Global\' or \'Custom\'.", \'powerlevel: This configuration is only supported with Client-Serving Radio Role ' +
1120s 'Assignment None \', "radio_role_assignment: Invalid value \'any\' for radio role assignment in playbook. Must be one ' +
1120s 'of: \'Auto\', \'Monitor\' or \'Client-Serving\'.", \'Radio Params cannot be changed when AP mode is in Monitorw.\', "admin_status: ' +
1120s 'Invalid value \'Enabledsds\' for admin_status in playbook. Must be either \'Enabled\' or \'Disabled\'.", "antenna_gain: Invalid \'41\' in ' +
1120s 'playbook, allowed range of min: 0 and max: 40", "channel_assignment_mode: Invalid value \'any\' for Channel Assignment Mode in playbook. ' +
1120s 'Must be either \'Global\' or \'Custom\'.", ' +
1120s '"radio_role_assignment: Invalid value \'Client-Serving\'. Hence, AP mode is not Local. Kindly change the AP mode to Local then ' +
1120s 'change the radio_role_assignment to Auto."]\' '
1120s )
1120s 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]]\' '
1120s 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'."]'
1120s E ? ^^^^^^^^^^ ^^^ ^^^^^^^^^^ ^^^ ^^^^^^^^^^ ^^^ ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ ^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^ ---------------------------------------------------------------------------------------------------
1120s 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."]'
1120s E ? ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^ ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^ +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1120s
1120s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:221: AssertionError
1120s ------------------------------ Captured log call -------------------------------
1120s 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'."]'
1120s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_update_verify _
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s def get_tasks_by_id(self, task_id):
1120s """
1120s Get the tasks of a task ID in Cisco Catalyst Center.
1120s Args:
1120s self (object): An instance of a class that provides access to Cisco Catalyst Center.
1120s task_id (str): The unique identifier of the task for which you want to retrieve details.
1120s Returns:
1120s dict or None: A dictionary status information about the specified task,
1120s or None if the task with the given task_id is not found.
1120s Description:
1120s Call the API 'get_tasks_by_id' to get the status of the task.
1120s Return the details along with the status of the task.
1120s """
1120s # Need to handle exception
1120s task_status = None
1120s try:
1120s > response = self.dnac._exec(
1120s family="task",
1120s function="get_tasks_by_id",
1120s params={"id": task_id}
1120s )
1120s
1120s plugins/module_utils/dnac.py:1662:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s /usr/lib/python3.13/unittest/mock.py:1169: in __call__
1120s return self._mock_call(*args, **kwargs)
1120s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call
1120s return self._execute_mock_call(*args, **kwargs)
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s self = , args = ()
1120s kwargs = {'family': 'task', 'function': 'get_tasks_by_id', 'params': {'id': '0191e542-b3fb-7ac8-ae85-81e461c8b022'}}
1120s effect =
1120s
1120s def _execute_mock_call(self, /, *args, **kwargs):
1120s # separate from _increment_mock_call so that awaited functions are
1120s # executed separately from their call, also AsyncMock overrides this method
1120s
1120s effect = self.side_effect
1120s if effect is not None:
1120s if _is_exception(effect):
1120s raise effect
1120s elif not _callable(effect):
1120s > result = next(effect)
1120s E StopIteration
1120s
1120s /usr/lib/python3.13/unittest/mock.py:1230: StopIteration
1120s
1120s During handling of the above exception, another exception occurred:
1120s
1120s self =
1120s
1120s def test_device_credentials_workflow_manager_update_verify(self):
1120s """
1120s Test case for device credential workflow manager when updating a device credential.
1120s
1120s This test case checks the behavior of the device credential workflow manager when updating a new device credentials in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_version="2.3.7.6",
1120s dnac_log=True,
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_config_creation
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:336:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/device_credential_workflow_manager.py:3277: in main
1120s ccc_credential.get_diff_state_apply[state](config).check_return_status()
1120s plugins/modules/device_credential_workflow_manager.py:2977: in get_diff_merged
1120s self.update_device_credentials().check_return_status()
1120s plugins/modules/device_credential_workflow_manager.py:2684: in update_device_credentials
1120s self.check_tasks_response_status(response, "update_global_credentials_v2").check_return_status()
1120s plugins/module_utils/dnac.py:1730: in check_tasks_response_status
1120s task_details = self.get_tasks_by_id(task_id)
1120s plugins/module_utils/dnac.py:1684: in get_tasks_by_id
1120s self.fail_and_exit(self.msg)
1120s plugins/module_utils/dnac.py:1787: in fail_and_exit
1120s self.check_return_status()
1120s plugins/module_utils/dnac.py:307: in check_return_status
1120s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def fail_json(*args, **kwargs):
1120s kwargs["failed"] = True
1120s > raise AnsibleFailJson(kwargs)
1120s 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}
1120s
1120s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
1120s ------------------------------ Captured log call -------------------------------
1120s 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: .
1120s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_add_existing_devices _
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_inventory_workflow_manager_playbook_add_existing_devices(self):
1120s """
1120s Test case for add device with full crendentials.
1120s
1120s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.5.3",
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_add_existing_devices
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=False)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "device(s) '70.2.2.2', '80.2.2.2' already present in Cisco Catalyst Center."
1120s )
1120s 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."
1120s E - No changes were made. No inventory actions were performed in Cisco Catalyst Center.
1120s E + device(s) '70.2.2.2', '80.2.2.2' already present in Cisco Catalyst Center.
1120s
1120s tests/unit/modules/dnac/test_inventory_workflow_manager.py:282: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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.'}
1120s ------------------------------ Captured log call -------------------------------
1120s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3566: self.config
1120s
1120s 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'}
1120s
1120s WARNING logger:dnac.py:294 Inventory: verify_diff_merged: 3882: verify starts here verify diff merged
1120s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_provision_device _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_accesspoint_workflow_manager_provision_device(self):
1120s """
1120s Test case for access point workfollow manager provision and update device.
1120s
1120s This test case checks the behavior of the access point workflow when provisioned in the specified Cisco Catalyst Center.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="merged",
1120s dnac_version="2.3.7.6",
1120s config_verify=True,
1120s config=self.playbook_config_complete
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:145:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/accesspoint_workflow_manager.py:4190: in main
1120s ccc_network.get_diff_state_apply[state](config).check_return_status()
1120s plugins/modules/accesspoint_workflow_manager.py:1894: in get_diff_merged
1120s self.validate_ap_config_parameters(ap_config).check_return_status()
1120s plugins/module_utils/dnac.py:307: in check_return_status
1120s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def fail_json(*args, **kwargs):
1120s kwargs["failed"] = True
1120s > raise AnsibleFailJson(kwargs)
1120s 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}
1120s
1120s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
1120s ------------------------------ Captured log call -------------------------------
1120s 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']'
1120s __ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_add_udf __
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_inventory_workflow_manager_playbook_add_udf(self):
1120s """
1120s Test case for add device with full crendentials.
1120s
1120s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_add_udf
1120s )
1120s )
1120s result = self.execute_module(changed=True, failed=False)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "device(s) '70.2.2.2', '80.2.2.2' already present in Cisco Catalyst Center."
1120s )
1120s 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."
1120s E - Global User Defined Field(UDF) named 'Test123' has been successfully added to the device.
1120s E + device(s) '70.2.2.2', '80.2.2.2' already present in Cisco Catalyst Center.
1120s
1120s tests/unit/modules/dnac/test_inventory_workflow_manager.py:306: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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."}
1120s ------------------------------ Captured log call -------------------------------
1120s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3566: self.config
1120s
1120s 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']}
1120s
1120s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3570: udf_field_list
1120s
1120s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3571: [{'name': 'Test123'}]
1120s
1120s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3584: False
1120s
1120s WARNING logger:dnac.py:294 Inventory: verify_diff_merged: 3882: verify starts here verify diff merged
1120s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_del_provisioned_device_2353 _
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_inventory_workflow_manager_playbook_del_provisioned_device_2353(self):
1120s """
1120s Test case for add device with full crendentials.
1120s
1120s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.5.3",
1120s state="deleted",
1120s config_verify=True,
1120s config=self.playbook_del_provisioned_device_2353
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_inventory_workflow_manager.py:553:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/inventory_workflow_manager.py:4197: in main
1120s ccc_device.get_diff_state_apply[state](config).check_return_status()
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def get_diff_deleted(self, config):
1120s """
1120s Main function to delete devices in Cisco Catalyst Center based on device IP address.
1120s Parameters:
1120s config (dict): The configuration settings for the deletion process.
1120s Returns:
1120s self (object): An instance of a class used for interacting with Cisco Catalyst Center.
1120s Description:
1120s This method compares the provided configuration against the current
1120s devices in the Cisco Catalyst Center and deletes devices based on
1120s their IP addresses. It returns a success status indicating whether
1120s the deletion process was completed successfully.
1120s """
1120s
1120s device_to_delete = self.get_device_ips_from_config_priority()
1120s self.result['msg'] = []
1120s
1120s # Handle Global User Defined Fields (UDF) Deletion
1120s if self.config[0].get('add_user_defined_field'):
1120s return self.delete_user_defined_fields()
1120s
1120s # Loop over devices to delete them
1120s for device_ip in device_to_delete:
1120s if device_ip not in self.have.get("device_in_ccc"):
1120s self.status = "success"
1120s self.result['changed'] = False
1120s self.msg = "Device '{0}' is not present in Cisco Catalyst Center so can't perform delete operation".format(device_ip)
1120s self.no_device_to_delete.append(device_ip)
1120s self.result['msg'].append(self.msg)
1120s self.result['response'] = self.msg
1120s self.log(self.msg, "INFO")
1120s continue
1120s device_ids = self.get_device_ids([device_ip])
1120s > device_id = device_ids[0]
1120s E IndexError: list index out of range
1120s
1120s plugins/modules/inventory_workflow_manager.py:3665: IndexError
1120s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_delete_a_device _
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_inventory_workflow_manager_playbook_delete_a_device(self):
1120s """
1120s Test case for add device with full crendentials.
1120s
1120s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.7.6",
1120s state="deleted",
1120s config_verify=True,
1120s config=self.playbook_delete_a_device
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_inventory_workflow_manager.py:329:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/inventory_workflow_manager.py:4197: in main
1120s ccc_device.get_diff_state_apply[state](config).check_return_status()
1120s plugins/modules/inventory_workflow_manager.py:3668: in get_diff_deleted
1120s self.handle_device_deletion(device_ip)
1120s plugins/modules/inventory_workflow_manager.py:3857: in handle_device_deletion
1120s self.check_tasks_response_status(response, api_name='deleted_device_by_id')
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def check_tasks_response_status(self, response, api_name):
1120s """
1120s Get the task response status from taskId
1120s Args:
1120s self: The current object details.
1120s response (dict): API response.
1120s api_name (str): API name.
1120s Returns:
1120s self (object): The current object with updated desired Fabric Transits information.
1120s Description:
1120s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE'
1120s state or till it reaches the maximum timeout.
1120s Log the task details and return self.
1120s """
1120s
1120s if not response:
1120s self.msg = "response is empty"
1120s self.status = "exited"
1120s return self
1120s
1120s if not isinstance(response, dict):
1120s self.msg = "response is not a dictionary"
1120s self.status = "exited"
1120s return self
1120s
1120s task_info = response.get("response")
1120s if task_info.get("errorcode") is not None:
1120s self.msg = response.get("response").get("detail")
1120s self.status = "failed"
1120s return self
1120s
1120s task_id = task_info.get("taskId")
1120s start_time = time.time()
1120s while True:
1120s elapsed_time = time.time() - start_time
1120s if elapsed_time >= self.max_timeout:
1120s self.msg = "Max timeout of {0} sec has reached for the task id '{1}'. " \
1120s .format(self.max_timeout, task_id) + \
1120s "Exiting the loop due to unexpected API '{0}' status.".format(api_name)
1120s self.log(self.msg, "WARNING")
1120s self.status = "failed"
1120s break
1120s
1120s task_details = self.get_tasks_by_id(task_id)
1120s self.log('Getting tasks details from task ID {0}: {1}'
1120s .format(task_id, task_details), "DEBUG")
1120s
1120s > task_status = task_details.get("status")
1120s E AttributeError: 'list' object has no attribute 'get'
1120s
1120s plugins/module_utils/dnac.py:1734: AttributeError
1120s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_provision_old_version _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_accesspoint_workflow_manager_provision_old_version(self):
1120s """
1120s Test case for access point workfollow manager provision device old version.
1120s
1120s This test case checks the behavior of the access point workflow when provisioned in the specified Cisco Catalyst Center.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="merged",
1120s dnac_version="2.3.5.3",
1120s config_verify=True,
1120s config=self.playbook_config_provision_old_version
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s self.maxDiff = None
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "The provided site name 'Global/Chennai/LTTS/FLOOR1' is either invalid or not present in the Cisco Catalyst Center."
1120s )
1120s E AssertionError: 'AP - LTTS_Test_9124_T2 does not need any update' != "The provided site name 'Global/Chennai/L[94 chars]ter."
1120s E - AP - LTTS_Test_9124_T2 does not need any update
1120s E + The provided site name 'Global/Chennai/LTTS/FLOOR1' is either invalid or not present in the Cisco Catalyst Center.
1120s
1120s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:302: AssertionError
1120s ------------------------------ Captured log call -------------------------------
1120s 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'
1120s
1120s 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.
1120s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_delete_device_udf _
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_inventory_workflow_manager_playbook_delete_device_udf(self):
1120s """
1120s Test case for add device with full crendentials.
1120s
1120s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.7.6",
1120s state="deleted",
1120s config_verify=True,
1120s config=self.playbook_delete_device_udf
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_inventory_workflow_manager.py:478:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/inventory_workflow_manager.py:4197: in main
1120s ccc_device.get_diff_state_apply[state](config).check_return_status()
1120s plugins/modules/inventory_workflow_manager.py:3668: in get_diff_deleted
1120s self.handle_device_deletion(device_ip)
1120s plugins/modules/inventory_workflow_manager.py:3857: in handle_device_deletion
1120s self.check_tasks_response_status(response, api_name='deleted_device_by_id')
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def check_tasks_response_status(self, response, api_name):
1120s """
1120s Get the task response status from taskId
1120s Args:
1120s self: The current object details.
1120s response (dict): API response.
1120s api_name (str): API name.
1120s Returns:
1120s self (object): The current object with updated desired Fabric Transits information.
1120s Description:
1120s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE'
1120s state or till it reaches the maximum timeout.
1120s Log the task details and return self.
1120s """
1120s
1120s if not response:
1120s self.msg = "response is empty"
1120s self.status = "exited"
1120s return self
1120s
1120s if not isinstance(response, dict):
1120s self.msg = "response is not a dictionary"
1120s self.status = "exited"
1120s return self
1120s
1120s task_info = response.get("response")
1120s if task_info.get("errorcode") is not None:
1120s self.msg = response.get("response").get("detail")
1120s self.status = "failed"
1120s return self
1120s
1120s task_id = task_info.get("taskId")
1120s start_time = time.time()
1120s while True:
1120s elapsed_time = time.time() - start_time
1120s if elapsed_time >= self.max_timeout:
1120s self.msg = "Max timeout of {0} sec has reached for the task id '{1}'. " \
1120s .format(self.max_timeout, task_id) + \
1120s "Exiting the loop due to unexpected API '{0}' status.".format(api_name)
1120s self.log(self.msg, "WARNING")
1120s self.status = "failed"
1120s break
1120s
1120s task_details = self.get_tasks_by_id(task_id)
1120s self.log('Getting tasks details from task ID {0}: {1}'
1120s .format(task_id, task_details), "DEBUG")
1120s
1120s > task_status = task_details.get("status")
1120s E AttributeError: 'list' object has no attribute 'get'
1120s
1120s plugins/module_utils/dnac.py:1734: AttributeError
1120s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_delete_provisioned_device _
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_inventory_workflow_manager_playbook_delete_provisioned_device(self):
1120s """
1120s Test case for add device with full crendentials.
1120s
1120s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.7.6",
1120s state="deleted",
1120s config_verify=True,
1120s config=self.playbook_delete_provisioned_device
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_inventory_workflow_manager.py:354:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/inventory_workflow_manager.py:4197: in main
1120s ccc_device.get_diff_state_apply[state](config).check_return_status()
1120s plugins/modules/inventory_workflow_manager.py:3675: in get_diff_deleted
1120s self.delete_provisioned_device_v2(device_ip)
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def delete_provisioned_device_v2(self, device_ip):
1120s """
1120s Deletes provisioned devices for versions > 2.3.5.3.
1120s
1120s Parameters:
1120s device_ip (str): The IP address of the device to be deleted.
1120s
1120s Description:
1120s This method deletes a provisioned device with the specified IP address
1120s for software versions greater than 2.3.5.3. It ensures that the device
1120s is properly removed from the Cisco Catalyst Center, handling any
1120s required validations and API interactions.
1120s """
1120s
1120s device_ids = self.get_device_ids([device_ip])
1120s > device_id = device_ids[0]
1120s E IndexError: list index out of range
1120s
1120s plugins/modules/inventory_workflow_manager.py:3801: IndexError
1120s ------------------------------ Captured log call -------------------------------
1120s ERROR logger:dnac.py:294 Inventory: get_device_ids: 2403: Error while fetching device '204.1.2.4' from Cisco Catalyst Center: 0
1120s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_some_error_data_update_accesspoint _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_accesspoint_workflow_manager_some_error_data_update_accesspoint(self):
1120s """
1120s Test case for access point workfollow manager negative case.
1120s
1120s This test case checks the behavior of the access point workflow when wrong data passed in the specified Cisco Catalyst Center.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="merged",
1120s config_verify=True,
1120s dnac_version="2.3.7.6",
1120s config=self.playbook_config_update_some_error_data
1120s )
1120s )
1120s result = self.execute_module(changed=True, failed=True)
1120s self.maxDiff = None
1120s > self.assertEqual(
1120s result.get('msg'),
1120s 'The provided site name \'Global/USA/New York/BLDNYCGlobal/USA/New York/BLDNYCGlobal/USA/iikk/FLOOR2FLOOR2FLOOR2FLOOR2FLOOR2FLOOR2FLOO\' ' +
1120s 'is either invalid or not present in the Cisco Catalyst Center.'
1120s )
1120s E AssertionError: "An error occurred while executing GET API[211 chars]n: ." != "The provided site name 'Global/USA/New Yo[175 chars]ter."
1120s 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: .
1120s 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.
1120s
1120s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:195: AssertionError
1120s ------------------------------ Captured log call -------------------------------
1120s 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: .
1120s
1120s 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}
1120s
1120s 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.
1120s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_prov_device_2353 _
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_inventory_workflow_manager_playbook_prov_device_2353(self):
1120s """
1120s Test case for add device with full crendentials.
1120s
1120s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.5.3",
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_prov_device_2353
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_inventory_workflow_manager.py:578:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/inventory_workflow_manager.py:4197: in main
1120s ccc_device.get_diff_state_apply[state](config).check_return_status()
1120s plugins/modules/inventory_workflow_manager.py:3613: in get_diff_merged
1120s self.provisioned_wired_device().check_return_status()
1120s plugins/module_utils/dnac.py:307: in check_return_status
1120s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def fail_json(*args, **kwargs):
1120s kwargs["failed"] = True
1120s > raise AnsibleFailJson(kwargs)
1120s 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}
1120s
1120s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
1120s ------------------------------ Captured log call -------------------------------
1120s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3566: self.config
1120s
1120s 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'}]}
1120s
1120s ERROR logger:dnac.py:294 Inventory: provisioned_wired_device: 1720: Cannot do Provisioning for device 204.1.2.4.
1120s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_provision_device _
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_inventory_workflow_manager_playbook_provision_device(self):
1120s """
1120s Test case for add device with full crendentials.
1120s
1120s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.7.6",
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_provision_device
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_inventory_workflow_manager.py:528:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/inventory_workflow_manager.py:4197: in main
1120s ccc_device.get_diff_state_apply[state](config).check_return_status()
1120s plugins/modules/inventory_workflow_manager.py:3613: in get_diff_merged
1120s self.provisioned_wired_device().check_return_status()
1120s plugins/module_utils/dnac.py:307: in check_return_status
1120s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def fail_json(*args, **kwargs):
1120s kwargs["failed"] = True
1120s > raise AnsibleFailJson(kwargs)
1120s 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}
1120s
1120s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
1120s ------------------------------ Captured log call -------------------------------
1120s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3566: self.config
1120s
1120s 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'}]}
1120s
1120s WARNING logger:dnac.py:294 Inventory: is_device_assigned_to_site: 1876: Response collected from the API 'get_device_detail' {'response': [], 'version': '1.0'}
1120s
1120s 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'
1120s
1120s 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}
1120s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_task_error_update_accesspoint _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_accesspoint_workflow_manager_task_error_update_accesspoint(self):
1120s """
1120s Test case for access point workfollow manager and negative test verify ap update.
1120s
1120s This test case checks the behavior of the nagative test case of update in the specified Cisco Catalyst Center.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="merged",
1120s config_verify=True,
1120s dnac_version="2.3.7.6",
1120s config=self.playbook_config
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "Unable to get success response, hence AP config not updated"
1120s )
1120s E AssertionError: "An error occurred while executing API ca[74 chars]n: ." != 'Unable to get success response, hence AP[15 chars]ated'
1120s E - An error occurred while executing API call to Function: 'get_task_details_by_id' due to the the following exception: .
1120s E + Unable to get success response, hence AP config not updated
1120s
1120s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:326: AssertionError
1120s ------------------------------ Captured log call -------------------------------
1120s WARNING logger:dnac.py:294 Accesspoint: update_ap_configuration: 3501: No AP name or MAC address found in ap_config.
1120s
1120s 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: .
1120s ___________ TestDnacAccesspointWorkflow.test_invalid_get_site_device ___________
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_invalid_get_site_device(self):
1120s """
1120s Test case for access point workfollow manager get device details from site
1120s
1120s This test case checks the behavior of the access point workflow when check the devices in the site on the specified Cisco Catalyst Center.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="merged",
1120s dnac_version="2.3.7.6",
1120s config=self.get_membership_empty
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "Required param of mac_address,ip_address or hostname is not in playbook config"
1120s )
1120s E AssertionError: 'Successfully validated playbook config pa[1253 chars]}\n]' != 'Required param of mac_address,ip_address [33 chars]nfig'
1120s E Diff is 1423 characters long. Set self.maxDiff to None to see it.
1120s
1120s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:399: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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}
1120s ------------------------------ Captured log call -------------------------------
1120s WARNING logger:dnac.py:294 Accesspoint: get_accesspoint_details: 2688: Required param of mac_address,ip_address or hostname is not in playbook config
1120s
1120s ERROR logger:dnac.py:294 Accesspoint: set_operation_result: 1780: Required param of mac_address,ip_address or hostname is not in playbook config
1120s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_provision_failed_for_site _
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_inventory_workflow_manager_playbook_provision_failed_for_site(self):
1120s """
1120s Test case for add device with full crendentials.
1120s
1120s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_provision_failed_for_site
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "Wired Device Provisioning failed for all devices"
1120s )
1120s E AssertionError: "An exception occurred while retrieving S[136 chars]able" != 'Wired Device Provisioning failed for all devices'
1120s 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
1120s E + Wired Device Provisioning failed for all devices
1120s
1120s tests/unit/modules/dnac/test_inventory_workflow_manager.py:380: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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}
1120s ------------------------------ Captured log call -------------------------------
1120s 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
1120s _____________ TestDnacAccesspointWorkflow.test_invalid_site_exists _____________
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_invalid_site_exists(self):
1120s """
1120s Test case for access point workfollow manager check site exists.
1120s
1120s This test case checks the behavior of the access point workflow when site exist in the specified Cisco Catalyst Center.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="merged",
1120s dnac_version="2.3.7.6",
1120s config=self.playbook_config_provision
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "MAC Address is not Access point"
1120s )
1120s E AssertionError: 'Provided device is not Access Point.' != 'MAC Address is not Access point'
1120s E - Provided device is not Access Point.
1120s E + MAC Address is not Access point
1120s
1120s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:350: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'msg': 'Provided device is not Access Point.', 'response': 'Provided device is not Access Point.', 'failed': True}
1120s ------------------------------ Captured log call -------------------------------
1120s ERROR logger:dnac.py:294 Accesspoint: set_operation_result: 1780: Provided device is not Access Point.
1120s _____________ TestDnacAccesspointWorkflow.test_invalid_wlc_device ______________
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_invalid_wlc_device(self):
1120s """
1120s Test case for access point workfollow manager check invalid wireless controller.
1120s
1120s This test case checks the behavior of the access point workflow of invalid wlc specified Cisco Catalyst Center.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="merged",
1120s dnac_version="2.3.7.6",
1120s config=self.playbook_config_provision
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s self.maxDiff = None
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "Wireles controller is not provisioned:"
1120s )
1120s E AssertionError: "An error occurred while executing GET AP[157 chars]n: ." != 'Wireles controller is not provisioned:'
1120s 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: .
1120s E + Wireles controller is not provisioned:
1120s
1120s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:170: AssertionError
1120s ------------------------------ Captured log call -------------------------------
1120s 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: .
1120s
1120s 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}
1120s
1120s ERROR logger:dnac.py:294 Accesspoint: verify_ap_provision: 3010: Wireles controller is not provisioned:
1120s
1120s ERROR logger:dnac.py:294 Accesspoint: set_operation_result: 1780: Wireles controller is not provisioned:
1120s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_update_mgmt_ip _
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_inventory_workflow_manager_playbook_update_mgmt_ip(self):
1120s """
1120s Test case for add device with full crendentials.
1120s
1120s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.7.6",
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_update_mgmt_ip
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_inventory_workflow_manager.py:503:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/inventory_workflow_manager.py:4197: in main
1120s ccc_device.get_diff_state_apply[state](config).check_return_status()
1120s plugins/modules/inventory_workflow_manager.py:3391: in get_diff_merged
1120s csv_reader = self.decrypt_and_read_csv(export_response, password)
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def decrypt_and_read_csv(self, response, password):
1120s """
1120s Parameters:
1120s self (object): An instance of a class used for interacting with Cisco Catalyst Center.
1120s response (requests.Response): HTTP response object containing the encrypted CSV file.
1120s password (str): Password used for decrypting the CSV file.
1120s Returns:
1120s csv.DictReader: A CSV reader object for the decrypted content, allowing iteration over rows as dictionaries.
1120s Description:
1120s Decrypts and reads a CSV-like file from the given HTTP response using the provided password.
1120s """
1120s
1120s > zip_data = BytesIO(response.data)
1120s E AttributeError: 'NoneType' object has no attribute 'data'
1120s
1120s plugins/modules/inventory_workflow_manager.py:1132: AttributeError
1120s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_already_sync_cred _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_device_credentials_workflow_manager_already_sync_cred(self):
1120s """
1120s Test case for device credential workflow manager when applying a device credential to site devices where sync is already applied.
1120s
1120s This test case checks the behavior of the device credential workflow manager when applying a device credential to site devices
1120s
1120s where sync is already applied in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_version="2.3.7.6",
1120s dnac_log=True,
1120s state="merged",
1120s config=self.playbook_config_apply
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=False)
1120s print(result)
1120s self.assertEqual(
1120s > result['response'][0]['applyCredential']['Applied Credentials']['msg'],
1120s "Provided credentials category is/are already synced."
1120s )
1120s E KeyError: 'applyCredential'
1120s
1120s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:314: KeyError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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': []}
1120s ------------------------------ Captured log call -------------------------------
1120s 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'}
1120s _________ TestNetworkCompliance.test_run_compliance_categories_iplist __________
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_run_compliance_categories_iplist(self):
1120s
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_log_level="DEBUG",
1120s dnac_log_append=False,
1120s state="merged",
1120s config=self.test_data.get("playbook_config_run_compliance_categories_iplist")
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:412:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/network_compliance_workflow_manager.py:1670: in main
1120s ccc_network_compliance.get_want(config).check_return_status()
1120s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
1120s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
1120s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list
1120s self.fail_and_exit(self.msg)
1120s plugins/module_utils/dnac.py:1787: in fail_and_exit
1120s self.check_return_status()
1120s plugins/module_utils/dnac.py:307: in check_return_status
1120s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def fail_json(*args, **kwargs):
1120s kwargs["failed"] = True
1120s > raise AnsibleFailJson(kwargs)
1120s 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}
1120s
1120s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
1120s ----------------------------- Captured stdout call -----------------------------
1120s Inside load_fixtures
1120s Mock for DNACSDK._exec:
1120s Inside load_fixtures
1120s ------------------------------ Captured log call -------------------------------
1120s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
1120s
1120s 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}
1120s
1120s 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}]
1120s
1120s 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}]
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0']
1120s
1120s 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}
1120s
1120s 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
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None'
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
1120s
1120s 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
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_run_compliance_categories: 510: Validating the provided run compliance categories: ['INTENT', 'RUNNING_CONFIG', 'IMAGE', 'PSIRT']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_run_compliance_categories: 518: Validation successful: valid run compliance categorites provided: ['INTENT', 'RUNNING_CONFIG', 'IMAGE', 'PSIRT']
1120s
1120s 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}
1120s
1120s 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
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0
1120s
1120s 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']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']}
1120s
1120s 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']}
1120s
1120s 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'}]}
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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'}
1120s
1120s 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
1120s
1120s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 782: Total number of devices received: 1
1120s
1120s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 783: Number of devices that are Unreachable or APs: 1
1120s
1120s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 784: Config Backup Operation can be performed on the following filtered devices: 0
1120s
1120s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {}
1120s
1120s 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).
1120s
1120s 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).
1120s ____________ TestNetworkCompliance.test_run_compliance_with_iplist _____________
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_run_compliance_with_iplist(self):
1120s
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=False,
1120s dnac_log_level="DEBUG",
1120s dnac_log_append=False,
1120s state="merged",
1120s config=self.test_data.get("playbook_config_run_compliance_iplist")
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:349:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/network_compliance_workflow_manager.py:1670: in main
1120s ccc_network_compliance.get_want(config).check_return_status()
1120s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
1120s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
1120s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list
1120s self.fail_and_exit(self.msg)
1120s plugins/module_utils/dnac.py:1787: in fail_and_exit
1120s self.check_return_status()
1120s plugins/module_utils/dnac.py:307: in check_return_status
1120s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def fail_json(*args, **kwargs):
1120s kwargs["failed"] = True
1120s > raise AnsibleFailJson(kwargs)
1120s 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}
1120s
1120s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
1120s ----------------------------- Captured stdout call -----------------------------
1120s Inside load_fixtures
1120s Mock for DNACSDK._exec:
1120s Inside load_fixtures
1120s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_apply_sync _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s def get_tasks_by_id(self, task_id):
1120s """
1120s Get the tasks of a task ID in Cisco Catalyst Center.
1120s Args:
1120s self (object): An instance of a class that provides access to Cisco Catalyst Center.
1120s task_id (str): The unique identifier of the task for which you want to retrieve details.
1120s Returns:
1120s dict or None: A dictionary status information about the specified task,
1120s or None if the task with the given task_id is not found.
1120s Description:
1120s Call the API 'get_tasks_by_id' to get the status of the task.
1120s Return the details along with the status of the task.
1120s """
1120s # Need to handle exception
1120s task_status = None
1120s try:
1120s > response = self.dnac._exec(
1120s family="task",
1120s function="get_tasks_by_id",
1120s params={"id": task_id}
1120s )
1120s
1120s plugins/module_utils/dnac.py:1662:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s /usr/lib/python3.13/unittest/mock.py:1169: in __call__
1120s return self._mock_call(*args, **kwargs)
1120s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call
1120s return self._execute_mock_call(*args, **kwargs)
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s self = , args = ()
1120s kwargs = {'family': 'task', 'function': 'get_tasks_by_id', 'params': {'id': '0191ea00-6acf-7863-83c3-638499ad0aff'}}
1120s effect =
1120s
1120s def _execute_mock_call(self, /, *args, **kwargs):
1120s # separate from _increment_mock_call so that awaited functions are
1120s # executed separately from their call, also AsyncMock overrides this method
1120s
1120s effect = self.side_effect
1120s if effect is not None:
1120s if _is_exception(effect):
1120s raise effect
1120s elif not _callable(effect):
1120s > result = next(effect)
1120s E StopIteration
1120s
1120s /usr/lib/python3.13/unittest/mock.py:1230: StopIteration
1120s
1120s During handling of the above exception, another exception occurred:
1120s
1120s self =
1120s
1120s def test_device_credentials_workflow_manager_apply_sync(self):
1120s """
1120s Test case for device credential workflow manager when applying a device credential to site devices.
1120s
1120s This test case checks the behavior of the device credential workflow manager when applying a device credential
1120s
1120s to site devices in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_version="2.3.7.6",
1120s dnac_log=True,
1120s state="merged",
1120s config=self.playbook_config_apply
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:362:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/device_credential_workflow_manager.py:3277: in main
1120s ccc_credential.get_diff_state_apply[state](config).check_return_status()
1120s plugins/modules/device_credential_workflow_manager.py:2983: in get_diff_merged
1120s self.apply_credentials_to_site().check_return_status()
1120s plugins/modules/device_credential_workflow_manager.py:2936: in apply_credentials_to_site
1120s self.check_tasks_response_status(response,
1120s plugins/module_utils/dnac.py:1730: in check_tasks_response_status
1120s task_details = self.get_tasks_by_id(task_id)
1120s plugins/module_utils/dnac.py:1684: in get_tasks_by_id
1120s self.fail_and_exit(self.msg)
1120s plugins/module_utils/dnac.py:1787: in fail_and_exit
1120s self.check_return_status()
1120s plugins/module_utils/dnac.py:307: in check_return_status
1120s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def fail_json(*args, **kwargs):
1120s kwargs["failed"] = True
1120s > raise AnsibleFailJson(kwargs)
1120s 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}
1120s
1120s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
1120s ------------------------------ Captured log call -------------------------------
1120s 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: .
1120s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_1 ________
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_run_compliance_with_iplist_failure_1(self):
1120s
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=False,
1120s dnac_log_level="DEBUG",
1120s dnac_log_append=False,
1120s state="merged",
1120s config=self.test_data.get("playbook_config_run_compliance_iplist")
1120s )
1120s )
1120s > result = self.execute_module(changed=False, failed=False)
1120s
1120s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:541:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/network_compliance_workflow_manager.py:1670: in main
1120s ccc_network_compliance.get_want(config).check_return_status()
1120s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
1120s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
1120s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list
1120s self.fail_and_exit(self.msg)
1120s plugins/module_utils/dnac.py:1787: in fail_and_exit
1120s self.check_return_status()
1120s plugins/module_utils/dnac.py:307: in check_return_status
1120s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def fail_json(*args, **kwargs):
1120s kwargs["failed"] = True
1120s > raise AnsibleFailJson(kwargs)
1120s 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}
1120s
1120s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
1120s ----------------------------- Captured stdout call -----------------------------
1120s Inside load_fixtures
1120s Mock for DNACSDK._exec:
1120s Inside load_fixtures
1120s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_2 ________
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_run_compliance_with_iplist_failure_2(self):
1120s
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_log_level="DEBUG",
1120s dnac_log_append=False,
1120s state="merged",
1120s config=self.test_data.get("playbook_config_run_compliance_iplist")
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s > self.assertIn(
1120s "An error occurred while retrieving Compliance Details for device:192.168.0.0 using 'compliance_details_of_device' API call",
1120s result.get('msg')
1120s )
1120s 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)."
1120s
1120s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:563: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s Inside load_fixtures
1120s Mock for DNACSDK._exec:
1120s Inside load_fixtures
1120s ------------------------------ Captured log call -------------------------------
1120s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
1120s
1120s 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}
1120s
1120s 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}]
1120s
1120s 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}]
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0']
1120s
1120s 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}
1120s
1120s 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
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None'
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
1120s
1120s 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
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
1120s
1120s 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}
1120s
1120s 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
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0
1120s
1120s 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']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']}
1120s
1120s 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']}
1120s
1120s 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'}]}
1120s
1120s 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
1120s
1120s 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.
1120s
1120s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 788: Error fetching device IDs from Cisco Catalyst Center. Error details: Simulated exception
1120s
1120s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {}
1120s
1120s 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).
1120s
1120s 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).
1120s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_3 ________
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_run_compliance_with_iplist_failure_3(self):
1120s
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_log_level="DEBUG",
1120s dnac_log_append=False,
1120s state="merged",
1120s config=self.test_data.get("playbook_config_run_compliance_iplist")
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s > self.assertEqual(
1120s "An error occurred while retrieving the task_id of the run_compliance operation.",
1120s result.get('msg')
1120s )
1120s E AssertionError: 'An error occurred while retrieving the t[35 chars]ion.' != "No device UUIDs were fetched for network[153 chars]Ps)."
1120s E - An error occurred while retrieving the task_id of the run_compliance operation.
1120s 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).
1120s
1120s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:584: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s Inside load_fixtures
1120s Mock for DNACSDK._exec:
1120s Inside load_fixtures
1120s ------------------------------ Captured log call -------------------------------
1120s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
1120s
1120s 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}
1120s
1120s 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}]
1120s
1120s 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}]
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0']
1120s
1120s 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}
1120s
1120s 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
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None'
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
1120s
1120s 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
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
1120s
1120s 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}
1120s
1120s 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
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0
1120s
1120s 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']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']}
1120s
1120s 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']}
1120s
1120s 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'}]}
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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'}
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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
1120s
1120s 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.
1120s
1120s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 788: Error fetching device IDs from Cisco Catalyst Center. Error details: Simulated exception
1120s
1120s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {}
1120s
1120s 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).
1120s
1120s 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).
1120s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_4 ________
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_run_compliance_with_iplist_failure_4(self):
1120s
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_log_level="DEBUG",
1120s dnac_log_append=False,
1120s state="merged",
1120s config=self.test_data.get("playbook_config_run_compliance_iplist")
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s > self.assertIn(
1120s "Error occurred while retrieving 'get_task_by_id' for Task Run Compliance Check with Task id",
1120s result.get('msg')
1120s )
1120s 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)."
1120s
1120s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:605: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s Inside load_fixtures
1120s Mock for DNACSDK._exec:
1120s Inside load_fixtures
1120s ------------------------------ Captured log call -------------------------------
1120s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
1120s
1120s 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}
1120s
1120s 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}]
1120s
1120s 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}]
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0']
1120s
1120s 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}
1120s
1120s 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
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None'
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
1120s
1120s 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
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
1120s
1120s 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}
1120s
1120s 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
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0
1120s
1120s 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']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']}
1120s
1120s 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']}
1120s
1120s 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'}]}
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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'}
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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'}
1120s
1120s 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'
1120s
1120s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {}
1120s
1120s 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).
1120s
1120s 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).
1120s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_assign_cred_1 _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s def get_tasks_by_id(self, task_id):
1120s """
1120s Get the tasks of a task ID in Cisco Catalyst Center.
1120s Args:
1120s self (object): An instance of a class that provides access to Cisco Catalyst Center.
1120s task_id (str): The unique identifier of the task for which you want to retrieve details.
1120s Returns:
1120s dict or None: A dictionary status information about the specified task,
1120s or None if the task with the given task_id is not found.
1120s Description:
1120s Call the API 'get_tasks_by_id' to get the status of the task.
1120s Return the details along with the status of the task.
1120s """
1120s # Need to handle exception
1120s task_status = None
1120s try:
1120s > response = self.dnac._exec(
1120s family="task",
1120s function="get_tasks_by_id",
1120s params={"id": task_id}
1120s )
1120s
1120s plugins/module_utils/dnac.py:1662:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s /usr/lib/python3.13/unittest/mock.py:1169: in __call__
1120s return self._mock_call(*args, **kwargs)
1120s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call
1120s return self._execute_mock_call(*args, **kwargs)
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s self = , args = ()
1120s kwargs = {'family': 'task', 'function': 'get_tasks_by_id', 'params': {'id': '0191e691-f5f5-7c89-9cf4-099515272844'}}
1120s effect =
1120s
1120s def _execute_mock_call(self, /, *args, **kwargs):
1120s # separate from _increment_mock_call so that awaited functions are
1120s # executed separately from their call, also AsyncMock overrides this method
1120s
1120s effect = self.side_effect
1120s if effect is not None:
1120s if _is_exception(effect):
1120s raise effect
1120s elif not _callable(effect):
1120s > result = next(effect)
1120s E StopIteration
1120s
1120s /usr/lib/python3.13/unittest/mock.py:1230: StopIteration
1120s
1120s During handling of the above exception, another exception occurred:
1120s
1120s self =
1120s
1120s def test_device_credentials_workflow_manager_assign_cred_1(self):
1120s """
1120s Test case for device credential workflow manager when assigning a device credential to site in dnac_version="2.3.7.6".
1120s
1120s This test case checks the behavior of the device credential workflow manager when assigning a device credential to site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_version="2.3.7.6",
1120s dnac_log=True,
1120s state="merged",
1120s config=self.playbook_config_assign
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:261:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/device_credential_workflow_manager.py:3277: in main
1120s ccc_credential.get_diff_state_apply[state](config).check_return_status()
1120s plugins/modules/device_credential_workflow_manager.py:2980: in get_diff_merged
1120s self.assign_credentials_to_site().check_return_status()
1120s plugins/modules/device_credential_workflow_manager.py:2757: in assign_credentials_to_site
1120s self.check_tasks_response_status(
1120s plugins/module_utils/dnac.py:1730: in check_tasks_response_status
1120s task_details = self.get_tasks_by_id(task_id)
1120s plugins/module_utils/dnac.py:1684: in get_tasks_by_id
1120s self.fail_and_exit(self.msg)
1120s plugins/module_utils/dnac.py:1787: in fail_and_exit
1120s self.check_return_status()
1120s plugins/module_utils/dnac.py:307: in check_return_status
1120s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def fail_json(*args, **kwargs):
1120s kwargs["failed"] = True
1120s > raise AnsibleFailJson(kwargs)
1120s 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}
1120s
1120s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
1120s ------------------------------ Captured log call -------------------------------
1120s 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: .
1120s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_5 ________
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_run_compliance_with_iplist_failure_5(self):
1120s
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_log_level="DEBUG",
1120s dnac_log_append=False,
1120s state="merged",
1120s config=self.test_data.get("playbook_config_run_compliance_iplist")
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s > self.assertIn(
1120s "An error occurred while retrieving Compliance Details for device:192.168.0.0 using 'compliance_details_of_device' API call",
1120s result.get('msg')
1120s )
1120s 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)."
1120s
1120s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:626: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s Inside load_fixtures
1120s Mock for DNACSDK._exec:
1120s Inside load_fixtures
1120s ------------------------------ Captured log call -------------------------------
1120s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
1120s
1120s 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}
1120s
1120s 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}]
1120s
1120s 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}]
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0']
1120s
1120s 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}
1120s
1120s 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
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None'
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
1120s
1120s 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
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
1120s
1120s 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}
1120s
1120s 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
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0
1120s
1120s 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']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']}
1120s
1120s 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']}
1120s
1120s 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'}]}
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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'}
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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'}
1120s
1120s 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'
1120s
1120s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {}
1120s
1120s 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).
1120s
1120s 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).
1120s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_assign_cred_2 _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_device_credentials_workflow_manager_assign_cred_2(self):
1120s """
1120s Test case for device credential workflow manager when assigning a device credential to site in dnac_version="2.3.5.3".
1120s
1120s This test case checks the behavior of the device credential workflow manager when assigning a device credential to site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_version="2.3.5.3",
1120s dnac_log=True,
1120s state="merged",
1120s config=self.playbook_config_assign
1120s )
1120s )
1120s result = self.execute_module(changed=True, failed=False)
1120s print(result)
1120s self.assertEqual(
1120s > result['response'][0]['assignCredential']['Assign Credentials']['msg'],
1120s "Device Credential Assigned to a site is Successfully"
1120s )
1120s E KeyError: 'assignCredential'
1120s
1120s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:288: KeyError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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': []}
1120s __________ TestNetworkCompliance.test_run_compliance_with_iplist_site __________
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_run_compliance_with_iplist_site(self):
1120s
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_log_level="DEBUG",
1120s dnac_log_append=False,
1120s state="merged",
1120s config=self.test_data.get("playbook_config_run_compliance_iplist_site")
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:391:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/network_compliance_workflow_manager.py:1670: in main
1120s ccc_network_compliance.get_want(config).check_return_status()
1120s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
1120s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
1120s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list
1120s self.fail_and_exit(self.msg)
1120s plugins/module_utils/dnac.py:1787: in fail_and_exit
1120s self.check_return_status()
1120s plugins/module_utils/dnac.py:307: in check_return_status
1120s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def fail_json(*args, **kwargs):
1120s kwargs["failed"] = True
1120s > raise AnsibleFailJson(kwargs)
1120s 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}
1120s
1120s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
1120s ----------------------------- Captured stdout call -----------------------------
1120s Inside load_fixtures
1120s Mock for DNACSDK._exec:
1120s Inside load_fixtures
1120s ------------------------------ Captured log call -------------------------------
1120s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
1120s
1120s 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}
1120s
1120s 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}]
1120s
1120s 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}]
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0']
1120s
1120s 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}
1120s
1120s 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
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'Global'
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
1120s
1120s 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
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
1120s
1120s 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}
1120s
1120s 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
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0
1120s
1120s 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']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']}
1120s
1120s 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']}
1120s
1120s 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'}]}
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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'}]}
1120s
1120s 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
1120s
1120s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 782: Total number of devices received: 1
1120s
1120s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 783: Number of devices that are Unreachable or APs: 1
1120s
1120s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 784: Config Backup Operation can be performed on the following filtered devices: 0
1120s
1120s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {}
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 823: Retrieving device IDs for site: Global
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 809: Initiating retrieval of site details for site name: 'Global'.
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 813: Using 'get_site' API for Catalyst Center version: '2233'.
1120s
1120s 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'}.
1120s
1120s 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'}]}
1120s
1120s 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'}]}
1120s
1120s 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'.
1120s
1120s 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'.
1120s
1120s 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'.
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 664: Using 'get_membership' API for Catalyst Center version: '2233'.
1120s
1120s 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'}.
1120s
1120s 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'}
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 668: Received response from 'get_membership'. Extracting device IDs.
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 674: Retrieved device IDs from membership for site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': []
1120s
1120s 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'.
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 721: Device IDs retrieved from site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': []
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 763: Device details retrieved for site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b': []
1120s
1120s INFO logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 792: No reachable devices found at Site: 92ffce88-9fce-41d2-ae69-086fa74e9c4b
1120s
1120s 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).
1120s
1120s 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).
1120s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_creation _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_device_credentials_workflow_manager_creation(self):
1120s """
1120s Test case for device credential workflow manager when creating a device credential.
1120s
1120s This test case checks the behavior of the device credential workflow manager when creating a new device credentials in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="merged",
1120s config=self.playbook_config_creation
1120s )
1120s )
1120s result = self.execute_module(changed=True, failed=False)
1120s print(result)
1120s self.assertEqual(
1120s > result['response'][0]['globalCredential']['Creation']['msg'],
1120s "Global Credential Created Successfully"
1120s )
1120s E KeyError: 'globalCredential'
1120s
1120s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:216: KeyError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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': []}
1120s _____________ TestNetworkCompliance.test_run_compliance_with_site ______________
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_run_compliance_with_site(self):
1120s
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=False,
1120s dnac_log_level="DEBUG",
1120s dnac_log_append=False,
1120s state="merged",
1120s config=self.test_data.get("playbook_config_run_compliance_site")
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:370:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/network_compliance_workflow_manager.py:1670: in main
1120s ccc_network_compliance.get_want(config).check_return_status()
1120s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
1120s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
1120s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list
1120s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name)
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def get_reachable_devices_from_site(self, site_name):
1120s """
1120s Retrieves a mapping of management IP addresses to instance IDs for reachable devices from a specified site.
1120s Args:
1120s site_id (str): The ID of the site from which to retrieve device details.
1120s Returns:
1120s tuple: A tuple containing:
1120s - dict: A mapping of management IP addresses to instance IDs for reachable devices.
1120s - list: A list of management IP addresses of skipped devices.
1120s """
1120s mgmt_ip_to_instance_id_map = {}
1120s skipped_devices_list = []
1120s
1120s (site_exists, site_id) = self.get_site_id(site_name)
1120s if not site_exists:
1120s self.msg = "Site '{0}' does not exist in the Cisco Catalyst Center, cannot proceed with device(s) retrieval.".format(site_name)
1120s self.fail_and_exit(self.msg)
1120s
1120s self.log("Initiating retrieval of device details for site ID: '{0}'.".format(site_id), "INFO")
1120s
1120s # Retrieve the list of device details from the specified site
1120s device_details_list = self.get_device_details_from_site(site_name, site_id)
1120s self.log("Device details retrieved for site ID: '{0}': {1}".format(site_id, device_details_list), "DEBUG")
1120s
1120s # Iterate through each device's details
1120s for device_info in device_details_list:
1120s > management_ip = device_info.get("managementIpAddress")
1120s E AttributeError: 'list' object has no attribute 'get'
1120s
1120s plugins/module_utils/dnac.py:767: AttributeError
1120s ----------------------------- Captured stdout call -----------------------------
1120s Inside load_fixtures
1120s Mock for DNACSDK._exec:
1120s Inside load_fixtures
1120s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_1 _________
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_run_compliance_with_site_failure_1(self):
1120s
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=False,
1120s dnac_log_level="DEBUG",
1120s dnac_log_append=False,
1120s state="merged",
1120s config=self.test_data.get("playbook_config_run_compliance_site")
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s > self.assertIn(
1120s "An error occurred while retrieving site details for Site 'Global'. Please verify that the site exists.",
1120s result.get('msg')
1120s )
1120s 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}'
1120s
1120s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:647: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s Inside load_fixtures
1120s Mock for DNACSDK._exec:
1120s Inside load_fixtures
1120s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_deletion _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_device_credentials_workflow_manager_deletion(self):
1120s """
1120s Test case for device credential workflow manager when deleting a device credential.
1120s
1120s This test case checks the behavior of the device credential workflow manager when deleting a device credentials in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="deleted",
1120s config_verify=True,
1120s config=self.playbook_config_deletion
1120s )
1120s )
1120s result = self.execute_module(changed=True, failed=False)
1120s print(result)
1120s self.assertEqual(
1120s > result['response'][0]['globalCredential']['Deletion']['msg'],
1120s "Global Device Credentials Deleted Successfully"
1120s )
1120s E KeyError: 'globalCredential'
1120s
1120s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:240: KeyError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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': []}
1120s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_2 _________
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s def execute_get_request(self, api_family, api_function, api_parameters):
1120s """
1120s Makes a GET API call to the specified function within a given family and returns the response.
1120s Args:
1120s api_family (str): The family of the API to call.
1120s api_function (str): The specific function of the API to call.
1120s api_parameters (dict): Parameters to pass to the API call.
1120s Returns:
1120s dict or None: The response from the API call if successful, otherwise None.
1120s Logs detailed information about the API call, including responses and errors.
1120s """
1120s self.log(
1120s "Initiating GET API call for Function: {0} from Family: {1} with Parameters: {2}.".format(
1120s api_function, api_family, api_parameters
1120s ),
1120s "DEBUG"
1120s )
1120s try:
1120s # Execute the API call
1120s > response = self.dnac._exec(
1120s family=api_family,
1120s function=api_function,
1120s op_modifies=False,
1120s params=api_parameters,
1120s )
1120s
1120s plugins/module_utils/dnac.py:1840:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s /usr/lib/python3.13/unittest/mock.py:1169: in __call__
1120s return self._mock_call(*args, **kwargs)
1120s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call
1120s return self._execute_mock_call(*args, **kwargs)
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s self = , args = ()
1120s kwargs = {'family': 'sites', 'function': 'get_membership', 'op_modifies': False, 'params': {'site_id': '3cf15665-7b7b-4b29-82a9-75b8d094b602'}}
1120s effect =
1120s result = Exception('Simulated exception')
1120s
1120s def _execute_mock_call(self, /, *args, **kwargs):
1120s # separate from _increment_mock_call so that awaited functions are
1120s # executed separately from their call, also AsyncMock overrides this method
1120s
1120s effect = self.side_effect
1120s if effect is not None:
1120s if _is_exception(effect):
1120s raise effect
1120s elif not _callable(effect):
1120s result = next(effect)
1120s if _is_exception(result):
1120s > raise result
1120s E Exception: Simulated exception
1120s
1120s /usr/lib/python3.13/unittest/mock.py:1232: Exception
1120s
1120s During handling of the above exception, another exception occurred:
1120s
1120s self =
1120s
1120s def test_run_compliance_with_site_failure_2(self):
1120s
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=False,
1120s dnac_log_level="DEBUG",
1120s dnac_log_append=False,
1120s state="merged",
1120s config=self.test_data.get("playbook_config_run_compliance_site")
1120s )
1120s )
1120s > result = self.execute_module(changed=False, failed=False)
1120s
1120s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:667:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/network_compliance_workflow_manager.py:1670: in main
1120s ccc_network_compliance.get_want(config).check_return_status()
1120s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
1120s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
1120s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list
1120s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name)
1120s plugins/module_utils/dnac.py:762: in get_reachable_devices_from_site
1120s device_details_list = self.get_device_details_from_site(site_name, site_id)
1120s plugins/module_utils/dnac.py:716: in get_device_details_from_site
1120s api_response, device_ids = self.get_device_ids_from_site(site_name, site_id)
1120s plugins/module_utils/dnac.py:666: in get_device_ids_from_site
1120s api_response = self.execute_get_request("sites", "get_membership", get_membership_params)
1120s plugins/module_utils/dnac.py:1882: in execute_get_request
1120s self.fail_and_exit(self.msg)
1120s plugins/module_utils/dnac.py:1787: in fail_and_exit
1120s self.check_return_status()
1120s plugins/module_utils/dnac.py:307: in check_return_status
1120s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def fail_json(*args, **kwargs):
1120s kwargs["failed"] = True
1120s > raise AnsibleFailJson(kwargs)
1120s 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}
1120s
1120s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
1120s ----------------------------- Captured stdout call -----------------------------
1120s Inside load_fixtures
1120s Mock for DNACSDK._exec:
1120s Inside load_fixtures
1120s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_invalid_site _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_device_credentials_workflow_manager_invalid_site(self):
1120s """
1120s Test case for device credential workflow manager when provided site is invalid.
1120s
1120s This test case checks the behavior of the device credential workflow manager, when provided site is invalid in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_version="2.3.7.6",
1120s dnac_log=True,
1120s state="merged",
1120s config=self.playbook_config_assign
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result['msg'],
1120s "The site_name 'Global/Vietnam/halong/Hanoi' is invalid in 'assign_credentials_to_site'"
1120s )
1120s E AssertionError: 'An exception occurred while retrieving S[516 chars]rue}' != "The site_name 'Global/Vietnam/halong/Han[42 chars]ite'"
1120s 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}
1120s E + The site_name 'Global/Vietnam/halong/Hanoi' is invalid in 'assign_credentials_to_site'
1120s
1120s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:435: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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}
1120s ------------------------------ Captured log call -------------------------------
1120s 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: .
1120s
1120s 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}
1120s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_3 _________
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_run_compliance_with_site_failure_3(self):
1120s
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=False,
1120s dnac_log_level="DEBUG",
1120s dnac_log_append=False,
1120s state="merged",
1120s config=self.test_data.get("playbook_config_run_compliance_site")
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s > self.assertIn(
1120s "An error occurred while retrieving Compliance Details for device:192.168.0.3 using 'compliance_details_of_device' API call",
1120s result.get('msg')
1120s )
1120s 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."
1120s
1120s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:689: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s Inside load_fixtures
1120s Mock for DNACSDK._exec:
1120s Inside load_fixtures
1120s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_4 _________
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_run_compliance_with_site_failure_4(self):
1120s
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=False,
1120s dnac_log_level="DEBUG",
1120s dnac_log_append=False,
1120s state="merged",
1120s config=self.test_data.get("playbook_config_run_compliance_site")
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s > self.assertIn(
1120s "An error occurred while retrieving the task_id of the run_compliance operation.",
1120s result.get('msg')
1120s )
1120s 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."
1120s
1120s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:710: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s Inside load_fixtures
1120s Mock for DNACSDK._exec:
1120s Inside load_fixtures
1120s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_invalid_site_response _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_device_credentials_workflow_manager_invalid_site_response(self):
1120s """
1120s Test case for device credential workflow manager when provided site response is invalid.
1120s
1120s This test case checks the behavior of the device credential workflow manager when provided site response is invalid in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="merged",
1120s config=self.playbook_config_apply
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result['msg'],
1120s "Exception occurred while getting global device credentials: "
1120s )
1120s E AssertionError: "An exception occurred while retrieving S[137 chars]able" != 'Exception occurred while getting global [16 chars]ls: '
1120s 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
1120s E + Exception occurred while getting global device credentials:
1120s
1120s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:481: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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}
1120s ------------------------------ Captured log call -------------------------------
1120s 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
1120s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_invalid_site_response_2 _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_device_credentials_workflow_manager_invalid_site_response_2(self):
1120s """
1120s Test case for device credential workflow manager when provided site response is invalid.
1120s
1120s This test case checks the behavior of the device credential workflow manager when provided site response is invalid in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="merged",
1120s config=self.playbook_config_apply
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result['msg'],
1120s "Exception occurred while getting global device credentials: "
1120s )
1120s E AssertionError: "An exception occurred while retrieving S[278 chars]rue}" != 'Exception occurred while getting global [16 chars]ls: '
1120s 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}
1120s E + Exception occurred while getting global device credentials:
1120s
1120s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:504: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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}
1120s ------------------------------ Captured log call -------------------------------
1120s WARNING logger:dnac.py:294 DeviceCredential: execute_get_request: 1857: No response received from GET API call to Function: 'get_site' from Family: 'sites'.
1120s
1120s ERROR logger:dnac.py:294 DeviceCredential: set_operation_result: 1780: No site details retrieved for site name: Global/Vietnam/halong/Hanoi
1120s
1120s 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}
1120s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_5 _________
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_run_compliance_with_site_failure_5(self):
1120s
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=False,
1120s dnac_log_level="DEBUG",
1120s dnac_log_append=False,
1120s state="merged",
1120s config=self.test_data.get("playbook_config_run_compliance_site")
1120s )
1120s )
1120s > result = self.execute_module(changed=False, failed=True)
1120s
1120s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:730:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:107: in execute_module
1120s result = self.failed()
1120s tests/unit/modules/dnac/dnac_module.py:125: in failed
1120s self.module.main()
1120s plugins/modules/network_compliance_workflow_manager.py:1670: in main
1120s ccc_network_compliance.get_want(config).check_return_status()
1120s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
1120s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
1120s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list
1120s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name)
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def get_reachable_devices_from_site(self, site_name):
1120s """
1120s Retrieves a mapping of management IP addresses to instance IDs for reachable devices from a specified site.
1120s Args:
1120s site_id (str): The ID of the site from which to retrieve device details.
1120s Returns:
1120s tuple: A tuple containing:
1120s - dict: A mapping of management IP addresses to instance IDs for reachable devices.
1120s - list: A list of management IP addresses of skipped devices.
1120s """
1120s mgmt_ip_to_instance_id_map = {}
1120s skipped_devices_list = []
1120s
1120s (site_exists, site_id) = self.get_site_id(site_name)
1120s if not site_exists:
1120s self.msg = "Site '{0}' does not exist in the Cisco Catalyst Center, cannot proceed with device(s) retrieval.".format(site_name)
1120s self.fail_and_exit(self.msg)
1120s
1120s self.log("Initiating retrieval of device details for site ID: '{0}'.".format(site_id), "INFO")
1120s
1120s # Retrieve the list of device details from the specified site
1120s device_details_list = self.get_device_details_from_site(site_name, site_id)
1120s self.log("Device details retrieved for site ID: '{0}': {1}".format(site_id, device_details_list), "DEBUG")
1120s
1120s # Iterate through each device's details
1120s for device_info in device_details_list:
1120s > management_ip = device_info.get("managementIpAddress")
1120s E AttributeError: 'list' object has no attribute 'get'
1120s
1120s plugins/module_utils/dnac.py:767: AttributeError
1120s ----------------------------- Captured stdout call -----------------------------
1120s Inside load_fixtures
1120s Mock for DNACSDK._exec:
1120s Inside load_fixtures
1120s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_6 _________
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_run_compliance_with_site_failure_6(self):
1120s
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=False,
1120s dnac_log_level="DEBUG",
1120s dnac_log_append=False,
1120s state="merged",
1120s config=self.test_data.get("playbook_config_run_compliance_site")
1120s )
1120s )
1120s > result = self.execute_module(changed=False, failed=True)
1120s
1120s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:751:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:107: in execute_module
1120s result = self.failed()
1120s tests/unit/modules/dnac/dnac_module.py:125: in failed
1120s self.module.main()
1120s plugins/modules/network_compliance_workflow_manager.py:1670: in main
1120s ccc_network_compliance.get_want(config).check_return_status()
1120s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
1120s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
1120s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list
1120s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name)
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def get_reachable_devices_from_site(self, site_name):
1120s """
1120s Retrieves a mapping of management IP addresses to instance IDs for reachable devices from a specified site.
1120s Args:
1120s site_id (str): The ID of the site from which to retrieve device details.
1120s Returns:
1120s tuple: A tuple containing:
1120s - dict: A mapping of management IP addresses to instance IDs for reachable devices.
1120s - list: A list of management IP addresses of skipped devices.
1120s """
1120s mgmt_ip_to_instance_id_map = {}
1120s skipped_devices_list = []
1120s
1120s (site_exists, site_id) = self.get_site_id(site_name)
1120s if not site_exists:
1120s self.msg = "Site '{0}' does not exist in the Cisco Catalyst Center, cannot proceed with device(s) retrieval.".format(site_name)
1120s self.fail_and_exit(self.msg)
1120s
1120s self.log("Initiating retrieval of device details for site ID: '{0}'.".format(site_id), "INFO")
1120s
1120s # Retrieve the list of device details from the specified site
1120s device_details_list = self.get_device_details_from_site(site_name, site_id)
1120s self.log("Device details retrieved for site ID: '{0}': {1}".format(site_id, device_details_list), "DEBUG")
1120s
1120s # Iterate through each device's details
1120s for device_info in device_details_list:
1120s > management_ip = device_info.get("managementIpAddress")
1120s E AttributeError: 'list' object has no attribute 'get'
1120s
1120s plugins/module_utils/dnac.py:767: AttributeError
1120s ----------------------------- Captured stdout call -----------------------------
1120s Inside load_fixtures
1120s Mock for DNACSDK._exec:
1120s Inside load_fixtures
1120s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_aaa_get _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Network_settings_workflow_manager_network_exception_aaa_get(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.7.6",
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_config_network
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "Exception occurred while getting AAA settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
1120s )
1120s E AssertionError: "Exception occurred while getting AAA set[72 chars]7): " != 'Exception occurred while getting AAA set[49 chars]a7: '
1120s E - Exception occurred while getting AAA settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7):
1120s E ? ---------------------- -
1120s E + Exception occurred while getting AAA settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
1120s
1120s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:879: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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}
1120s ------------------------------ Captured log call -------------------------------
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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):
1120s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_banner_get _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Network_settings_workflow_manager_network_exception_banner_get(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.7.6",
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_config_network
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "Exception occurred while getting banner settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
1120s )
1120s E AssertionError: "Exception occurred while getting banner [75 chars]7): " != 'Exception occurred while getting banner [52 chars]a7: '
1120s E - Exception occurred while getting banner settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7):
1120s E ? ---------------------- -
1120s E + Exception occurred while getting banner settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
1120s
1120s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:854: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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}
1120s ------------------------------ Captured log call -------------------------------
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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):
1120s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_dhcp_gett _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Network_settings_workflow_manager_network_exception_dhcp_gett(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.7.6",
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_config_network
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "Exception occurred while getting DHCP settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
1120s )
1120s E AssertionError: "Exception occurred while getting DHCP se[73 chars]7): " != 'Exception occurred while getting DHCP se[50 chars]a7: '
1120s E - Exception occurred while getting DHCP settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7):
1120s E ? ---------------------- -
1120s E + Exception occurred while getting DHCP settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
1120s
1120s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:829: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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}
1120s ------------------------------ Captured log call -------------------------------
1120s 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):
1120s _______________ TestNetworkCompliance.test_scale_run_compliance ________________
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_scale_run_compliance(self):
1120s
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_log_level="DEBUG",
1120s dnac_log_append=False,
1120s state="merged",
1120s config=self.test_data.get("playbook_config_run_compliance_scale_iplist")
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:433:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/network_compliance_workflow_manager.py:1670: in main
1120s ccc_network_compliance.get_want(config).check_return_status()
1120s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
1120s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
1120s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list
1120s self.fail_and_exit(self.msg)
1120s plugins/module_utils/dnac.py:1787: in fail_and_exit
1120s self.check_return_status()
1120s plugins/module_utils/dnac.py:307: in check_return_status
1120s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def fail_json(*args, **kwargs):
1120s kwargs["failed"] = True
1120s > raise AnsibleFailJson(kwargs)
1120s 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.1', '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.1', '192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs).", 'failed': True}
1120s
1120s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
1120s ----------------------------- Captured stdout call -----------------------------
1120s Inside load_fixtures
1120s Mock for DNACSDK._exec:
1120s Inside load_fixtures
1120s ------------------------------ Captured log call -------------------------------
1120s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
1120s
1120s 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}
1120s
1120s 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}]
1120s
1120s 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}]
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0', '192.168.0.1']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.1', '192.168.0.0']
1120s
1120s 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}
1120s
1120s 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
1120s
1120s 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'
1120s
1120s 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']
1120s
1120s 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
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
1120s
1120s 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
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
1120s
1120s 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}
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 809: Entering get_device_id_list with args: ip_address_list=['192.168.0.1', '192.168.0.0'], site_name=None
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.1, 192.168.0.0
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 677: Entering get_device_list_params method with ip_address_list: ['192.168.0.1', '192.168.0.0']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.1', '192.168.0.0']}
1120s
1120s 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.1', '192.168.0.0']}
1120s
1120s 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'}]}
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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'}
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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'}
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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'}
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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'}
1120s
1120s 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'
1120s
1120s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {}
1120s
1120s 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.1', '192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs).
1120s
1120s 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.1', '192.168.0.0'] or site name: None. This could be due to Unreachable devices or access points (APs).
1120s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_dns_get _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Network_settings_workflow_manager_network_exception_dns_get(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.7.6",
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_config_network
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "Exception occurred while getting DNS settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
1120s )
1120s E AssertionError: "Exception occurred while getting DNS set[72 chars]7): " != 'Exception occurred while getting DNS set[49 chars]a7: '
1120s E - Exception occurred while getting DNS settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7):
1120s E ? ---------------------- -
1120s E + Exception occurred while getting DNS settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
1120s
1120s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:754: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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}
1120s ------------------------------ Captured log call -------------------------------
1120s 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):
1120s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_ntp_get _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Network_settings_workflow_manager_network_exception_ntp_get(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.7.6",
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_config_network
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "Exception occurred while getting NTP server settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
1120s )
1120s E AssertionError: "Exception occurred while getting NTP ser[79 chars]7): " != 'Exception occurred while getting NTP ser[56 chars]a7: '
1120s E - Exception occurred while getting NTP server settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7):
1120s E ? ---------------------- -
1120s E + Exception occurred while getting NTP server settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
1120s
1120s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:779: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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}
1120s ------------------------------ Captured log call -------------------------------
1120s 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)
1120s
1120s 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):
1120s _____________ TestNetworkCompliance.test_sync_device_config_iplist _____________
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_sync_device_config_iplist(self):
1120s
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_log_level="DEBUG",
1120s dnac_log_append=False,
1120s state="merged",
1120s config=self.test_data.get("playbook_config_sync_device_config_iplist")
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:455:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/network_compliance_workflow_manager.py:1670: in main
1120s ccc_network_compliance.get_want(config).check_return_status()
1120s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
1120s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
1120s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list
1120s self.fail_and_exit(self.msg)
1120s plugins/module_utils/dnac.py:1787: in fail_and_exit
1120s self.check_return_status()
1120s plugins/module_utils/dnac.py:307: in check_return_status
1120s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def fail_json(*args, **kwargs):
1120s kwargs["failed"] = True
1120s > raise AnsibleFailJson(kwargs)
1120s 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}
1120s
1120s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
1120s ----------------------------- Captured stdout call -----------------------------
1120s Inside load_fixtures
1120s Mock for DNACSDK._exec:
1120s Inside load_fixtures
1120s ------------------------------ Captured log call -------------------------------
1120s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
1120s
1120s 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}
1120s
1120s 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}]
1120s
1120s 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}]
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0']
1120s
1120s 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}
1120s
1120s 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
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None'
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
1120s
1120s 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
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
1120s
1120s 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}
1120s
1120s 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
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0
1120s
1120s 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']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']}
1120s
1120s 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']}
1120s
1120s 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'}]}
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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'}
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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'}
1120s
1120s 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'
1120s
1120s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {}
1120s
1120s 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).
1120s
1120s 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).
1120s ________ TestNetworkCompliance.test_sync_device_config_iplist_failure_1 ________
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_sync_device_config_iplist_failure_1(self):
1120s
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_log_level="DEBUG",
1120s dnac_log_append=False,
1120s state="merged",
1120s config=self.test_data.get("playbook_config_sync_device_config_iplist")
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s > self.assertIn(
1120s "Error occurred while synchronizing device configuration for parameters - {'deviceId':",
1120s result.get('msg')
1120s )
1120s 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)."
1120s
1120s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:773: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s Inside load_fixtures
1120s Mock for DNACSDK._exec:
1120s Inside load_fixtures
1120s ------------------------------ Captured log call -------------------------------
1120s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
1120s
1120s 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}
1120s
1120s 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}]
1120s
1120s 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}]
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0']
1120s
1120s 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}
1120s
1120s 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
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None'
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
1120s
1120s 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
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
1120s
1120s 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}
1120s
1120s 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
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0
1120s
1120s 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']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']}
1120s
1120s 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']}
1120s
1120s 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'}]}
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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'}
1120s
1120s 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
1120s
1120s 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.
1120s
1120s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 788: Error fetching device IDs from Cisco Catalyst Center. Error details: Simulated exception
1120s
1120s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {}
1120s
1120s 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).
1120s
1120s 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).
1120s ________ TestNetworkCompliance.test_sync_device_config_iplist_failure_2 ________
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_sync_device_config_iplist_failure_2(self):
1120s
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_log_level="DEBUG",
1120s dnac_log_append=False,
1120s state="merged",
1120s config=self.test_data.get("playbook_config_sync_device_config_iplist")
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s > self.assertIn(
1120s "Error occurred while retrieving 'get_task_tree' for Task Sync Device Configuration with task id",
1120s result.get('msg')
1120s )
1120s 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)."
1120s
1120s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:794: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s Inside load_fixtures
1120s Mock for DNACSDK._exec:
1120s Inside load_fixtures
1120s ------------------------------ Captured log call -------------------------------
1120s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
1120s
1120s 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}
1120s
1120s 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}]
1120s
1120s 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}]
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0']
1120s
1120s 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}
1120s
1120s 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
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None'
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
1120s
1120s 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
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
1120s
1120s 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}
1120s
1120s 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
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0
1120s
1120s 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']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']}
1120s
1120s 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']}
1120s
1120s 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'}]}
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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'}
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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'}
1120s
1120s 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'
1120s
1120s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {}
1120s
1120s 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).
1120s
1120s 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).
1120s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_site_not_exist _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Network_settings_workflow_manager_network_exception_site_not_exist(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.7.6",
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_config_network
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "An exception occurred: Site 'Global/Vietnam' does not exist in the Cisco Catalyst Center."
1120s )
1120s E AssertionError: "An error occurred while executing API call to[62 chars]n: ." != "An exception occurred: Site 'Global/Vietnam' [40 chars]ter."
1120s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .
1120s E + An exception occurred: Site 'Global/Vietnam' does not exist in the Cisco Catalyst Center.
1120s
1120s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:704: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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}
1120s ------------------------------ Captured log call -------------------------------
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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: .
1120s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_telemetry_get _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Network_settings_workflow_manager_network_exception_telemetry_get(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.7.6",
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_config_network
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "Exception occurred while getting telemetry settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
1120s )
1120s E AssertionError: "Exception occurred while getting telemet[78 chars]7): " != 'Exception occurred while getting telemet[55 chars]a7: '
1120s E - Exception occurred while getting telemetry settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7):
1120s E ? ---------------------- -
1120s E + Exception occurred while getting telemetry settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
1120s
1120s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:729: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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}
1120s ------------------------------ Captured log call -------------------------------
1120s 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)
1120s
1120s 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):
1120s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_timezone_get _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Network_settings_workflow_manager_network_exception_timezone_get(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.7.6",
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_config_network
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "Exception occurred while getting time zone settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
1120s )
1120s E AssertionError: "Exception occurred while getting time zo[78 chars]7): " != 'Exception occurred while getting time zo[55 chars]a7: '
1120s E - Exception occurred while getting time zone settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7):
1120s E ? ---------------------- -
1120s E + Exception occurred while getting time zone settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
1120s
1120s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:804: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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}
1120s ------------------------------ Captured log call -------------------------------
1120s 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)
1120s
1120s 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)
1120s
1120s 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):
1120s __________ TestNetworkCompliance.test_sync_device_config_iplist_site ___________
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_sync_device_config_iplist_site(self):
1120s
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_log_level="DEBUG",
1120s dnac_log_append=False,
1120s state="merged",
1120s config=self.test_data.get("playbook_config_sync_device_config_iplist_site")
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:497:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/network_compliance_workflow_manager.py:1670: in main
1120s ccc_network_compliance.get_want(config).check_return_status()
1120s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
1120s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
1120s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list
1120s self.fail_and_exit(self.msg)
1120s plugins/module_utils/dnac.py:1787: in fail_and_exit
1120s self.check_return_status()
1120s plugins/module_utils/dnac.py:307: in check_return_status
1120s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def fail_json(*args, **kwargs):
1120s kwargs["failed"] = True
1120s > raise AnsibleFailJson(kwargs)
1120s 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}
1120s
1120s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
1120s ----------------------------- Captured stdout call -----------------------------
1120s Inside load_fixtures
1120s Mock for DNACSDK._exec:
1120s Inside load_fixtures
1120s ------------------------------ Captured log call -------------------------------
1120s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
1120s
1120s 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}
1120s
1120s 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}]
1120s
1120s 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}]
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0']
1120s
1120s 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}
1120s
1120s 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
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'Global'
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
1120s
1120s 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
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
1120s
1120s 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}
1120s
1120s 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
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0
1120s
1120s 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']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']}
1120s
1120s 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']}
1120s
1120s 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'}]}
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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'], 'additionaFATAL: 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.6h2zC6/build.afB/src/ansible_collections/cisco/dnac/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.6h2zC6/build.afB/src/ansible_collections/cisco/dnac --confcutdir /tmp/autopkgtest.6h2zC6/build.afB/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.
1120s lInfo': [{'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'}]}
1120s
1120s 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
1120s
1120s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 782: Total number of devices received: 1
1120s
1120s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 783: Number of devices that are Unreachable or APs: 1
1120s
1120s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 784: Config Backup Operation can be performed on the following filtered devices: 0
1120s
1120s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {}
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 823: Retrieving device IDs for site: Global
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 809: Initiating retrieval of site details for site name: 'Global'.
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 813: Using 'get_site' API for Catalyst Center version: '2233'.
1120s
1120s 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'}.
1120s
1120s 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'}]}
1120s
1120s 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'}]}
1120s
1120s 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'.
1120s
1120s 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'.
1120s
1120s 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'.
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 664: Using 'get_membership' API for Catalyst Center version: '2233'.
1120s
1120s 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'}.
1120s
1120s 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'}
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 668: Received response from 'get_membership'. Extracting device IDs.
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 674: Retrieved device IDs from membership for site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': []
1120s
1120s 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'.
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 721: Device IDs retrieved from site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': []
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 763: Device details retrieved for site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b': []
1120s
1120s INFO logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 792: No reachable devices found at Site: 92ffce88-9fce-41d2-ae69-086fa74e9c4b
1120s
1120s 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).
1120s
1120s 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).
1120s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_aaa _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Network_settings_workflow_manager_network_exception_update_aaa(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.7.6",
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_update_network
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "Exception occurred while updating AAA settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
1120s )
1120s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating AAA se[50 chars]a7: '
1120s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .
1120s E + Exception occurred while updating AAA settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
1120s
1120s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:654: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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}
1120s ------------------------------ Captured log call -------------------------------
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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: .
1120s _________ TestNetworkCompliance.test_sync_device_config_iplist_site_nr _________
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_sync_device_config_iplist_site_nr(self):
1120s
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_log_level="DEBUG",
1120s dnac_log_append=False,
1120s state="merged",
1120s config=self.test_data.get("playbook_config_sync_device_config_iplist_site_nr")
1120s )
1120s )
1120s > result = self.execute_module(changed=False, failed=False)
1120s
1120s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:518:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/network_compliance_workflow_manager.py:1670: in main
1120s ccc_network_compliance.get_want(config).check_return_status()
1120s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
1120s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
1120s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list
1120s self.fail_and_exit(self.msg)
1120s plugins/module_utils/dnac.py:1787: in fail_and_exit
1120s self.check_return_status()
1120s plugins/module_utils/dnac.py:307: in check_return_status
1120s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def fail_json(*args, **kwargs):
1120s kwargs["failed"] = True
1120s > raise AnsibleFailJson(kwargs)
1120s 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}
1120s
1120s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
1120s ----------------------------- Captured stdout call -----------------------------
1120s Inside load_fixtures
1120s Mock for DNACSDK._exec:
1120s Inside load_fixtures
1120s ------------------------------ Captured log call -------------------------------
1120s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
1120s
1120s 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}
1120s
1120s 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}]
1120s
1120s 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}]
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0']
1120s
1120s 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}
1120s
1120s 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
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'Global'
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
1120s
1120s 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
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
1120s
1120s 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}
1120s
1120s 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
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0
1120s
1120s 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']
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']}
1120s
1120s 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']}
1120s
1120s 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'}]}
1120s
1120s 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
1120s
1120s 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.
1120s
1120s 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'}]}
1120s
1120s 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
1120s
1120s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 782: Total number of devices received: 1
1120s
1120s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 783: Number of devices that are Unreachable or APs: 1
1120s
1120s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 784: Config Backup Operation can be performed on the following filtered devices: 0
1120s
1120s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {}
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 823: Retrieving device IDs for site: Global
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 809: Initiating retrieval of site details for site name: 'Global'.
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 813: Using 'get_site' API for Catalyst Center version: '2233'.
1120s
1120s 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'}.
1120s
1120s 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'}]}
1120s
1120s 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'}]}
1120s
1120s 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'.
1120s
1120s 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'.
1120s
1120s 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'.
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 664: Using 'get_membership' API for Catalyst Center version: '2233'.
1120s
1120s 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'}.
1120s
1120s 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'}
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 668: Received response from 'get_membership'. Extracting device IDs.
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 674: Retrieved device IDs from membership for site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': []
1120s
1120s 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'.
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 721: Device IDs retrieved from site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': []
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 763: Device details retrieved for site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b': []
1120s
1120s INFO logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 792: No reachable devices found at Site: 92ffce88-9fce-41d2-ae69-086fa74e9c4b
1120s
1120s 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).
1120s
1120s 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).
1120s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_banner _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Network_settings_workflow_manager_network_exception_update_banner(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.7.6",
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_update_network
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "Exception occurred while updating banner settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
1120s )
1120s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating banner[53 chars]a7: '
1120s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .
1120s E + Exception occurred while updating banner settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
1120s
1120s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:629: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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}
1120s ------------------------------ Captured log call -------------------------------
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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: .
1120s ______________ TestNetworkCompliance.test_sync_device_config_site ______________
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_sync_device_config_site(self):
1120s
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_log_level="DEBUG",
1120s dnac_log_append=False,
1120s state="merged",
1120s config=self.test_data.get("playbook_config_sync_device_config_site")
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:476:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/network_compliance_workflow_manager.py:1670: in main
1120s ccc_network_compliance.get_want(config).check_return_status()
1120s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
1120s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
1120s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list
1120s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name)
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def get_reachable_devices_from_site(self, site_name):
1120s """
1120s Retrieves a mapping of management IP addresses to instance IDs for reachable devices from a specified site.
1120s Args:
1120s site_id (str): The ID of the site from which to retrieve device details.
1120s Returns:
1120s tuple: A tuple containing:
1120s - dict: A mapping of management IP addresses to instance IDs for reachable devices.
1120s - list: A list of management IP addresses of skipped devices.
1120s """
1120s mgmt_ip_to_instance_id_map = {}
1120s skipped_devices_list = []
1120s
1120s (site_exists, site_id) = self.get_site_id(site_name)
1120s if not site_exists:
1120s self.msg = "Site '{0}' does not exist in the Cisco Catalyst Center, cannot proceed with device(s) retrieval.".format(site_name)
1120s self.fail_and_exit(self.msg)
1120s
1120s self.log("Initiating retrieval of device details for site ID: '{0}'.".format(site_id), "INFO")
1120s
1120s # Retrieve the list of device details from the specified site
1120s device_details_list = self.get_device_details_from_site(site_name, site_id)
1120s self.log("Device details retrieved for site ID: '{0}': {1}".format(site_id, device_details_list), "DEBUG")
1120s
1120s # Iterate through each device's details
1120s for device_info in device_details_list:
1120s > management_ip = device_info.get("managementIpAddress")
1120s E AttributeError: 'list' object has no attribute 'get'
1120s
1120s plugins/module_utils/dnac.py:767: AttributeError
1120s ----------------------------- Captured stdout call -----------------------------
1120s Inside load_fixtures
1120s Mock for DNACSDK._exec:
1120s Inside load_fixtures
1120s ------------------------------ Captured log call -------------------------------
1120s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
1120s
1120s 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}
1120s
1120s 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}]
1120s
1120s 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}]
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: None
1120s
1120s 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}
1120s
1120s 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
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': 'None' or 'site_name': 'Global'
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
1120s
1120s 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
1120s
1120s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
1120s
1120s 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}
1120s
1120s 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
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 823: Retrieving device IDs for site: Global
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 809: Initiating retrieval of site details for site name: 'Global'.
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 813: Using 'get_site' API for Catalyst Center version: '2233'.
1120s
1120s 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'}.
1120s
1120s 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'}]}
1120s
1120s 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'}]}
1120s
1120s 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'.
1120s
1120s 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'.
1120s
1120s 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'.
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 664: Using 'get_membership' API for Catalyst Center version: '2233'.
1120s
1120s 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'}.
1120s
1120s 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'}]}
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 668: Received response from 'get_membership'. Extracting device IDs.
1120s
1120s 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']
1120s
1120s 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']
1120s
1120s 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'.
1120s
1120s 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'}.
1120s
1120s 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'}
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '3bf3f269-88ae-48fc-910d-3263ba618f87'.
1120s
1120s 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'.
1120s
1120s 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'}.
1120s
1120s 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'}
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b'.
1120s
1120s 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'.
1120s
1120s 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'}.
1120s
1120s 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'}
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '9db11f54-8007-438c-ba9b-711513deecc6'.
1120s
1120s 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'.
1120s
1120s 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'}.
1120s
1120s 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'}
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: 'f490e92f-490e-4bb1-9519-770b1dc604c4'.
1120s
1120s 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'.
1120s
1120s 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'}.
1120s
1120s 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'}
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: 'e0bdf3e1-fbcf-4faa-a11c-156e32e7ae38'.
1120s
1120s 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'.
1120s
1120s 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'}.
1120s
1120s 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'}
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '37b05b0f-1b1e-496a-b101-8f277f0af8ff'.
1120s
1120s 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'.
1120s
1120s 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'}.
1120s
1120s 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'}
1120s
1120s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '778a27bb-d795-4fa3-a321-f2e693ebe1f4'.
1120s
1120s 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'}]
1120s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_global_pool_Updation_not_req _
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Network_settings_workflow_manager_global_pool_Updation_not_req(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_global_pool_updation
1120s )
1120s )
1120s result = self.execute_module(changed=True, failed=True)
1120s # print(result["response"][0].get("globalPool").get("msg"))
1120s # print(result)
1120s > self.assertEqual(
1120s result["response"][0].get("globalPool").get("msg"),
1120s {'Global_Pool2': "Global pool doesn't require an update", 'Global_Pool3': "Global pool doesn't require an update"}
1120s
1120s )
1120s E AssertionError: {} != {'Global_Pool2': "Global pool doesn't requ[67 chars]ate"}
1120s E - {}
1120s E + {'Global_Pool2': "Global pool doesn't require an update",
1120s E + 'Global_Pool3': "Global pool doesn't require an update"}
1120s
1120s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:1003: AssertionError
1120s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_global_pool_creation _
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Network_settings_workflow_manager_global_pool_creation(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_global_pool_creation
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:975:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/network_settings_workflow_manager.py:4301: in main
1120s ccc_network.check_return_status()
1120s plugins/module_utils/dnac.py:307: in check_return_status
1120s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def fail_json(*args, **kwargs):
1120s kwargs["failed"] = True
1120s > raise AnsibleFailJson(kwargs)
1120s 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}
1120s
1120s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
1120s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_global_pool_deletion _
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Network_settings_workflow_manager_global_pool_deletion(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="deleted",
1120s config_verify=True,
1120s config=self.playbook_config_global_pool_deletion
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:1026:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/network_settings_workflow_manager.py:4301: in main
1120s ccc_network.check_return_status()
1120s plugins/module_utils/dnac.py:307: in check_return_status
1120s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def fail_json(*args, **kwargs):
1120s kwargs["failed"] = True
1120s > raise AnsibleFailJson(kwargs)
1120s 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}
1120s
1120s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
1120s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_dns _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Network_settings_workflow_manager_network_exception_update_dns(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.7.6",
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_update_network
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "Exception occurred while updating DNS settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
1120s )
1120s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating DNS se[50 chars]a7: '
1120s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .
1120s E + Exception occurred while updating DNS settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
1120s
1120s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:604: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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}
1120s ------------------------------ Captured log call -------------------------------
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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: .
1120s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_timezone _
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Network_settings_workflow_manager_network_exception_update_timezone(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.7.6",
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_update_network
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "Exception occurred while updating time zone settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
1120s )
1120s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating time z[56 chars]a7: '
1120s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .
1120s E + Exception occurred while updating time zone settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
1120s
1120s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:579: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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}
1120s ------------------------------ Captured log call -------------------------------
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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: .
1120s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_ntp _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Network_settings_workflow_manager_network_exception_update_ntp(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.7.6",
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_update_network
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "Exception occurred while updating NTP settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
1120s )
1120s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating NTP se[50 chars]a7: '
1120s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .
1120s E + Exception occurred while updating NTP settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
1120s
1120s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:554: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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}
1120s ------------------------------ Captured log call -------------------------------
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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: .
1120s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_mandatory_aaa_param _
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Network_settings_workflow_manager_network_mandatory_aaa_param(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.7.6",
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_config_aaa_req
1120s )
1120s )
1120s > result = self.execute_module(changed=False, failed=True)
1120s
1120s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:902:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:107: in execute_module
1120s result = self.failed()
1120s tests/unit/modules/dnac/dnac_module.py:125: in failed
1120s self.module.main()
1120s plugins/modules/network_settings_workflow_manager.py:4316: in main
1120s ccc_network.get_diff_state_apply[state](config).check_return_status()
1120s plugins/modules/network_settings_workflow_manager.py:3824: in get_diff_merged
1120s self.update_network(network_management).check_return_status()
1120s plugins/modules/network_settings_workflow_manager.py:3790: in update_network
1120s self.check_tasks_response_status(response, "set_aaa_settings_for_a_site").check_return_status()
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def check_tasks_response_status(self, response, api_name):
1120s """
1120s Get the task response status from taskId
1120s Args:
1120s self: The current object details.
1120s response (dict): API response.
1120s api_name (str): API name.
1120s Returns:
1120s self (object): The current object with updated desired Fabric Transits information.
1120s Description:
1120s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE'
1120s state or till it reaches the maximum timeout.
1120s Log the task details and return self.
1120s """
1120s
1120s if not response:
1120s self.msg = "response is empty"
1120s self.status = "exited"
1120s return self
1120s
1120s if not isinstance(response, dict):
1120s self.msg = "response is not a dictionary"
1120s self.status = "exited"
1120s return self
1120s
1120s task_info = response.get("response")
1120s > if task_info.get("errorcode") is not None:
1120s E AttributeError: 'list' object has no attribute 'get'
1120s
1120s plugins/module_utils/dnac.py:1713: AttributeError
1120s ------------------------------ Captured log call -------------------------------
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_network_not_need_update _
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Network_settings_workflow_manager_network_network_not_need_update(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_config_network
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "Successfully retrieved details from the playbook"
1120s )
1120s E AssertionError: "The specified version '2.2.3.3' does not[94 chars]ds. " != 'Successfully retrieved details from the playbook'
1120s 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.
1120s E + Successfully retrieved details from the playbook
1120s
1120s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:454: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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}
1120s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_telemetry _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Network_settings_workflow_manager_network_exception_update_telemetry(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.7.6",
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_config_network
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "Exception occurred while updating telemetry settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
1120s )
1120s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating teleme[56 chars]a7: '
1120s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .
1120s E + Exception occurred while updating telemetry settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
1120s
1120s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:679: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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}
1120s ------------------------------ Captured log call -------------------------------
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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: .
1120s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_null_network_params _
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Network_settings_workflow_manager_network_null_network_params(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.5.3",
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_config_update_not_req
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "Successfully retrieved details from the playbook"
1120s )
1120s E AssertionError: "Exception occurred while updating the ne[37 chars]t': " != 'Successfully retrieved details from the playbook'
1120s E - Exception occurred while updating the network settings of 'Global/Testing/test':
1120s E + Successfully retrieved details from the playbook
1120s
1120s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:953: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'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}
1120s ------------------------------ Captured log call -------------------------------
1120s ERROR logger:dnac.py:294 NetworkSettings: update_network: 3730:
1120s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_update _
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Network_settings_workflow_manager_network_update(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.7.6",
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_update_network
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:502:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/network_settings_workflow_manager.py:4316: in main
1120s ccc_network.get_diff_state_apply[state](config).check_return_status()
1120s plugins/modules/network_settings_workflow_manager.py:3824: in get_diff_merged
1120s self.update_network(network_management).check_return_status()
1120s plugins/modules/network_settings_workflow_manager.py:3741: in update_network
1120s self.check_tasks_response_status(response, "set_dhcp_settings_for_a_site").check_return_status()
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def check_tasks_response_status(self, response, api_name):
1120s """
1120s Get the task response status from taskId
1120s Args:
1120s self: The current object details.
1120s response (dict): API response.
1120s api_name (str): API name.
1120s Returns:
1120s self (object): The current object with updated desired Fabric Transits information.
1120s Description:
1120s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE'
1120s state or till it reaches the maximum timeout.
1120s Log the task details and return self.
1120s """
1120s
1120s if not response:
1120s self.msg = "response is empty"
1120s self.status = "exited"
1120s return self
1120s
1120s if not isinstance(response, dict):
1120s self.msg = "response is not a dictionary"
1120s self.status = "exited"
1120s return self
1120s
1120s task_info = response.get("response")
1120s if task_info.get("errorcode") is not None:
1120s self.msg = response.get("response").get("detail")
1120s self.status = "failed"
1120s return self
1120s
1120s task_id = task_info.get("taskId")
1120s start_time = time.time()
1120s while True:
1120s elapsed_time = time.time() - start_time
1120s if elapsed_time >= self.max_timeout:
1120s self.msg = "Max timeout of {0} sec has reached for the task id '{1}'. " \
1120s .format(self.max_timeout, task_id) + \
1120s "Exiting the loop due to unexpected API '{0}' status.".format(api_name)
1120s self.log(self.msg, "WARNING")
1120s self.status = "failed"
1120s break
1120s
1120s task_details = self.get_tasks_by_id(task_id)
1120s self.log('Getting tasks details from task ID {0}: {1}'
1120s .format(task_id, task_details), "DEBUG")
1120s
1120s > task_status = task_details.get("status")
1120s E AttributeError: 'list' object has no attribute 'get'
1120s
1120s plugins/module_utils/dnac.py:1734: AttributeError
1120s ------------------------------ Captured log call -------------------------------
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_assign_wired_device_to_site _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_provision_workflow_manager_playbook_assign_wired_device_to_site(self):
1120s """
1120s Test case for add device with full crendentials.
1120s
1120s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_assign_wired_device_to_site
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_provision_workflow_manager.py:152:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/provision_workflow_manager.py:1809: in main
1120s ccc_provision.get_diff_state_apply[state]().check_return_status()
1120s plugins/modules/provision_workflow_manager.py:1044: in get_diff_merged
1120s self.provision_wired_device(to_provisioning, to_force_provisioning)
1120s plugins/modules/provision_workflow_manager.py:1143: in provision_wired_device
1120s device_id = self.get_device_id()
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def get_device_id(self):
1120s """
1120s Fetches the UUID of the device added in the inventory
1120s
1120s Parameters:
1120s - self: The instance of the class containing the 'config' attribute
1120s to be validated.
1120s Returns:
1120s The method returns the serial number of the device as a string. If it fails, it returns None.
1120s Example:
1120s After creating the validated input, this method retrieves the
1120s UUID of the device.
1120s """
1120s
1120s dev_response = self.dnac_apply['exec'](
1120s family="devices",
1120s function='get_network_device_by_ip',
1120s params={"ip_address": self.validated_config["management_ip_address"]}
1120s )
1120s
1120s self.log("The device response from 'get_network_device_by_ip' API is {0}".format(str(dev_response)), "DEBUG")
1120s dev_dict = dev_response.get("response")
1120s > device_id = dev_dict.get("id")
1120s E AttributeError: 'NoneType' object has no attribute 'get'
1120s
1120s plugins/modules/provision_workflow_manager.py:490: AttributeError
1120s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_del_provision_device _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_provision_workflow_manager_playbook_del_provision_device(self):
1120s """
1120s Test case for add device with full crendentials.
1120s
1120s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="deleted",
1120s config_verify=True,
1120s config=self.playbook_del_provision_device
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_provision_workflow_manager.py:176:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/provision_workflow_manager.py:1809: in main
1120s ccc_provision.get_diff_state_apply[state]().check_return_status()
1120s plugins/modules/provision_workflow_manager.py:1596: in get_diff_deleted
1120s device_id = self.get_device_id()
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def get_device_id(self):
1120s """
1120s Fetches the UUID of the device added in the inventory
1120s
1120s Parameters:
1120s - self: The instance of the class containing the 'config' attribute
1120s to be validated.
1120s Returns:
1120s The method returns the serial number of the device as a string. If it fails, it returns None.
1120s Example:
1120s After creating the validated input, this method retrieves the
1120s UUID of the device.
1120s """
1120s
1120s dev_response = self.dnac_apply['exec'](
1120s family="devices",
1120s function='get_network_device_by_ip',
1120s params={"ip_address": self.validated_config["management_ip_address"]}
1120s )
1120s
1120s self.log("The device response from 'get_network_device_by_ip' API is {0}".format(str(dev_response)), "DEBUG")
1120s dev_dict = dev_response.get("response")
1120s > device_id = dev_dict.get("id")
1120s E AttributeError: 'list' object has no attribute 'get'
1120s
1120s plugins/modules/provision_workflow_manager.py:490: AttributeError
1120s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_force_provision_device _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_provision_workflow_manager_playbook_force_provision_device(self):
1120s """
1120s Test case for add device with full crendentials.
1120s
1120s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="merged",
1120s config=self.playbook_force_provision_device
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_provision_workflow_manager.py:248:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/provision_workflow_manager.py:1809: in main
1120s ccc_provision.get_diff_state_apply[state]().check_return_status()
1120s plugins/modules/provision_workflow_manager.py:1044: in get_diff_merged
1120s self.provision_wired_device(to_provisioning, to_force_provisioning)
1120s plugins/modules/provision_workflow_manager.py:1143: in provision_wired_device
1120s device_id = self.get_device_id()
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def get_device_id(self):
1120s """
1120s Fetches the UUID of the device added in the inventory
1120s
1120s Parameters:
1120s - self: The instance of the class containing the 'config' attribute
1120s to be validated.
1120s Returns:
1120s The method returns the serial number of the device as a string. If it fails, it returns None.
1120s Example:
1120s After creating the validated input, this method retrieves the
1120s UUID of the device.
1120s """
1120s
1120s dev_response = self.dnac_apply['exec'](
1120s family="devices",
1120s function='get_network_device_by_ip',
1120s params={"ip_address": self.validated_config["management_ip_address"]}
1120s )
1120s
1120s self.log("The device response from 'get_network_device_by_ip' API is {0}".format(str(dev_response)), "DEBUG")
1120s dev_dict = dev_response.get("response")
1120s > device_id = dev_dict.get("id")
1120s E AttributeError: 'list' object has no attribute 'get'
1120s
1120s plugins/modules/provision_workflow_manager.py:490: AttributeError
1120s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_provision_device _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_provision_workflow_manager_playbook_provision_device(self):
1120s """
1120s Test case for add device with full crendentials.
1120s
1120s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="merged",
1120s config=self.playbook_provision_device
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_provision_workflow_manager.py:199:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/provision_workflow_manager.py:1809: in main
1120s ccc_provision.get_diff_state_apply[state]().check_return_status()
1120s plugins/modules/provision_workflow_manager.py:1044: in get_diff_merged
1120s self.provision_wired_device(to_provisioning, to_force_provisioning)
1120s plugins/modules/provision_workflow_manager.py:1143: in provision_wired_device
1120s device_id = self.get_device_id()
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def get_device_id(self):
1120s """
1120s Fetches the UUID of the device added in the inventory
1120s
1120s Parameters:
1120s - self: The instance of the class containing the 'config' attribute
1120s to be validated.
1120s Returns:
1120s The method returns the serial number of the device as a string. If it fails, it returns None.
1120s Example:
1120s After creating the validated input, this method retrieves the
1120s UUID of the device.
1120s """
1120s
1120s dev_response = self.dnac_apply['exec'](
1120s family="devices",
1120s function='get_network_device_by_ip',
1120s params={"ip_address": self.validated_config["management_ip_address"]}
1120s )
1120s
1120s self.log("The device response from 'get_network_device_by_ip' API is {0}".format(str(dev_response)), "DEBUG")
1120s dev_dict = dev_response.get("response")
1120s > device_id = dev_dict.get("id")
1120s E AttributeError: 'list' object has no attribute 'get'
1120s
1120s plugins/modules/provision_workflow_manager.py:490: AttributeError
1120s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_wireless_provision _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_provision_workflow_manager_playbook_wireless_provision(self):
1120s """
1120s Test case for add device with full crendentials.
1120s
1120s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="merged",
1120s > config=self.playbook_wireless_provisionZ
1120s )
1120s )
1120s E AttributeError: 'TestDnacProvisionWorkflow' object has no attribute 'playbook_wireless_provisionZ'. Did you mean: 'playbook_wireless_provision'?
1120s
1120s tests/unit/modules/dnac/test_provision_workflow_manager.py:268: AttributeError
1120s _ TestDnacRmaIntent.test_rma_workflow_manager_deploy_workflow_failure_unmark_failure _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_rma_workflow_manager_deploy_workflow_failure_unmark_failure(self):
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="replaced",
1120s config=self.playbook_config_valid
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "Error while unmarking device for replacement: Task failed. | Unmarking result: Error while unmarking device for replacement: Task failed."
1120s )
1120s E AssertionError: 'The replacement device is not reachable. [46 chars]ent.' != 'Error while unmarking device for replacem[92 chars]led.'
1120s E - The replacement device is not reachable. Unable to proceed with the RMA device replacement.
1120s E + Error while unmarking device for replacement: Task failed. | Unmarking result: Error while unmarking device for replacement: Task failed.
1120s
1120s tests/unit/modules/dnac/test_rma_workflow_manager.py:310: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'msg': 'The replacement device is not reachable. Unable to proceed with the RMA device replacement.', 'response': [], 'failed': True}
1120s ------------------------------ Captured log call -------------------------------
1120s 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.
1120s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_not_verified __
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Network_settings_workflow_manager_not_verified(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s dnac_version="2.3.7.6",
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_config_network
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=True)
1120s
1120s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:477:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:107: in execute_module
1120s result = self.failed()
1120s tests/unit/modules/dnac/dnac_module.py:125: in failed
1120s self.module.main()
1120s plugins/modules/network_settings_workflow_manager.py:4316: in main
1120s ccc_network.get_diff_state_apply[state](config).check_return_status()
1120s plugins/modules/network_settings_workflow_manager.py:3824: in get_diff_merged
1120s self.update_network(network_management).check_return_status()
1120s plugins/modules/network_settings_workflow_manager.py:3741: in update_network
1120s self.check_tasks_response_status(response, "set_dhcp_settings_for_a_site").check_return_status()
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def check_tasks_response_status(self, response, api_name):
1120s """
1120s Get the task response status from taskId
1120s Args:
1120s self: The current object details.
1120s response (dict): API response.
1120s api_name (str): API name.
1120s Returns:
1120s self (object): The current object with updated desired Fabric Transits information.
1120s Description:
1120s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE'
1120s state or till it reaches the maximum timeout.
1120s Log the task details and return self.
1120s """
1120s
1120s if not response:
1120s self.msg = "response is empty"
1120s self.status = "exited"
1120s return self
1120s
1120s if not isinstance(response, dict):
1120s self.msg = "response is not a dictionary"
1120s self.status = "exited"
1120s return self
1120s
1120s task_info = response.get("response")
1120s if task_info.get("errorcode") is not None:
1120s self.msg = response.get("response").get("detail")
1120s self.status = "failed"
1120s return self
1120s
1120s task_id = task_info.get("taskId")
1120s start_time = time.time()
1120s while True:
1120s elapsed_time = time.time() - start_time
1120s if elapsed_time >= self.max_timeout:
1120s self.msg = "Max timeout of {0} sec has reached for the task id '{1}'. " \
1120s .format(self.max_timeout, task_id) + \
1120s "Exiting the loop due to unexpected API '{0}' status.".format(api_name)
1120s self.log(self.msg, "WARNING")
1120s self.status = "failed"
1120s break
1120s
1120s task_details = self.get_tasks_by_id(task_id)
1120s self.log('Getting tasks details from task ID {0}: {1}'
1120s .format(task_id, task_details), "DEBUG")
1120s
1120s > task_status = task_details.get("status")
1120s E AttributeError: 'list' object has no attribute 'get'
1120s
1120s plugins/module_utils/dnac.py:1734: AttributeError
1120s ------------------------------ Captured log call -------------------------------
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s
1120s 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)
1120s _ TestDnacRmaIntent.test_rma_workflow_manager_deploy_workflow_failure_unmark_success _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_rma_workflow_manager_deploy_workflow_failure_unmark_success(self):
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="replaced",
1120s config=self.playbook_config_valid
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_rma_workflow_manager.py:326:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/rma_workflow_manager.py:1434: in main
1120s ccc_device_replacement.rma_device_replacement_pre_check().check_return_status()
1120s plugins/module_utils/dnac.py:307: in check_return_status
1120s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def fail_json(*args, **kwargs):
1120s kwargs["failed"] = True
1120s > raise AnsibleFailJson(kwargs)
1120s 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}
1120s
1120s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
1120s ------------------------------ Captured log call -------------------------------
1120s 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.
1120s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_reserve_pool_creation _
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Network_settings_workflow_manager_reserve_pool_creation(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="merged",
1120s config_verify=True,
1120s config=self.playbook_config_reserve_pool
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:1075:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/network_settings_workflow_manager.py:4301: in main
1120s ccc_network.check_return_status()
1120s plugins/module_utils/dnac.py:307: in check_return_status
1120s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def fail_json(*args, **kwargs):
1120s kwargs["failed"] = True
1120s > raise AnsibleFailJson(kwargs)
1120s 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}
1120s
1120s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
1120s _____ TestDnacRmaIntent.test_rma_workflow_manager_deploy_workflow_success ______
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_rma_workflow_manager_deploy_workflow_success(self):
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="replaced",
1120s config=self.playbook_config_valid
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_rma_workflow_manager.py:290:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/rma_workflow_manager.py:1434: in main
1120s ccc_device_replacement.rma_device_replacement_pre_check().check_return_status()
1120s plugins/module_utils/dnac.py:307: in check_return_status
1120s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def fail_json(*args, **kwargs):
1120s kwargs["failed"] = True
1120s > raise AnsibleFailJson(kwargs)
1120s 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}
1120s
1120s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
1120s ------------------------------ Captured log call -------------------------------
1120s 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.
1120s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_reserve_pool_deletion _
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Network_settings_workflow_manager_reserve_pool_deletion(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="deleted",
1120s config_verify=True,
1120s config=self.playbook_config_reserve_pool_deletion
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:1050:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/network_settings_workflow_manager.py:4301: in main
1120s ccc_network.check_return_status()
1120s plugins/module_utils/dnac.py:307: in check_return_status
1120s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def fail_json(*args, **kwargs):
1120s kwargs["failed"] = True
1120s > raise AnsibleFailJson(kwargs)
1120s 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}
1120s
1120s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
1120s _______ TestDnacRmaIntent.test_rma_workflow_manager_mark_device_failure ________
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_rma_workflow_manager_mark_device_failure(self):
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="replaced",
1120s config=self.playbook_config_valid
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "An error occurred during the operation"
1120s )
1120s E AssertionError: 'The replacement device is not reachable. [46 chars]ent.' != 'An error occurred during the operation'
1120s E - The replacement device is not reachable. Unable to proceed with the RMA device replacement.
1120s E + An error occurred during the operation
1120s
1120s tests/unit/modules/dnac/test_rma_workflow_manager.py:274: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'msg': 'The replacement device is not reachable. Unable to proceed with the RMA device replacement.', 'response': [], 'failed': True}
1120s ------------------------------ Captured log call -------------------------------
1120s 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.
1120s _ TestDnacRmaIntent.test_rma_workflow_manager_mark_device_for_replacement_exception _
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_rma_workflow_manager_mark_device_for_replacement_exception(self):
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="replaced",
1120s config=self.playbook_config_valid
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "Exception occurred while marking device for replacement: "
1120s )
1120s E AssertionError: 'The replacement device is not reachable. [46 chars]ent.' != 'Exception occurred while marking device for replacement: '
1120s E - The replacement device is not reachable. Unable to proceed with the RMA device replacement.
1120s E + Exception occurred while marking device for replacement:
1120s
1120s tests/unit/modules/dnac/test_rma_workflow_manager.py:256: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'msg': 'The replacement device is not reachable. Unable to proceed with the RMA device replacement.', 'response': [], 'failed': True}
1120s ------------------------------ Captured log call -------------------------------
1120s 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.
1120s ___ TestDnacRmaIntent.test_rma_workflow_manager_replacement_device_not_found ___
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_rma_workflow_manager_replacement_device_not_found(self):
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_log=True,
1120s state="replaced",
1120s config=self.playbook_config_device_not_found
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s print(result)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "Replacement device '204.1.2.19' not found in Cisco Catalyst Center"
1120s )
1120s E AssertionError: "Replacement device '204.1.2.19' not found in PnP" != "Replacement device '204.1.2.19' not found in Cisco Catalyst Center"
1120s E - Replacement device '204.1.2.19' not found in PnP
1120s E ? ^ ^
1120s E + Replacement device '204.1.2.19' not found in Cisco Catalyst Center
1120s E ? ^^^^^^^^^^^^^^^^^ ^^^
1120s
1120s tests/unit/modules/dnac/test_rma_workflow_manager.py:220: AssertionError
1120s ----------------------------- Captured stdout call -----------------------------
1120s {'msg': "Replacement device '204.1.2.19' not found in PnP", 'response': [], 'failed': True}
1120s ------------------------------ Captured log call -------------------------------
1120s ERROR logger:dnac.py:294 DeviceReplacement: device_exists: 802: No valid response received from Cisco Catalyst Center
1120s
1120s ERROR logger:dnac.py:294 DeviceReplacement: pnp_device_exists: 713: Invalid identifier type provided
1120s
1120s ERROR logger:dnac.py:294 DeviceReplacement: get_have: 586: Replacement device '204.1.2.19' not found in PnP
1120s __________ TestDnacPnpWorkflow.test_pnp_workflow_manager_claim_switch __________
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_pnp_workflow_manager_claim_switch(self):
1120s """
1120s Test case for PNP workflow manager when add and claim switch device.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_version="2.3.7.6",
1120s dnac_log=True,
1120s config_verify=True,
1120s state="merged",
1120s config=self.playbook_config_switch
1120s )
1120s )
1120s > result = self.execute_module(changed=False, failed=True)
1120s
1120s tests/unit/modules/dnac/test_pnp_workflow_manager.py:193:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:107: in execute_module
1120s result = self.failed()
1120s tests/unit/modules/dnac/dnac_module.py:125: in failed
1120s self.module.main()
1120s plugins/modules/pnp_workflow_manager.py:1414: in main
1120s ccc_pnp.get_diff_state_apply[state]().check_return_status()
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def get_diff_merged(self):
1120s """
1120s If given device doesnot exist
1120s then add it to pnp database and get the device id
1120s Args:
1120s self: An instance of a class used for interacting with Cisco Catalyst Center.
1120s Returns:
1120s object: An instance of the class with updated results and status
1120s based on the processing of differences. Based on the length of devices passed
1120s it adds/claims or does both.
1120s Description:
1120s The function processes the differences and, depending on the
1120s changes required, it may add, update,or resynchronize devices in
1120s Cisco Catalyst Center. The updated results and status are stored in the
1120s class instance for further use.
1120s """
1120s
1120s if not isinstance(self.want.get("pnp_params"), list):
1120s self.msg = "Device Info must be passed as a list"
1120s self.log(self.msg, "ERROR")
1120s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status()
1120s
1120s if len(self.want.get("pnp_params")) > 1:
1120s devices_added = []
1120s for device in self.want.get("pnp_params"):
1120s multi_device_response = self.get_device_list_pnp(device["deviceInfo"]["serialNumber"])
1120s self.log("Device details for serial number {0} \
1120s obtained from the API 'get_device_list': {1}".format(device["deviceInfo"]["serialNumber"],
1120s str(multi_device_response)), "DEBUG")
1120s if (multi_device_response and (len(multi_device_response) == 1)):
1120s devices_added.append(device)
1120s self.log("Details of the added device:{0}".format(str(device)), "INFO")
1120s if (len(self.want.get("pnp_params")) - len(devices_added)) == 0:
1120s self.result['response'] = []
1120s self.result['msg'] = "Devices are already added"
1120s self.log(self.result['msg'], "WARNING")
1120s return self
1120s
1120s bulk_list = [
1120s device
1120s for device in self.want.get("pnp_params")
1120s if device not in devices_added
1120s ]
1120s bulk_params = self.dnac_apply['exec'](
1120s family="device_onboarding_pnp",
1120s function="import_devices_in_bulk",
1120s params={"payload": bulk_list},
1120s op_modifies=True,
1120s )
1120s self.log("Response from API 'import_devices_in_bulk' for imported devices: {0}".format(bulk_params), "DEBUG")
1120s if len(bulk_params.get("successList")) > 0:
1120s self.result['msg'] = "{0} device(s) imported successfully".format(
1120s len(bulk_params.get("successList")))
1120s self.log(self.result['msg'], "INFO")
1120s self.result['response'] = bulk_params
1120s self.result['diff'] = self.validated_config
1120s self.result['changed'] = True
1120s return self
1120s elif len(bulk_params.get("failureList")) > 0:
1120s self.msg = "Unable to import below {0} device(s). ".format(
1120s len(bulk_params.get("failureList")))
1120s self.set_operation_result("failed", False, self.msg, "ERROR",
1120s bulk_params).check_return_status()
1120s
1120s self.msg = "Bulk import failed"
1120s self.log(self.msg, "CRITICAL")
1120s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status()
1120s
1120s provisioned_count_params = {
1120s "serial_number": self.want.get("serial_number"),
1120s "state": "Provisioned"
1120s }
1120s
1120s planned_count_params = {
1120s "serial_number": self.want.get("serial_number"),
1120s "state": "Planned"
1120s }
1120s
1120s if not self.have.get("device_found"):
1120s if not self.want['pnp_params']:
1120s self.msg = "Device needs to be added before claiming. Please add device_info"
1120s self.log(self.msg, "ERROR")
1120s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status()
1120s
1120s if not self.want["site_name"]:
1120s self.log("Adding device to pnp database", "INFO")
1120s dev_add_response = self.add_pnp_device(self.want.get('pnp_params')[0])
1120s self.have["deviceInfo"] = dev_add_response.get("deviceInfo")
1120s self.log("Response from API 'add device' for a single device addition: {0}".format(str(dev_add_response)), "DEBUG")
1120s
1120s if self.have["deviceInfo"]:
1120s self.result['msg'] = "Only Device Added Successfully"
1120s self.log(self.result['msg'], "INFO")
1120s self.result['response'] = dev_add_response
1120s self.result['diff'] = self.validated_config
1120s self.result['changed'] = True
1120s else:
1120s self.msg = "Device Addition Failed"
1120s self.log(self.result['msg'], "CRITICAL")
1120s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status()
1120s
1120s return self
1120s
1120s else:
1120s self.log("Adding device to pnp database")
1120s dev_add_response = self.add_pnp_device(self.want.get('pnp_params')[0])
1120s self.get_have().check_return_status()
1120s self.have["deviceInfo"] = dev_add_response.get("deviceInfo")
1120s self.log("Response from API 'add device' for single device addition: {0}".format(str(dev_add_response)), "DEBUG")
1120s claim_params = self.get_claim_params()
1120s claim_params["deviceId"] = dev_add_response.get("id")
1120s
1120s claim_response = self.claim_device_site(claim_params)
1120s self.log("Response from API 'claim a device to a site' for a single claiming: {0}".format(str(claim_response)), "DEBUG")
1120s
1120s if claim_response.get("response") == "Device Claimed" and self.have["deviceInfo"]:
1120s self.result['msg'] = "Device Added and Claimed Successfully"
1120s self.log(self.result['msg'], "INFO")
1120s self.result['response'] = claim_response
1120s self.result['diff'] = self.validated_config
1120s self.result['changed'] = True
1120s
1120s else:
1120s self.msg = "Device Claim Failed"
1120s > self.log(self.result['msg'], "CRITICAL")
1120s E KeyError: 'msg'
1120s
1120s plugins/modules/pnp_workflow_manager.py:985: KeyError
1120s ------------------------------ Captured log call -------------------------------
1120s WARNING logger:dnac.py:294 PnP: get_device_list_pnp: 1219: No device found with serial number: FOC2439LA89
1120s
1120s WARNING logger:dnac.py:294 PnP: get_have: 701: Device with serial number FOC2439LA89 is not found in the inventory
1120s
1120s WARNING logger:dnac.py:294 PnP: get_diff_merged: 965: Adding device to pnp database
1120s
1120s WARNING logger:dnac.py:294 PnP: get_device_list_pnp: 1219: No device found with serial number: FOC2439LA89
1120s
1120s WARNING logger:dnac.py:294 PnP: get_have: 701: Device with serial number FOC2439LA89 is not found in the inventory
1120s _______ TestDnacSiteWorkflow.test_Site_workflow_manager_create_bulk_site _______
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Site_workflow_manager_create_bulk_site(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_version="2.3.7.6",
1120s dnac_log=True,
1120s state="merged",
1120s config=self.upload_floor_map_playbook
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_site_workflow_manager.py:274:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/site_workflow_manager.py:2520: in main
1120s ccc_site.validate_site_input_data(ccc_site.validated_config, state).check_return_status()
1120s plugins/module_utils/dnac.py:307: in check_return_status
1120s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def fail_json(*args, **kwargs):
1120s kwargs["failed"] = True
1120s > raise AnsibleFailJson(kwargs)
1120s 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}
1120s
1120s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
1120s ------------------------------ Captured log call -------------------------------
1120s ERROR logger:dnac.py:294 Site: validate_site_input_data: 1188: Missing 'name' field in entry.
1120s
1120s ERROR logger:dnac.py:294 Site: validate_site_input_data: 1196: Missing 'parent_name' field in entry.
1120s
1120s 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'
1120s _________ TestDnacSiteWorkflow.test_Site_workflow_manager_update_site __________
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s def get_diff_merged(self, config):
1120s """
1120s Update/Create site information in Cisco Catalyst Center with fields
1120s provided in the playbook.
1120s Parameters:
1120s self (object): An instance of a class used for interacting with Cisco Catalyst Center.
1120s config (dict): A dictionary containing configuration information.
1120s Returns:
1120s self (object): An instance of a class used for interacting with Cisco Catalyst Center.
1120s Description:
1120s This method determines whether to update or create a site in Cisco Catalyst Center based on the provided
1120s configuration information. If the specified site exists, the method checks if it requires an update
1120s by calling the 'site_requires_update' method. If an update is required, it calls the 'update_site'
1120s function from the 'sites' family of the Cisco Catalyst Center API. If the site does not require an update,
1120s the method exits, indicating that the site is up to date.
1120s """
1120s site_updated = False
1120s site_created = False
1120s
1120s if self.compare_dnac_versions(self.get_ccc_version(), "2.3.7.6") >= 0:
1120s self.handle_config['area'] = []
1120s self.handle_config['building'] = []
1120s self.handle_config['floor'] = []
1120s try:
1120s create_site = copy.deepcopy(self.handle_config["create_site"])
1120s if len(create_site) > 0:
1120s self.log("Starting site creation process.", "DEBUG")
1120s for each_config in create_site:
1120s payload_data = self.change_payload_data(each_config.get("want"))
1120s if payload_data:
1120s payload_data[self.keymap["parent_name_hierarchy"]] =\
1120s payload_data.get(self.keymap["parent_name"])
1120s del payload_data[self.keymap["parent_name"]]
1120s self.log("Payload data prepared for site creation: {}".format(payload_data), "DEBUG")
1120s
1120s if payload_data.get("type") == "area":
1120s self.handle_config["area"].append(payload_data)
1120s self.log("Added to area: {}".format(payload_data), "DEBUG")
1120s elif payload_data.get("type") == "building":
1120s self.handle_config["building"].append(payload_data)
1120s self.log("Added to building: {}".format(payload_data), "DEBUG")
1120s elif payload_data.get("type") == "floor":
1120s self.handle_config["floor"].append(payload_data)
1120s self.log("Added to floor: {}".format(payload_data), "DEBUG")
1120s for each_type in ("area", "building", "floor"):
1120s if self.handle_config[each_type]:
1120s self.log("Processing configurations for '{0}'.".format(each_type), "DEBUG")
1120s for create_config in self.handle_config[each_type]:
1120s self.log("Handling configuration: {0}".format(create_config), "DEBUG")
1120s parent_name = create_config.get(self.keymap.get("parent_name_hierarchy"))
1120s if not parent_name:
1120s self.msg = "No parent name found in configuration for '{0}'.".format(each_type)
1120s self.log(self.msg, "DEBUG")
1120s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status()
1120s self.log("Checking if parent site '{0}' exists in the hierarchy.".format(parent_name), "DEBUG")
1120s
1120s site_exists = self.is_site_exist(parent_name)
1120s if not site_exists:
1120s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name)
1120s self.log(self.msg, "DEBUG")
1120s self.site_absent_list.append(str(parent_name) + " does not exist ")
1120s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status()
1120s
1120s response = self.creating_bulk_site(self.handle_config[each_type])
1120s self.log("Response from creating_bulk_site for {}: {}".format(each_type, response), "DEBUG")
1120s
1120s if response and isinstance(response, dict) and "response" in response:
1120s task_id = response["response"].get("taskId")
1120s if task_id:
1120s self.log("Task Id for the 'site_creation' task is {}".format(task_id), "INFO")
1120s
1120s task_name = "create_sites"
1120s success_msg = "Site created successfully."
1120s self.get_task_status_from_tasks_by_id(task_id, task_name, success_msg)
1120s
1120s for site in self.handle_config[each_type]:
1120s if "name" in site:
1120s self.created_site_list.append(str(each_type) + ": " + str(site.get("name")))
1120s
1120s self.log("Site '{}' created successfully".format(self.created_site_list), "INFO")
1120s
1120s for site in self.handle_config[each_type]:
1120s if site.get("type") == "floor":
1120s floor_name = site.get("name")
1120s self.log("Floor '{}' has been created successfully.".format(floor_name), "INFO")
1120s
1120s upload_path = site.get("upload_floor_image_path", None)
1120s if upload_path:
1120s self.log("Upload path found for floor '{}'. Starting upload floor map from '{}.'".
1120s format(floor_name, upload_path), "INFO")
1120s
1120s map_details, map_status, success_message = self.upload_floor_image(site)
1120s if map_details:
1120s self.log("Floor map for '{}' uploaded successfully: {}".
1120s format(floor_name, success_message), "INFO")
1120s else:
1120s self.log("Floor map upload failed for '{}'. Please check the upload path and retry.".
1120s format(floor_name), "ERROR")
1120s else:
1120s self.log("No upload path provided for '{}'. Floor created without floor map.".
1120s format(floor_name), "INFO")
1120s else:
1120s self.log("No valid task ID received from the 'creating_bulk_site' response.", "WARNING")
1120s return None
1120s else:
1120s self.log("No response received from the 'creating_bulk_site' API call.", "WARNING")
1120s return None
1120s
1120s task_detail_list = []
1120s for each_config in self.have:
1120s site_name_hierarchy = each_config.get("site_name_hierarchy")
1120s
1120s if each_config.get("site_exists"):
1120s self.log("Processing site: {}".format(site_name_hierarchy), "DEBUG")
1120s payload_new = self.change_payload_data(each_config.get("want"))
1120s if payload_new.get("type") == "area":
1120s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy)
1120s self.log(self.msg, "INFO")
1120s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy)
1120s elif payload_new.get("type") in ("building", "floor"):
1120s site_params = each_config.get("site_params")
1120s site_params["site_id"] = each_config.get("site_id")
1120s site_type = site_params.get("type")
1120s
1120s if self.site_requires_update(each_config):
1120s self.log("Site requires update, starting update for type: {}".format(site_type), "DEBUG")
1120s response = (self.update_floor(site_params, payload_new) if site_type == "floor"
1120s else self.update_area(site_params) if site_type == "area"
1120s else self.update_building(site_params) if site_type == "building"
1120s else self.log("Unknown site type: {0}".format(site_type), "ERROR"))
1120s
1120s self.log("Received API response from 'update_site': {0}".
1120s format(str(response)), "DEBUG")
1120s
1120s if response and isinstance(response, dict):
1120s taskid = response["response"]["taskId"]
1120s
1120s while True:
1120s task_details = self.get_task_details(taskid)
1120s if site_type != "floor":
1120s if task_details.get("progress") == "Group is updated successfully":
1120s task_detail_list.append(task_details)
1120s self.updated_site_list.append(site_type + ": " + site_name_hierarchy)
1120s self.log("Site '{}' updated successfully.".format(site_name_hierarchy), "INFO")
1120s break
1120s else:
1120s if task_details.get("progress") == "Service domain is updated successfully.":
1120s task_detail_list.append(task_details)
1120s self.updated_site_list.append(site_type + ": " + site_name_hierarchy)
1120s break
1120s
1120s if task_details.get("bapiError"):
1120s msg = task_details.get("bapiError")
1120s self.set_operation_result("failed", False, msg, "ERROR",
1120s task_details).check_return_status()
1120s break
1120s else:
1120s self.msg = "Unable to execute the update the site: {0} ".format(site_name_hierarchy)
1120s self.log(self.msg, "INFO")
1120s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status()
1120s else:
1120s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy)
1120s self.log(self.msg, "INFO")
1120s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy)
1120s except Exception as e:
1120s self.log("Yaml is not available for bulk: {}".format(str(e)), "ERROR")
1120s
1120s return self
1120s
1120s else:
1120s site_params = self.want.get("site_params")
1120s site_type = site_params.get("type")
1120s if self.have.get("site_exists"):
1120s site_name_hierarchy = self.want.get("site_name_hierarchy")
1120s if not self.site_requires_update():
1120s self.update_not_needed_sites.append(site_type + ": " + site_name_hierarchy)
1120s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy)
1120s self.log(self.msg, "INFO")
1120s else:
1120s try:
1120s site_params["site_id"] = self.have.get("site_id")
1120s self.log("Site parameters prepared for update: {}".format(site_params))
1120s self.log("Site update process started.", "INFO")
1120s
1120s if site_params['site'].get('building'):
1120s building_details = {}
1120s for key, value in site_params['site']['building'].items():
1120s if value is not None:
1120s building_details[key] = value
1120s
1120s site_params['site']['building'] = building_details
1120s
1120s response = self.dnac._exec(
1120s family="sites",
1120s function='update_site',
1120s op_modifies=True,
1120s params=site_params,
1120s )
1120s self.log("Received API response from 'update_site': {0}".format(str(response)), "DEBUG")
1120s
1120s if response and isinstance(response, dict):
1120s execution_id = response.get("executionId")
1120s while True:
1120s execution_details = self.get_execution_details(execution_id)
1120s if execution_details.get("status") == "SUCCESS":
1120s self.result['changed'] = True
1120s site_updated = True
1120s self.updated_site_list.append(str(site_type) + ": " + str(site_name_hierarchy))
1120s self.log("Site - {0} Updated Successfully".format(site_name_hierarchy), "INFO")
1120s break
1120s elif execution_details.get("bapiError"):
1120s self.msg = "Unable to Update: " + execution_details.get("bapiError")
1120s self.set_operation_result("failed", False, self.msg, "ERROR",
1120s execution_details).check_return_status()
1120s
1120s except Exception as e:
1120s self.msg = "Unexpected error occurred while update: {0}".format(str(e))
1120s self.log(self.msg, "ERROR")
1120s self.set_operation_result("failed", False, self.msg, "ERROR",
1120s site_name_hierarchy).check_return_status()
1120s
1120s else:
1120s try:
1120s try:
1120s if site_params['site'].get('building'):
1120s building_details = {}
1120s for key, value in site_params['site']['building'].items():
1120s if value is not None:
1120s building_details[key] = value
1120s
1120s site_params['site']['building'] = building_details
1120s
1120s except Exception as e:
1120s site_type = site_params['type']
1120s name = site_params['site'][site_type]['name']
1120s self.log("The site '{0}' is not categorized as a building; no need to filter 'None' values.".
1120s format(name), "INFO")
1120s
1120s site_type = site_params['type']
1120s parent_name = site_params.get('site').get(site_type).get('parentName')
1120s try:
1120s response = self.get_site_v1(parent_name)
1120s if not response:
1120s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name)
1120s self.log(self.msg, "DEBUG")
1120s self.site_absent_list.append(str(parent_name) + " does not exist ")
1120s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status()
1120s except Exception as e:
1120s self.log("No response received from 'get_site_v1' API for site: {0}".format(parent_name + str(e)), "ERROR")
1120s
1120s > response = self.dnac._exec(
1120s family="sites",
1120s function='create_site',
1120s op_modifies=True,
1120s params=site_params,
1120s )
1120s
1120s plugins/modules/site_workflow_manager.py:1868:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s /usr/lib/python3.13/unittest/mock.py:1169: in __call__
1120s return self._mock_call(*args, **kwargs)
1120s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call
1120s return self._execute_mock_call(*args, **kwargs)
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s self = , args = ()
1120s kwargs = {'family': 'sites', 'function': 'create_site', 'op_modifies': True, 'params': {'site': {'area': {'name': 'japan8888', 'parentName': 'Global'}}, 'type': 'area'}}
1120s effect = , result = Exception()
1120s
1120s def _execute_mock_call(self, /, *args, **kwargs):
1120s # separate from _increment_mock_call so that awaited functions are
1120s # executed separately from their call, also AsyncMock overrides this method
1120s
1120s effect = self.side_effect
1120s if effect is not None:
1120s if _is_exception(effect):
1120s raise effect
1120s elif not _callable(effect):
1120s result = next(effect)
1120s if _is_exception(result):
1120s > raise result
1120s E Exception
1120s
1120s /usr/lib/python3.13/unittest/mock.py:1232: Exception
1120s
1120s During handling of the above exception, another exception occurred:
1120s
1120s self =
1120s
1120s def test_Site_workflow_manager_update_site(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_version="2.3.5.3",
1120s dnac_log=True,
1120s state="merged",
1120s config=self.playbook_config_update_site
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_site_workflow_manager.py:559:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/site_workflow_manager.py:2539: in main
1120s ccc_site.get_diff_state_apply[state](config).check_return_status()
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def get_diff_merged(self, config):
1120s """
1120s Update/Create site information in Cisco Catalyst Center with fields
1120s provided in the playbook.
1120s Parameters:
1120s self (object): An instance of a class used for interacting with Cisco Catalyst Center.
1120s config (dict): A dictionary containing configuration information.
1120s Returns:
1120s self (object): An instance of a class used for interacting with Cisco Catalyst Center.
1120s Description:
1120s This method determines whether to update or create a site in Cisco Catalyst Center based on the provided
1120s configuration information. If the specified site exists, the method checks if it requires an update
1120s by calling the 'site_requires_update' method. If an update is required, it calls the 'update_site'
1120s function from the 'sites' family of the Cisco Catalyst Center API. If the site does not require an update,
1120s the method exits, indicating that the site is up to date.
1120s """
1120s site_updated = False
1120s site_created = False
1120s
1120s if self.compare_dnac_versions(self.get_ccc_version(), "2.3.7.6") >= 0:
1120s self.handle_config['area'] = []
1120s self.handle_config['building'] = []
1120s self.handle_config['floor'] = []
1120s try:
1120s create_site = copy.deepcopy(self.handle_config["create_site"])
1120s if len(create_site) > 0:
1120s self.log("Starting site creation process.", "DEBUG")
1120s for each_config in create_site:
1120s payload_data = self.change_payload_data(each_config.get("want"))
1120s if payload_data:
1120s payload_data[self.keymap["parent_name_hierarchy"]] =\
1120s payload_data.get(self.keymap["parent_name"])
1120s del payload_data[self.keymap["parent_name"]]
1120s self.log("Payload data prepared for site creation: {}".format(payload_data), "DEBUG")
1120s
1120s if payload_data.get("type") == "area":
1120s self.handle_config["area"].append(payload_data)
1120s self.log("Added to area: {}".format(payload_data), "DEBUG")
1120s elif payload_data.get("type") == "building":
1120s self.handle_config["building"].append(payload_data)
1120s self.log("Added to building: {}".format(payload_data), "DEBUG")
1120s elif payload_data.get("type") == "floor":
1120s self.handle_config["floor"].append(payload_data)
1120s self.log("Added to floor: {}".format(payload_data), "DEBUG")
1120s for each_type in ("area", "building", "floor"):
1120s if self.handle_config[each_type]:
1120s self.log("Processing configurations for '{0}'.".format(each_type), "DEBUG")
1120s for create_config in self.handle_config[each_type]:
1120s self.log("Handling configuration: {0}".format(create_config), "DEBUG")
1120s parent_name = create_config.get(self.keymap.get("parent_name_hierarchy"))
1120s if not parent_name:
1120s self.msg = "No parent name found in configuration for '{0}'.".format(each_type)
1120s self.log(self.msg, "DEBUG")
1120s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status()
1120s self.log("Checking if parent site '{0}' exists in the hierarchy.".format(parent_name), "DEBUG")
1120s
1120s site_exists = self.is_site_exist(parent_name)
1120s if not site_exists:
1120s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name)
1120s self.log(self.msg, "DEBUG")
1120s self.site_absent_list.append(str(parent_name) + " does not exist ")
1120s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status()
1120s
1120s response = self.creating_bulk_site(self.handle_config[each_type])
1120s self.log("Response from creating_bulk_site for {}: {}".format(each_type, response), "DEBUG")
1120s
1120s if response and isinstance(response, dict) and "response" in response:
1120s task_id = response["response"].get("taskId")
1120s if task_id:
1120s self.log("Task Id for the 'site_creation' task is {}".format(task_id), "INFO")
1120s
1120s task_name = "create_sites"
1120s success_msg = "Site created successfully."
1120s self.get_task_status_from_tasks_by_id(task_id, task_name, success_msg)
1120s
1120s for site in self.handle_config[each_type]:
1120s if "name" in site:
1120s self.created_site_list.append(str(each_type) + ": " + str(site.get("name")))
1120s
1120s self.log("Site '{}' created successfully".format(self.created_site_list), "INFO")
1120s
1120s for site in self.handle_config[each_type]:
1120s if site.get("type") == "floor":
1120s floor_name = site.get("name")
1120s self.log("Floor '{}' has been created successfully.".format(floor_name), "INFO")
1120s
1120s upload_path = site.get("upload_floor_image_path", None)
1120s if upload_path:
1120s self.log("Upload path found for floor '{}'. Starting upload floor map from '{}.'".
1120s format(floor_name, upload_path), "INFO")
1120s
1120s map_details, map_status, success_message = self.upload_floor_image(site)
1120s if map_details:
1120s self.log("Floor map for '{}' uploaded successfully: {}".
1120s format(floor_name, success_message), "INFO")
1120s else:
1120s self.log("Floor map upload failed for '{}'. Please check the upload path and retry.".
1120s format(floor_name), "ERROR")
1120s else:
1120s self.log("No upload path provided for '{}'. Floor created without floor map.".
1120s format(floor_name), "INFO")
1120s else:
1120s self.log("No valid task ID received from the 'creating_bulk_site' response.", "WARNING")
1120s return None
1120s else:
1120s self.log("No response received from the 'creating_bulk_site' API call.", "WARNING")
1120s return None
1120s
1120s task_detail_list = []
1120s for each_config in self.have:
1120s site_name_hierarchy = each_config.get("site_name_hierarchy")
1120s
1120s if each_config.get("site_exists"):
1120s self.log("Processing site: {}".format(site_name_hierarchy), "DEBUG")
1120s payload_new = self.change_payload_data(each_config.get("want"))
1120s if payload_new.get("type") == "area":
1120s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy)
1120s self.log(self.msg, "INFO")
1120s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy)
1120s elif payload_new.get("type") in ("building", "floor"):
1120s site_params = each_config.get("site_params")
1120s site_params["site_id"] = each_config.get("site_id")
1120s site_type = site_params.get("type")
1120s
1120s if self.site_requires_update(each_config):
1120s self.log("Site requires update, starting update for type: {}".format(site_type), "DEBUG")
1120s response = (self.update_floor(site_params, payload_new) if site_type == "floor"
1120s else self.update_area(site_params) if site_type == "area"
1120s else self.update_building(site_params) if site_type == "building"
1120s else self.log("Unknown site type: {0}".format(site_type), "ERROR"))
1120s
1120s self.log("Received API response from 'update_site': {0}".
1120s format(str(response)), "DEBUG")
1120s
1120s if response and isinstance(response, dict):
1120s taskid = response["response"]["taskId"]
1120s
1120s while True:
1120s task_details = self.get_task_details(taskid)
1120s if site_type != "floor":
1120s if task_details.get("progress") == "Group is updated successfully":
1120s task_detail_list.append(task_details)
1120s self.updated_site_list.append(site_type + ": " + site_name_hierarchy)
1120s self.log("Site '{}' updated successfully.".format(site_name_hierarchy), "INFO")
1120s break
1120s else:
1120s if task_details.get("progress") == "Service domain is updated successfully.":
1120s task_detail_list.append(task_details)
1120s self.updated_site_list.append(site_type + ": " + site_name_hierarchy)
1120s break
1120s
1120s if task_details.get("bapiError"):
1120s msg = task_details.get("bapiError")
1120s self.set_operation_result("failed", False, msg, "ERROR",
1120s task_details).check_return_status()
1120s break
1120s else:
1120s self.msg = "Unable to execute the update the site: {0} ".format(site_name_hierarchy)
1120s self.log(self.msg, "INFO")
1120s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status()
1120s else:
1120s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy)
1120s self.log(self.msg, "INFO")
1120s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy)
1120s except Exception as e:
1120s self.log("Yaml is not available for bulk: {}".format(str(e)), "ERROR")
1120s
1120s return self
1120s
1120s else:
1120s site_params = self.want.get("site_params")
1120s site_type = site_params.get("type")
1120s if self.have.get("site_exists"):
1120s site_name_hierarchy = self.want.get("site_name_hierarchy")
1120s if not self.site_requires_update():
1120s self.update_not_needed_sites.append(site_type + ": " + site_name_hierarchy)
1120s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy)
1120s self.log(self.msg, "INFO")
1120s else:
1120s try:
1120s site_params["site_id"] = self.have.get("site_id")
1120s self.log("Site parameters prepared for update: {}".format(site_params))
1120s self.log("Site update process started.", "INFO")
1120s
1120s if site_params['site'].get('building'):
1120s building_details = {}
1120s for key, value in site_params['site']['building'].items():
1120s if value is not None:
1120s building_details[key] = value
1120s
1120s site_params['site']['building'] = building_details
1120s
1120s response = self.dnac._exec(
1120s family="sites",
1120s function='update_site',
1120s op_modifies=True,
1120s params=site_params,
1120s )
1120s self.log("Received API response from 'update_site': {0}".format(str(response)), "DEBUG")
1120s
1120s if response and isinstance(response, dict):
1120s execution_id = response.get("executionId")
1120s while True:
1120s execution_details = self.get_execution_details(execution_id)
1120s if execution_details.get("status") == "SUCCESS":
1120s self.result['changed'] = True
1120s site_updated = True
1120s self.updated_site_list.append(str(site_type) + ": " + str(site_name_hierarchy))
1120s self.log("Site - {0} Updated Successfully".format(site_name_hierarchy), "INFO")
1120s break
1120s elif execution_details.get("bapiError"):
1120s self.msg = "Unable to Update: " + execution_details.get("bapiError")
1120s self.set_operation_result("failed", False, self.msg, "ERROR",
1120s execution_details).check_return_status()
1120s
1120s except Exception as e:
1120s self.msg = "Unexpected error occurred while update: {0}".format(str(e))
1120s self.log(self.msg, "ERROR")
1120s self.set_operation_result("failed", False, self.msg, "ERROR",
1120s site_name_hierarchy).check_return_status()
1120s
1120s else:
1120s try:
1120s try:
1120s if site_params['site'].get('building'):
1120s building_details = {}
1120s for key, value in site_params['site']['building'].items():
1120s if value is not None:
1120s building_details[key] = value
1120s
1120s site_params['site']['building'] = building_details
1120s
1120s except Exception as e:
1120s site_type = site_params['type']
1120s name = site_params['site'][site_type]['name']
1120s self.log("The site '{0}' is not categorized as a building; no need to filter 'None' values.".
1120s format(name), "INFO")
1120s
1120s site_type = site_params['type']
1120s parent_name = site_params.get('site').get(site_type).get('parentName')
1120s try:
1120s response = self.get_site_v1(parent_name)
1120s if not response:
1120s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name)
1120s self.log(self.msg, "DEBUG")
1120s self.site_absent_list.append(str(parent_name) + " does not exist ")
1120s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status()
1120s except Exception as e:
1120s self.log("No response received from 'get_site_v1' API for site: {0}".format(parent_name + str(e)), "ERROR")
1120s
1120s response = self.dnac._exec(
1120s family="sites",
1120s function='create_site',
1120s op_modifies=True,
1120s params=site_params,
1120s )
1120s self.log("Received API response from 'create_site': {0}".format(str(response)), "DEBUG")
1120s
1120s if response and isinstance(response, dict):
1120s executionid = response.get("executionId")
1120s while True:
1120s execution_details = self.get_execution_details(executionid)
1120s if execution_details.get("status") == "SUCCESS":
1120s self.result['changed'] = True
1120s break
1120s elif execution_details.get("bapiError"):
1120s self.msg = "Unable to Create: " + str(execution_details.get("bapiError"))
1120s self.set_operation_result("failed", False, self.msg, "ERROR",
1120s execution_details).check_return_status()
1120s break
1120s
1120s site_exists, current_site = self.site_exists()
1120s if site_exists:
1120s site_name_hierarchy = self.want.get("site_name_hierarchy")
1120s self.created_site_list.append(str(site_type) + ": " + str(site_name_hierarchy))
1120s self.log("Site '{0}' created successfully".format(site_name_hierarchy), "INFO")
1120s return self
1120s
1120s except Exception as e:
1120s self.msg = "Unexpected error occurred while create: {0}".format(str(e))
1120s self.log(self.msg, "ERROR")
1120s self.set_operation_result("failed", False, self.msg, "ERROR",
1120s > site_name_hierarchy).check_return_status()
1120s E UnboundLocalError: cannot access local variable 'site_name_hierarchy' where it is not associated with a value
1120s
1120s plugins/modules/site_workflow_manager.py:1900: UnboundLocalError
1120s ------------------------------ Captured log call -------------------------------
1120s ERROR logger:dnac.py:294 Site: get_site_v1: 619: An error occurred in 'get_sites':
1120s
1120s ERROR logger:dnac.py:294 Site: site_exists: 676: No response received from 'get_site' API for site: Global/japan8888
1120s
1120s ERROR logger:dnac.py:294 Site: get_diff_merged: 1898: Unexpected error occurred while create:
1120s _________ TestDnacSiteWorkflow.test_Site_workflow_manager_create_site __________
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Site_workflow_manager_create_site(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_version="2.3.5.3",
1120s dnac_log=True,
1120s state="merged",
1120s config=self.playbook_config_site
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_site_workflow_manager.py:297:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/site_workflow_manager.py:2539: in main
1120s ccc_site.get_diff_state_apply[state](config).check_return_status()
1120s plugins/module_utils/dnac.py:307: in check_return_status
1120s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def fail_json(*args, **kwargs):
1120s kwargs["failed"] = True
1120s > raise AnsibleFailJson(kwargs)
1120s 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}
1120s
1120s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
1120s ------------------------------ Captured log call -------------------------------
1120s ERROR logger:dnac.py:294 Site: get_site_v1: 619: An error occurred in 'get_sites':
1120s
1120s ERROR logger:dnac.py:294 Site: site_exists: 676: No response received from 'get_site' API for site: Global/japan8888
1120s
1120s ERROR logger:dnac.py:294 Site: get_site_v1: 619: An error occurred in 'get_sites':
1120s
1120s ERROR logger:dnac.py:294 Site: set_operation_result: 1780: Parent name 'Global' does not exist in the Cisco Catalyst Center.
1120s
1120s 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}
1120s
1120s WARNING logger:dnac.py:294 Site: get_site_v1: 612: Empty response received for site: Global/japan8888
1120s
1120s ERROR logger:dnac.py:294 Site: site_exists: 676: No response received from 'get_site' API for site: Global/japan8888
1120s _______ TestDnacSiteWorkflow.test_Site_workflow_manager_upload_floor_map _______
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Site_workflow_manager_upload_floor_map(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_version="2.3.7.6",
1120s dnac_log=True,
1120s state="merged",
1120s config=self.upload_floor_map_playbook
1120s )
1120s )
1120s > result = self.execute_module(changed=True, failed=False)
1120s
1120s tests/unit/modules/dnac/test_site_workflow_manager.py:320:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
1120s result = self.changed(changed)
1120s tests/unit/modules/dnac/dnac_module.py:133: in changed
1120s self.module.main()
1120s plugins/modules/site_workflow_manager.py:2520: in main
1120s ccc_site.validate_site_input_data(ccc_site.validated_config, state).check_return_status()
1120s plugins/module_utils/dnac.py:307: in check_return_status
1120s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s def fail_json(*args, **kwargs):
1120s kwargs["failed"] = True
1120s > raise AnsibleFailJson(kwargs)
1120s 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}
1120s
1120s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
1120s ------------------------------ Captured log call -------------------------------
1120s ERROR logger:dnac.py:294 Site: validate_site_input_data: 1188: Missing 'name' field in entry.
1120s
1120s ERROR logger:dnac.py:294 Site: validate_site_input_data: 1196: Missing 'parent_name' field in entry.
1120s
1120s 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'
1120s ___ TestDnacSiteWorkflow.test_Site_workflow_manager_create_site_bulk_invalid ___
1120s [gw0] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s self =
1120s
1120s def test_Site_workflow_manager_create_site_bulk_invalid(self):
1120s """
1120s Test case for site workflow manager when creating a site.
1120s
1120s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
1120s """
1120s set_module_args(
1120s dict(
1120s dnac_host="1.1.1.1",
1120s dnac_username="dummy",
1120s dnac_password="dummy",
1120s dnac_version="2.3.7.6",
1120s dnac_log=True,
1120s state="merged",
1120s config=self.playbook_config_site
1120s )
1120s )
1120s result = self.execute_module(changed=False, failed=True)
1120s > self.assertEqual(
1120s result.get('msg'),
1120s "An error occurred while executing GET API call to Function: 'get_sites' "
1120s "from Family: 'site_design'. "
1120s "Parameters: {'name_hierarchy': 'Global/japan8888'}. "
1120s "Exception: ."
1120s )
1120s E AssertionError: "An e[106 chars]: {'name_hierarchy': 'Global/japan8888/blossom'}. Exception: ." != "An e[106 chars]: {'name_hierarchy': 'Global/japan8888'}. Exception: ."
1120s E - An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/japan8888/blossom'}. Exception: .
1120s E ? --------
1120s E + An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/japan8888'}. Exception: .
1120s
1120s tests/unit/modules/dnac/test_site_workflow_manager.py:416: AssertionError
1120s ------------------------------ Captured log call -------------------------------
1120s 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: .
1120s
1120s 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}
1120s
1120s 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: .
1120s
1120s 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}
1120s
1120s 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'.
1120s
1120s ERROR logger:dnac.py:294 Site: get_have: 1037: Unexpected response received:
1120s ___ TestDnacSiteWorkflow.test_Site_workflow_manager_verify_diff_merged_site ____
1120s [gw1] linux -- Python 3.13.3 /usr/bin/python3
1120s
1120s def get_diff_merged(self, config):
1120s """
1120s Update/Create site information in Cisco Catalyst Center with fields
1120s provided in the playbook.
1120s Parameters:
1120s self (object): An instance of a class used for interacting with Cisco Catalyst Center.
1120s config (dict): A dictionary containing configuration information.
1120s Returns:
1120s self (object): An instance of a class used for interacting with Cisco Catalyst Center.
1120s Description:
1120s This method determines whether to update or create a site in Cisco Catalyst Center based on the provided
1120s configuration information. If the specified site exists, the method checks if it requires an update
1120s by calling the 'site_requires_update' method. If an update is required, it calls the 'update_site'
1120s function from the 'sites' family of the Cisco Catalyst Center API. If the site does not require an update,
1120s the method exits, indicating that the site is up to date.
1120s """
1120s site_updated = False
1120s site_created = False
1120s
1120s if self.compare_dnac_versions(self.get_ccc_version(), "2.3.7.6") >= 0:
1120s self.handle_config['area'] = []
1120s self.handle_config['building'] = []
1120s self.handle_config['floor'] = []
1120s try:
1120s create_site = copy.deepcopy(self.handle_config["create_site"])
1120s if len(create_site) > 0:
1120s self.log("Starting site creation process.", "DEBUG")
1120s for each_config in create_site:
1120s payload_data = self.change_payload_data(each_config.get("want"))
1120s if payload_data:
1120s payload_data[self.keymap["parent_name_hierarchy"]] =\
1120s payload_data.get(self.keymap["parent_name"])
1120s del payload_data[self.keymap["parent_name"]]
1120s self.log("Payload data prepared for site creation: {}".format(payload_data), "DEBUG")
1120s
1120s if payload_data.get("type") == "area":
1120s self.handle_config["area"].append(payload_data)
1120s self.log("Added to area: {}".format(payload_data), "DEBUG")
1120s elif payload_data.get("type") == "building":
1120s self.handle_config["building"].append(payload_data)
1120s self.log("Added to building: {}".format(payload_data), "DEBUG")
1120s elif payload_data.get("type") == "floor":
1120s self.handle_config["floor"].append(payload_data)
1120s self.log("Added to floor: {}".format(payload_data), "DEBUG")
1120s for each_type in ("area", "building", "floor"):
1120s if self.handle_config[each_type]:
1120s self.log("Processing configurations for '{0}'.".format(each_type), "DEBUG")
1120s for create_config in self.handle_config[each_type]:
1120s self.log("Handling configuration: {0}".format(create_config), "DEBUG")
1120s parent_name = create_config.get(self.keymap.get("parent_name_hierarchy"))
1120s if not parent_name:
1120s self.msg = "No parent name found in configuration for '{0}'.".format(each_type)
1120s self.log(self.msg, "DEBUG")
1120s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status()
1120s self.log("Checking if parent site '{0}' exists in the hierarchy.".format(parent_name), "DEBUG")
1120s
1120s site_exists = self.is_site_exist(parent_name)
1120s if not site_exists:
1120s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name)
1120s self.log(self.msg, "DEBUG")
1120s self.site_absent_list.append(str(parent_name) + " does not exist ")
1120s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status()
1120s
1120s response = self.creating_bulk_site(self.handle_config[each_type])
1120s self.log("Response from creating_bulk_site for {}: {}".format(each_type, response), "DEBUG")
1120s
1120s if response and isinstance(response, dict) and "response" in response:
1120s task_id = response["response"].get("taskId")
1120s if task_id:
1120s self.log("Task Id for the 'site_creation' task is {}".format(task_id), "INFO")
1120s
1120s task_name = "create_sites"
1120s success_msg = "Site created successfully."
1120s self.get_task_status_from_tasks_by_id(task_id, task_name, success_msg)
1120s
1120s for site in self.handle_config[each_type]:
1120s if "name" in site:
1120s self.created_site_list.append(str(each_type) + ": " + str(site.get("name")))
1120s
1120s self.log("Site '{}' created successfully".format(self.created_site_list), "INFO")
1120s
1120s for site in self.handle_config[each_type]:
1120s if site.get("type") == "floor":
1120s floor_name = site.get("name")
1120s self.log("Floor '{}' has been created successfully.".format(floor_name), "INFO")
1120s
1120s upload_path = site.get("upload_floor_image_path", None)
1120s if upload_path:
1120s self.log("Upload path found for floor '{}'. Starting upload floor map from '{}.'".
1120s format(floor_name, upload_path), "INFO")
1120s
1120s map_details, map_status, success_message = self.upload_floor_image(site)
1120s if map_details:
1120s self.log("Floor map for '{}' uploaded successfully: {}".
1120s format(floor_name, success_message), "INFO")
1120s else:
1120s self.log("Floor map upload failed for '{}'. Please check the upload path and retry.".
1120s format(floor_name), "ERROR")
1120s else:
1120s self.log("No upload path provided for '{}'. Floor created without floor map.".
1120s format(floor_name), "INFO")
1120s else:
1120s self.log("No valid task ID received from the 'creating_bulk_site' response.", "WARNING")
1120s return None
1120s else:
1120s self.log("No response received from the 'creating_bulk_site' API call.", "WARNING")
1120s return None
1120s
1120s task_detail_list = []
1120s for each_config in self.have:
1120s site_name_hierarchy = each_config.get("site_name_hierarchy")
1120s
1120s if each_config.get("site_exists"):
1120s self.log("Processing site: {}".format(site_name_hierarchy), "DEBUG")
1120s payload_new = self.change_payload_data(each_config.get("want"))
1120s if payload_new.get("type") == "area":
1120s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy)
1120s self.log(self.msg, "INFO")
1120s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy)
1120s elif payload_new.get("type") in ("building", "floor"):
1120s site_params = each_config.get("site_params")
1120s site_params["site_id"] = each_config.get("site_id")
1120s site_type = site_params.get("type")
1120s
1120s if self.site_requires_update(each_config):
1120s self.log("Site requires update, starting update for type: {}".format(site_type), "DEBUG")
1120s response = (self.update_floor(site_params, payload_new) if site_type == "floor"
1120s else self.update_area(site_params) if site_type == "area"
1120s else self.update_building(site_params) if site_type == "building"
1120s else self.log("Unknown site type: {0}".format(site_type), "ERROR"))
1120s
1120s self.log("Received API response from 'update_site': {0}".
1120s format(str(response)), "DEBUG")
1120s
1120s if response and isinstance(response, dict):
1120s taskid = response["response"]["taskId"]
1120s
1120s while True:
1120s task_details = self.get_task_details(taskid)
1120s if site_type != "floor":
1120s if task_details.get("progress") == "Group is updated successfully":
1120s task_detail_list.append(task_details)
1120s self.updated_site_list.append(site_type + ": " + site_name_hierarchy)
1120s self.log("Site '{}' updated successfully.".format(site_name_hierarchy), "INFO")
1120s break
1120s else:
1120s if task_details.get("progress") == "Service domain is updated successfully.":
1120s task_detail_list.append(task_details)
1120s self.updated_site_list.append(site_type + ": " + site_name_hierarchy)
1120s break
1120s
1120s if task_details.get("bapiError"):
1120s msg = task_details.get("bapiError")
1120s self.set_operation_result("failed", False, msg, "ERROR",
1120s task_details).check_return_status()
1120s break
1120s else:
1120s self.msg = "Unable to execute the update the site: {0} ".format(site_name_hierarchy)
1120s self.log(self.msg, "INFO")
1120s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status()
1120s else:
1120s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy)
1120s self.log(self.msg, "INFO")
1120s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy)
1120s except Exception as e:
1120s self.log("Yaml is not available for bulk: {}".format(str(e)), "ERROR")
1120s
1120s return self
1120s
1120s else:
1120s site_params = self.want.get("site_params")
1120s site_type = site_params.get("type")
1120s if self.have.get("site_exists"):
1120s site_name_hierarchy = self.want.get("site_name_hierarchy")
1120s if not self.site_requires_update():
1120s self.update_not_needed_sites.append(site_type + ": " + site_name_hierarchy)
1120s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy)
1120s self.log(self.msg, "INFO")
1120s else:
1120s try:
1120s site_params["site_id"] = self.have.get("site_id")
1120s self.log("Site parameters prepared for update: {}".format(site_params))
1120s self.log("Site update process started.", "INFO")
1120s
1120s if site_params['site'].get('building'):
1120s building_details = {}
1120s for key, value in site_params['site']['building'].items():
1120s if value is not None:
1120s building_details[key] = value
1120s
1120s site_params['site']['building'] = building_details
1120s
1120s response = self.dnac._exec(
1120s family="sites",
1120s function='update_site',
1120s op_modifies=True,
1120s params=site_params,
1120s )
1120s self.log("Received API response from 'update_site': {0}".format(str(response)), "DEBUG")
1120s
1120s if response and isinstance(response, dict):
1120s execution_id = response.get("executionId")
1120s while True:
1120s execution_details = self.get_execution_details(execution_id)
1120s if execution_details.get("status") == "SUCCESS":
1120s self.result['changed'] = True
1120s site_updated = True
1120s self.updated_site_list.append(str(site_type) + ": " + str(site_name_hierarchy))
1120s self.log("Site - {0} Updated Successfully".format(site_name_hierarchy), "INFO")
1120s break
1120s elif execution_details.get("bapiError"):
1120s self.msg = "Unable to Update: " + execution_details.get("bapiError")
1120s self.set_operation_result("failed", False, self.msg, "ERROR",
1120s execution_details).check_return_status()
1120s
1120s except Exception as e:
1120s self.msg = "Unexpected error occurred while update: {0}".format(str(e))
1120s self.log(self.msg, "ERROR")
1120s self.set_operation_result("failed", False, self.msg, "ERROR",
1120s site_name_hierarchy).check_return_status()
1120s
1120s else:
1120s try:
1120s try:
1120s if site_params['site'].get('building'):
1120s building_details = {}
1120s for key, value in site_params['site']['building'].items():
1120s if value is not None:
1120s building_details[key] = value
1120s
1120s site_params['site']['building'] = building_details
1120s
1120s except Exception as e:
1120s site_type = site_params['type']
1120s name = site_params['site'][site_type]['name']
1120s self.log("The site '{0}' is not categorized as a building; no need to filter 'None' values.".
1120s format(name), "INFO")
1120s
1120s site_type = site_params['type']
1120s parent_name = site_params.get('site').get(site_type).get('parentName')
1120s try:
1120s response = self.get_site_v1(parent_name)
1120s if not response:
1120s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name)
1120s self.log(self.msg, "DEBUG")
1120s self.site_absent_list.append(str(parent_name) + " does not exist ")
1120s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status()
1120s except Exception as e:
1120s self.log("No response received from 'get_site_v1' API for site: {0}".format(parent_name + str(e)), "ERROR")
1120s
1120s > response = self.dnac._exec(
1120s family="sites",
1120s function='create_site',
1120s op_modifies=True,
1120s params=site_params,
1120s )
1120s
1120s plugins/modules/site_workflow_manager.py:1868:
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s /usr/lib/python3.13/unittest/mock.py:1169: in __call__
1120s return self._mock_call(*args, **kwargs)
1120s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call
1120s return self._execute_mock_call(*args, **kwargs)
1120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1120s
1120s self = , args = ()
1120s kwargs = {'family': 'sites', 'function': 'create_site', 'op_modifies': True, 'params': {'site': {'area': {'name': 'japan8888', 'parentName': 'Global'}}, 'type': 'area'}}
1120s effect =