0s autopkgtest [15:29:57]: starting date and time: 2025-05-02 15:29:57+0000
0s autopkgtest [15:29:57]: git checkout: 9986aa8c Merge branch 'skia/fix_network_interface' into 'ubuntu/production'
0s autopkgtest [15:29:57]: host juju-7f2275-prod-proposed-migration-environment-20; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.3ii34p1n/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:python-redis --apt-upgrade ansible --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=python-redis/5.2.1-1 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest-cpu2-ram4-disk20-arm64 --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-20@sto01-arm64-9.secgroup --name adt-questing-arm64-ansible-20250502-142424-juju-7f2275-prod-proposed-migration-environment-20-92f2f50c-b2d8-40e6-8305-03e43392337b --image adt/ubuntu-questing-arm64-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-20 --net-id=net_prod-autopkgtest-workers-arm64 -e TERM=linux --mirror=http://ftpmaster.internal/ubuntu/
59s autopkgtest [15:30:56]: testbed dpkg architecture: arm64
60s autopkgtest [15:30:56]: testbed apt version: 3.0.0
60s autopkgtest [15:30:57]: @@@@@@@@@@@@@@@@@@@@ test bed setup
60s autopkgtest [15:30:57]: testbed release detected to be: None
60s autopkgtest [15:30:57]: updating testbed package index (apt update)
61s Get:1 http://ftpmaster.internal/ubuntu questing-proposed InRelease [110 kB]
61s Hit:2 http://ftpmaster.internal/ubuntu questing InRelease
61s Hit:3 http://ftpmaster.internal/ubuntu questing-updates InRelease
61s Hit:4 http://ftpmaster.internal/ubuntu questing-security InRelease
61s Get:5 http://ftpmaster.internal/ubuntu questing-proposed/universe Sources [2024 kB]
61s Get:6 http://ftpmaster.internal/ubuntu questing-proposed/multiverse Sources [44.2 kB]
61s Get:7 http://ftpmaster.internal/ubuntu questing-proposed/main Sources [164 kB]
61s Get:8 http://ftpmaster.internal/ubuntu questing-proposed/main arm64 Packages [204 kB]
61s Get:9 http://ftpmaster.internal/ubuntu questing-proposed/universe arm64 Packages [1467 kB]
61s Get:10 http://ftpmaster.internal/ubuntu questing-proposed/multiverse arm64 Packages [14.8 kB]
61s Fetched 4028 kB in 1s (5297 kB/s)
62s Reading package lists...
63s autopkgtest [15:31:00]: upgrading testbed (apt dist-upgrade and autopurge)
63s Reading package lists...
63s Building dependency tree...
63s Reading state information...
64s Calculating upgrade...Starting pkgProblemResolver with broken count: 0
64s Starting 2 pkgProblemResolver with broken count: 0
64s Done
65s Entering ResolveByKeep
65s
65s Calculating upgrade...
65s The following packages will be upgraded:
65s libperl5.40 perl perl-base perl-modules-5.40
65s 4 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
65s Need to get 10.0 MB of archives.
65s After this operation, 0 B of additional disk space will be used.
65s Get:1 http://ftpmaster.internal/ubuntu questing-proposed/main arm64 libperl5.40 arm64 5.40.1-3 [4780 kB]
66s Get:2 http://ftpmaster.internal/ubuntu questing-proposed/main arm64 perl arm64 5.40.1-3 [262 kB]
66s Get:3 http://ftpmaster.internal/ubuntu questing-proposed/main arm64 perl-base arm64 5.40.1-3 [1786 kB]
67s Get:4 http://ftpmaster.internal/ubuntu questing-proposed/main arm64 perl-modules-5.40 all 5.40.1-3 [3217 kB]
67s Fetched 10.0 MB in 1s (6820 kB/s)
69s (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 ... 85225 files and directories currently installed.)
69s Preparing to unpack .../libperl5.40_5.40.1-3_arm64.deb ...
69s Unpacking libperl5.40:arm64 (5.40.1-3) over (5.40.1-2ubuntu0.1) ...
69s Preparing to unpack .../perl_5.40.1-3_arm64.deb ...
69s Unpacking perl (5.40.1-3) over (5.40.1-2ubuntu0.1) ...
69s Preparing to unpack .../perl-base_5.40.1-3_arm64.deb ...
69s Unpacking perl-base (5.40.1-3) over (5.40.1-2ubuntu0.1) ...
69s Setting up perl-base (5.40.1-3) ...
69s (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 ... 85225 files and directories currently installed.)
69s Preparing to unpack .../perl-modules-5.40_5.40.1-3_all.deb ...
69s Unpacking perl-modules-5.40 (5.40.1-3) over (5.40.1-2ubuntu0.1) ...
69s Setting up perl-modules-5.40 (5.40.1-3) ...
69s Setting up libperl5.40:arm64 (5.40.1-3) ...
69s Setting up perl (5.40.1-3) ...
69s Processing triggers for man-db (2.13.0-1) ...
69s Processing triggers for libc-bin (2.41-6ubuntu1) ...
69s Reading package lists...
69s Building dependency tree...
69s Reading state information...
70s Starting pkgProblemResolver with broken count: 0
70s Starting 2 pkgProblemResolver with broken count: 0
70s Done
70s Solving dependencies...
70s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
73s autopkgtest [15:31:10]: testbed running kernel: Linux 6.14.0-15-generic #15-Ubuntu SMP PREEMPT_DYNAMIC Sun Apr 6 14:37:51 UTC 2025
73s autopkgtest [15:31:10]: @@@@@@@@@@@@@@@@@@@@ apt-source ansible
77s Get:1 http://ftpmaster.internal/ubuntu questing/universe ansible 11.2.0+dfsg-1 (dsc) [3353 B]
77s Get:2 http://ftpmaster.internal/ubuntu questing/universe ansible 11.2.0+dfsg-1 (tar) [26.7 MB]
77s Get:3 http://ftpmaster.internal/ubuntu questing/universe ansible 11.2.0+dfsg-1 (diff) [32.9 kB]
77s gpgv: Signature made Thu Feb 27 17:38:46 2025 UTC
77s gpgv: using RSA key D847C62510A9C2FF242CE02CD604A1C4823EE0F8
77s gpgv: Can't check signature: No public key
77s dpkg-source: warning: cannot verify inline signature for ./ansible_11.2.0+dfsg-1.dsc: no acceptable signature found
80s autopkgtest [15:31:17]: testing package ansible version 11.2.0+dfsg-1
81s autopkgtest [15:31:18]: build not needed
96s autopkgtest [15:31:33]: test unit-tests-stable.py: preparing testbed
97s Reading package lists...
97s Building dependency tree...
97s Reading state information...
97s Starting pkgProblemResolver with broken count: 0
97s Starting 2 pkgProblemResolver with broken count: 0
97s Done
98s The following NEW packages will be installed:
98s ansible ansible-core fontconfig-config fonts-dejavu-core fonts-dejavu-mono
98s gir1.2-secret-1 git git-man libcairo-gobject2 libcairo2 liberror-perl
98s libfontconfig1 libpixman-1-0 libsecret-1-0 libsecret-common libsodium23
98s libxcb-render0 libxcb-shm0 libxrender1 libxslt1.1 python3-adal
98s python3-aiohappyeyeballs python3-aiohttp python3-aiosignal
98s python3-async-timeout python3-avro python3-azure python3-azure-storage
98s python3-cachetools python3-cairo python3-click python3-colorama
98s python3-dnspython python3-execnet python3-flake8 python3-freezegun
98s python3-frozenlist python3-gi-cairo python3-gitlab python3-google-auth
98s python3-httmock python3-hvac python3-iniconfig python3-isodate
98s python3-joblib python3-kubernetes python3-lxml python3-marshmallow
98s python3-mccabe python3-mock python3-msal python3-msal-extensions
98s python3-msrest python3-msrestazure python3-multidict python3-nacl
98s python3-nltk python3-paramiko python3-pathspec python3-pluggy
98s python3-portalocker python3-proxmoxer python3-psutil python3-py
98s python3-pyasn1 python3-pyasn1-modules python3-pycodestyle python3-pydash
98s python3-pyflakes python3-pyhcl python3-pytest python3-pytest-forked
98s python3-pytest-mock python3-pytest-xdist python3-pyu2f python3-pyvmomi
98s python3-redis python3-regex python3-requests-oauthlib
98s python3-requests-toolbelt python3-resolvelib python3-responses python3-rsa
98s python3-ruamel.yaml python3-ruamel.yaml.clib python3-strictyaml
98s python3-textfsm python3-tqdm python3-websocket python3-xmltodict
98s python3-yarl yamllint
98s 0 upgraded, 92 newly installed, 0 to remove and 0 not upgraded.
98s Need to get 51.4 MB of archives.
98s After this operation, 885 MB of additional disk space will be used.
98s Get:1 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-resolvelib all 1.1.0-1 [25.8 kB]
98s Get:2 http://ftpmaster.internal/ubuntu questing/main arm64 libsodium23 arm64 1.0.18-1build3 [119 kB]
98s Get:3 http://ftpmaster.internal/ubuntu questing/main arm64 python3-nacl arm64 1.5.0-7 [56.2 kB]
98s Get:4 http://ftpmaster.internal/ubuntu questing/main arm64 python3-paramiko all 3.5.1-2ubuntu1 [147 kB]
98s Get:5 http://ftpmaster.internal/ubuntu questing/main arm64 python3-dnspython all 2.7.0-1ubuntu1 [167 kB]
98s Get:6 http://ftpmaster.internal/ubuntu questing/universe arm64 ansible-core all 2.18.1-4ubuntu1 [1273 kB]
98s Get:7 http://ftpmaster.internal/ubuntu questing/universe arm64 ansible all 11.2.0+dfsg-1 [18.1 MB]
99s Get:8 http://ftpmaster.internal/ubuntu questing/main arm64 fonts-dejavu-mono all 2.37-8 [502 kB]
99s Get:9 http://ftpmaster.internal/ubuntu questing/main arm64 fonts-dejavu-core all 2.37-8 [835 kB]
99s Get:10 http://ftpmaster.internal/ubuntu questing/main arm64 fontconfig-config arm64 2.15.0-2.2ubuntu1 [37.9 kB]
99s Get:11 http://ftpmaster.internal/ubuntu questing/main arm64 libsecret-common all 0.21.7-1 [5160 B]
99s Get:12 http://ftpmaster.internal/ubuntu questing/main arm64 libsecret-1-0 arm64 0.21.7-1 [116 kB]
99s Get:13 http://ftpmaster.internal/ubuntu questing/main arm64 gir1.2-secret-1 arm64 0.21.7-1 [9380 B]
99s Get:14 http://ftpmaster.internal/ubuntu questing/main arm64 liberror-perl all 0.17030-1 [23.5 kB]
99s Get:15 http://ftpmaster.internal/ubuntu questing/main arm64 git-man all 1:2.48.1-0ubuntu1 [1148 kB]
99s Get:16 http://ftpmaster.internal/ubuntu questing/main arm64 git arm64 1:2.48.1-0ubuntu1 [4219 kB]
99s Get:17 http://ftpmaster.internal/ubuntu questing/main arm64 libfontconfig1 arm64 2.15.0-2.2ubuntu1 [144 kB]
99s Get:18 http://ftpmaster.internal/ubuntu questing/main arm64 libpixman-1-0 arm64 0.44.0-3 [197 kB]
99s Get:19 http://ftpmaster.internal/ubuntu questing/main arm64 libxcb-render0 arm64 1.17.0-2 [16.6 kB]
99s Get:20 http://ftpmaster.internal/ubuntu questing/main arm64 libxcb-shm0 arm64 1.17.0-2 [5884 B]
99s Get:21 http://ftpmaster.internal/ubuntu questing/main arm64 libxrender1 arm64 1:0.9.10-1.1build1 [18.8 kB]
99s Get:22 http://ftpmaster.internal/ubuntu questing/main arm64 libcairo2 arm64 1.18.4-1 [560 kB]
99s Get:23 http://ftpmaster.internal/ubuntu questing/main arm64 libcairo-gobject2 arm64 1.18.4-1 [127 kB]
99s Get:24 http://ftpmaster.internal/ubuntu questing/main arm64 libxslt1.1 arm64 1.1.39-0exp1ubuntu4 [168 kB]
99s Get:25 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-adal all 1.2.7-5 [33.0 kB]
99s Get:26 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-aiohappyeyeballs all 2.6.1-1 [11.1 kB]
99s Get:27 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-multidict arm64 6.2.0-2 [35.4 kB]
99s Get:28 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-yarl arm64 1.13.1-1build2 [93.8 kB]
99s Get:29 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-async-timeout all 5.0.1-1 [6830 B]
99s Get:30 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-frozenlist arm64 1.5.0-1build2 [48.2 kB]
99s Get:31 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-aiosignal all 1.3.2-1 [5182 B]
99s Get:32 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-aiohttp arm64 3.10.11-1build1 [298 kB]
99s Get:33 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-avro all 1.12.0+dfsg-1 [75.3 kB]
99s Get:34 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-isodate all 0.7.0-1 [18.6 kB]
99s Get:35 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-requests-oauthlib all 1.3.1-1 [18.8 kB]
99s Get:36 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-msrest all 0.6.21-5 [48.7 kB]
99s Get:37 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-msrestazure all 0.6.4-4 [27.1 kB]
99s Get:38 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-azure-storage all 20250304+git-1 [300 kB]
99s Get:39 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-colorama all 0.4.6-4 [32.1 kB]
99s Get:40 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-marshmallow all 3.26.1-0.2 [47.5 kB]
99s Get:41 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-msal all 1.32.0-1 [100 kB]
99s Get:42 http://ftpmaster.internal/ubuntu questing/main arm64 python3-cairo arm64 1.27.0-2 [122 kB]
99s Get:43 http://ftpmaster.internal/ubuntu questing/main arm64 python3-gi-cairo arm64 3.50.0-4build1 [7960 B]
99s Get:44 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-portalocker all 2.2.1-1 [17.2 kB]
99s Get:45 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-msal-extensions all 1.3.1-1 [18.2 kB]
99s Get:46 http://ftpmaster.internal/ubuntu questing/main arm64 python3-click all 8.2.0+0.really.8.1.8-1 [80.0 kB]
99s Get:47 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-joblib all 1.4.2-3 [205 kB]
99s Get:48 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-regex arm64 0.1.20241106-1build1 [287 kB]
99s Get:49 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-tqdm all 4.67.1-3 [91.6 kB]
99s Get:50 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-nltk all 3.9.1-2 [1006 kB]
99s Get:51 http://ftpmaster.internal/ubuntu questing/main arm64 python3-psutil arm64 5.9.8-2build3 [196 kB]
99s Get:52 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-pydash all 8.0.3-3 [93.0 kB]
99s Get:53 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-ruamel.yaml.clib arm64 0.2.12+ds-1build1 [138 kB]
99s Get:54 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-ruamel.yaml all 0.18.10+ds-1 [127 kB]
99s Get:55 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-strictyaml all 1.6.1-3 [89.1 kB]
99s Get:56 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-websocket all 1.8.0-2 [38.5 kB]
99s Get:57 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-azure all 20250304+git-1 [15.9 MB]
99s Get:58 http://ftpmaster.internal/ubuntu questing/main arm64 python3-cachetools all 5.3.3-1 [10.3 kB]
99s Get:59 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-execnet all 2.1.1-1 [33.4 kB]
99s Get:60 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-mccabe all 0.7.0-1 [8678 B]
99s Get:61 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-pycodestyle all 2.12.1-2 [30.2 kB]
99s Get:62 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-pyflakes all 3.2.0-3 [53.0 kB]
99s Get:63 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-flake8 all 7.1.1-3 [44.0 kB]
99s Get:64 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-freezegun all 1.5.1-1.2 [15.9 kB]
99s Get:65 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-requests-toolbelt all 1.0.0-4 [37.0 kB]
99s Get:66 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-gitlab all 1:4.9.0-1 [75.0 kB]
99s Get:67 http://ftpmaster.internal/ubuntu questing/main arm64 python3-pyasn1 all 0.6.1-1 [56.4 kB]
99s Get:68 http://ftpmaster.internal/ubuntu questing/main arm64 python3-pyasn1-modules all 0.4.1-2 [80.3 kB]
99s Get:69 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-pyu2f all 0.1.5-4 [22.9 kB]
99s Get:70 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-responses all 0.25.6-1 [40.5 kB]
99s Get:71 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-rsa all 4.9-2 [28.2 kB]
100s Get:72 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-google-auth all 2.28.2-3 [91.0 kB]
100s Get:73 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-httmock all 1.4.0-5 [6544 B]
100s Get:74 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-pyhcl all 0.4.4-6 [43.1 kB]
100s Get:75 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-hvac all 2.3.0-3 [88.1 kB]
100s Get:76 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-iniconfig all 1.1.1-2 [6024 B]
100s Get:77 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-kubernetes all 30.1.0-2 [385 kB]
100s Get:78 http://ftpmaster.internal/ubuntu questing/main arm64 python3-lxml arm64 5.3.2-1 [1258 kB]
100s Get:79 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-pathspec all 0.12.1-1 [24.5 kB]
100s Get:80 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-pluggy all 1.5.0-1 [21.0 kB]
100s Get:81 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-proxmoxer all 2.2.0-1 [16.2 kB]
100s Get:82 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-py all 1.11.0-4 [72.7 kB]
100s Get:83 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-pytest all 8.3.5-1 [252 kB]
100s Get:84 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-pytest-forked all 1.6.0-3 [7470 B]
100s Get:85 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-pytest-mock all 3.14.0-2 [11.7 kB]
100s Get:86 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-pytest-xdist all 3.6.1-1 [33.8 kB]
100s Get:87 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-pyvmomi all 8.0.3.0.1-1 [532 kB]
100s Get:88 http://ftpmaster.internal/ubuntu questing-proposed/universe arm64 python3-redis all 5.2.1-1 [221 kB]
100s Get:89 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-textfsm all 1.1.3-3 [29.3 kB]
100s Get:90 http://ftpmaster.internal/ubuntu questing/main arm64 python3-xmltodict all 0.13.0-1 [13.4 kB]
100s Get:91 http://ftpmaster.internal/ubuntu questing/universe arm64 yamllint all 1.35.1-2 [43.6 kB]
100s Get:92 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-mock all 5.1.0-1 [64.1 kB]
100s Fetched 51.4 MB in 2s (29.8 MB/s)
100s Selecting previously unselected package python3-resolvelib.
100s (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 ... 85225 files and directories currently installed.)
100s Preparing to unpack .../00-python3-resolvelib_1.1.0-1_all.deb ...
100s Unpacking python3-resolvelib (1.1.0-1) ...
100s Selecting previously unselected package libsodium23:arm64.
100s Preparing to unpack .../01-libsodium23_1.0.18-1build3_arm64.deb ...
100s Unpacking libsodium23:arm64 (1.0.18-1build3) ...
100s Selecting previously unselected package python3-nacl.
100s Preparing to unpack .../02-python3-nacl_1.5.0-7_arm64.deb ...
100s Unpacking python3-nacl (1.5.0-7) ...
100s Selecting previously unselected package python3-paramiko.
100s Preparing to unpack .../03-python3-paramiko_3.5.1-2ubuntu1_all.deb ...
100s Unpacking python3-paramiko (3.5.1-2ubuntu1) ...
100s Selecting previously unselected package python3-dnspython.
100s Preparing to unpack .../04-python3-dnspython_2.7.0-1ubuntu1_all.deb ...
100s Unpacking python3-dnspython (2.7.0-1ubuntu1) ...
100s Selecting previously unselected package ansible-core.
100s Preparing to unpack .../05-ansible-core_2.18.1-4ubuntu1_all.deb ...
100s Unpacking ansible-core (2.18.1-4ubuntu1) ...
100s Selecting previously unselected package ansible.
100s Preparing to unpack .../06-ansible_11.2.0+dfsg-1_all.deb ...
100s Unpacking ansible (11.2.0+dfsg-1) ...
103s Selecting previously unselected package fonts-dejavu-mono.
103s Preparing to unpack .../07-fonts-dejavu-mono_2.37-8_all.deb ...
103s Unpacking fonts-dejavu-mono (2.37-8) ...
103s Selecting previously unselected package fonts-dejavu-core.
103s Preparing to unpack .../08-fonts-dejavu-core_2.37-8_all.deb ...
103s Unpacking fonts-dejavu-core (2.37-8) ...
103s Selecting previously unselected package fontconfig-config.
103s Preparing to unpack .../09-fontconfig-config_2.15.0-2.2ubuntu1_arm64.deb ...
103s Unpacking fontconfig-config (2.15.0-2.2ubuntu1) ...
103s Selecting previously unselected package libsecret-common.
103s Preparing to unpack .../10-libsecret-common_0.21.7-1_all.deb ...
103s Unpacking libsecret-common (0.21.7-1) ...
103s Selecting previously unselected package libsecret-1-0:arm64.
103s Preparing to unpack .../11-libsecret-1-0_0.21.7-1_arm64.deb ...
103s Unpacking libsecret-1-0:arm64 (0.21.7-1) ...
103s Selecting previously unselected package gir1.2-secret-1:arm64.
103s Preparing to unpack .../12-gir1.2-secret-1_0.21.7-1_arm64.deb ...
103s Unpacking gir1.2-secret-1:arm64 (0.21.7-1) ...
103s Selecting previously unselected package liberror-perl.
103s Preparing to unpack .../13-liberror-perl_0.17030-1_all.deb ...
103s Unpacking liberror-perl (0.17030-1) ...
103s Selecting previously unselected package git-man.
103s Preparing to unpack .../14-git-man_1%3a2.48.1-0ubuntu1_all.deb ...
103s Unpacking git-man (1:2.48.1-0ubuntu1) ...
103s Selecting previously unselected package git.
103s Preparing to unpack .../15-git_1%3a2.48.1-0ubuntu1_arm64.deb ...
103s Unpacking git (1:2.48.1-0ubuntu1) ...
103s Selecting previously unselected package libfontconfig1:arm64.
103s Preparing to unpack .../16-libfontconfig1_2.15.0-2.2ubuntu1_arm64.deb ...
103s Unpacking libfontconfig1:arm64 (2.15.0-2.2ubuntu1) ...
103s Selecting previously unselected package libpixman-1-0:arm64.
103s Preparing to unpack .../17-libpixman-1-0_0.44.0-3_arm64.deb ...
103s Unpacking libpixman-1-0:arm64 (0.44.0-3) ...
103s Selecting previously unselected package libxcb-render0:arm64.
103s Preparing to unpack .../18-libxcb-render0_1.17.0-2_arm64.deb ...
103s Unpacking libxcb-render0:arm64 (1.17.0-2) ...
103s Selecting previously unselected package libxcb-shm0:arm64.
104s Preparing to unpack .../19-libxcb-shm0_1.17.0-2_arm64.deb ...
104s Unpacking libxcb-shm0:arm64 (1.17.0-2) ...
104s Selecting previously unselected package libxrender1:arm64.
104s Preparing to unpack .../20-libxrender1_1%3a0.9.10-1.1build1_arm64.deb ...
104s Unpacking libxrender1:arm64 (1:0.9.10-1.1build1) ...
104s Selecting previously unselected package libcairo2:arm64.
104s Preparing to unpack .../21-libcairo2_1.18.4-1_arm64.deb ...
104s Unpacking libcairo2:arm64 (1.18.4-1) ...
104s Selecting previously unselected package libcairo-gobject2:arm64.
104s Preparing to unpack .../22-libcairo-gobject2_1.18.4-1_arm64.deb ...
104s Unpacking libcairo-gobject2:arm64 (1.18.4-1) ...
104s Selecting previously unselected package libxslt1.1:arm64.
104s Preparing to unpack .../23-libxslt1.1_1.1.39-0exp1ubuntu4_arm64.deb ...
104s Unpacking libxslt1.1:arm64 (1.1.39-0exp1ubuntu4) ...
104s Selecting previously unselected package python3-adal.
104s Preparing to unpack .../24-python3-adal_1.2.7-5_all.deb ...
104s Unpacking python3-adal (1.2.7-5) ...
104s Selecting previously unselected package python3-aiohappyeyeballs.
104s Preparing to unpack .../25-python3-aiohappyeyeballs_2.6.1-1_all.deb ...
104s Unpacking python3-aiohappyeyeballs (2.6.1-1) ...
104s Selecting previously unselected package python3-multidict.
104s Preparing to unpack .../26-python3-multidict_6.2.0-2_arm64.deb ...
104s Unpacking python3-multidict (6.2.0-2) ...
104s Selecting previously unselected package python3-yarl.
104s Preparing to unpack .../27-python3-yarl_1.13.1-1build2_arm64.deb ...
104s Unpacking python3-yarl (1.13.1-1build2) ...
104s Selecting previously unselected package python3-async-timeout.
104s Preparing to unpack .../28-python3-async-timeout_5.0.1-1_all.deb ...
104s Unpacking python3-async-timeout (5.0.1-1) ...
104s Selecting previously unselected package python3-frozenlist.
104s Preparing to unpack .../29-python3-frozenlist_1.5.0-1build2_arm64.deb ...
104s Unpacking python3-frozenlist (1.5.0-1build2) ...
104s Selecting previously unselected package python3-aiosignal.
104s Preparing to unpack .../30-python3-aiosignal_1.3.2-1_all.deb ...
104s Unpacking python3-aiosignal (1.3.2-1) ...
104s Selecting previously unselected package python3-aiohttp.
104s Preparing to unpack .../31-python3-aiohttp_3.10.11-1build1_arm64.deb ...
104s Unpacking python3-aiohttp (3.10.11-1build1) ...
104s Selecting previously unselected package python3-avro.
104s Preparing to unpack .../32-python3-avro_1.12.0+dfsg-1_all.deb ...
104s Unpacking python3-avro (1.12.0+dfsg-1) ...
104s Selecting previously unselected package python3-isodate.
104s Preparing to unpack .../33-python3-isodate_0.7.0-1_all.deb ...
104s Unpacking python3-isodate (0.7.0-1) ...
104s Selecting previously unselected package python3-requests-oauthlib.
104s Preparing to unpack .../34-python3-requests-oauthlib_1.3.1-1_all.deb ...
104s Unpacking python3-requests-oauthlib (1.3.1-1) ...
104s Selecting previously unselected package python3-msrest.
104s Preparing to unpack .../35-python3-msrest_0.6.21-5_all.deb ...
104s Unpacking python3-msrest (0.6.21-5) ...
104s Selecting previously unselected package python3-msrestazure.
104s Preparing to unpack .../36-python3-msrestazure_0.6.4-4_all.deb ...
104s Unpacking python3-msrestazure (0.6.4-4) ...
104s Selecting previously unselected package python3-azure-storage.
104s Preparing to unpack .../37-python3-azure-storage_20250304+git-1_all.deb ...
104s Unpacking python3-azure-storage (20250304+git-1) ...
104s Selecting previously unselected package python3-colorama.
104s Preparing to unpack .../38-python3-colorama_0.4.6-4_all.deb ...
104s Unpacking python3-colorama (0.4.6-4) ...
104s Selecting previously unselected package python3-marshmallow.
104s Preparing to unpack .../39-python3-marshmallow_3.26.1-0.2_all.deb ...
104s Unpacking python3-marshmallow (3.26.1-0.2) ...
104s Selecting previously unselected package python3-msal.
104s Preparing to unpack .../40-python3-msal_1.32.0-1_all.deb ...
104s Unpacking python3-msal (1.32.0-1) ...
104s Selecting previously unselected package python3-cairo.
104s Preparing to unpack .../41-python3-cairo_1.27.0-2_arm64.deb ...
104s Unpacking python3-cairo (1.27.0-2) ...
104s Selecting previously unselected package python3-gi-cairo.
104s Preparing to unpack .../42-python3-gi-cairo_3.50.0-4build1_arm64.deb ...
104s Unpacking python3-gi-cairo (3.50.0-4build1) ...
104s Selecting previously unselected package python3-portalocker.
104s Preparing to unpack .../43-python3-portalocker_2.2.1-1_all.deb ...
104s Unpacking python3-portalocker (2.2.1-1) ...
104s Selecting previously unselected package python3-msal-extensions.
105s Preparing to unpack .../44-python3-msal-extensions_1.3.1-1_all.deb ...
105s Unpacking python3-msal-extensions (1.3.1-1) ...
105s Selecting previously unselected package python3-click.
105s Preparing to unpack .../45-python3-click_8.2.0+0.really.8.1.8-1_all.deb ...
105s Unpacking python3-click (8.2.0+0.really.8.1.8-1) ...
105s Selecting previously unselected package python3-joblib.
105s Preparing to unpack .../46-python3-joblib_1.4.2-3_all.deb ...
105s Unpacking python3-joblib (1.4.2-3) ...
105s Selecting previously unselected package python3-regex.
105s Preparing to unpack .../47-python3-regex_0.1.20241106-1build1_arm64.deb ...
105s Unpacking python3-regex (0.1.20241106-1build1) ...
105s Selecting previously unselected package python3-tqdm.
105s Preparing to unpack .../48-python3-tqdm_4.67.1-3_all.deb ...
105s Unpacking python3-tqdm (4.67.1-3) ...
105s Selecting previously unselected package python3-nltk.
105s Preparing to unpack .../49-python3-nltk_3.9.1-2_all.deb ...
105s Unpacking python3-nltk (3.9.1-2) ...
105s Selecting previously unselected package python3-psutil.
105s Preparing to unpack .../50-python3-psutil_5.9.8-2build3_arm64.deb ...
105s Unpacking python3-psutil (5.9.8-2build3) ...
105s Selecting previously unselected package python3-pydash.
105s Preparing to unpack .../51-python3-pydash_8.0.3-3_all.deb ...
105s Unpacking python3-pydash (8.0.3-3) ...
105s Selecting previously unselected package python3-ruamel.yaml.clib.
105s Preparing to unpack .../52-python3-ruamel.yaml.clib_0.2.12+ds-1build1_arm64.deb ...
105s Unpacking python3-ruamel.yaml.clib (0.2.12+ds-1build1) ...
105s Selecting previously unselected package python3-ruamel.yaml.
105s Preparing to unpack .../53-python3-ruamel.yaml_0.18.10+ds-1_all.deb ...
105s Unpacking python3-ruamel.yaml (0.18.10+ds-1) ...
105s Selecting previously unselected package python3-strictyaml.
105s Preparing to unpack .../54-python3-strictyaml_1.6.1-3_all.deb ...
105s Unpacking python3-strictyaml (1.6.1-3) ...
105s Selecting previously unselected package python3-websocket.
105s Preparing to unpack .../55-python3-websocket_1.8.0-2_all.deb ...
105s Unpacking python3-websocket (1.8.0-2) ...
105s Selecting previously unselected package python3-azure.
105s Preparing to unpack .../56-python3-azure_20250304+git-1_all.deb ...
105s Unpacking python3-azure (20250304+git-1) ...
109s Selecting previously unselected package python3-cachetools.
109s Preparing to unpack .../57-python3-cachetools_5.3.3-1_all.deb ...
109s Unpacking python3-cachetools (5.3.3-1) ...
109s Selecting previously unselected package python3-execnet.
109s Preparing to unpack .../58-python3-execnet_2.1.1-1_all.deb ...
109s Unpacking python3-execnet (2.1.1-1) ...
109s Selecting previously unselected package python3-mccabe.
109s Preparing to unpack .../59-python3-mccabe_0.7.0-1_all.deb ...
109s Unpacking python3-mccabe (0.7.0-1) ...
109s Selecting previously unselected package python3-pycodestyle.
109s Preparing to unpack .../60-python3-pycodestyle_2.12.1-2_all.deb ...
109s Unpacking python3-pycodestyle (2.12.1-2) ...
109s Selecting previously unselected package python3-pyflakes.
109s Preparing to unpack .../61-python3-pyflakes_3.2.0-3_all.deb ...
109s Unpacking python3-pyflakes (3.2.0-3) ...
109s Selecting previously unselected package python3-flake8.
109s Preparing to unpack .../62-python3-flake8_7.1.1-3_all.deb ...
109s Unpacking python3-flake8 (7.1.1-3) ...
109s Selecting previously unselected package python3-freezegun.
109s Preparing to unpack .../63-python3-freezegun_1.5.1-1.2_all.deb ...
109s Unpacking python3-freezegun (1.5.1-1.2) ...
109s Selecting previously unselected package python3-requests-toolbelt.
109s Preparing to unpack .../64-python3-requests-toolbelt_1.0.0-4_all.deb ...
109s Unpacking python3-requests-toolbelt (1.0.0-4) ...
109s Selecting previously unselected package python3-gitlab.
109s Preparing to unpack .../65-python3-gitlab_1%3a4.9.0-1_all.deb ...
109s Unpacking python3-gitlab (1:4.9.0-1) ...
109s Selecting previously unselected package python3-pyasn1.
109s Preparing to unpack .../66-python3-pyasn1_0.6.1-1_all.deb ...
109s Unpacking python3-pyasn1 (0.6.1-1) ...
109s Selecting previously unselected package python3-pyasn1-modules.
109s Preparing to unpack .../67-python3-pyasn1-modules_0.4.1-2_all.deb ...
109s Unpacking python3-pyasn1-modules (0.4.1-2) ...
109s Selecting previously unselected package python3-pyu2f.
109s Preparing to unpack .../68-python3-pyu2f_0.1.5-4_all.deb ...
109s Unpacking python3-pyu2f (0.1.5-4) ...
109s Selecting previously unselected package python3-responses.
109s Preparing to unpack .../69-python3-responses_0.25.6-1_all.deb ...
109s Unpacking python3-responses (0.25.6-1) ...
109s Selecting previously unselected package python3-rsa.
109s Preparing to unpack .../70-python3-rsa_4.9-2_all.deb ...
109s Unpacking python3-rsa (4.9-2) ...
109s Selecting previously unselected package python3-google-auth.
109s Preparing to unpack .../71-python3-google-auth_2.28.2-3_all.deb ...
109s Unpacking python3-google-auth (2.28.2-3) ...
109s Selecting previously unselected package python3-httmock.
109s Preparing to unpack .../72-python3-httmock_1.4.0-5_all.deb ...
109s Unpacking python3-httmock (1.4.0-5) ...
109s Selecting previously unselected package python3-pyhcl.
109s Preparing to unpack .../73-python3-pyhcl_0.4.4-6_all.deb ...
109s Unpacking python3-pyhcl (0.4.4-6) ...
109s Selecting previously unselected package python3-hvac.
109s Preparing to unpack .../74-python3-hvac_2.3.0-3_all.deb ...
109s Unpacking python3-hvac (2.3.0-3) ...
109s Selecting previously unselected package python3-iniconfig.
110s Preparing to unpack .../75-python3-iniconfig_1.1.1-2_all.deb ...
110s Unpacking python3-iniconfig (1.1.1-2) ...
110s Selecting previously unselected package python3-kubernetes.
110s Preparing to unpack .../76-python3-kubernetes_30.1.0-2_all.deb ...
110s Unpacking python3-kubernetes (30.1.0-2) ...
110s Selecting previously unselected package python3-lxml:arm64.
110s Preparing to unpack .../77-python3-lxml_5.3.2-1_arm64.deb ...
110s Unpacking python3-lxml:arm64 (5.3.2-1) ...
110s Selecting previously unselected package python3-pathspec.
110s Preparing to unpack .../78-python3-pathspec_0.12.1-1_all.deb ...
110s Unpacking python3-pathspec (0.12.1-1) ...
110s Selecting previously unselected package python3-pluggy.
110s Preparing to unpack .../79-python3-pluggy_1.5.0-1_all.deb ...
110s Unpacking python3-pluggy (1.5.0-1) ...
110s Selecting previously unselected package python3-proxmoxer.
110s Preparing to unpack .../80-python3-proxmoxer_2.2.0-1_all.deb ...
110s Unpacking python3-proxmoxer (2.2.0-1) ...
110s Selecting previously unselected package python3-py.
110s Preparing to unpack .../81-python3-py_1.11.0-4_all.deb ...
110s Unpacking python3-py (1.11.0-4) ...
110s Selecting previously unselected package python3-pytest.
110s Preparing to unpack .../82-python3-pytest_8.3.5-1_all.deb ...
110s Unpacking python3-pytest (8.3.5-1) ...
110s Selecting previously unselected package python3-pytest-forked.
110s Preparing to unpack .../83-python3-pytest-forked_1.6.0-3_all.deb ...
110s Unpacking python3-pytest-forked (1.6.0-3) ...
110s Selecting previously unselected package python3-pytest-mock.
110s Preparing to unpack .../84-python3-pytest-mock_3.14.0-2_all.deb ...
110s Unpacking python3-pytest-mock (3.14.0-2) ...
110s Selecting previously unselected package python3-pytest-xdist.
110s Preparing to unpack .../85-python3-pytest-xdist_3.6.1-1_all.deb ...
110s Unpacking python3-pytest-xdist (3.6.1-1) ...
110s Selecting previously unselected package python3-pyvmomi.
110s Preparing to unpack .../86-python3-pyvmomi_8.0.3.0.1-1_all.deb ...
110s Unpacking python3-pyvmomi (8.0.3.0.1-1) ...
110s Selecting previously unselected package python3-redis.
110s Preparing to unpack .../87-python3-redis_5.2.1-1_all.deb ...
110s Unpacking python3-redis (5.2.1-1) ...
110s Selecting previously unselected package python3-textfsm.
110s Preparing to unpack .../88-python3-textfsm_1.1.3-3_all.deb ...
110s Unpacking python3-textfsm (1.1.3-3) ...
110s Selecting previously unselected package python3-xmltodict.
110s Preparing to unpack .../89-python3-xmltodict_0.13.0-1_all.deb ...
110s Unpacking python3-xmltodict (0.13.0-1) ...
110s Selecting previously unselected package yamllint.
111s Preparing to unpack .../90-yamllint_1.35.1-2_all.deb ...
111s Unpacking yamllint (1.35.1-2) ...
111s Selecting previously unselected package python3-mock.
111s Preparing to unpack .../91-python3-mock_5.1.0-1_all.deb ...
111s Unpacking python3-mock (5.1.0-1) ...
111s Setting up python3-iniconfig (1.1.1-2) ...
111s Setting up libpixman-1-0:arm64 (0.44.0-3) ...
111s Setting up libsodium23:arm64 (1.0.18-1build3) ...
111s Setting up python3-requests-toolbelt (1.0.0-4) ...
111s Setting up libxrender1:arm64 (1:0.9.10-1.1build1) ...
111s Setting up python3-py (1.11.0-4) ...
111s Setting up python3-joblib (1.4.2-3) ...
111s Setting up python3-cachetools (5.3.3-1) ...
111s Setting up python3-colorama (0.4.6-4) ...
111s Setting up libxcb-render0:arm64 (1.17.0-2) ...
111s Setting up python3-tqdm (4.67.1-3) ...
112s Setting up python3-pyflakes (3.2.0-3) ...
112s Setting up python3-ruamel.yaml.clib (0.2.12+ds-1build1) ...
112s Setting up python3-resolvelib (1.1.0-1) ...
112s Setting up python3-marshmallow (3.26.1-0.2) ...
112s Setting up python3-msal (1.32.0-1) ...
112s Setting up libxcb-shm0:arm64 (1.17.0-2) ...
112s Setting up python3-httmock (1.4.0-5) ...
112s Setting up python3-click (8.2.0+0.really.8.1.8-1) ...
112s Setting up python3-psutil (5.9.8-2build3) ...
113s Setting up python3-multidict (6.2.0-2) ...
113s Setting up python3-frozenlist (1.5.0-1build2) ...
113s Setting up python3-aiosignal (1.3.2-1) ...
113s Setting up python3-mock (5.1.0-1) ...
113s Setting up python3-async-timeout (5.0.1-1) ...
113s Setting up liberror-perl (0.17030-1) ...
113s Setting up python3-responses (0.25.6-1) ...
113s Setting up python3-pyvmomi (8.0.3.0.1-1) ...
114s Setting up python3-isodate (0.7.0-1) ...
114s Setting up python3-pycodestyle (2.12.1-2) ...
114s Setting up python3-xmltodict (0.13.0-1) ...
114s Setting up python3-pyu2f (0.1.5-4) ...
114s Setting up python3-avro (1.12.0+dfsg-1) ...
114s Setting up fonts-dejavu-mono (2.37-8) ...
114s Setting up fonts-dejavu-core (2.37-8) ...
114s Setting up python3-redis (5.2.1-1) ...
115s Setting up python3-aiohappyeyeballs (2.6.1-1) ...
115s Setting up python3-regex (0.1.20241106-1build1) ...
115s Setting up python3-pluggy (1.5.0-1) ...
115s Setting up python3-ruamel.yaml (0.18.10+ds-1) ...
115s Setting up python3-adal (1.2.7-5) ...
116s Setting up python3-dnspython (2.7.0-1ubuntu1) ...
116s Setting up python3-portalocker (2.2.1-1) ...
116s Setting up libxslt1.1:arm64 (1.1.39-0exp1ubuntu4) ...
116s Setting up python3-pyasn1 (0.6.1-1) ...
116s Setting up python3-proxmoxer (2.2.0-1) ...
116s Setting up git-man (1:2.48.1-0ubuntu1) ...
116s Setting up python3-textfsm (1.1.3-3) ...
116s Setting up python3-mccabe (0.7.0-1) ...
116s Setting up python3-execnet (2.1.1-1) ...
117s Setting up python3-pathspec (0.12.1-1) ...
117s Setting up python3-pydash (8.0.3-3) ...
117s Setting up python3-nltk (3.9.1-2) ...
118s Setting up python3-yarl (1.13.1-1build2) ...
118s Setting up python3-pyhcl (0.4.4-6) ...
118s Setting up python3-gitlab (1:4.9.0-1) ...
118s Setting up python3-websocket (1.8.0-2) ...
118s Setting up libsecret-common (0.21.7-1) ...
118s Setting up python3-freezegun (1.5.1-1.2) ...
119s Setting up python3-nacl (1.5.0-7) ...
119s Setting up python3-requests-oauthlib (1.3.1-1) ...
119s Setting up fontconfig-config (2.15.0-2.2ubuntu1) ...
119s Setting up python3-pytest (8.3.5-1) ...
119s Setting up python3-aiohttp (3.10.11-1build1) ...
120s Setting up ansible-core (2.18.1-4ubuntu1) ...
121s Setting up python3-flake8 (7.1.1-3) ...
121s Setting up python3-msrest (0.6.21-5) ...
121s Setting up python3-pytest-forked (1.6.0-3) ...
121s Setting up python3-strictyaml (1.6.1-3) ...
121s Setting up libsecret-1-0:arm64 (0.21.7-1) ...
121s Setting up yamllint (1.35.1-2) ...
121s Setting up gir1.2-secret-1:arm64 (0.21.7-1) ...
121s Setting up python3-pyasn1-modules (0.4.1-2) ...
122s Setting up python3-hvac (2.3.0-3) ...
122s Setting up git (1:2.48.1-0ubuntu1) ...
122s Setting up python3-pytest-mock (3.14.0-2) ...
122s Setting up python3-lxml:arm64 (5.3.2-1) ...
122s Setting up python3-rsa (4.9-2) ...
122s Setting up libfontconfig1:arm64 (2.15.0-2.2ubuntu1) ...
122s Setting up python3-msrestazure (0.6.4-4) ...
122s Setting up ansible (11.2.0+dfsg-1) ...
141s Setting up python3-paramiko (3.5.1-2ubuntu1) ...
142s Setting up python3-pytest-xdist (3.6.1-1) ...
142s Setting up libcairo2:arm64 (1.18.4-1) ...
142s Setting up python3-google-auth (2.28.2-3) ...
142s Setting up libcairo-gobject2:arm64 (1.18.4-1) ...
142s Setting up python3-cairo (1.27.0-2) ...
142s Setting up python3-kubernetes (30.1.0-2) ...
143s Setting up python3-gi-cairo (3.50.0-4build1) ...
143s Setting up python3-msal-extensions (1.3.1-1) ...
143s Setting up python3-azure-storage (20250304+git-1) ...
144s Setting up python3-azure (20250304+git-1) ...
156s /usr/lib/python3/dist-packages/azure/ai/ml/_vendor/azure_resources/aio/operations/_resources_operations.py:80: SyntaxWarning: invalid escape sequence '\ '
156s Valid values include ``createdTime``\ , ``changedTime`` and ``provisioningState``. For example,
156s /usr/lib/python3/dist-packages/azure/ai/ml/_vendor/azure_resources/aio/operations/_resources_operations.py:405: SyntaxWarning: invalid escape sequence '\ '
156s Valid values include ``createdTime``\ , ``changedTime`` and ``provisioningState``. For example,
158s /usr/lib/python3/dist-packages/azure/appconfiguration/_generated/models/_models.py:238: SyntaxWarning: invalid escape sequence '\ '
158s """An error, available when the status is ``Failed``\ , describing why the operation
159s /usr/lib/python3/dist-packages/azure/batch/models/_models.py:9067: SyntaxWarning: invalid escape sequence '\ '
159s """The source port ranges to match for the rule. Valid values are '\ *' (for all ports 0 - 65535),
159s /usr/lib/python3/dist-packages/azure/batch/models/_models.py:9235: SyntaxWarning: invalid escape sequence '\ '
159s using brackets (for example abc[\ *] would match a file named abc*\ ). Note that both and / are
160s /usr/lib/python3/dist-packages/azure/communication/jobrouter/models/_models.py:2326: SyntaxWarning: invalid escape sequence '\ '
160s payload to scoring rule. If not set, a job's labels (sent in the payload as ``job``\ ) and a
160s /usr/lib/python3/dist-packages/azure/communication/jobrouter/models/_models.py:2346: SyntaxWarning: invalid escape sequence '\ '
160s If not set, a job's labels (sent in the payload as ``job``\ ) and a job's worker selectors
163s /usr/lib/python3/dist-packages/azure/mgmt/advisor/aio/operations/_recommendations_operations.py:190: SyntaxWarning: invalid escape sequence '\ '
163s properties ['ResourceId', 'ResourceGroup', 'RecommendationTypeGuid', '\ `Category
163s /usr/lib/python3/dist-packages/azure/mgmt/advisor/operations/_recommendations_operations.py:303: SyntaxWarning: invalid escape sequence '\ '
163s properties ['ResourceId', 'ResourceGroup', 'RecommendationTypeGuid', '\ `Category
163s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:3917: SyntaxWarning: invalid escape sequence '\ '
163s Possible Values::code:`
`:code:`
` **Standard**\ :code:`
`:code:`
`
163s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10212: SyntaxWarning: invalid escape sequence '\ '
163s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
163s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10255: SyntaxWarning: invalid escape sequence '\ '
163s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
163s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10284: SyntaxWarning: invalid escape sequence '\ '
163s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
163s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10320: SyntaxWarning: invalid escape sequence '\ '
163s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
163s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10342: SyntaxWarning: invalid escape sequence '\ '
163s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
163s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10375: SyntaxWarning: invalid escape sequence '\ '
163s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
163s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10396: SyntaxWarning: invalid escape sequence '\ '
163s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
163s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10429: SyntaxWarning: invalid escape sequence '\ '
163s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
163s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:14746: SyntaxWarning: invalid escape sequence '\ '
163s :ivar allowed_sources: Allowed sources, e.g. ``*.trusted.com``\ , ``trusted.com``\ ,
163s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:14771: SyntaxWarning: invalid escape sequence '\ '
163s :keyword allowed_sources: Allowed sources, e.g. ``*.trusted.com``\ , ``trusted.com``\ ,
167s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models.py:1420: SyntaxWarning: invalid escape sequence '\ '
167s :param id: Required. The ID for the input directory. The job can use AZ_BATCHAI\ *INPUT*\
167s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models.py:2310: SyntaxWarning: invalid escape sequence '\ '
167s :param id: Required. The ID of the output directory. The job can use AZ_BATCHAI\ *OUTPUT*\
167s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models_py3.py:1547: SyntaxWarning: invalid escape sequence '\ '
167s :param id: Required. The ID for the input directory. The job can use AZ_BATCHAI\ *INPUT*\
167s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models_py3.py:2524: SyntaxWarning: invalid escape sequence '\ '
167s :param id: Required. The ID of the output directory. The job can use AZ_BATCHAI\ *OUTPUT*\
171s /usr/lib/python3/dist-packages/azure/mgmt/computefleet/models/_models.py:624: SyntaxWarning: invalid escape sequence '\ '
171s and Screenshot to diagnose VM status. **NOTE**\ : If storageUri is being
171s /usr/lib/python3/dist-packages/azure/mgmt/computefleet/models/_models.py:3707: SyntaxWarning: invalid escape sequence '\W'
171s characters :code:`
` Has a digit :code:`
` Has a special character (Regex match [\W_])
175s /usr/lib/python3/dist-packages/azure/mgmt/datamigration/models/_models_py3.py:16843: SyntaxWarning: invalid escape sequence '\S'
175s Protocol:MachineName\SQLServerInstanceName,PortNumber. Required.
175s /usr/lib/python3/dist-packages/azure/mgmt/datamigration/models/_models_py3.py:16916: SyntaxWarning: invalid escape sequence '\S'
175s Protocol:MachineName\SQLServerInstanceName,PortNumber. Required.
177s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:63: SyntaxWarning: invalid escape sequence '\w'
177s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
177s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:130: SyntaxWarning: invalid escape sequence '\w'
177s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
177s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:224: SyntaxWarning: invalid escape sequence '\w'
177s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
177s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:312: SyntaxWarning: invalid escape sequence '\w'
177s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
177s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:398: SyntaxWarning: invalid escape sequence '\w'
177s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
177s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:543: SyntaxWarning: invalid escape sequence '\w'
177s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
177s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:612: SyntaxWarning: invalid escape sequence '\w'
177s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
177s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:675: SyntaxWarning: invalid escape sequence '\w'
177s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
177s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:738: SyntaxWarning: invalid escape sequence '\w'
177s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
177s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:807: SyntaxWarning: invalid escape sequence '\w'
177s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
180s /usr/lib/python3/dist-packages/azure/mgmt/hybridnetwork/models/_models_py3.py:6032: SyntaxWarning: invalid escape sequence '\ '
180s :ivar provisioning_state: The provisioning state of the site resource. **TODO**\ : Confirm if
182s /usr/lib/python3/dist-packages/azure/mgmt/iotoperations/models/_models.py:3866: SyntaxWarning: invalid escape sequence '\ '
182s pattern set glob-style pattern (e.g., '\ *', 'clients/*\ '). Required."""
182s /usr/lib/python3/dist-packages/azure/mgmt/iotoperations/models/_models.py:3868: SyntaxWarning: invalid escape sequence '\ '
182s """Give access for ``Read``\ , ``Write`` and ``ReadWrite`` access level. Required. Known values
184s /usr/lib/python3/dist-packages/azure/mgmt/machinelearningservices/models/_machine_learning_services_mgmt_client_enums.py:169: SyntaxWarning: invalid escape sequence '\ '
184s #: The "forest"\ it builds, is an ensemble of decision trees, usually trained with the “bagging”\
184s /usr/lib/python3/dist-packages/azure/mgmt/machinelearningservices/models/_machine_learning_services_mgmt_client_enums.py:1032: SyntaxWarning: invalid escape sequence '\ '
184s #: The "forest"\ it builds, is an ensemble of decision trees, usually trained with the “bagging”\
191s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2542: SyntaxWarning: invalid escape sequence '\R'
191s """Execute Reverse Replication\Reprotect.
191s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2583: SyntaxWarning: invalid escape sequence '\R'
191s """Execute Reverse Replication\Reprotect.
191s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2622: SyntaxWarning: invalid escape sequence '\R'
191s """Execute Reverse Replication\Reprotect.
191s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:5397: SyntaxWarning: invalid escape sequence '\L'
191s :ivar lun_id: Ordinal\LunId of the disk for the Azure VM.
191s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:5448: SyntaxWarning: invalid escape sequence '\L'
191s :keyword lun_id: Ordinal\LunId of the disk for the Azure VM.
191s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:8836: SyntaxWarning: invalid escape sequence '\S'
191s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
191s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:8978: SyntaxWarning: invalid escape sequence '\S'
191s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
191s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:9510: SyntaxWarning: invalid escape sequence '\S'
191s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
191s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:9675: SyntaxWarning: invalid escape sequence '\S'
191s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
191s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:11412: SyntaxWarning: invalid escape sequence '\S'
191s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target VM after
191s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:11541: SyntaxWarning: invalid escape sequence '\S'
191s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target VM after
191s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:12193: SyntaxWarning: invalid escape sequence '\S'
191s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
191s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:12516: SyntaxWarning: invalid escape sequence '\S'
191s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
191s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:26323: SyntaxWarning: invalid escape sequence '\S'
191s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
191s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:26382: SyntaxWarning: invalid escape sequence '\S'
191s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
192s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3476: SyntaxWarning: invalid escape sequence '\R'
192s """Execute Reverse Replication\Reprotect.
192s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3517: SyntaxWarning: invalid escape sequence '\R'
192s """Execute Reverse Replication\Reprotect.
192s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3556: SyntaxWarning: invalid escape sequence '\R'
192s """Execute Reverse Replication\Reprotect.
192s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_azure_reservation_api_operations.py:163: SyntaxWarning: invalid escape sequence '\ '
192s """Get list of applicable ``Reservation``\ s.
192s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:377: SyntaxWarning: invalid escape sequence '\ '
192s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution.
192s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:407: SyntaxWarning: invalid escape sequence '\ '
192s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution.
192s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:437: SyntaxWarning: invalid escape sequence '\ '
192s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution.
192s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:583: SyntaxWarning: invalid escape sequence '\ '
192s """Merges two ``Reservation``\ s.
192s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:614: SyntaxWarning: invalid escape sequence '\ '
192s """Merges two ``Reservation``\ s.
192s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:645: SyntaxWarning: invalid escape sequence '\ '
192s """Merges two ``Reservation``\ s.
192s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:721: SyntaxWarning: invalid escape sequence '\ '
192s """Get ``Reservation``\ s in a given reservation Order.
192s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_order_operations.py:183: SyntaxWarning: invalid escape sequence '\ '
192s """Get all ``ReservationOrder``\ s.
192s /usr/lib/python3/dist-packages/azure/mgmt/reservations/models/_models_py3.py:3172: SyntaxWarning: invalid escape sequence '\ '
192s """List of ``Reservation``\ s.
192s /usr/lib/python3/dist-packages/azure/mgmt/reservations/models/_models_py3.py:3288: SyntaxWarning: invalid escape sequence '\ '
192s """List of ``ReservationOrder``\ s.
192s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_azure_reservation_api_operations.py:239: SyntaxWarning: invalid escape sequence '\ '
192s """Get list of applicable ``Reservation``\ s.
192s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:662: SyntaxWarning: invalid escape sequence '\ '
192s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution.
192s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:692: SyntaxWarning: invalid escape sequence '\ '
192s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution.
192s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:722: SyntaxWarning: invalid escape sequence '\ '
192s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution.
192s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:868: SyntaxWarning: invalid escape sequence '\ '
192s """Merges two ``Reservation``\ s.
192s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:899: SyntaxWarning: invalid escape sequence '\ '
192s """Merges two ``Reservation``\ s.
192s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:930: SyntaxWarning: invalid escape sequence '\ '
192s """Merges two ``Reservation``\ s.
192s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:1006: SyntaxWarning: invalid escape sequence '\ '
192s """Get ``Reservation``\ s in a given reservation Order.
192s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_order_operations.py:299: SyntaxWarning: invalid escape sequence '\ '
192s """Get all ``ReservationOrder``\ s.
196s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:68: SyntaxWarning: invalid escape sequence '\ '
196s **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after ``end``
196s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:90: SyntaxWarning: invalid escape sequence '\ '
196s ``[``\ **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after
196s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:1141: SyntaxWarning: invalid escape sequence '\ '
196s **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after ``end``
196s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:1163: SyntaxWarning: invalid escape sequence '\ '
196s ``[``\ **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after
199s /usr/lib/python3/dist-packages/azure/mgmt/signalr/models/_models_py3.py:2858: SyntaxWarning: invalid escape sequence '\ '
199s For example, if the urlTemplate is ``http://example.com/{hub}/api/{event}``\ , with a client
199s /usr/lib/python3/dist-packages/azure/mgmt/signalr/models/_models_py3.py:2925: SyntaxWarning: invalid escape sequence '\ '
199s For example, if the urlTemplate is ``http://example.com/{hub}/api/{event}``\ , with a client
201s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_functions_operations.py:595: SyntaxWarning: invalid escape sequence '\ '
201s properties to include in the response, or "\ *" to include all properties. By default, all
201s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_inputs_operations.py:593: SyntaxWarning: invalid escape sequence '\ '
201s properties to include in the response, or "\ *" to include all properties. By default, all
201s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_outputs_operations.py:593: SyntaxWarning: invalid escape sequence '\ '
201s properties to include in the response, or "\ *" to include all properties. By default, all
201s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/models/_stream_analytics_management_client_enums.py:14: SyntaxWarning: invalid escape sequence '\ '
201s """Authentication Mode. Valid modes are ``ConnectionString``\ , ``Msi`` and 'UserToken'."""
201s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_functions_operations.py:859: SyntaxWarning: invalid escape sequence '\ '
201s properties to include in the response, or "\ *" to include all properties. By default, all
201s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_inputs_operations.py:821: SyntaxWarning: invalid escape sequence '\ '
201s properties to include in the response, or "\ *" to include all properties. By default, all
201s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_outputs_operations.py:821: SyntaxWarning: invalid escape sequence '\ '
201s properties to include in the response, or "\ *" to include all properties. By default, all
201s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_communications_no_subscription_operations.py:193: SyntaxWarning: invalid escape sequence '\ '
201s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication
201s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_communications_operations.py:194: SyntaxWarning: invalid escape sequence '\ '
201s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication
201s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:177: SyntaxWarning: invalid escape sequence '\ '
201s tickets by *Status*\ , *CreatedDate*\ , *ServiceId*\ , and *ProblemClassificationId* using the
201s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:540: SyntaxWarning: invalid escape sequence '\ '
201s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket
201s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:582: SyntaxWarning: invalid escape sequence '\ '
201s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket
201s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:622: SyntaxWarning: invalid escape sequence '\ '
201s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket
201s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_communications_no_subscription_operations.py:308: SyntaxWarning: invalid escape sequence '\ '
201s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication
201s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_communications_operations.py:326: SyntaxWarning: invalid escape sequence '\ '
201s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication
201s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:319: SyntaxWarning: invalid escape sequence '\ '
201s tickets by *Status*\ , *CreatedDate*\ , *ServiceId*\ , and *ProblemClassificationId* using the
201s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:681: SyntaxWarning: invalid escape sequence '\ '
201s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket
201s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:723: SyntaxWarning: invalid escape sequence '\ '
201s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket
201s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:763: SyntaxWarning: invalid escape sequence '\ '
201s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket
201s /usr/lib/python3/dist-packages/azure/mgmt/synapse/models/_models_py3.py:6232: SyntaxWarning: invalid escape sequence '\ '
201s :ivar maintenance_window_cycles: Available maintenance cycles e.g. {Saturday, 0, 48\ *60},
201s /usr/lib/python3/dist-packages/azure/mgmt/synapse/models/_models_py3.py:6288: SyntaxWarning: invalid escape sequence '\ '
201s :keyword maintenance_window_cycles: Available maintenance cycles e.g. {Saturday, 0, 48\ *60},
206s /usr/lib/python3/dist-packages/azure/mgmt/workloads/models/_models_py3.py:2909: SyntaxWarning: invalid escape sequence '\W'
206s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
`
206s /usr/lib/python3/dist-packages/azure/mgmt/workloads/models/_models_py3.py:2954: SyntaxWarning: invalid escape sequence '\W'
206s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
`
206s /usr/lib/python3/dist-packages/azure/mgmt/workloadssapvirtualinstance/models/_models_py3.py:1980: SyntaxWarning: invalid escape sequence '\W'
206s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
`
206s /usr/lib/python3/dist-packages/azure/mgmt/workloadssapvirtualinstance/models/_models_py3.py:2025: SyntaxWarning: invalid escape sequence '\W'
206s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
`
207s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:2732: SyntaxWarning: invalid escape sequence '\:'
207s attr:\:code:``=:code:``.
207s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:3537: SyntaxWarning: invalid escape sequence '\:'
207s attr:\:code:``=\:code:``.
207s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:4216: SyntaxWarning: invalid escape sequence '\:'
207s typeName=\:code:``&attr_1:\:code:``=\:code:``&attr_2:\:code:``=\:code:``&attr_3:\:code:``=\:code:``
207s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:6219: SyntaxWarning: invalid escape sequence '\:'
207s attr:\:code:``=:code:``.
207s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:7024: SyntaxWarning: invalid escape sequence '\:'
207s attr:\:code:``=\:code:``.
207s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:7703: SyntaxWarning: invalid escape sequence '\:'
207s typeName=\:code:``&attr_1:\:code:``=\:code:``&attr_2:\:code:``=\:code:``&attr_3:\:code:``=\:code:``
208s /usr/lib/python3/dist-packages/azure/servicemanagement/schedulermanagementservice.py:59: SyntaxWarning: invalid escape sequence '\m'
208s CURRENT_USER\my\CertificateName format.
208s /usr/lib/python3/dist-packages/azure/servicemanagement/servicebusmanagementservice.py:59: SyntaxWarning: invalid escape sequence '\m'
208s CURRENT_USER\my\CertificateName format.
208s /usr/lib/python3/dist-packages/azure/servicemanagement/servicemanagementservice.py:81: SyntaxWarning: invalid escape sequence '\m'
208s CURRENT_USER\my\CertificateName format.
208s /usr/lib/python3/dist-packages/azure/servicemanagement/sqldatabasemanagementservice.py:55: SyntaxWarning: invalid escape sequence '\m'
208s CURRENT_USER\my\CertificateName format.
208s /usr/lib/python3/dist-packages/azure/servicemanagement/websitemanagementservice.py:55: SyntaxWarning: invalid escape sequence '\m'
208s CURRENT_USER\my\CertificateName format.
208s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:110: SyntaxWarning: invalid escape sequence '\d'
208s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
208s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:1328: SyntaxWarning: invalid escape sequence '\d'
208s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9]))..).
208s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:4218: SyntaxWarning: invalid escape sequence '\d'
208s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
208s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:4280: SyntaxWarning: invalid escape sequence '\d'
208s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
208s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:18198: SyntaxWarning: invalid escape sequence '\d'
208s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
208s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19096: SyntaxWarning: invalid escape sequence '\d'
208s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). Type: string (or Expression with
208s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19185: SyntaxWarning: invalid escape sequence '\d'
208s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
208s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19749: SyntaxWarning: invalid escape sequence '\d'
208s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
209s Processing triggers for libc-bin (2.41-6ubuntu1) ...
209s Processing triggers for man-db (2.13.0-1) ...
210s autopkgtest [15:33:27]: test unit-tests-stable.py: [-----------------------
211s
211s
211s
211s ############################################################
211s ############################################################
211s #### Running tests in ansible_collections/amazon/aws
211s ############################################################
211s ############################################################
211s Unit test modules with Python 3.13
213s ============================= test session starts ==============================
213s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
213s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/amazon/aws
213s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
213s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
213s created: 2/2 workers
213s 2 workers [348 items]
213s
213s ........................................................................ [ 20%]
214s ........................................................................ [ 41%]
214s ........................................................................ [ 62%]
215s ........................................................................ [ 82%]
216s ............................................................ [100%]
216s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/amazon/aws/tests/output/junit/python3.13-modules-units.xml -
216s =========================== short test summary info ============================
216s SKIPPED [1] tests/unit/utils/amazon_placebo_fixtures.py:16: could not import 'placebo': No module named 'placebo'
216s ======================== 348 passed, 1 skipped in 4.38s ========================
216s 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.5tw1FI/build.bwJ/src/ansible_collections/amazon/aws
218s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
218s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
218s created: 2/2 workers
218s 2 workers [1252 items]
218s
219s ........................................................................ [ 5%]
219s ........................................................................ [ 11%]
220s ........................................................................ [ 17%]
221s ........................................................................ [ 23%]
222s ........................................................................ [ 28%]
224s ........................................................................ [ 34%]
240s ........................................................................ [ 40%]
241s ........................................................................ [ 46%]
243s ........................................................................ [ 51%]
244s ........................................................................ [ 57%]
245s ........................................................................ [ 63%]
246s ........................................................................ [ 69%]
247s ........................................................................ [ 74%]
248s ........................................................................ [ 80%]
249s ........................................................................ [ 86%]
250s ........................................................................ [ 92%]
408s ........................................................................ [ 97%]
409s ............................ [100%]
409s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/amazon/aws/tests/output/junit/python3.13-controller-units.xml -
409s ======================= 1252 passed in 192.67s (0:03:12) =======================
409s
409s
409s
409s ############################################################
409s ############################################################
409s #### Running tests in ansible_collections/microsoft/ad
409s ############################################################
409s ############################################################
409s Unit test controller with Python 3.13
410s ============================= test session starts ==============================
410s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
410s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/microsoft/ad
410s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
410s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
410s created: 2/2 workers
410s 2 workers [118 items]
410s
411s ........................................................................ [ 61%]
420s ..................ss.......................... [100%]
420s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/microsoft/ad/tests/output/junit/python3.13-controller-units.xml -
420s =========================== short test summary info ============================
420s SKIPPED [1] tests/unit/plugins/plugin_utils/_ldap/test_laps.py:9: could not import 'dpapi_ng': No module named 'dpapi_ng'
420s SKIPPED [1] tests/unit/plugins/plugin_utils/_ldap/test_schema.py:8: could not import 'sansldap': No module named 'sansldap'
420s SKIPPED [1] tests/unit/plugins/plugin_utils/_ldap/test_certificate.py:179: Hash algorithm is unavailable: Hash algorithm "md5" not supported for signatures
420s SKIPPED [1] tests/unit/plugins/plugin_utils/_ldap/test_certificate.py:179: Hash algorithm is unavailable: Hash algorithm "sha1" not supported for signatures
420s ======================= 116 passed, 4 skipped in 10.38s ========================
420s
420s
420s
420s ############################################################
420s ############################################################
420s #### Running tests in ansible_collections/cisco/ios
420s ############################################################
420s ############################################################
420s Unit test controller with Python 3.13
422s ============================= test session starts ==============================
422s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
422s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/ios
422s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
422s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
422s created: 2/2 workers
422s 2 workers [425 items]
422s
424s ........................................................................ [ 16%]
427s ........................................................................ [ 33%]
429s ........................................................................ [ 50%]
444s ........................................................................ [ 67%]
447s ........................................................................ [ 84%]
463s ................................................................. [100%]
463s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/ios/tests/output/junit/python3.13-controller-units.xml -
463s ============================= 425 passed in 42.42s =============================
463s
463s
463s
463s ############################################################
463s ############################################################
463s #### Running tests in ansible_collections/cisco/asa
463s ############################################################
463s ############################################################
463s Unit test controller with Python 3.13
465s ============================= test session starts ==============================
465s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
465s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/asa
465s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
465s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
465s created: 2/2 workers
465s 2 workers [21 items]
465s
470s ..................... [100%]
470s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/asa/tests/output/junit/python3.13-controller-units.xml -
470s ============================== 21 passed in 5.77s ==============================
470s Skipping ansible_collections/cisco/aci
470s
470s
470s
470s ############################################################
470s ############################################################
470s #### Running tests in ansible_collections/cisco/nxos
470s ############################################################
470s ############################################################
470s Unit test controller with Python 3.13
472s ============================= test session starts ==============================
472s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
472s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/nxos
472s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
472s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
472s created: 2/2 workers
472s 2 workers [773 items]
472s
473s ........................................................................ [ 9%]
475s ........................................................................ [ 18%]
477s ........................................................................ [ 27%]
483s ........................................................................ [ 37%]
484s ........................................................................ [ 46%]
486s ........................................................................ [ 55%]
487s ........................................................................ [ 65%]
490s ........................................................................ [ 74%]
492s ........................................................................ [ 83%]
493s ........................................................................ [ 93%]
494s ..................................................... [100%]
494s =============================== warnings summary ===============================
494s tests/unit/modules/network/nxos/test_nxos_acls.py: 91 warnings
494s /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:270: DeprecationWarning: 'count' is passed as positional argument
494s ace = re.sub(seq, "", ace, 1)
494s
494s tests/unit/modules/network/nxos/test_nxos_acls.py: 84 warnings
494s /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:279: DeprecationWarning: 'count' is passed as positional argument
494s ace = re.sub(grant, "", ace, 1)
494s
494s tests/unit/modules/network/nxos/test_nxos_acls.py: 84 warnings
494s /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:287: DeprecationWarning: 'count' is passed as positional argument
494s ace = re.sub(pro, "", ace, 1)
494s
494s tests/unit/modules/network/nxos/test_nxos_acls.py: 168 warnings
494s /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:117: DeprecationWarning: 'count' is passed as positional argument
494s ace = re.sub(option, "", ace, 1)
494s
494s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_gathered
494s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark
494s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_ranges
494s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_ranges
494s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_ranges
494s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_ranges
494s /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:142: DeprecationWarning: 'count' is passed as positional argument
494s ace = re.sub(range_substring, "", ace, 1)
494s
494s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_gathered
494s /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:116: DeprecationWarning: 'count' is passed as positional argument
494s ace = re.sub("{0}".format(wb), "", ace, 1)
494s
494s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_gathered
494s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark
494s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark
494s /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:126: DeprecationWarning: 'count' is passed as positional argument
494s ace = re.sub(port_pro.group(1), "", ace, 1)
494s
494s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_gathered
494s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark
494s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark
494s /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:127: DeprecationWarning: 'count' is passed as positional argument
494s ace = re.sub(port_pro.group(2), "", ace, 1)
494s
494s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
494s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/nxos/tests/output/junit/python3.13-controller-units.xml -
494s ====================== 773 passed, 440 warnings in 23.36s ======================
494s
494s
494s
494s ############################################################
494s ############################################################
494s #### Running tests in ansible_collections/cisco/iosxr
494s ############################################################
494s ############################################################
494s Unit test controller with Python 3.13
496s ============================= test session starts ==============================
496s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
496s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/iosxr
496s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
496s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
496s created: 2/2 workers
496s 2 workers [310 items]
496s
498s ........................................................................ [ 23%]
500s ........................................................................ [ 46%]
501s ........................................................................ [ 69%]
504s ........................................................................ [ 92%]
505s ...................... [100%]
505s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/iosxr/tests/output/junit/python3.13-controller-units.xml -
505s ============================= 310 passed in 10.30s =============================
505s Skipping ansible_collections/cisco/dnac
505s
505s
505s
505s ############################################################
505s ############################################################
505s #### Running tests in ansible_collections/community/routeros
505s ############################################################
505s ############################################################
505s Unit test modules with Python 3.13
506s ============================= test session starts ==============================
506s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
506s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/routeros
506s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
506s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
506s created: 2/2 workers
506s 2 workers [115 items]
506s
507s ........................................................................ [ 62%]
507s ........................................... [100%]
507s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/routeros/tests/output/junit/python3.13-modules-units.xml -
507s ============================= 115 passed in 1.96s ==============================
507s Unit test module_utils with Python 3.13
508s ============================= test session starts ==============================
508s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
508s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/routeros
508s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
508s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
508s created: 2/2 workers
508s 2 workers [146 items]
508s
509s ........................................................................ [ 49%]
509s ........................................................................ [ 98%]
509s .. [100%]
509s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/routeros/tests/output/junit/python3.13-module_utils-units.xml -
509s ============================= 146 passed in 1.51s ==============================
509s
509s
509s
509s ############################################################
509s ############################################################
509s #### Running tests in ansible_collections/community/mysql
509s ############################################################
509s ############################################################
509s 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.5tw1FI/build.bwJ/src/ansible_collections/community/mysql
510s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
510s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
510s created: 2/2 workers
510s 2 workers [43 items]
510s
511s ........................................... [100%]
511s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/mysql/tests/output/junit/python3.13-modules-units.xml -
511s ============================== 43 passed in 0.89s ==============================
511s Unit test module_utils with Python 3.13
512s ============================= test session starts ==============================
512s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
512s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/mysql
512s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
512s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
512s created: 2/2 workers
512s 2 workers [84 items]
512s
512s ........................................................................ [ 85%]
512s ............ [100%]
512s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/mysql/tests/output/junit/python3.13-module_utils-units.xml -
512s ============================== 84 passed in 1.14s ==============================
512s
512s
512s
512s ############################################################
512s ############################################################
512s #### Running tests in ansible_collections/community/rabbitmq
512s ############################################################
512s ############################################################
513s Unit test controller with Python 3.13
513s ============================= test session starts ==============================
514s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
514s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/rabbitmq
514s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
514s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
514s created: 2/2 workers
514s 2 workers [30 items]
514s
514s .............................. [100%]
514s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/rabbitmq/tests/output/junit/python3.13-controller-units.xml -
514s ============================== 30 passed in 1.01s ==============================
514s
514s
514s
514s ############################################################
514s ############################################################
514s #### Running tests in ansible_collections/community/ciscosmb
514s ############################################################
514s ############################################################
514s Unit test modules with Python 3.13
515s ============================= test session starts ==============================
515s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
515s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/ciscosmb
515s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
515s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
515s created: 2/2 workers
515s 2 workers [56 items]
515s
516s ........................................................ [100%]
516s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/ciscosmb/tests/output/junit/python3.13-modules-units.xml -
516s ============================== 56 passed in 1.23s ==============================
516s Skipping ansible_collections/community/general
516s
516s
516s
516s ############################################################
516s ############################################################
516s #### Running tests in ansible_collections/community/sap_libs
516s ############################################################
516s ############################################################
516s Unit test modules with Python 3.13
517s ============================= test session starts ==============================
517s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
517s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/sap_libs
517s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
517s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
517s created: 2/2 workers
517s 2 workers [49 items]
517s
518s ................................................. [100%]
518s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/sap_libs/tests/output/junit/python3.13-modules-units.xml -
518s ============================== 49 passed in 1.15s ==============================
518s
518s
518s
518s ############################################################
518s ############################################################
518s #### Running tests in ansible_collections/community/vmware
518s ############################################################
518s ############################################################
518s Unit test controller with Python 3.13
519s ============================= test session starts ==============================
519s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
519s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/vmware
519s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
519s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
519s created: 2/2 workers
519s 2 workers [32 items]
519s
788s ................................ [100%]
788s =============================== warnings summary ===============================
788s tests/unit/module_utils/test_vmware.py::test_required_params[validate_certs]
788s tests/unit/modules/cloud/vmware/test_vmware_guest.py::test_vmware_guest_with_parameters[patch_ansible_module0-testcase0]
788s tests/unit/modules/cloud/vmware/test_vmware_guest.py::test_vmware_guest_with_parameters[patch_ansible_module5-testcase5]
788s tests/unit/modules/cloud/vmware/test_vmware_guest.py::test_vmware_guest_with_parameters[patch_ansible_module7-testcase7]
788s /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/vmware/plugins/module_utils/vmware.py:752: DeprecationWarning: ssl.PROTOCOL_TLS is deprecated
788s ssl_context = ssl.SSLContext(ssl.PROTOCOL_SSLv23)
788s
788s tests/unit/modules/cloud/vmware/test_vmware_guest.py::test_vmware_guest_with_parameters[patch_ansible_module6-testcase6]
788s tests/unit/module_utils/test_vmware.py::test_required_params[valid_http_proxy]
788s /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/vmware/plugins/module_utils/vmware.py:757: DeprecationWarning: ssl.PROTOCOL_TLS is deprecated
788s ssl_context = ssl.SSLContext(ssl.PROTOCOL_SSLv23)
788s
788s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
788s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/vmware/tests/output/junit/python3.13-controller-units.xml -
788s ================== 32 passed, 6 warnings in 269.76s (0:04:29) ==================
788s
788s
788s
788s ############################################################
788s ############################################################
788s #### Running tests in ansible_collections/community/libvirt
788s ############################################################
788s ############################################################
788s Unit test controller with Python 3.13
789s ============================= test session starts ==============================
789s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
789s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/libvirt
789s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
789s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
789s created: 2/2 workers
789s 2 workers [4 items]
789s
789s .... [100%]
789s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/libvirt/tests/output/junit/python3.13-controller-units.xml -
789s ============================== 4 passed in 0.58s ===============================
789s Skipping ansible_collections/community/hrobot
789s
789s
789s
789s ############################################################
789s ############################################################
789s #### Running tests in ansible_collections/community/grafana
789s ############################################################
789s ############################################################
790s Unit test controller with Python 3.13
790s ============================= test session starts ==============================
790s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
790s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/grafana
790s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
790s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
790s created: 2/2 workers
790s 2 workers [31 items]
790s
791s ............................... [100%]
791s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/grafana/tests/output/junit/python3.13-controller-units.xml -
791s ============================== 31 passed in 0.92s ==============================
791s
791s
791s
791s ############################################################
791s ############################################################
791s #### Running tests in ansible_collections/community/hashi_vault
791s ############################################################
791s ############################################################
791s Unit test modules with Python 3.13
793s ============================= test session starts ==============================
793s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
793s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hashi_vault
793s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
793s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
793s created: 2/2 workers
793s 2 workers [281 items]
793s
794s ........................................................................ [ 25%]
794s ........................................................................ [ 51%]
795s ........................................................................ [ 76%]
796s ................................................................. [100%]
796s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hashi_vault/tests/output/junit/python3.13-modules-units.xml -
796s ============================= 281 passed in 4.61s ==============================
796s Unit test module_utils with Python 3.13
798s ============================= test session starts ==============================
798s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
798s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hashi_vault
798s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
798s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
798s created: 2/2 workers
798s 2 workers [1436 items]
798s
798s ........................................................................ [ 5%]
799s ........................................................................ [ 10%]
799s ........................................................................ [ 15%]
800s ........................................................................ [ 20%]
801s ........................................................................ [ 25%]
802s ........................................................................ [ 30%]
803s ........................................................................ [ 35%]
804s ........................................................................ [ 40%]
804s ........................................................................ [ 45%]
805s ........................................................................ [ 50%]
805s ........................................................................ [ 55%]
806s ........................................................................ [ 60%]
806s ........................................................................ [ 65%]
807s ........................................................................ [ 70%]
807s ........................................................................ [ 75%]
808s ........................................................................ [ 80%]
808s ........................................................................ [ 85%]
809s ........................................................................ [ 90%]
809s ........................................................................ [ 95%]
810s .................................................................... [100%]
810s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hashi_vault/tests/output/junit/python3.13-module_utils-units.xml -
810s ============================ 1436 passed in 13.03s =============================
810s Unit test controller with Python 3.13
811s ============================= test session starts ==============================
811s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
811s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hashi_vault
811s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
811s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
811s created: 2/2 workers
811s 2 workers [619 items]
811s
812s ........................................................................ [ 11%]
813s ........................................................................ [ 23%]
814s ........................................................................ [ 34%]
815s ........................................................................ [ 46%]
817s ........................................................................ [ 58%]
818s ........................................................................ [ 69%]
819s ........................................................................ [ 81%]
819s ........................................................................ [ 93%]
820s ........................................... [100%]
820s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hashi_vault/tests/output/junit/python3.13-controller-units.xml -
820s ============================= 619 passed in 9.12s ==============================
820s
820s
820s
820s ############################################################
820s ############################################################
820s #### Running tests in ansible_collections/community/crypto
820s ############################################################
820s ############################################################
820s Unit test modules 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.5tw1FI/build.bwJ/src/ansible_collections/community/crypto
821s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
821s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
821s created: 2/2 workers
821s 2 workers [76 items]
821s
821s ........................................................................ [ 94%]
821s .... [100%]
821s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/crypto/tests/output/junit/python3.13-modules-units.xml -
821s ============================== 76 passed in 1.04s ==============================
821s Unit test module_utils 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.5tw1FI/build.bwJ/src/ansible_collections/community/crypto
823s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
823s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
823s created: 2/2 workers
823s 2 workers [520 items]
823s
825s ........................................................................ [ 13%]
826s .............................................ss.s.s.s.s.s............... [ 27%]
826s ........................................................................ [ 41%]
827s ........................s.s.ss.s.s.s.s.................................. [ 55%]
832s ........................................................................ [ 69%]
837s ........................................................................ [ 83%]
851s ........................................................................ [ 96%]
851s ................ [100%]
851s =============================== warnings summary ===============================
851s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_default_key_params[dsa-None-None-None]
851s /tmp/autopkgtest.5tw1FI/build.bwJ/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
851s pair = OpensshKeypair.generate(keytype=keytype, size=size, passphrase=passphrase, comment=comment)
851s
851s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_default_key_params[dsa-None-None-None]
851s /tmp/autopkgtest.5tw1FI/build.bwJ/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
851s pair = OpensshKeypair.generate(keytype=keytype, size=size, passphrase=passphrase, comment=comment)
851s
851s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison
851s /tmp/autopkgtest.5tw1FI/build.bwJ/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
851s assert OpensshKeypair.generate() != OpensshKeypair.generate(keytype='dsa')
851s
851s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison
851s /tmp/autopkgtest.5tw1FI/build.bwJ/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
851s 'pair': OpensshKeypair.generate(keytype='dsa', passphrase='change_me'.encode('UTF-8')),
851s
851s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison
851s /tmp/autopkgtest.5tw1FI/build.bwJ/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.
851s privatekey = privatekey_loader(
851s
851s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison
851s /tmp/autopkgtest.5tw1FI/build.bwJ/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.
851s publickey = publickey_loader(
851s
851s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison
851s /tmp/autopkgtest.5tw1FI/build.bwJ/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
851s loaded_dsa_key = OpensshKeypair.load(path=keys['dsa']['filename'], passphrase='change_me'.encode('UTF-8'))
851s
851s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison
851s /tmp/autopkgtest.5tw1FI/build.bwJ/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
851s loaded_dsa_key.update_passphrase('change_me_again'.encode('UTF-8'))
851s
851s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison
851s /tmp/autopkgtest.5tw1FI/build.bwJ/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
851s loaded_dsa_key.update_passphrase('change_me'.encode('UTF-8'))
851s
851s tests/unit/plugins/module_utils/test_time.py: 16 warnings
851s /tmp/autopkgtest.5tw1FI/build.bwJ/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).
851s return datetime.datetime.utcfromtimestamp(timestamp)
851s
851s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_valid_user_key_params[dsa-1024-change_me-comment]
851s /tmp/autopkgtest.5tw1FI/build.bwJ/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
851s pair = OpensshKeypair.generate(keytype=keytype, size=size, passphrase=passphrase, comment=comment)
851s
851s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
851s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/crypto/tests/output/junit/python3.13-module_utils-units.xml -
851s =========================== short test summary info ============================
851s SKIPPED [15] tests/unit/plugins/module_utils/crypto/test_asn1.py:78: unconditional skip
851s ================ 505 passed, 15 skipped, 26 warnings in 29.66s =================
852s
852s
852s
852s ############################################################
852s ############################################################
852s #### Running tests in ansible_collections/community/aws
852s ############################################################
852s ############################################################
852s Unit test modules with Python 3.13
853s ============================= test session starts ==============================
853s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
853s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/aws
853s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
853s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
853s created: 2/2 workers
853s 2 workers [33 items]
853s
853s ................................. [100%]
853s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/aws/tests/output/junit/python3.13-modules-units.xml -
853s =========================== short test summary info ============================
853s SKIPPED [1] ../../amazon/aws/tests/unit/utils/amazon_placebo_fixtures.py:16: could not import 'placebo': No module named 'placebo'
853s ======================== 33 passed, 1 skipped in 1.28s =========================
854s Unit test controller with Python 3.13
855s ============================= test session starts ==============================
855s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
855s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/aws
855s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
855s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
855s created: 2/2 workers
855s 2 workers [52 items]
855s
855s .................................................... [100%]
855s =============================== warnings summary ===============================
855s tests/unit/plugins/connection/test_aws_ssm.py::TestConnectionBaseClass::test_plugins_connection_aws_ssm_start_session
855s /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:85: PytestUnraisableExceptionWarning: Exception ignored in:
855s
855s Traceback (most recent call last):
855s File "/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/aws/plugins/connection/aws_ssm.py", line 496, in __del__
855s self.close()
855s ~~~~~~~~~~^^
855s File "/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/aws/plugins/connection/aws_ssm.py", line 961, in close
855s self._vvv(f"CLOSING SSM CONNECTION TO: {self.instance_id}")
855s ^^^^^^^^^^^^^^^^
855s AttributeError: 'Connection' object has no attribute 'instance_id'
855s
855s warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
855s
855s tests/unit/plugins/connection/test_aws_ssm.py::TestConnectionBaseClass::test_plugins_connection_aws_ssm_exec_command
855s /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`?
855s warnings.warn(
855s
855s tests/unit/plugins/connection/test_aws_ssm.py::TestConnectionBaseClass::test_plugins_connection_aws_ssm_wrap_command
855s /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`?
855s warnings.warn(
855s
855s tests/unit/plugins/connection/test_aws_ssm.py::TestConnectionBaseClass::test_plugins_connection_aws_ssm_post_process
855s /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`?
855s warnings.warn(
855s
855s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
855s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/aws/tests/output/junit/python3.13-controller-units.xml -
855s ======================== 52 passed, 4 warnings in 1.57s ========================
856s Skipping ansible_collections/community/dns
856s
856s
856s
856s ############################################################
856s ############################################################
856s #### Running tests in ansible_collections/community/windows
856s ############################################################
856s ############################################################
856s Unit test controller with Python 3.13
857s ============================= test session starts ==============================
857s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
857s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/windows
857s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
857s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
857s created: 2/2 workers
857s 2 workers [32 items]
857s
857s ................................ [100%]
857s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/windows/tests/output/junit/python3.13-controller-units.xml -
857s ============================== 32 passed in 1.35s ==============================
858s
858s
858s
858s ############################################################
858s ############################################################
858s #### Running tests in ansible_collections/community/docker
858s ############################################################
858s ############################################################
858s Unit test modules 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.5tw1FI/build.bwJ/src/ansible_collections/community/docker
859s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
859s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
859s created: 2/2 workers
859s 2 workers [27 items]
859s
861s ........................... [100%]
861s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/docker/tests/output/junit/python3.13-modules-units.xml -
861s ============================== 27 passed in 3.08s ==============================
861s Unit test module_utils with Python 3.13
863s ============================= test session starts ==============================
863s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
863s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/docker
863s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
863s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
863s created: 2/2 workers
863s 2 workers [551 items]
863s
863s ................................................s.ss.s.s.s.s.s.......... [ 13%]
864s .......s.s.s.s.s........s............................................... [ 26%]
865s .......s..................................................s............. [ 39%]
865s ......................................s................................. [ 52%]
866s ........................................................................ [ 65%]
866s ........................................................................ [ 78%]
867s ........................................................................ [ 91%]
867s ............................................... [100%]
867s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/docker/tests/output/junit/python3.13-module_utils-units.xml -
867s =========================== short test summary info ============================
867s 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.
867s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:99: match_hostname is not available
867s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:92: match_hostname is not available
867s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:95: match_hostname is not available
867s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:86: match_hostname is not available
867s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:89: match_hostname is not available
867s SKIPPED [1] tests/unit/plugins/module_utils/_api/utils/test_build.py:254: Backslash patterns only on Windows
867s SKIPPED [1] tests/unit/plugins/module_utils/_api/utils/test_build.py:276: Backslash patterns only on Windows
867s SKIPPED [1] tests/unit/plugins/module_utils/_api/utils/test_config.py:76: condition: sys.platform != 'win32'
867s SKIPPED [1] tests/unit/plugins/module_utils/_api/utils/test_utils.py:471: shlex doesn't support bytes in py3
867s ======================= 534 passed, 17 skipped in 5.57s ========================
867s Unit test controller with Python 3.13
868s ============================= test session starts ==============================
868s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
868s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/docker
868s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
868s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
868s created: 2/2 workers
868s 2 workers [16 items]
868s
869s ................ [100%]
869s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/docker/tests/output/junit/python3.13-controller-units.xml -
869s ============================== 16 passed in 1.16s ==============================
869s Skipping ansible_collections/community/library_inventory_filtering_v1
869s
869s
869s
869s ############################################################
869s ############################################################
869s #### Running tests in ansible_collections/community/okd
869s ############################################################
869s ############################################################
869s Unit test modules with Python 3.13
870s ============================= test session starts ==============================
870s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
870s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/okd
870s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
870s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
870s created: 2/2 workers
870s 2 workers [13 items]
870s
871s ............. [100%]
871s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/okd/tests/output/junit/python3.13-modules-units.xml -
871s ============================== 13 passed in 1.20s ==============================
871s Unit test module_utils with Python 3.13
871s ============================= test session starts ==============================
871s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
871s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/okd
871s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
871s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
871s created: 2/2 workers
871s 2 workers [15 items]
871s
872s .s.s........... [100%]
872s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/okd/tests/output/junit/python3.13-module_utils-units.xml -
872s =========================== short test summary info ============================
872s SKIPPED [2] tests/unit/plugins/module_utils/test_ldap_dn.py: This test requires the python-ldap library
872s ======================== 13 passed, 2 skipped in 0.65s =========================
872s
872s
872s
872s ############################################################
872s ############################################################
872s #### Running tests in ansible_collections/community/digitalocean
872s ############################################################
872s ############################################################
872s Unit test modules with Python 3.13
873s ============================= test session starts ==============================
873s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
873s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/digitalocean
873s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
873s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
873s created: 2/2 workers
873s 2 workers [32 items]
873s
873s ................................ [100%]
873s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/digitalocean/tests/output/junit/python3.13-modules-units.xml -
873s ============================== 32 passed in 1.06s ==============================
873s Unit test controller with Python 3.13
874s ============================= test session starts ==============================
874s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
874s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/digitalocean
874s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
874s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
874s created: 2/2 workers
874s 2 workers [14 items]
874s
875s .............. [100%]
875s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/digitalocean/tests/output/junit/python3.13-controller-units.xml -
875s ============================== 14 passed in 0.91s ==============================
875s
875s
875s
875s ############################################################
875s ############################################################
875s #### Running tests in ansible_collections/community/network
875s ############################################################
875s ############################################################
875s Unit test modules with Python 3.13
879s ============================= test session starts ==============================
879s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
879s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/network
879s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
879s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
879s created: 2/2 workers
879s 2 workers [930 items]
879s
880s ........................................................................ [ 7%]
881s ........................................................................ [ 15%]
881s ........................................................................ [ 23%]
882s ........................................................................ [ 30%]
883s ........................................................................ [ 38%]
884s ........................................................................ [ 46%]
885s ........................................................................ [ 54%]
886s ........................................................................ [ 61%]
887s ........................................................................ [ 69%]
888s .s.s.ss.ss.s.ss.ss.s.ss.ss.ss.s.ss.s.ss.s.ss.s.ss.s...s.ss.sss.ss.ss.ss. [ 77%]
889s sss.ss.ss.ss.ss.s.ss.ss.ss.............................................. [ 85%]
889s ........................................................................ [ 92%]
890s .................................................................. [100%]
890s =============================== warnings summary ===============================
890s tests/unit/plugins/modules/test_ce_is_is_instance.py::TestCloudEngineLacpModule::test_isis_instance_present
890s tests/unit/plugins/modules/test_ce_is_is_instance.py::TestCloudEngineLacpModule::test_isis_instance_present
890s /tmp/autopkgtest.5tw1FI/build.bwJ/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.
890s if glb:
890s
890s tests/unit/plugins/modules/test_ce_is_is_interface.py::TestCloudEngineLacpModule::test_isis_interface_absent
890s tests/unit/plugins/modules/test_ce_is_is_interface.py::TestCloudEngineLacpModule::test_isis_interface_absent
890s tests/unit/plugins/modules/test_ce_is_is_interface.py::TestCloudEngineLacpModule::test_isis_interface_present
890s tests/unit/plugins/modules/test_ce_is_is_interface.py::TestCloudEngineLacpModule::test_isis_interface_present
890s /tmp/autopkgtest.5tw1FI/build.bwJ/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.
890s if glb:
890s
890s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
890s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/network/tests/output/junit/python3.13-modules-units.xml -
890s =========================== short test summary info ============================
890s SKIPPED [61] tests/unit/plugins/modules/test_nuage_vspk.py: Nuage Ansible modules requires Python 2.7
890s ================= 869 passed, 61 skipped, 6 warnings in 15.19s =================
891s Unit test module_utils with Python 3.13
892s ============================= test session starts ==============================
892s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
892s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/network
892s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
892s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
892s created: 2/2 workers
892s 2 workers [172 items]
892s
892s ........................................................................ [ 41%]
893s ........................................................................ [ 83%]
893s ............................ [100%]
893s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/network/tests/output/junit/python3.13-module_utils-units.xml -
893s ============================= 172 passed in 2.30s ==============================
893s Unit test controller with Python 3.13
894s ============================= test session starts ==============================
894s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
894s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/network
894s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
894s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
894s created: 2/2 workers
894s 2 workers [50 items]
894s
895s .................................................. [100%]
895s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/network/tests/output/junit/python3.13-controller-units.xml -
895s ============================== 50 passed in 1.25s ==============================
895s
895s
895s
895s ############################################################
895s ############################################################
895s #### Running tests in ansible_collections/community/postgresql
895s ############################################################
895s ############################################################
895s Unit test modules with Python 3.13
896s ============================= test session starts ==============================
896s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
896s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/postgresql
896s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
896s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
896s created: 2/2 workers
896s 2 workers [30 items]
896s
896s .............................. [100%]
896s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/postgresql/tests/output/junit/python3.13-modules-units.xml -
896s ============================== 30 passed in 0.78s ==============================
896s Unit test module_utils with Python 3.13
897s ============================= test session starts ==============================
897s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
897s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/postgresql
897s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
897s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
897s created: 2/2 workers
897s 2 workers [41 items]
897s
897s ......................................... [100%]
897s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/postgresql/tests/output/junit/python3.13-module_utils-units.xml -
897s ============================== 41 passed in 0.81s ==============================
897s Skipping ansible_collections/junipernetworks/junos
897s
897s
897s
897s ############################################################
897s ############################################################
897s #### Running tests in ansible_collections/ibm/storage_virtualize
897s ############################################################
897s ############################################################
898s Unit test modules with Python 3.13
899s ============================= test session starts ==============================
899s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
899s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ibm/storage_virtualize
899s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
899s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
899s created: 2/2 workers
899s 2 workers [762 items]
899s
900s ........................................................................ [ 9%]
901s ........................................................................ [ 18%]
901s ........................................................................ [ 28%]
902s ........................................................................ [ 37%]
904s ........................................................................ [ 47%]
905s ........................................................................ [ 56%]
906s ........................................................................ [ 66%]
907s ........................................................................ [ 75%]
908s ........................................................................ [ 85%]
909s ........................................................................ [ 94%]
909s .......................................... [100%]
909s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ibm/storage_virtualize/tests/output/junit/python3.13-modules-units.xml -
909s ============================= 762 passed in 11.30s =============================
909s Unit test module_utils with Python 3.13
910s ============================= test session starts ==============================
910s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
910s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ibm/storage_virtualize
910s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
910s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
910s created: 2/2 workers
910s 2 workers [12 items]
910s
910s ............ [100%]
910s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ibm/storage_virtualize/tests/output/junit/python3.13-module_utils-units.xml -
910s ============================== 12 passed in 0.78s ==============================
911s
911s
911s
911s ############################################################
911s ############################################################
911s #### Running tests in ansible_collections/ibm/spectrum_virtualize
911s ############################################################
911s ############################################################
911s Unit test modules with Python 3.13
912s ============================= test session starts ==============================
912s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
912s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ibm/spectrum_virtualize
912s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
912s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
912s created: 2/2 workers
912s 2 workers [613 items]
912s
913s ........................................................................ [ 11%]
914s ........................................................................ [ 23%]
915s ........................................................................ [ 35%]
916s ........................................................................ [ 46%]
917s ........................................................................ [ 58%]
918s ........................................................................ [ 70%]
919s ........................................................................ [ 82%]
920s ........................................................................ [ 93%]
920s ..................................... [100%]
920s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ibm/spectrum_virtualize/tests/output/junit/python3.13-modules-units.xml -
920s ============================= 613 passed in 9.28s ==============================
920s Unit test module_utils with Python 3.13
921s ============================= test session starts ==============================
921s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
921s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ibm/spectrum_virtualize
921s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
921s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
921s created: 2/2 workers
921s 2 workers [9 items]
921s
922s ......... [100%]
922s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ibm/spectrum_virtualize/tests/output/junit/python3.13-module_utils-units.xml -
922s ============================== 9 passed in 0.82s ===============================
922s
922s
922s
922s ############################################################
922s ############################################################
922s #### Running tests in ansible_collections/ibm/qradar
922s ############################################################
922s ############################################################
922s Unit test controller with Python 3.13
923s ============================= test session starts ==============================
923s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
923s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ibm/qradar
923s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
923s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
923s created: 2/2 workers
923s 2 workers [5 items]
923s
923s ..... [100%]
923s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ibm/qradar/tests/output/junit/python3.13-controller-units.xml -
923s ============================== 5 passed in 0.92s ===============================
923s Skipping ansible_collections/vmware/vmware
923s
923s
923s
923s ############################################################
923s ############################################################
923s #### Running tests in ansible_collections/hetzner/hcloud
923s ############################################################
923s ############################################################
923s Unit test controller with Python 3.13
925s ============================= test session starts ==============================
925s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
925s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/hetzner/hcloud
925s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
925s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
925s created: 2/2 workers
925s 2 workers [30 items]
925s
925s .............................. [100%]
925s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/hetzner/hcloud/tests/output/junit/python3.13-controller-units.xml -
925s ============================== 30 passed in 1.17s ==============================
925s
925s
925s
925s ############################################################
925s ############################################################
925s #### Running tests in ansible_collections/vultr/cloud
925s ############################################################
925s ############################################################
925s Unit test controller with Python 3.13
926s ============================= test session starts ==============================
926s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
926s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/vultr/cloud
926s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
926s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
926s created: 2/2 workers
926s 2 workers [15 items]
926s
926s ............... [100%]
926s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/vultr/cloud/tests/output/junit/python3.13-controller-units.xml -
926s ============================== 15 passed in 0.93s ==============================
927s Skipping ansible_collections/infoblox/nios_modules
927s
927s
927s
927s ############################################################
927s ############################################################
927s #### Running tests in ansible_collections/vyos/vyos
927s ############################################################
927s ############################################################
927s Unit test controller with Python 3.13
928s ============================= test session starts ==============================
928s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
928s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/vyos/vyos
928s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
928s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
928s created: 2/2 workers
928s 2 workers [212 items]
928s
929s ........................................................................ [ 33%]
931s ........................................................................ [ 67%]
933s .................................................................... [100%]
933s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/vyos/vyos/tests/output/junit/python3.13-controller-units.xml -
933s ============================= 212 passed in 6.32s ==============================
934s
934s
934s
934s ############################################################
934s ############################################################
934s #### Running tests in ansible_collections/kubernetes/core
934s ############################################################
934s ############################################################
934s Unit test controller with Python 3.13
936s ============================= test session starts ==============================
936s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
936s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/kubernetes/core
936s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
936s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
936s created: 2/2 workers
936s 2 workers [172 items]
936s
936s ........................................................................ [ 41%]
942s ........................................................................ [ 83%]
946s ............................ [100%]
946s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/kubernetes/core/tests/output/junit/python3.13-controller-units.xml -
946s ============================= 172 passed in 11.79s =============================
946s
946s
946s
946s ############################################################
946s ############################################################
946s #### Running tests in ansible_collections/netbox/netbox
946s ############################################################
946s ############################################################
946s Unit test controller with Python 3.13
947s ============================= test session starts ==============================
947s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
947s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netbox/netbox
947s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
947s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
947s created: 2/2 workers
947s 2 workers [208 items]
947s
948s ........................................................................ [ 34%]
949s ........................................................................ [ 69%]
949s ................................................................ [100%]
949s =============================== warnings summary ===============================
949s tests/unit/inventory/test_nb_inventory.py::test_refresh_lookups
949s /usr/lib/python3/dist-packages/_pytest/threadexception.py:82: PytestUnhandledThreadExceptionWarning: Exception in thread Thread-2 (wrapper)
949s
949s Traceback (most recent call last):
949s File "/usr/lib/python3.13/threading.py", line 1041, in _bootstrap_inner
949s self.run()
949s ~~~~~~~~^^
949s File "/usr/lib/python3.13/threading.py", line 992, in run
949s self._target(*self._args, **self._kwargs)
949s ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
949s File "/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netbox/netbox/plugins/inventory/nb_inventory.py", line 1569, in wrapper
949s raise e
949s File "/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netbox/netbox/plugins/inventory/nb_inventory.py", line 1564, in wrapper
949s lookup()
949s ~~~~~~^^
949s File "/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netbox/netbox/tests/unit/inventory/test_nb_inventory.py", line 154, in raises_exception
949s raise Exception("Error from within a thread")
949s Exception: Error from within a thread
949s
949s warnings.warn(pytest.PytestUnhandledThreadExceptionWarning(msg))
949s
949s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
949s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netbox/netbox/tests/output/junit/python3.13-controller-units.xml -
949s ======================== 208 passed, 1 warning in 2.67s ========================
949s Skipping ansible_collections/ngine_io/cloudstack
949s
949s
949s
949s ############################################################
949s ############################################################
949s #### Running tests in ansible_collections/wti/remote
949s ############################################################
949s ############################################################
950s Unit test controller with Python 3.13
950s ============================= test session starts ==============================
950s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
950s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/wti/remote
950s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
950s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
950s created: 2/2 workers
950s 2 workers [1 item]
950s
950s . [100%]
950s =============================== warnings summary ===============================
950s tests/unit/test_example.py::test_example
950s /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`?
950s warnings.warn(
950s
950s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
950s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/wti/remote/tests/output/junit/python3.13-controller-units.xml -
950s ========================= 1 passed, 1 warning in 0.43s =========================
950s Skipping ansible_collections/netapp_eseries/santricity
950s
950s
950s
950s ############################################################
950s ############################################################
950s #### Running tests in ansible_collections/google/cloud
950s ############################################################
950s ############################################################
951s Unit test controller with Python 3.13
952s ============================= test session starts ==============================
952s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
952s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/google/cloud
952s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
952s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
952s created: 2/2 workers
952s 2 workers [17 items]
952s
952s ................. [100%]
952s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/google/cloud/tests/output/junit/python3.13-controller-units.xml -
952s ============================== 17 passed in 0.83s ==============================
952s
952s
952s
952s ############################################################
952s ############################################################
952s #### Running tests in ansible_collections/dellemc/powerflex
952s ############################################################
952s ############################################################
952s Unit test modules with Python 3.13
953s ============================= test session starts ==============================
953s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
953s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/dellemc/powerflex
953s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
953s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
953s created: 2/2 workers
953s 2 workers [405 items]
953s
954s ........................................................................ [ 17%]
955s ........................................................................ [ 35%]
956s ........................................................................ [ 53%]
956s ........................................................................ [ 71%]
957s ........................................................................ [ 88%]
958s ............................................. [100%]
958s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/dellemc/powerflex/tests/output/junit/python3.13-modules-units.xml -
958s ============================= 405 passed in 5.21s ==============================
958s
958s
958s
958s ############################################################
958s ############################################################
958s #### Running tests in ansible_collections/dellemc/enterprise_sonic
958s ############################################################
958s ############################################################
958s Unit test controller with Python 3.13
960s ============================= test session starts ==============================
960s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
960s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/dellemc/enterprise_sonic
960s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
960s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
960s created: 2/2 workers
960s 2 workers [404 items]
960s
963s ........................................................................ [ 17%]
966s ........................................................................ [ 35%]
970s ........................................................................ [ 53%]
972s ........................................................................ [ 71%]
979s ........................................................................ [ 89%]
980s ............................................ [100%]
980s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/dellemc/enterprise_sonic/tests/output/junit/python3.13-controller-units.xml -
980s ============================= 404 passed in 21.87s =============================
980s
980s
980s
980s ############################################################
980s ############################################################
980s #### Running tests in ansible_collections/dellemc/openmanage
980s ############################################################
980s ############################################################
981s Unit test modules with Python 3.13
985s ============================= test session starts ==============================
985s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
985s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/dellemc/openmanage
985s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
985s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
985s created: 2/2 workers
985s 2 workers [2636 items]
985s
986s ........................................................................ [ 2%]
987s ........................................................................ [ 5%]
988s ........................................................................ [ 8%]
988s ........................................................................ [ 10%]
989s ........................................................................ [ 13%]
990s ........................................................................ [ 16%]
991s ........................................................................ [ 19%]
993s ........................................................................ [ 21%]
994s ........................................................................ [ 24%]
996s ........................................................................ [ 27%]
997s ........................................................................ [ 30%]
1003s ........................................................................ [ 32%]
1004s ........................................................................ [ 35%]
1006s ........................................................................ [ 38%]
1007s ........................................................................ [ 40%]
1008s ........................................................................ [ 43%]
1010s ........................................................................ [ 46%]
1011s ........................................................................ [ 49%]
1012s ........................................................................ [ 51%]
1014s ........................................................................ [ 54%]
1015s ........................................................................ [ 57%]
1017s ........................................................................ [ 60%]
1020s ........................................................................ [ 62%]
1022s ........................................................................ [ 65%]
1023s ........................................................................ [ 68%]
1025s ........................................................................ [ 71%]
1026s ........................................................................ [ 73%]
1027s ........................................................................ [ 76%]
1029s ........................................................................ [ 79%]
1030s ........................................................................ [ 81%]
1032s ........................................................................ [ 84%]
1033s ........................................................................ [ 87%]
1057s ........................................................................ [ 90%]
1059s ........................................................................ [ 92%]
1060s ........................................................................ [ 95%]
1061s ........................................................................ [ 98%]
1063s ............................................ [100%]
1063s =============================== warnings summary ===============================
1063s tests/unit/plugins/modules/test_idrac_support_assist.py: 30 warnings
1063s tests/unit/plugins/modules/test_idrac_system_erase.py: 6 warnings
1063s tests/unit/plugins/modules/test_idrac_diagnostics.py: 19 warnings
1063s tests/unit/plugins/modules/test_idrac_firmware_info.py: 6 warnings
1063s tests/unit/plugins/modules/test_ome_application_network_proxy.py: 1 warning
1063s /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/dellemc/openmanage/plugins/module_utils/utils.py:117: DeprecationWarning: 'count' is passed as positional argument
1063s ipv6_short = re.sub(r'(:0)+', ':', tempstr, 1)
1063s
1063s tests/unit/plugins/modules/test_idrac_server_config_profile.py::TestServerConfigProfile::test_compare_custom_default_configs[params0]
1063s tests/unit/plugins/modules/test_idrac_server_config_profile.py::TestServerConfigProfile::test_compare_custom_default_configs[params0]
1063s /tmp/autopkgtest.5tw1FI/build.bwJ/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.
1063s if component:
1063s
1063s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
1063s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/dellemc/openmanage/tests/output/junit/python3.13-modules-units.xml -
1063s =========================== short test summary info ============================
1063s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_configure_idrac_eventing.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk'
1063s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_configure_idrac_services.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk'
1063s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_idrac_lc_attributes.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk'
1063s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_idrac_storage_volume.py:22: could not import 'omsdk.sdkfile': No module named 'omsdk'
1063s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_system_lockdown_mode.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk'
1063s SKIPPED [1] tests/unit/plugins/modules/test_idrac_firmware.py:27: could not import 'omsdk.sdkfile': No module named 'omsdk'
1063s SKIPPED [1] tests/unit/plugins/modules/test_idrac_lifecycle_controller_job_status_info.py:25: could not import 'omsdk.sdkfile': No module named 'omsdk'
1063s SKIPPED [1] tests/unit/plugins/modules/test_idrac_lifecycle_controller_jobs.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk'
1063s SKIPPED [1] tests/unit/plugins/modules/test_idrac_lifecycle_controller_logs.py:25: could not import 'omsdk.sdkfile': No module named 'omsdk'
1063s SKIPPED [1] tests/unit/plugins/modules/test_idrac_lifecycle_controller_status_info.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk'
1063s SKIPPED [1] tests/unit/plugins/modules/test_idrac_network.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk'
1063s SKIPPED [1] tests/unit/plugins/modules/test_idrac_os_deployment.py:22: could not import 'omsdk.sdkfile': No module named 'omsdk'
1063s SKIPPED [1] tests/unit/plugins/modules/test_idrac_syslog.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk'
1063s SKIPPED [1] tests/unit/plugins/modules/test_idrac_system_info.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk'
1063s SKIPPED [1] tests/unit/plugins/modules/test_idrac_timezone_ntp.py:25: could not import 'omsdk.sdkfile': No module named 'omsdk'
1063s =========== 2636 passed, 15 skipped, 64 warnings in 81.59s (0:01:21) ===========
1063s Unit test module_utils with Python 3.13
1064s ============================= test session starts ==============================
1064s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
1064s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/dellemc/openmanage
1064s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
1064s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
1064s created: 2/2 workers
1064s 2 workers [121 items]
1064s
1064s ........................................................................ [ 59%]
1065s ................................................. [100%]
1065s =============================== warnings summary ===============================
1065s tests/unit/plugins/module_utils/test_idrac_redfish.py::TestIdracRedfishRest::test_invoke_request_without_session
1065s tests/unit/plugins/module_utils/test_ome.py::TestOMERest::test_invoke_request_with_session
1065s tests/unit/plugins/module_utils/test_redfish.py::TestRedfishRest::test_invoke_request_without_session
1065s tests/unit/plugins/module_utils/test_rest_api.py::TestRestAPI::test_invoke_request_with_session
1065s tests/unit/plugins/module_utils/test_session_utils.py::TestSessionRest::test_invoke_request_without_session
1065s /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/dellemc/openmanage/plugins/module_utils/utils.py:117: DeprecationWarning: 'count' is passed as positional argument
1065s ipv6_short = re.sub(r'(:0)+', ':', tempstr, 1)
1065s
1065s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
1065s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/dellemc/openmanage/tests/output/junit/python3.13-module_utils-units.xml -
1065s ======================= 121 passed, 5 warnings in 1.74s ========================
1065s
1065s
1065s
1065s ############################################################
1065s ############################################################
1065s #### Running tests in ansible_collections/dellemc/unity
1065s ############################################################
1065s ############################################################
1065s Unit test modules with Python 3.13
1066s ============================= test session starts ==============================
1066s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
1066s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/dellemc/unity
1066s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
1066s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
1066s created: 2/2 workers
1066s 2 workers [92 items]
1066s
1067s ........................................................................ [ 78%]
1067s .................... [100%]
1067s =============================== warnings summary ===============================
1067s plugins/module_utils/storage/dell/utils.py:72
1067s plugins/module_utils/storage/dell/utils.py:72
1067s /tmp/autopkgtest.5tw1FI/build.bwJ/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
1067s from pkg_resources import parse_version
1067s
1067s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
1067s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/dellemc/unity/tests/output/junit/python3.13-modules-units.xml -
1067s ======================== 92 passed, 2 warnings in 1.77s ========================
1067s
1067s
1067s
1067s ############################################################
1067s ############################################################
1067s #### Running tests in ansible_collections/cloud/common
1067s ############################################################
1067s ############################################################
1067s Unit test module_utils with Python 3.13
1068s ============================= test session starts ==============================
1068s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
1068s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cloud/common
1068s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
1068s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
1068s created: 2/2 workers
1068s 2 workers [19 items]
1068s
1070s ................... [100%]
1070s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cloud/common/tests/output/junit/python3.13-module_utils-units.xml -
1070s ============================== 19 passed in 2.01s ==============================
1070s Skipping ansible_collections/splunk/es
1070s
1070s
1070s
1070s ############################################################
1070s ############################################################
1070s #### Running tests in ansible_collections/ansible/posix
1070s ############################################################
1070s ############################################################
1070s Unit test controller with Python 3.13
1071s ============================= test session starts ==============================
1071s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
1071s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ansible/posix
1071s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
1071s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
1071s created: 2/2 workers
1071s 2 workers [14 items]
1071s
1071s .............. [100%]
1071s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ansible/posix/tests/output/junit/python3.13-controller-units.xml -
1071s ============================== 14 passed in 0.90s ==============================
1072s
1072s
1072s
1072s ############################################################
1072s ############################################################
1072s #### Running tests in ansible_collections/ansible/netcommon
1072s ############################################################
1072s ############################################################
1072s Unit test controller with Python 3.13
1073s ============================= test session starts ==============================
1073s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
1073s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ansible/netcommon
1073s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
1073s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
1073s created: 2/2 workers
1073s 2 workers [162 items]
1073s
1074s ........................................................................ [ 44%]
1076s ..................................xx.................................... [ 88%]
1077s .....x............ [100%]
1077s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ansible/netcommon/tests/output/junit/python3.13-controller-units.xml -
1077s =========================== short test summary info ============================
1077s SKIPPED [1] tests/unit/plugins/cli_parsers/test_pyats_parser.py:21: could not import 'pyats': No module named 'pyats'
1077s SKIPPED [1] tests/unit/plugins/connection/test_libssh.py:23: could not import 'pylibsshext': No module named 'pylibsshext'
1077s SKIPPED [1] tests/unit/plugins/connection/test_netconf.py:19: could not import 'ncclient': No module named 'ncclient'
1077s XFAIL tests/unit/plugins/connection/test_network_cli.py::test_network_cli_send[auto-response2]
1077s XFAIL tests/unit/plugins/connection/test_network_cli.py::test_network_cli_send[paramiko-response2]
1077s XFAIL tests/unit/plugins/connection/test_network_cli.py::test_network_cli_send[libssh-response2]
1077s ================== 159 passed, 3 skipped, 3 xfailed in 4.56s ===================
1077s
1077s
1077s
1077s ############################################################
1077s ############################################################
1077s #### Running tests in ansible_collections/ansible/windows
1077s ############################################################
1077s ############################################################
1077s Unit test controller with Python 3.13
1078s ============================= test session starts ==============================
1078s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
1078s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ansible/windows
1078s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
1078s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
1078s created: 2/2 workers
1078s 2 workers [50 items]
1078s
1079s .................................................. [100%]
1079s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ansible/windows/tests/output/junit/python3.13-controller-units.xml -
1079s ============================== 50 passed in 1.37s ==============================
1079s Skipping ansible_collections/ansible/utils
1079s
1079s
1079s
1079s ############################################################
1079s ############################################################
1079s #### Running tests in ansible_collections/cyberark/conjur
1079s ############################################################
1079s ############################################################
1079s Unit test controller with Python 3.13
1080s ============================= test session starts ==============================
1080s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
1080s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cyberark/conjur
1080s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
1080s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
1080s created: 2/2 workers
1080s 2 workers [21 items]
1080s
1080s ..................... [100%]
1080s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cyberark/conjur/tests/output/junit/python3.13-controller-units.xml -
1080s ============================== 21 passed in 0.94s ==============================
1080s
1080s
1080s
1080s ############################################################
1080s ############################################################
1080s #### Running tests in ansible_collections/arista/eos
1080s ############################################################
1080s ############################################################
1080s Unit test controller with Python 3.13
1082s ============================= test session starts ==============================
1082s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
1082s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/arista/eos
1082s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
1082s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
1082s created: 2/2 workers
1082s 2 workers [307 items]
1082s
1083s ........................................................................ [ 23%]
1084s ........................................................................ [ 46%]
1086s ........................................................................ [ 70%]
1088s ........................................................................ [ 93%]
1088s ................... [100%]
1088s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/arista/eos/tests/output/junit/python3.13-controller-units.xml -
1088s ============================= 307 passed in 7.26s ==============================
1088s
1088s
1088s
1088s ############################################################
1088s ############################################################
1088s #### Running tests in ansible_collections/containers/podman
1088s ############################################################
1088s ############################################################
1088s Unit test modules with Python 3.13
1089s ============================= test session starts ==============================
1089s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
1089s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/containers/podman
1089s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
1089s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
1089s created: 2/2 workers
1089s 2 workers [10 items]
1089s
1089s .......... [100%]
1089s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/containers/podman/tests/output/junit/python3.13-modules-units.xml -
1089s ============================== 10 passed in 0.61s ==============================
1089s
1089s
1089s
1089s ############################################################
1089s ############################################################
1089s #### Running tests in ansible_collections/kubevirt/core
1089s ############################################################
1089s ############################################################
1090s Unit test controller with Python 3.13
1091s ============================= test session starts ==============================
1091s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
1091s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/kubevirt/core
1091s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
1091s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
1091s created: 2/2 workers
1091s 2 workers [190 items]
1091s
1092s ........................................................................ [ 37%]
1093s ........................................................................ [ 75%]
1093s .............................................. [100%]
1093s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/kubevirt/core/tests/output/junit/python3.13-controller-units.xml -
1093s ============================= 190 passed in 2.86s ==============================
1094s
1094s
1094s
1094s ############################################################
1094s ############################################################
1094s #### Running tests in ansible_collections/netapp/cloudmanager
1094s ############################################################
1094s ############################################################
1094s Unit test modules with Python 3.13
1095s ============================= test session starts ==============================
1095s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
1095s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp/cloudmanager
1095s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
1095s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
1095s created: 2/2 workers
1095s 2 workers [106 items]
1095s
1291s ........................................................................ [ 67%]
1682s .................................. [100%]
1682s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp/cloudmanager/tests/output/junit/python3.13-modules-units.xml -
1682s ======================= 106 passed in 588.01s (0:09:48) ========================
1682s Unit test module_utils with Python 3.13
1683s ============================= test session starts ==============================
1683s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
1683s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp/cloudmanager
1683s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
1683s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
1683s created: 2/2 workers
1683s 2 workers [52 items]
1683s
1684s .................................................... [100%]
1684s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp/cloudmanager/tests/output/junit/python3.13-module_utils-units.xml -
1684s ============================== 52 passed in 1.27s ==============================
1684s Skipping ansible_collections/netapp/ontap
1684s
1684s
1684s
1684s ############################################################
1684s ############################################################
1684s #### Running tests in ansible_collections/netapp/storagegrid
1684s ############################################################
1684s ############################################################
1684s Unit test modules with Python 3.13
1685s ============================= test session starts ==============================
1685s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
1685s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp/storagegrid
1685s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
1685s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
1685s created: 2/2 workers
1685s 2 workers [154 items]
1685s
1686s ........................................................................ [ 46%]
1687s ........................................................................ [ 93%]
1687s .......... [100%]
1687s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp/storagegrid/tests/output/junit/python3.13-modules-units.xml -
1687s ============================= 154 passed in 2.46s ==============================
1687s Skipping ansible_collections/sensu/sensu_go
1687s autopkgtest [15:58:04]: test unit-tests-stable.py: -----------------------]
1688s unit-tests-stable.py PASS
1688s autopkgtest [15:58:05]: test unit-tests-stable.py: - - - - - - - - - - results - - - - - - - - - -
1689s autopkgtest [15:58:06]: test unit-tests-flaky.py: preparing testbed
1759s autopkgtest [15:59:16]: testbed dpkg architecture: arm64
1759s autopkgtest [15:59:16]: testbed apt version: 3.0.0
1760s autopkgtest [15:59:17]: @@@@@@@@@@@@@@@@@@@@ test bed setup
1760s autopkgtest [15:59:17]: testbed release detected to be: questing
1760s autopkgtest [15:59:17]: updating testbed package index (apt update)
1761s Get:1 http://ftpmaster.internal/ubuntu questing-proposed InRelease [110 kB]
1761s Hit:2 http://ftpmaster.internal/ubuntu questing InRelease
1761s Hit:3 http://ftpmaster.internal/ubuntu questing-updates InRelease
1761s Hit:4 http://ftpmaster.internal/ubuntu questing-security InRelease
1761s Get:5 http://ftpmaster.internal/ubuntu questing-proposed/universe Sources [2024 kB]
1761s Get:6 http://ftpmaster.internal/ubuntu questing-proposed/main Sources [164 kB]
1761s Get:7 http://ftpmaster.internal/ubuntu questing-proposed/multiverse Sources [44.2 kB]
1761s Get:8 http://ftpmaster.internal/ubuntu questing-proposed/main arm64 Packages [204 kB]
1761s Get:9 http://ftpmaster.internal/ubuntu questing-proposed/universe arm64 Packages [1467 kB]
1761s Get:10 http://ftpmaster.internal/ubuntu questing-proposed/multiverse arm64 Packages [14.8 kB]
1761s Fetched 4028 kB in 1s (4771 kB/s)
1762s Reading package lists...
1763s autopkgtest [15:59:20]: upgrading testbed (apt dist-upgrade and autopurge)
1763s Reading package lists...
1763s Building dependency tree...
1763s Reading state information...
1764s Calculating upgrade...Starting pkgProblemResolver with broken count: 0
1764s Starting 2 pkgProblemResolver with broken count: 0
1764s Done
1765s Entering ResolveByKeep
1765s
1765s Calculating upgrade...
1765s The following packages will be upgraded:
1765s libperl5.40 perl perl-base perl-modules-5.40
1765s 4 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1765s Need to get 10.0 MB of archives.
1765s After this operation, 0 B of additional disk space will be used.
1765s Get:1 http://ftpmaster.internal/ubuntu questing-proposed/main arm64 libperl5.40 arm64 5.40.1-3 [4780 kB]
1766s Get:2 http://ftpmaster.internal/ubuntu questing-proposed/main arm64 perl arm64 5.40.1-3 [262 kB]
1766s Get:3 http://ftpmaster.internal/ubuntu questing-proposed/main arm64 perl-base arm64 5.40.1-3 [1786 kB]
1766s Get:4 http://ftpmaster.internal/ubuntu questing-proposed/main arm64 perl-modules-5.40 all 5.40.1-3 [3217 kB]
1766s Fetched 10.0 MB in 1s (17.4 MB/s)
1767s (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 ... 85225 files and directories currently installed.)
1767s Preparing to unpack .../libperl5.40_5.40.1-3_arm64.deb ...
1767s Unpacking libperl5.40:arm64 (5.40.1-3) over (5.40.1-2ubuntu0.1) ...
1767s Preparing to unpack .../perl_5.40.1-3_arm64.deb ...
1767s Unpacking perl (5.40.1-3) over (5.40.1-2ubuntu0.1) ...
1767s Preparing to unpack .../perl-base_5.40.1-3_arm64.deb ...
1767s Unpacking perl-base (5.40.1-3) over (5.40.1-2ubuntu0.1) ...
1767s Setting up perl-base (5.40.1-3) ...
1767s (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 ... 85225 files and directories currently installed.)
1767s Preparing to unpack .../perl-modules-5.40_5.40.1-3_all.deb ...
1767s Unpacking perl-modules-5.40 (5.40.1-3) over (5.40.1-2ubuntu0.1) ...
1767s Setting up perl-modules-5.40 (5.40.1-3) ...
1767s Setting up libperl5.40:arm64 (5.40.1-3) ...
1767s Setting up perl (5.40.1-3) ...
1768s Processing triggers for man-db (2.13.0-1) ...
1768s Processing triggers for libc-bin (2.41-6ubuntu1) ...
1768s Reading package lists...
1769s Building dependency tree...
1769s Reading state information...
1769s Starting pkgProblemResolver with broken count: 0
1769s Starting 2 pkgProblemResolver with broken count: 0
1769s Done
1769s Solving dependencies...
1770s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1772s Reading package lists...
1772s Building dependency tree...
1772s Reading state information...
1773s Starting pkgProblemResolver with broken count: 0
1773s Starting 2 pkgProblemResolver with broken count: 0
1773s Done
1774s The following NEW packages will be installed:
1774s ansible ansible-core fontconfig-config fonts-dejavu-core fonts-dejavu-mono
1774s gir1.2-secret-1 git git-man libcairo-gobject2 libcairo2 liberror-perl
1774s libfontconfig1 libpixman-1-0 libsecret-1-0 libsecret-common libsodium23
1774s libxcb-render0 libxcb-shm0 libxrender1 libxslt1.1 python3-adal
1774s python3-aiohappyeyeballs python3-aiohttp python3-aiosignal
1774s python3-async-timeout python3-avro python3-azure python3-azure-storage
1774s python3-cachetools python3-cairo python3-click python3-colorama
1774s python3-dnspython python3-execnet python3-flake8 python3-freezegun
1774s python3-frozenlist python3-gi-cairo python3-gitlab python3-google-auth
1774s python3-httmock python3-hvac python3-iniconfig python3-isodate
1774s python3-joblib python3-kubernetes python3-lxml python3-marshmallow
1774s python3-mccabe python3-mock python3-msal python3-msal-extensions
1774s python3-msrest python3-msrestazure python3-multidict python3-nacl
1774s python3-nltk python3-paramiko python3-pathspec python3-pluggy
1774s python3-portalocker python3-proxmoxer python3-psutil python3-py
1774s python3-pyasn1 python3-pyasn1-modules python3-pycodestyle python3-pydash
1774s python3-pyflakes python3-pyhcl python3-pytest python3-pytest-forked
1774s python3-pytest-mock python3-pytest-xdist python3-pyu2f python3-pyvmomi
1774s python3-redis python3-regex python3-requests-oauthlib
1774s python3-requests-toolbelt python3-resolvelib python3-responses python3-rsa
1774s python3-ruamel.yaml python3-ruamel.yaml.clib python3-strictyaml
1774s python3-textfsm python3-tqdm python3-websocket python3-xmltodict
1774s python3-yarl yamllint
1774s 0 upgraded, 92 newly installed, 0 to remove and 0 not upgraded.
1774s Need to get 51.4 MB of archives.
1774s After this operation, 885 MB of additional disk space will be used.
1774s Get:1 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-resolvelib all 1.1.0-1 [25.8 kB]
1774s Get:2 http://ftpmaster.internal/ubuntu questing/main arm64 libsodium23 arm64 1.0.18-1build3 [119 kB]
1774s Get:3 http://ftpmaster.internal/ubuntu questing/main arm64 python3-nacl arm64 1.5.0-7 [56.2 kB]
1774s Get:4 http://ftpmaster.internal/ubuntu questing/main arm64 python3-paramiko all 3.5.1-2ubuntu1 [147 kB]
1774s Get:5 http://ftpmaster.internal/ubuntu questing/main arm64 python3-dnspython all 2.7.0-1ubuntu1 [167 kB]
1774s Get:6 http://ftpmaster.internal/ubuntu questing/universe arm64 ansible-core all 2.18.1-4ubuntu1 [1273 kB]
1774s Get:7 http://ftpmaster.internal/ubuntu questing/universe arm64 ansible all 11.2.0+dfsg-1 [18.1 MB]
1774s Get:8 http://ftpmaster.internal/ubuntu questing/main arm64 fonts-dejavu-mono all 2.37-8 [502 kB]
1774s Get:9 http://ftpmaster.internal/ubuntu questing/main arm64 fonts-dejavu-core all 2.37-8 [835 kB]
1774s Get:10 http://ftpmaster.internal/ubuntu questing/main arm64 fontconfig-config arm64 2.15.0-2.2ubuntu1 [37.9 kB]
1774s Get:11 http://ftpmaster.internal/ubuntu questing/main arm64 libsecret-common all 0.21.7-1 [5160 B]
1774s Get:12 http://ftpmaster.internal/ubuntu questing/main arm64 libsecret-1-0 arm64 0.21.7-1 [116 kB]
1774s Get:13 http://ftpmaster.internal/ubuntu questing/main arm64 gir1.2-secret-1 arm64 0.21.7-1 [9380 B]
1774s Get:14 http://ftpmaster.internal/ubuntu questing/main arm64 liberror-perl all 0.17030-1 [23.5 kB]
1774s Get:15 http://ftpmaster.internal/ubuntu questing/main arm64 git-man all 1:2.48.1-0ubuntu1 [1148 kB]
1774s Get:16 http://ftpmaster.internal/ubuntu questing/main arm64 git arm64 1:2.48.1-0ubuntu1 [4219 kB]
1774s Get:17 http://ftpmaster.internal/ubuntu questing/main arm64 libfontconfig1 arm64 2.15.0-2.2ubuntu1 [144 kB]
1774s Get:18 http://ftpmaster.internal/ubuntu questing/main arm64 libpixman-1-0 arm64 0.44.0-3 [197 kB]
1774s Get:19 http://ftpmaster.internal/ubuntu questing/main arm64 libxcb-render0 arm64 1.17.0-2 [16.6 kB]
1774s Get:20 http://ftpmaster.internal/ubuntu questing/main arm64 libxcb-shm0 arm64 1.17.0-2 [5884 B]
1774s Get:21 http://ftpmaster.internal/ubuntu questing/main arm64 libxrender1 arm64 1:0.9.10-1.1build1 [18.8 kB]
1774s Get:22 http://ftpmaster.internal/ubuntu questing/main arm64 libcairo2 arm64 1.18.4-1 [560 kB]
1774s Get:23 http://ftpmaster.internal/ubuntu questing/main arm64 libcairo-gobject2 arm64 1.18.4-1 [127 kB]
1774s Get:24 http://ftpmaster.internal/ubuntu questing/main arm64 libxslt1.1 arm64 1.1.39-0exp1ubuntu4 [168 kB]
1774s Get:25 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-adal all 1.2.7-5 [33.0 kB]
1774s Get:26 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-aiohappyeyeballs all 2.6.1-1 [11.1 kB]
1774s Get:27 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-multidict arm64 6.2.0-2 [35.4 kB]
1774s Get:28 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-yarl arm64 1.13.1-1build2 [93.8 kB]
1774s Get:29 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-async-timeout all 5.0.1-1 [6830 B]
1774s Get:30 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-frozenlist arm64 1.5.0-1build2 [48.2 kB]
1774s Get:31 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-aiosignal all 1.3.2-1 [5182 B]
1774s Get:32 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-aiohttp arm64 3.10.11-1build1 [298 kB]
1774s Get:33 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-avro all 1.12.0+dfsg-1 [75.3 kB]
1774s Get:34 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-isodate all 0.7.0-1 [18.6 kB]
1774s Get:35 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-requests-oauthlib all 1.3.1-1 [18.8 kB]
1774s Get:36 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-msrest all 0.6.21-5 [48.7 kB]
1774s Get:37 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-msrestazure all 0.6.4-4 [27.1 kB]
1774s Get:38 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-azure-storage all 20250304+git-1 [300 kB]
1774s Get:39 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-colorama all 0.4.6-4 [32.1 kB]
1774s Get:40 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-marshmallow all 3.26.1-0.2 [47.5 kB]
1774s Get:41 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-msal all 1.32.0-1 [100 kB]
1774s Get:42 http://ftpmaster.internal/ubuntu questing/main arm64 python3-cairo arm64 1.27.0-2 [122 kB]
1774s Get:43 http://ftpmaster.internal/ubuntu questing/main arm64 python3-gi-cairo arm64 3.50.0-4build1 [7960 B]
1774s Get:44 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-portalocker all 2.2.1-1 [17.2 kB]
1774s Get:45 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-msal-extensions all 1.3.1-1 [18.2 kB]
1774s Get:46 http://ftpmaster.internal/ubuntu questing/main arm64 python3-click all 8.2.0+0.really.8.1.8-1 [80.0 kB]
1774s Get:47 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-joblib all 1.4.2-3 [205 kB]
1774s Get:48 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-regex arm64 0.1.20241106-1build1 [287 kB]
1774s Get:49 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-tqdm all 4.67.1-3 [91.6 kB]
1775s Get:50 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-nltk all 3.9.1-2 [1006 kB]
1775s Get:51 http://ftpmaster.internal/ubuntu questing/main arm64 python3-psutil arm64 5.9.8-2build3 [196 kB]
1775s Get:52 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-pydash all 8.0.3-3 [93.0 kB]
1775s Get:53 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-ruamel.yaml.clib arm64 0.2.12+ds-1build1 [138 kB]
1775s Get:54 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-ruamel.yaml all 0.18.10+ds-1 [127 kB]
1775s Get:55 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-strictyaml all 1.6.1-3 [89.1 kB]
1775s Get:56 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-websocket all 1.8.0-2 [38.5 kB]
1775s Get:57 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-azure all 20250304+git-1 [15.9 MB]
1775s Get:58 http://ftpmaster.internal/ubuntu questing/main arm64 python3-cachetools all 5.3.3-1 [10.3 kB]
1775s Get:59 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-execnet all 2.1.1-1 [33.4 kB]
1775s Get:60 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-mccabe all 0.7.0-1 [8678 B]
1775s Get:61 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-pycodestyle all 2.12.1-2 [30.2 kB]
1775s Get:62 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-pyflakes all 3.2.0-3 [53.0 kB]
1775s Get:63 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-flake8 all 7.1.1-3 [44.0 kB]
1775s Get:64 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-freezegun all 1.5.1-1.2 [15.9 kB]
1775s Get:65 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-requests-toolbelt all 1.0.0-4 [37.0 kB]
1775s Get:66 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-gitlab all 1:4.9.0-1 [75.0 kB]
1775s Get:67 http://ftpmaster.internal/ubuntu questing/main arm64 python3-pyasn1 all 0.6.1-1 [56.4 kB]
1775s Get:68 http://ftpmaster.internal/ubuntu questing/main arm64 python3-pyasn1-modules all 0.4.1-2 [80.3 kB]
1775s Get:69 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-pyu2f all 0.1.5-4 [22.9 kB]
1775s Get:70 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-responses all 0.25.6-1 [40.5 kB]
1775s Get:71 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-rsa all 4.9-2 [28.2 kB]
1775s Get:72 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-google-auth all 2.28.2-3 [91.0 kB]
1775s Get:73 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-httmock all 1.4.0-5 [6544 B]
1775s Get:74 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-pyhcl all 0.4.4-6 [43.1 kB]
1775s Get:75 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-hvac all 2.3.0-3 [88.1 kB]
1775s Get:76 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-iniconfig all 1.1.1-2 [6024 B]
1775s Get:77 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-kubernetes all 30.1.0-2 [385 kB]
1775s Get:78 http://ftpmaster.internal/ubuntu questing/main arm64 python3-lxml arm64 5.3.2-1 [1258 kB]
1775s Get:79 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-pathspec all 0.12.1-1 [24.5 kB]
1775s Get:80 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-pluggy all 1.5.0-1 [21.0 kB]
1775s Get:81 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-proxmoxer all 2.2.0-1 [16.2 kB]
1775s Get:82 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-py all 1.11.0-4 [72.7 kB]
1775s Get:83 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-pytest all 8.3.5-1 [252 kB]
1775s Get:84 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-pytest-forked all 1.6.0-3 [7470 B]
1775s Get:85 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-pytest-mock all 3.14.0-2 [11.7 kB]
1775s Get:86 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-pytest-xdist all 3.6.1-1 [33.8 kB]
1775s Get:87 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-pyvmomi all 8.0.3.0.1-1 [532 kB]
1775s Get:88 http://ftpmaster.internal/ubuntu questing-proposed/universe arm64 python3-redis all 5.2.1-1 [221 kB]
1775s Get:89 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-textfsm all 1.1.3-3 [29.3 kB]
1775s Get:90 http://ftpmaster.internal/ubuntu questing/main arm64 python3-xmltodict all 0.13.0-1 [13.4 kB]
1775s Get:91 http://ftpmaster.internal/ubuntu questing/universe arm64 yamllint all 1.35.1-2 [43.6 kB]
1775s Get:92 http://ftpmaster.internal/ubuntu questing/universe arm64 python3-mock all 5.1.0-1 [64.1 kB]
1776s Fetched 51.4 MB in 2s (32.6 MB/s)
1776s Selecting previously unselected package python3-resolvelib.
1776s (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 ... 85225 files and directories currently installed.)
1776s Preparing to unpack .../00-python3-resolvelib_1.1.0-1_all.deb ...
1776s Unpacking python3-resolvelib (1.1.0-1) ...
1776s Selecting previously unselected package libsodium23:arm64.
1776s Preparing to unpack .../01-libsodium23_1.0.18-1build3_arm64.deb ...
1776s Unpacking libsodium23:arm64 (1.0.18-1build3) ...
1776s Selecting previously unselected package python3-nacl.
1776s Preparing to unpack .../02-python3-nacl_1.5.0-7_arm64.deb ...
1776s Unpacking python3-nacl (1.5.0-7) ...
1776s Selecting previously unselected package python3-paramiko.
1776s Preparing to unpack .../03-python3-paramiko_3.5.1-2ubuntu1_all.deb ...
1776s Unpacking python3-paramiko (3.5.1-2ubuntu1) ...
1776s Selecting previously unselected package python3-dnspython.
1776s Preparing to unpack .../04-python3-dnspython_2.7.0-1ubuntu1_all.deb ...
1776s Unpacking python3-dnspython (2.7.0-1ubuntu1) ...
1776s Selecting previously unselected package ansible-core.
1776s Preparing to unpack .../05-ansible-core_2.18.1-4ubuntu1_all.deb ...
1776s Unpacking ansible-core (2.18.1-4ubuntu1) ...
1776s Selecting previously unselected package ansible.
1776s Preparing to unpack .../06-ansible_11.2.0+dfsg-1_all.deb ...
1776s Unpacking ansible (11.2.0+dfsg-1) ...
1778s Selecting previously unselected package fonts-dejavu-mono.
1778s Preparing to unpack .../07-fonts-dejavu-mono_2.37-8_all.deb ...
1778s Unpacking fonts-dejavu-mono (2.37-8) ...
1778s Selecting previously unselected package fonts-dejavu-core.
1778s Preparing to unpack .../08-fonts-dejavu-core_2.37-8_all.deb ...
1778s Unpacking fonts-dejavu-core (2.37-8) ...
1778s Selecting previously unselected package fontconfig-config.
1778s Preparing to unpack .../09-fontconfig-config_2.15.0-2.2ubuntu1_arm64.deb ...
1778s Unpacking fontconfig-config (2.15.0-2.2ubuntu1) ...
1779s Selecting previously unselected package libsecret-common.
1779s Preparing to unpack .../10-libsecret-common_0.21.7-1_all.deb ...
1779s Unpacking libsecret-common (0.21.7-1) ...
1779s Selecting previously unselected package libsecret-1-0:arm64.
1779s Preparing to unpack .../11-libsecret-1-0_0.21.7-1_arm64.deb ...
1779s Unpacking libsecret-1-0:arm64 (0.21.7-1) ...
1779s Selecting previously unselected package gir1.2-secret-1:arm64.
1779s Preparing to unpack .../12-gir1.2-secret-1_0.21.7-1_arm64.deb ...
1779s Unpacking gir1.2-secret-1:arm64 (0.21.7-1) ...
1779s Selecting previously unselected package liberror-perl.
1779s Preparing to unpack .../13-liberror-perl_0.17030-1_all.deb ...
1779s Unpacking liberror-perl (0.17030-1) ...
1779s Selecting previously unselected package git-man.
1779s Preparing to unpack .../14-git-man_1%3a2.48.1-0ubuntu1_all.deb ...
1779s Unpacking git-man (1:2.48.1-0ubuntu1) ...
1779s Selecting previously unselected package git.
1779s Preparing to unpack .../15-git_1%3a2.48.1-0ubuntu1_arm64.deb ...
1779s Unpacking git (1:2.48.1-0ubuntu1) ...
1779s Selecting previously unselected package libfontconfig1:arm64.
1779s Preparing to unpack .../16-libfontconfig1_2.15.0-2.2ubuntu1_arm64.deb ...
1779s Unpacking libfontconfig1:arm64 (2.15.0-2.2ubuntu1) ...
1779s Selecting previously unselected package libpixman-1-0:arm64.
1779s Preparing to unpack .../17-libpixman-1-0_0.44.0-3_arm64.deb ...
1779s Unpacking libpixman-1-0:arm64 (0.44.0-3) ...
1779s Selecting previously unselected package libxcb-render0:arm64.
1779s Preparing to unpack .../18-libxcb-render0_1.17.0-2_arm64.deb ...
1779s Unpacking libxcb-render0:arm64 (1.17.0-2) ...
1779s Selecting previously unselected package libxcb-shm0:arm64.
1779s Preparing to unpack .../19-libxcb-shm0_1.17.0-2_arm64.deb ...
1779s Unpacking libxcb-shm0:arm64 (1.17.0-2) ...
1779s Selecting previously unselected package libxrender1:arm64.
1779s Preparing to unpack .../20-libxrender1_1%3a0.9.10-1.1build1_arm64.deb ...
1779s Unpacking libxrender1:arm64 (1:0.9.10-1.1build1) ...
1779s Selecting previously unselected package libcairo2:arm64.
1779s Preparing to unpack .../21-libcairo2_1.18.4-1_arm64.deb ...
1779s Unpacking libcairo2:arm64 (1.18.4-1) ...
1779s Selecting previously unselected package libcairo-gobject2:arm64.
1779s Preparing to unpack .../22-libcairo-gobject2_1.18.4-1_arm64.deb ...
1779s Unpacking libcairo-gobject2:arm64 (1.18.4-1) ...
1779s Selecting previously unselected package libxslt1.1:arm64.
1779s Preparing to unpack .../23-libxslt1.1_1.1.39-0exp1ubuntu4_arm64.deb ...
1779s Unpacking libxslt1.1:arm64 (1.1.39-0exp1ubuntu4) ...
1779s Selecting previously unselected package python3-adal.
1779s Preparing to unpack .../24-python3-adal_1.2.7-5_all.deb ...
1779s Unpacking python3-adal (1.2.7-5) ...
1779s Selecting previously unselected package python3-aiohappyeyeballs.
1779s Preparing to unpack .../25-python3-aiohappyeyeballs_2.6.1-1_all.deb ...
1779s Unpacking python3-aiohappyeyeballs (2.6.1-1) ...
1779s Selecting previously unselected package python3-multidict.
1779s Preparing to unpack .../26-python3-multidict_6.2.0-2_arm64.deb ...
1779s Unpacking python3-multidict (6.2.0-2) ...
1779s Selecting previously unselected package python3-yarl.
1779s Preparing to unpack .../27-python3-yarl_1.13.1-1build2_arm64.deb ...
1779s Unpacking python3-yarl (1.13.1-1build2) ...
1779s Selecting previously unselected package python3-async-timeout.
1780s Preparing to unpack .../28-python3-async-timeout_5.0.1-1_all.deb ...
1780s Unpacking python3-async-timeout (5.0.1-1) ...
1780s Selecting previously unselected package python3-frozenlist.
1780s Preparing to unpack .../29-python3-frozenlist_1.5.0-1build2_arm64.deb ...
1780s Unpacking python3-frozenlist (1.5.0-1build2) ...
1780s Selecting previously unselected package python3-aiosignal.
1780s Preparing to unpack .../30-python3-aiosignal_1.3.2-1_all.deb ...
1780s Unpacking python3-aiosignal (1.3.2-1) ...
1780s Selecting previously unselected package python3-aiohttp.
1780s Preparing to unpack .../31-python3-aiohttp_3.10.11-1build1_arm64.deb ...
1780s Unpacking python3-aiohttp (3.10.11-1build1) ...
1780s Selecting previously unselected package python3-avro.
1780s Preparing to unpack .../32-python3-avro_1.12.0+dfsg-1_all.deb ...
1780s Unpacking python3-avro (1.12.0+dfsg-1) ...
1780s Selecting previously unselected package python3-isodate.
1780s Preparing to unpack .../33-python3-isodate_0.7.0-1_all.deb ...
1780s Unpacking python3-isodate (0.7.0-1) ...
1780s Selecting previously unselected package python3-requests-oauthlib.
1780s Preparing to unpack .../34-python3-requests-oauthlib_1.3.1-1_all.deb ...
1780s Unpacking python3-requests-oauthlib (1.3.1-1) ...
1780s Selecting previously unselected package python3-msrest.
1780s Preparing to unpack .../35-python3-msrest_0.6.21-5_all.deb ...
1780s Unpacking python3-msrest (0.6.21-5) ...
1780s Selecting previously unselected package python3-msrestazure.
1780s Preparing to unpack .../36-python3-msrestazure_0.6.4-4_all.deb ...
1780s Unpacking python3-msrestazure (0.6.4-4) ...
1780s Selecting previously unselected package python3-azure-storage.
1780s Preparing to unpack .../37-python3-azure-storage_20250304+git-1_all.deb ...
1780s Unpacking python3-azure-storage (20250304+git-1) ...
1780s Selecting previously unselected package python3-colorama.
1780s Preparing to unpack .../38-python3-colorama_0.4.6-4_all.deb ...
1780s Unpacking python3-colorama (0.4.6-4) ...
1780s Selecting previously unselected package python3-marshmallow.
1780s Preparing to unpack .../39-python3-marshmallow_3.26.1-0.2_all.deb ...
1780s Unpacking python3-marshmallow (3.26.1-0.2) ...
1780s Selecting previously unselected package python3-msal.
1780s Preparing to unpack .../40-python3-msal_1.32.0-1_all.deb ...
1780s Unpacking python3-msal (1.32.0-1) ...
1780s Selecting previously unselected package python3-cairo.
1780s Preparing to unpack .../41-python3-cairo_1.27.0-2_arm64.deb ...
1780s Unpacking python3-cairo (1.27.0-2) ...
1780s Selecting previously unselected package python3-gi-cairo.
1780s Preparing to unpack .../42-python3-gi-cairo_3.50.0-4build1_arm64.deb ...
1780s Unpacking python3-gi-cairo (3.50.0-4build1) ...
1780s Selecting previously unselected package python3-portalocker.
1780s Preparing to unpack .../43-python3-portalocker_2.2.1-1_all.deb ...
1780s Unpacking python3-portalocker (2.2.1-1) ...
1780s Selecting previously unselected package python3-msal-extensions.
1780s Preparing to unpack .../44-python3-msal-extensions_1.3.1-1_all.deb ...
1780s Unpacking python3-msal-extensions (1.3.1-1) ...
1780s Selecting previously unselected package python3-click.
1780s Preparing to unpack .../45-python3-click_8.2.0+0.really.8.1.8-1_all.deb ...
1780s Unpacking python3-click (8.2.0+0.really.8.1.8-1) ...
1780s Selecting previously unselected package python3-joblib.
1780s Preparing to unpack .../46-python3-joblib_1.4.2-3_all.deb ...
1780s Unpacking python3-joblib (1.4.2-3) ...
1780s Selecting previously unselected package python3-regex.
1780s Preparing to unpack .../47-python3-regex_0.1.20241106-1build1_arm64.deb ...
1780s Unpacking python3-regex (0.1.20241106-1build1) ...
1780s Selecting previously unselected package python3-tqdm.
1780s Preparing to unpack .../48-python3-tqdm_4.67.1-3_all.deb ...
1780s Unpacking python3-tqdm (4.67.1-3) ...
1780s Selecting previously unselected package python3-nltk.
1780s Preparing to unpack .../49-python3-nltk_3.9.1-2_all.deb ...
1780s Unpacking python3-nltk (3.9.1-2) ...
1781s Selecting previously unselected package python3-psutil.
1781s Preparing to unpack .../50-python3-psutil_5.9.8-2build3_arm64.deb ...
1781s Unpacking python3-psutil (5.9.8-2build3) ...
1781s Selecting previously unselected package python3-pydash.
1781s Preparing to unpack .../51-python3-pydash_8.0.3-3_all.deb ...
1781s Unpacking python3-pydash (8.0.3-3) ...
1781s Selecting previously unselected package python3-ruamel.yaml.clib.
1781s Preparing to unpack .../52-python3-ruamel.yaml.clib_0.2.12+ds-1build1_arm64.deb ...
1781s Unpacking python3-ruamel.yaml.clib (0.2.12+ds-1build1) ...
1781s Selecting previously unselected package python3-ruamel.yaml.
1781s Preparing to unpack .../53-python3-ruamel.yaml_0.18.10+ds-1_all.deb ...
1781s Unpacking python3-ruamel.yaml (0.18.10+ds-1) ...
1781s Selecting previously unselected package python3-strictyaml.
1781s Preparing to unpack .../54-python3-strictyaml_1.6.1-3_all.deb ...
1781s Unpacking python3-strictyaml (1.6.1-3) ...
1781s Selecting previously unselected package python3-websocket.
1781s Preparing to unpack .../55-python3-websocket_1.8.0-2_all.deb ...
1781s Unpacking python3-websocket (1.8.0-2) ...
1781s Selecting previously unselected package python3-azure.
1781s Preparing to unpack .../56-python3-azure_20250304+git-1_all.deb ...
1781s Unpacking python3-azure (20250304+git-1) ...
1785s Selecting previously unselected package python3-cachetools.
1785s Preparing to unpack .../57-python3-cachetools_5.3.3-1_all.deb ...
1785s Unpacking python3-cachetools (5.3.3-1) ...
1785s Selecting previously unselected package python3-execnet.
1785s Preparing to unpack .../58-python3-execnet_2.1.1-1_all.deb ...
1785s Unpacking python3-execnet (2.1.1-1) ...
1785s Selecting previously unselected package python3-mccabe.
1785s Preparing to unpack .../59-python3-mccabe_0.7.0-1_all.deb ...
1785s Unpacking python3-mccabe (0.7.0-1) ...
1785s Selecting previously unselected package python3-pycodestyle.
1785s Preparing to unpack .../60-python3-pycodestyle_2.12.1-2_all.deb ...
1785s Unpacking python3-pycodestyle (2.12.1-2) ...
1785s Selecting previously unselected package python3-pyflakes.
1785s Preparing to unpack .../61-python3-pyflakes_3.2.0-3_all.deb ...
1785s Unpacking python3-pyflakes (3.2.0-3) ...
1785s Selecting previously unselected package python3-flake8.
1785s Preparing to unpack .../62-python3-flake8_7.1.1-3_all.deb ...
1785s Unpacking python3-flake8 (7.1.1-3) ...
1785s Selecting previously unselected package python3-freezegun.
1785s Preparing to unpack .../63-python3-freezegun_1.5.1-1.2_all.deb ...
1785s Unpacking python3-freezegun (1.5.1-1.2) ...
1785s Selecting previously unselected package python3-requests-toolbelt.
1785s Preparing to unpack .../64-python3-requests-toolbelt_1.0.0-4_all.deb ...
1785s Unpacking python3-requests-toolbelt (1.0.0-4) ...
1785s Selecting previously unselected package python3-gitlab.
1785s Preparing to unpack .../65-python3-gitlab_1%3a4.9.0-1_all.deb ...
1785s Unpacking python3-gitlab (1:4.9.0-1) ...
1785s Selecting previously unselected package python3-pyasn1.
1785s Preparing to unpack .../66-python3-pyasn1_0.6.1-1_all.deb ...
1785s Unpacking python3-pyasn1 (0.6.1-1) ...
1785s Selecting previously unselected package python3-pyasn1-modules.
1785s Preparing to unpack .../67-python3-pyasn1-modules_0.4.1-2_all.deb ...
1785s Unpacking python3-pyasn1-modules (0.4.1-2) ...
1785s Selecting previously unselected package python3-pyu2f.
1785s Preparing to unpack .../68-python3-pyu2f_0.1.5-4_all.deb ...
1785s Unpacking python3-pyu2f (0.1.5-4) ...
1785s Selecting previously unselected package python3-responses.
1785s Preparing to unpack .../69-python3-responses_0.25.6-1_all.deb ...
1785s Unpacking python3-responses (0.25.6-1) ...
1785s Selecting previously unselected package python3-rsa.
1785s Preparing to unpack .../70-python3-rsa_4.9-2_all.deb ...
1785s Unpacking python3-rsa (4.9-2) ...
1785s Selecting previously unselected package python3-google-auth.
1785s Preparing to unpack .../71-python3-google-auth_2.28.2-3_all.deb ...
1785s Unpacking python3-google-auth (2.28.2-3) ...
1785s Selecting previously unselected package python3-httmock.
1785s Preparing to unpack .../72-python3-httmock_1.4.0-5_all.deb ...
1785s Unpacking python3-httmock (1.4.0-5) ...
1785s Selecting previously unselected package python3-pyhcl.
1785s Preparing to unpack .../73-python3-pyhcl_0.4.4-6_all.deb ...
1785s Unpacking python3-pyhcl (0.4.4-6) ...
1785s Selecting previously unselected package python3-hvac.
1785s Preparing to unpack .../74-python3-hvac_2.3.0-3_all.deb ...
1785s Unpacking python3-hvac (2.3.0-3) ...
1785s Selecting previously unselected package python3-iniconfig.
1785s Preparing to unpack .../75-python3-iniconfig_1.1.1-2_all.deb ...
1785s Unpacking python3-iniconfig (1.1.1-2) ...
1786s Selecting previously unselected package python3-kubernetes.
1786s Preparing to unpack .../76-python3-kubernetes_30.1.0-2_all.deb ...
1786s Unpacking python3-kubernetes (30.1.0-2) ...
1786s Selecting previously unselected package python3-lxml:arm64.
1786s Preparing to unpack .../77-python3-lxml_5.3.2-1_arm64.deb ...
1786s Unpacking python3-lxml:arm64 (5.3.2-1) ...
1786s Selecting previously unselected package python3-pathspec.
1786s Preparing to unpack .../78-python3-pathspec_0.12.1-1_all.deb ...
1786s Unpacking python3-pathspec (0.12.1-1) ...
1786s Selecting previously unselected package python3-pluggy.
1786s Preparing to unpack .../79-python3-pluggy_1.5.0-1_all.deb ...
1786s Unpacking python3-pluggy (1.5.0-1) ...
1786s Selecting previously unselected package python3-proxmoxer.
1786s Preparing to unpack .../80-python3-proxmoxer_2.2.0-1_all.deb ...
1786s Unpacking python3-proxmoxer (2.2.0-1) ...
1786s Selecting previously unselected package python3-py.
1786s Preparing to unpack .../81-python3-py_1.11.0-4_all.deb ...
1786s Unpacking python3-py (1.11.0-4) ...
1786s Selecting previously unselected package python3-pytest.
1786s Preparing to unpack .../82-python3-pytest_8.3.5-1_all.deb ...
1786s Unpacking python3-pytest (8.3.5-1) ...
1786s Selecting previously unselected package python3-pytest-forked.
1786s Preparing to unpack .../83-python3-pytest-forked_1.6.0-3_all.deb ...
1786s Unpacking python3-pytest-forked (1.6.0-3) ...
1786s Selecting previously unselected package python3-pytest-mock.
1786s Preparing to unpack .../84-python3-pytest-mock_3.14.0-2_all.deb ...
1786s Unpacking python3-pytest-mock (3.14.0-2) ...
1786s Selecting previously unselected package python3-pytest-xdist.
1786s Preparing to unpack .../85-python3-pytest-xdist_3.6.1-1_all.deb ...
1786s Unpacking python3-pytest-xdist (3.6.1-1) ...
1786s Selecting previously unselected package python3-pyvmomi.
1786s Preparing to unpack .../86-python3-pyvmomi_8.0.3.0.1-1_all.deb ...
1786s Unpacking python3-pyvmomi (8.0.3.0.1-1) ...
1786s Selecting previously unselected package python3-redis.
1786s Preparing to unpack .../87-python3-redis_5.2.1-1_all.deb ...
1786s Unpacking python3-redis (5.2.1-1) ...
1786s Selecting previously unselected package python3-textfsm.
1786s Preparing to unpack .../88-python3-textfsm_1.1.3-3_all.deb ...
1786s Unpacking python3-textfsm (1.1.3-3) ...
1786s Selecting previously unselected package python3-xmltodict.
1787s Preparing to unpack .../89-python3-xmltodict_0.13.0-1_all.deb ...
1787s Unpacking python3-xmltodict (0.13.0-1) ...
1787s Selecting previously unselected package yamllint.
1787s Preparing to unpack .../90-yamllint_1.35.1-2_all.deb ...
1787s Unpacking yamllint (1.35.1-2) ...
1787s Selecting previously unselected package python3-mock.
1787s Preparing to unpack .../91-python3-mock_5.1.0-1_all.deb ...
1787s Unpacking python3-mock (5.1.0-1) ...
1787s Setting up python3-iniconfig (1.1.1-2) ...
1787s Setting up libpixman-1-0:arm64 (0.44.0-3) ...
1787s Setting up libsodium23:arm64 (1.0.18-1build3) ...
1787s Setting up python3-requests-toolbelt (1.0.0-4) ...
1787s Setting up libxrender1:arm64 (1:0.9.10-1.1build1) ...
1787s Setting up python3-py (1.11.0-4) ...
1787s Setting up python3-joblib (1.4.2-3) ...
1787s Setting up python3-cachetools (5.3.3-1) ...
1787s Setting up python3-colorama (0.4.6-4) ...
1788s Setting up libxcb-render0:arm64 (1.17.0-2) ...
1788s Setting up python3-tqdm (4.67.1-3) ...
1788s Setting up python3-pyflakes (3.2.0-3) ...
1788s Setting up python3-ruamel.yaml.clib (0.2.12+ds-1build1) ...
1788s Setting up python3-resolvelib (1.1.0-1) ...
1788s Setting up python3-marshmallow (3.26.1-0.2) ...
1788s Setting up python3-msal (1.32.0-1) ...
1788s Setting up libxcb-shm0:arm64 (1.17.0-2) ...
1788s Setting up python3-httmock (1.4.0-5) ...
1788s Setting up python3-click (8.2.0+0.really.8.1.8-1) ...
1789s Setting up python3-psutil (5.9.8-2build3) ...
1789s Setting up python3-multidict (6.2.0-2) ...
1789s Setting up python3-frozenlist (1.5.0-1build2) ...
1789s Setting up python3-aiosignal (1.3.2-1) ...
1789s Setting up python3-mock (5.1.0-1) ...
1789s Setting up python3-async-timeout (5.0.1-1) ...
1790s Setting up liberror-perl (0.17030-1) ...
1790s Setting up python3-responses (0.25.6-1) ...
1790s Setting up python3-pyvmomi (8.0.3.0.1-1) ...
1790s Setting up python3-isodate (0.7.0-1) ...
1790s Setting up python3-pycodestyle (2.12.1-2) ...
1790s Setting up python3-xmltodict (0.13.0-1) ...
1791s Setting up python3-pyu2f (0.1.5-4) ...
1791s Setting up python3-avro (1.12.0+dfsg-1) ...
1791s Setting up fonts-dejavu-mono (2.37-8) ...
1791s Setting up fonts-dejavu-core (2.37-8) ...
1791s Setting up python3-redis (5.2.1-1) ...
1791s Setting up python3-aiohappyeyeballs (2.6.1-1) ...
1791s Setting up python3-regex (0.1.20241106-1build1) ...
1792s Setting up python3-pluggy (1.5.0-1) ...
1792s Setting up python3-ruamel.yaml (0.18.10+ds-1) ...
1792s Setting up python3-adal (1.2.7-5) ...
1792s Setting up python3-dnspython (2.7.0-1ubuntu1) ...
1792s Setting up python3-portalocker (2.2.1-1) ...
1793s Setting up libxslt1.1:arm64 (1.1.39-0exp1ubuntu4) ...
1793s Setting up python3-pyasn1 (0.6.1-1) ...
1793s Setting up python3-proxmoxer (2.2.0-1) ...
1793s Setting up git-man (1:2.48.1-0ubuntu1) ...
1793s Setting up python3-textfsm (1.1.3-3) ...
1793s Setting up python3-mccabe (0.7.0-1) ...
1793s Setting up python3-execnet (2.1.1-1) ...
1793s Setting up python3-pathspec (0.12.1-1) ...
1793s Setting up python3-pydash (8.0.3-3) ...
1794s Setting up python3-nltk (3.9.1-2) ...
1794s Setting up python3-yarl (1.13.1-1build2) ...
1795s Setting up python3-pyhcl (0.4.4-6) ...
1795s Setting up python3-gitlab (1:4.9.0-1) ...
1795s Setting up python3-websocket (1.8.0-2) ...
1795s Setting up libsecret-common (0.21.7-1) ...
1795s Setting up python3-freezegun (1.5.1-1.2) ...
1795s Setting up python3-nacl (1.5.0-7) ...
1795s Setting up python3-requests-oauthlib (1.3.1-1) ...
1796s Setting up fontconfig-config (2.15.0-2.2ubuntu1) ...
1796s Setting up python3-pytest (8.3.5-1) ...
1796s Setting up python3-aiohttp (3.10.11-1build1) ...
1796s Setting up ansible-core (2.18.1-4ubuntu1) ...
1798s Setting up python3-flake8 (7.1.1-3) ...
1798s Setting up python3-msrest (0.6.21-5) ...
1798s Setting up python3-pytest-forked (1.6.0-3) ...
1798s Setting up python3-strictyaml (1.6.1-3) ...
1798s Setting up libsecret-1-0:arm64 (0.21.7-1) ...
1798s Setting up yamllint (1.35.1-2) ...
1798s Setting up gir1.2-secret-1:arm64 (0.21.7-1) ...
1798s Setting up python3-pyasn1-modules (0.4.1-2) ...
1799s Setting up python3-hvac (2.3.0-3) ...
1799s Setting up git (1:2.48.1-0ubuntu1) ...
1799s Setting up python3-pytest-mock (3.14.0-2) ...
1799s Setting up python3-lxml:arm64 (5.3.2-1) ...
1799s Setting up python3-rsa (4.9-2) ...
1799s Setting up libfontconfig1:arm64 (2.15.0-2.2ubuntu1) ...
1799s Setting up python3-msrestazure (0.6.4-4) ...
1799s Setting up ansible (11.2.0+dfsg-1) ...
1819s Setting up python3-paramiko (3.5.1-2ubuntu1) ...
1819s Setting up python3-pytest-xdist (3.6.1-1) ...
1819s Setting up libcairo2:arm64 (1.18.4-1) ...
1819s Setting up python3-google-auth (2.28.2-3) ...
1819s Setting up libcairo-gobject2:arm64 (1.18.4-1) ...
1819s Setting up python3-cairo (1.27.0-2) ...
1819s Setting up python3-kubernetes (30.1.0-2) ...
1821s Setting up python3-gi-cairo (3.50.0-4build1) ...
1821s Setting up python3-msal-extensions (1.3.1-1) ...
1821s Setting up python3-azure-storage (20250304+git-1) ...
1822s Setting up python3-azure (20250304+git-1) ...
1834s /usr/lib/python3/dist-packages/azure/ai/ml/_vendor/azure_resources/aio/operations/_resources_operations.py:80: SyntaxWarning: invalid escape sequence '\ '
1834s Valid values include ``createdTime``\ , ``changedTime`` and ``provisioningState``. For example,
1834s /usr/lib/python3/dist-packages/azure/ai/ml/_vendor/azure_resources/aio/operations/_resources_operations.py:405: SyntaxWarning: invalid escape sequence '\ '
1834s Valid values include ``createdTime``\ , ``changedTime`` and ``provisioningState``. For example,
1836s /usr/lib/python3/dist-packages/azure/appconfiguration/_generated/models/_models.py:238: SyntaxWarning: invalid escape sequence '\ '
1836s """An error, available when the status is ``Failed``\ , describing why the operation
1836s /usr/lib/python3/dist-packages/azure/batch/models/_models.py:9067: SyntaxWarning: invalid escape sequence '\ '
1836s """The source port ranges to match for the rule. Valid values are '\ *' (for all ports 0 - 65535),
1836s /usr/lib/python3/dist-packages/azure/batch/models/_models.py:9235: SyntaxWarning: invalid escape sequence '\ '
1836s using brackets (for example abc[\ *] would match a file named abc*\ ). Note that both and / are
1837s /usr/lib/python3/dist-packages/azure/communication/jobrouter/models/_models.py:2326: SyntaxWarning: invalid escape sequence '\ '
1837s payload to scoring rule. If not set, a job's labels (sent in the payload as ``job``\ ) and a
1837s /usr/lib/python3/dist-packages/azure/communication/jobrouter/models/_models.py:2346: SyntaxWarning: invalid escape sequence '\ '
1837s If not set, a job's labels (sent in the payload as ``job``\ ) and a job's worker selectors
1840s /usr/lib/python3/dist-packages/azure/mgmt/advisor/aio/operations/_recommendations_operations.py:190: SyntaxWarning: invalid escape sequence '\ '
1840s properties ['ResourceId', 'ResourceGroup', 'RecommendationTypeGuid', '\ `Category
1840s /usr/lib/python3/dist-packages/azure/mgmt/advisor/operations/_recommendations_operations.py:303: SyntaxWarning: invalid escape sequence '\ '
1840s properties ['ResourceId', 'ResourceGroup', 'RecommendationTypeGuid', '\ `Category
1841s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:3917: SyntaxWarning: invalid escape sequence '\ '
1841s Possible Values::code:`
`:code:`
` **Standard**\ :code:`
`:code:`
`
1841s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10212: SyntaxWarning: invalid escape sequence '\ '
1841s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
1841s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10255: SyntaxWarning: invalid escape sequence '\ '
1841s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
1841s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10284: SyntaxWarning: invalid escape sequence '\ '
1841s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
1841s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10320: SyntaxWarning: invalid escape sequence '\ '
1841s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
1841s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10342: SyntaxWarning: invalid escape sequence '\ '
1841s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
1841s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10375: SyntaxWarning: invalid escape sequence '\ '
1841s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
1841s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10396: SyntaxWarning: invalid escape sequence '\ '
1841s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
1841s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10429: SyntaxWarning: invalid escape sequence '\ '
1841s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null.
1841s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:14746: SyntaxWarning: invalid escape sequence '\ '
1841s :ivar allowed_sources: Allowed sources, e.g. ``*.trusted.com``\ , ``trusted.com``\ ,
1841s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:14771: SyntaxWarning: invalid escape sequence '\ '
1841s :keyword allowed_sources: Allowed sources, e.g. ``*.trusted.com``\ , ``trusted.com``\ ,
1844s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models.py:1420: SyntaxWarning: invalid escape sequence '\ '
1844s :param id: Required. The ID for the input directory. The job can use AZ_BATCHAI\ *INPUT*\
1844s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models.py:2310: SyntaxWarning: invalid escape sequence '\ '
1844s :param id: Required. The ID of the output directory. The job can use AZ_BATCHAI\ *OUTPUT*\
1844s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models_py3.py:1547: SyntaxWarning: invalid escape sequence '\ '
1844s :param id: Required. The ID for the input directory. The job can use AZ_BATCHAI\ *INPUT*\
1844s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models_py3.py:2524: SyntaxWarning: invalid escape sequence '\ '
1844s :param id: Required. The ID of the output directory. The job can use AZ_BATCHAI\ *OUTPUT*\
1849s /usr/lib/python3/dist-packages/azure/mgmt/computefleet/models/_models.py:624: SyntaxWarning: invalid escape sequence '\ '
1849s and Screenshot to diagnose VM status. **NOTE**\ : If storageUri is being
1849s /usr/lib/python3/dist-packages/azure/mgmt/computefleet/models/_models.py:3707: SyntaxWarning: invalid escape sequence '\W'
1849s characters :code:`
` Has a digit :code:`
` Has a special character (Regex match [\W_])
1853s /usr/lib/python3/dist-packages/azure/mgmt/datamigration/models/_models_py3.py:16843: SyntaxWarning: invalid escape sequence '\S'
1853s Protocol:MachineName\SQLServerInstanceName,PortNumber. Required.
1853s /usr/lib/python3/dist-packages/azure/mgmt/datamigration/models/_models_py3.py:16916: SyntaxWarning: invalid escape sequence '\S'
1853s Protocol:MachineName\SQLServerInstanceName,PortNumber. Required.
1855s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:63: SyntaxWarning: invalid escape sequence '\w'
1855s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
1855s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:130: SyntaxWarning: invalid escape sequence '\w'
1855s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
1855s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:224: SyntaxWarning: invalid escape sequence '\w'
1855s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
1855s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:312: SyntaxWarning: invalid escape sequence '\w'
1855s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
1855s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:398: SyntaxWarning: invalid escape sequence '\w'
1855s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
1855s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:543: SyntaxWarning: invalid escape sequence '\w'
1855s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
1855s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:612: SyntaxWarning: invalid escape sequence '\w'
1855s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
1855s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:675: SyntaxWarning: invalid escape sequence '\w'
1855s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
1855s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:738: SyntaxWarning: invalid escape sequence '\w'
1855s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
1855s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:807: SyntaxWarning: invalid escape sequence '\w'
1855s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'),
1858s /usr/lib/python3/dist-packages/azure/mgmt/hybridnetwork/models/_models_py3.py:6032: SyntaxWarning: invalid escape sequence '\ '
1858s :ivar provisioning_state: The provisioning state of the site resource. **TODO**\ : Confirm if
1860s /usr/lib/python3/dist-packages/azure/mgmt/iotoperations/models/_models.py:3866: SyntaxWarning: invalid escape sequence '\ '
1860s pattern set glob-style pattern (e.g., '\ *', 'clients/*\ '). Required."""
1860s /usr/lib/python3/dist-packages/azure/mgmt/iotoperations/models/_models.py:3868: SyntaxWarning: invalid escape sequence '\ '
1860s """Give access for ``Read``\ , ``Write`` and ``ReadWrite`` access level. Required. Known values
1863s /usr/lib/python3/dist-packages/azure/mgmt/machinelearningservices/models/_machine_learning_services_mgmt_client_enums.py:169: SyntaxWarning: invalid escape sequence '\ '
1863s #: The "forest"\ it builds, is an ensemble of decision trees, usually trained with the “bagging”\
1863s /usr/lib/python3/dist-packages/azure/mgmt/machinelearningservices/models/_machine_learning_services_mgmt_client_enums.py:1032: SyntaxWarning: invalid escape sequence '\ '
1863s #: The "forest"\ it builds, is an ensemble of decision trees, usually trained with the “bagging”\
1870s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2542: SyntaxWarning: invalid escape sequence '\R'
1870s """Execute Reverse Replication\Reprotect.
1870s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2583: SyntaxWarning: invalid escape sequence '\R'
1870s """Execute Reverse Replication\Reprotect.
1870s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2622: SyntaxWarning: invalid escape sequence '\R'
1870s """Execute Reverse Replication\Reprotect.
1870s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:5397: SyntaxWarning: invalid escape sequence '\L'
1870s :ivar lun_id: Ordinal\LunId of the disk for the Azure VM.
1870s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:5448: SyntaxWarning: invalid escape sequence '\L'
1870s :keyword lun_id: Ordinal\LunId of the disk for the Azure VM.
1870s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:8836: SyntaxWarning: invalid escape sequence '\S'
1870s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
1870s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:8978: SyntaxWarning: invalid escape sequence '\S'
1870s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
1870s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:9510: SyntaxWarning: invalid escape sequence '\S'
1870s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
1870s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:9675: SyntaxWarning: invalid escape sequence '\S'
1870s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
1870s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:11412: SyntaxWarning: invalid escape sequence '\S'
1870s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target VM after
1870s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:11541: SyntaxWarning: invalid escape sequence '\S'
1870s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target VM after
1870s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:12193: SyntaxWarning: invalid escape sequence '\S'
1870s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
1870s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:12516: SyntaxWarning: invalid escape sequence '\S'
1870s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
1870s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:26323: SyntaxWarning: invalid escape sequence '\S'
1870s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
1870s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:26382: SyntaxWarning: invalid escape sequence '\S'
1870s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after
1870s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3476: SyntaxWarning: invalid escape sequence '\R'
1870s """Execute Reverse Replication\Reprotect.
1870s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3517: SyntaxWarning: invalid escape sequence '\R'
1870s """Execute Reverse Replication\Reprotect.
1870s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3556: SyntaxWarning: invalid escape sequence '\R'
1870s """Execute Reverse Replication\Reprotect.
1871s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_azure_reservation_api_operations.py:163: SyntaxWarning: invalid escape sequence '\ '
1871s """Get list of applicable ``Reservation``\ s.
1871s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:377: SyntaxWarning: invalid escape sequence '\ '
1871s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution.
1871s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:407: SyntaxWarning: invalid escape sequence '\ '
1871s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution.
1871s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:437: SyntaxWarning: invalid escape sequence '\ '
1871s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution.
1871s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:583: SyntaxWarning: invalid escape sequence '\ '
1871s """Merges two ``Reservation``\ s.
1871s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:614: SyntaxWarning: invalid escape sequence '\ '
1871s """Merges two ``Reservation``\ s.
1871s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:645: SyntaxWarning: invalid escape sequence '\ '
1871s """Merges two ``Reservation``\ s.
1871s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:721: SyntaxWarning: invalid escape sequence '\ '
1871s """Get ``Reservation``\ s in a given reservation Order.
1871s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_order_operations.py:183: SyntaxWarning: invalid escape sequence '\ '
1871s """Get all ``ReservationOrder``\ s.
1871s /usr/lib/python3/dist-packages/azure/mgmt/reservations/models/_models_py3.py:3172: SyntaxWarning: invalid escape sequence '\ '
1871s """List of ``Reservation``\ s.
1871s /usr/lib/python3/dist-packages/azure/mgmt/reservations/models/_models_py3.py:3288: SyntaxWarning: invalid escape sequence '\ '
1871s """List of ``ReservationOrder``\ s.
1871s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_azure_reservation_api_operations.py:239: SyntaxWarning: invalid escape sequence '\ '
1871s """Get list of applicable ``Reservation``\ s.
1871s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:662: SyntaxWarning: invalid escape sequence '\ '
1871s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution.
1871s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:692: SyntaxWarning: invalid escape sequence '\ '
1871s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution.
1871s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:722: SyntaxWarning: invalid escape sequence '\ '
1871s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution.
1871s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:868: SyntaxWarning: invalid escape sequence '\ '
1871s """Merges two ``Reservation``\ s.
1871s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:899: SyntaxWarning: invalid escape sequence '\ '
1871s """Merges two ``Reservation``\ s.
1871s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:930: SyntaxWarning: invalid escape sequence '\ '
1871s """Merges two ``Reservation``\ s.
1871s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:1006: SyntaxWarning: invalid escape sequence '\ '
1871s """Get ``Reservation``\ s in a given reservation Order.
1871s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_order_operations.py:299: SyntaxWarning: invalid escape sequence '\ '
1871s """Get all ``ReservationOrder``\ s.
1874s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:68: SyntaxWarning: invalid escape sequence '\ '
1874s **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after ``end``
1874s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:90: SyntaxWarning: invalid escape sequence '\ '
1874s ``[``\ **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after
1874s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:1141: SyntaxWarning: invalid escape sequence '\ '
1874s **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after ``end``
1874s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:1163: SyntaxWarning: invalid escape sequence '\ '
1874s ``[``\ **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after
1878s /usr/lib/python3/dist-packages/azure/mgmt/signalr/models/_models_py3.py:2858: SyntaxWarning: invalid escape sequence '\ '
1878s For example, if the urlTemplate is ``http://example.com/{hub}/api/{event}``\ , with a client
1878s /usr/lib/python3/dist-packages/azure/mgmt/signalr/models/_models_py3.py:2925: SyntaxWarning: invalid escape sequence '\ '
1878s For example, if the urlTemplate is ``http://example.com/{hub}/api/{event}``\ , with a client
1880s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_functions_operations.py:595: SyntaxWarning: invalid escape sequence '\ '
1880s properties to include in the response, or "\ *" to include all properties. By default, all
1880s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_inputs_operations.py:593: SyntaxWarning: invalid escape sequence '\ '
1880s properties to include in the response, or "\ *" to include all properties. By default, all
1880s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_outputs_operations.py:593: SyntaxWarning: invalid escape sequence '\ '
1880s properties to include in the response, or "\ *" to include all properties. By default, all
1880s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/models/_stream_analytics_management_client_enums.py:14: SyntaxWarning: invalid escape sequence '\ '
1880s """Authentication Mode. Valid modes are ``ConnectionString``\ , ``Msi`` and 'UserToken'."""
1880s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_functions_operations.py:859: SyntaxWarning: invalid escape sequence '\ '
1880s properties to include in the response, or "\ *" to include all properties. By default, all
1880s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_inputs_operations.py:821: SyntaxWarning: invalid escape sequence '\ '
1880s properties to include in the response, or "\ *" to include all properties. By default, all
1880s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_outputs_operations.py:821: SyntaxWarning: invalid escape sequence '\ '
1880s properties to include in the response, or "\ *" to include all properties. By default, all
1880s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_communications_no_subscription_operations.py:193: SyntaxWarning: invalid escape sequence '\ '
1880s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication
1880s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_communications_operations.py:194: SyntaxWarning: invalid escape sequence '\ '
1880s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication
1880s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:177: SyntaxWarning: invalid escape sequence '\ '
1880s tickets by *Status*\ , *CreatedDate*\ , *ServiceId*\ , and *ProblemClassificationId* using the
1880s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:540: SyntaxWarning: invalid escape sequence '\ '
1880s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket
1880s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:582: SyntaxWarning: invalid escape sequence '\ '
1880s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket
1880s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:622: SyntaxWarning: invalid escape sequence '\ '
1880s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket
1880s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_communications_no_subscription_operations.py:308: SyntaxWarning: invalid escape sequence '\ '
1880s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication
1880s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_communications_operations.py:326: SyntaxWarning: invalid escape sequence '\ '
1880s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication
1880s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:319: SyntaxWarning: invalid escape sequence '\ '
1880s tickets by *Status*\ , *CreatedDate*\ , *ServiceId*\ , and *ProblemClassificationId* using the
1880s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:681: SyntaxWarning: invalid escape sequence '\ '
1880s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket
1880s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:723: SyntaxWarning: invalid escape sequence '\ '
1880s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket
1880s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:763: SyntaxWarning: invalid escape sequence '\ '
1880s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket
1880s /usr/lib/python3/dist-packages/azure/mgmt/synapse/models/_models_py3.py:6232: SyntaxWarning: invalid escape sequence '\ '
1880s :ivar maintenance_window_cycles: Available maintenance cycles e.g. {Saturday, 0, 48\ *60},
1880s /usr/lib/python3/dist-packages/azure/mgmt/synapse/models/_models_py3.py:6288: SyntaxWarning: invalid escape sequence '\ '
1880s :keyword maintenance_window_cycles: Available maintenance cycles e.g. {Saturday, 0, 48\ *60},
1886s /usr/lib/python3/dist-packages/azure/mgmt/workloads/models/_models_py3.py:2909: SyntaxWarning: invalid escape sequence '\W'
1886s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
`
1886s /usr/lib/python3/dist-packages/azure/mgmt/workloads/models/_models_py3.py:2954: SyntaxWarning: invalid escape sequence '\W'
1886s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
`
1886s /usr/lib/python3/dist-packages/azure/mgmt/workloadssapvirtualinstance/models/_models_py3.py:1980: SyntaxWarning: invalid escape sequence '\W'
1886s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
`
1886s /usr/lib/python3/dist-packages/azure/mgmt/workloadssapvirtualinstance/models/_models_py3.py:2025: SyntaxWarning: invalid escape sequence '\W'
1886s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
`
1886s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:2732: SyntaxWarning: invalid escape sequence '\:'
1886s attr:\:code:``=:code:``.
1886s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:3537: SyntaxWarning: invalid escape sequence '\:'
1886s attr:\:code:``=\:code:``.
1886s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:4216: SyntaxWarning: invalid escape sequence '\:'
1886s typeName=\:code:``&attr_1:\:code:``=\:code:``&attr_2:\:code:``=\:code:``&attr_3:\:code:``=\:code:``
1886s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:6219: SyntaxWarning: invalid escape sequence '\:'
1886s attr:\:code:``=:code:``.
1886s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:7024: SyntaxWarning: invalid escape sequence '\:'
1886s attr:\:code:``=\:code:``.
1886s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:7703: SyntaxWarning: invalid escape sequence '\:'
1886s typeName=\:code:``&attr_1:\:code:``=\:code:``&attr_2:\:code:``=\:code:``&attr_3:\:code:``=\:code:``
1888s /usr/lib/python3/dist-packages/azure/servicemanagement/schedulermanagementservice.py:59: SyntaxWarning: invalid escape sequence '\m'
1888s CURRENT_USER\my\CertificateName format.
1888s /usr/lib/python3/dist-packages/azure/servicemanagement/servicebusmanagementservice.py:59: SyntaxWarning: invalid escape sequence '\m'
1888s CURRENT_USER\my\CertificateName format.
1888s /usr/lib/python3/dist-packages/azure/servicemanagement/servicemanagementservice.py:81: SyntaxWarning: invalid escape sequence '\m'
1888s CURRENT_USER\my\CertificateName format.
1888s /usr/lib/python3/dist-packages/azure/servicemanagement/sqldatabasemanagementservice.py:55: SyntaxWarning: invalid escape sequence '\m'
1888s CURRENT_USER\my\CertificateName format.
1888s /usr/lib/python3/dist-packages/azure/servicemanagement/websitemanagementservice.py:55: SyntaxWarning: invalid escape sequence '\m'
1888s CURRENT_USER\my\CertificateName format.
1888s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:110: SyntaxWarning: invalid escape sequence '\d'
1888s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
1888s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:1328: SyntaxWarning: invalid escape sequence '\d'
1888s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9]))..).
1888s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:4218: SyntaxWarning: invalid escape sequence '\d'
1888s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
1888s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:4280: SyntaxWarning: invalid escape sequence '\d'
1888s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
1888s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:18198: SyntaxWarning: invalid escape sequence '\d'
1888s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
1888s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19096: SyntaxWarning: invalid escape sequence '\d'
1888s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). Type: string (or Expression with
1888s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19185: SyntaxWarning: invalid escape sequence '\d'
1888s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
1888s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19749: SyntaxWarning: invalid escape sequence '\d'
1888s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
1888s Processing triggers for libc-bin (2.41-6ubuntu1) ...
1888s Processing triggers for man-db (2.13.0-1) ...
2153s autopkgtest [16:05:50]: test unit-tests-flaky.py: [-----------------------
2153s
2153s
2153s
2153s ############################################################
2153s ############################################################
2153s #### Running FLAKY tests in ansible_collections/ansible/utils
2153s ############################################################
2153s ############################################################
2153s Unit test controller with Python 3.13
2155s ============================= test session starts ==============================
2155s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
2155s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ansible/utils
2155s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
2155s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
2155s created: 2/2 workers
2155s 2 workers [383 items]
2155s
2156s ........................................................................ [ 18%]
2157s ....................................................F................... [ 37%]
2158s ...................................................F...F...F............ [ 56%]
2160s ........................................................................ [ 75%]
2168s ........................................................................ [ 93%]
2169s ....................... [100%]
2169s =================================== FAILURES ===================================
2169s ___________________ TestIpFilter.test_ipaddr_undefined_value ___________________
2169s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2169s
2169s self =
2169s
2169s def test_ipaddr_undefined_value(self):
2169s """Check ipaddr filter undefined value"""
2169s args = ["", AnsibleUndefined(name="my_ip"), ""]
2169s with pytest.raises(
2169s AnsibleFilterError,
2169s match="Unrecognized type <> for ipaddr filter ",
2169s ):
2169s > _ipaddr(*args)
2169s
2169s tests/unit/plugins/filter/test_ipaddr.py:75:
2169s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2169s
2169s args = ('', AnsibleUndefined(hint=None, obj=missing, name='my_ip'), '')
2169s kwargs = {}, keys = ['value', 'query', 'version', 'alias']
2169s data = {'query': '', 'value': AnsibleUndefined(hint=None, obj=missing, name='my_ip')}
2169s
2169s @pass_environment
2169s def _ipaddr(*args, **kwargs):
2169s """This filter is designed to return the input value if a query is True, and False if a query is False"""
2169s keys = ["value", "query", "version", "alias"]
2169s data = dict(zip(keys, args[1:]))
2169s data.update(kwargs)
2169s try:
2169s if isinstance(data["value"], str):
2169s pass
2169s elif isinstance(data["value"], list):
2169s pass
2169s elif isinstance(data["value"], int):
2169s pass
2169s else:
2169s > raise AnsibleFilterError(
2169s "Unrecognized type <{0}> for ipaddr filter <{1}>".format(
2169s type(data["value"]),
2169s "value",
2169s ),
2169s )
2169s E ansible.errors.AnsibleFilterError: Unrecognized type <> for ipaddr filter
2169s
2169s plugins/filter/ipaddr.py:268: AnsibleFilterError
2169s
2169s During handling of the above exception, another exception occurred:
2169s
2169s self =
2169s
2169s def test_ipaddr_undefined_value(self):
2169s """Check ipaddr filter undefined value"""
2169s args = ["", AnsibleUndefined(name="my_ip"), ""]
2169s > with pytest.raises(
2169s AnsibleFilterError,
2169s match="Unrecognized type <> for ipaddr filter ",
2169s ):
2169s E AssertionError: Regex pattern did not match.
2169s E Regex: "Unrecognized type <> for ipaddr filter "
2169s E Input: "Unrecognized type <> for ipaddr filter "
2169s
2169s tests/unit/plugins/filter/test_ipaddr.py:71: AssertionError
2169s ______________________ TestIp4.test_ipv4_undefined_value _______________________
2169s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2169s
2169s self =
2169s
2169s def test_ipv4_undefined_value(self):
2169s """Check ipv4 filter undefined value"""
2169s args = ["", AnsibleUndefined(name="my_ip"), ""]
2169s with pytest.raises(
2169s AnsibleFilterError,
2169s match="Unrecognized type <> for ipv4 filter ",
2169s ):
2169s > _ipv4(*args)
2169s
2169s tests/unit/plugins/filter/test_ipv4.py:55:
2169s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2169s
2169s args = ('', AnsibleUndefined(hint=None, obj=missing, name='my_ip'), '')
2169s kwargs = {}, keys = ['value', 'query']
2169s data = {'query': '', 'value': AnsibleUndefined(hint=None, obj=missing, name='my_ip')}
2169s
2169s @pass_environment
2169s def _ipv4(*args, **kwargs):
2169s """This filter is designed to return the input value if a query is True, and False if a query is False"""
2169s keys = ["value", "query"]
2169s data = dict(zip(keys, args[1:]))
2169s data.update(kwargs)
2169s try:
2169s if isinstance(data["value"], str):
2169s pass
2169s elif isinstance(data["value"], list):
2169s pass
2169s elif isinstance(data["value"], int):
2169s pass
2169s else:
2169s > raise AnsibleFilterError(
2169s "Unrecognized type <{0}> for ipv4 filter <{1}>".format(
2169s type(data["value"]),
2169s "value",
2169s ),
2169s )
2169s E ansible.errors.AnsibleFilterError: Unrecognized type <> for ipv4 filter
2169s
2169s plugins/filter/ipv4.py:143: AnsibleFilterError
2169s
2169s During handling of the above exception, another exception occurred:
2169s
2169s self =
2169s
2169s def test_ipv4_undefined_value(self):
2169s """Check ipv4 filter undefined value"""
2169s args = ["", AnsibleUndefined(name="my_ip"), ""]
2169s > with pytest.raises(
2169s AnsibleFilterError,
2169s match="Unrecognized type <> for ipv4 filter ",
2169s ):
2169s E AssertionError: Regex pattern did not match.
2169s E Regex: "Unrecognized type <> for ipv4 filter "
2169s E Input: "Unrecognized type <> for ipv4 filter "
2169s
2169s tests/unit/plugins/filter/test_ipv4.py:51: AssertionError
2169s ______________________ TestIp6.test_ipv6_undefined_value _______________________
2169s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2169s
2169s self =
2169s
2169s def test_ipv6_undefined_value(self):
2169s """Check ipv6 filter undefined value"""
2169s args = ["", AnsibleUndefined(name="my_ip"), ""]
2169s with pytest.raises(
2169s AnsibleFilterError,
2169s match="Unrecognized type <> for ipv6 filter ",
2169s ):
2169s > _ipv6(*args)
2169s
2169s tests/unit/plugins/filter/test_ipv6.py:58:
2169s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2169s
2169s args = ('', AnsibleUndefined(hint=None, obj=missing, name='my_ip'), '')
2169s kwargs = {}, keys = ['value', 'query']
2169s data = {'query': '', 'value': AnsibleUndefined(hint=None, obj=missing, name='my_ip')}
2169s
2169s @pass_environment
2169s def _ipv6(*args, **kwargs):
2169s """This filter is designed to return the input value if a query is True, and False if a query is False"""
2169s keys = ["value", "query"]
2169s data = dict(zip(keys, args[1:]))
2169s data.update(kwargs)
2169s try:
2169s if isinstance(data["value"], str):
2169s pass
2169s elif isinstance(data["value"], list):
2169s pass
2169s elif isinstance(data["value"], int):
2169s pass
2169s else:
2169s > raise AnsibleFilterError(
2169s "Unrecognized type <{0}> for ipv6 filter <{1}>".format(
2169s type(data["value"]),
2169s "value",
2169s ),
2169s )
2169s E ansible.errors.AnsibleFilterError: Unrecognized type <> for ipv6 filter
2169s
2169s plugins/filter/ipv6.py:161: AnsibleFilterError
2169s
2169s During handling of the above exception, another exception occurred:
2169s
2169s self =
2169s
2169s def test_ipv6_undefined_value(self):
2169s """Check ipv6 filter undefined value"""
2169s args = ["", AnsibleUndefined(name="my_ip"), ""]
2169s > with pytest.raises(
2169s AnsibleFilterError,
2169s match="Unrecognized type <> for ipv6 filter ",
2169s ):
2169s E AssertionError: Regex pattern did not match.
2169s E Regex: "Unrecognized type <> for ipv6 filter "
2169s E Input: "Unrecognized type <> for ipv6 filter "
2169s
2169s tests/unit/plugins/filter/test_ipv6.py:54: AssertionError
2169s ____________________ TestIpWrap.test_ipwrap_undefined_value ____________________
2169s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2169s
2169s self =
2169s
2169s def test_ipwrap_undefined_value(self):
2169s """Check ipwrap filter undefined value"""
2169s args = ["", AnsibleUndefined(name="my_ip"), ""]
2169s with pytest.raises(
2169s AnsibleFilterError,
2169s match="Unrecognized type <> for ipwrap filter ",
2169s ):
2169s > _ipwrap(*args)
2169s
2169s tests/unit/plugins/filter/test_ipwrap.py:60:
2169s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2169s
2169s args = ('', AnsibleUndefined(hint=None, obj=missing, name='my_ip'), '')
2169s kwargs = {}, keys = ['value']
2169s data = {'value': AnsibleUndefined(hint=None, obj=missing, name='my_ip')}
2169s
2169s @pass_environment
2169s def _ipwrap(*args, **kwargs):
2169s """This filter is designed to Wrap IPv6 addresses in [ ] brackets."""
2169s keys = ["value"]
2169s data = dict(zip(keys, args[1:]))
2169s data.update(kwargs)
2169s try:
2169s if isinstance(data["value"], str):
2169s pass
2169s elif isinstance(data["value"], list):
2169s pass
2169s elif isinstance(data["value"], bool):
2169s pass
2169s else:
2169s > raise AnsibleFilterError(
2169s "Unrecognized type <{0}> for ipwrap filter <{1}>".format(
2169s type(data["value"]),
2169s "value",
2169s ),
2169s )
2169s E ansible.errors.AnsibleFilterError: Unrecognized type <> for ipwrap filter
2169s
2169s plugins/filter/ipwrap.py:162: AnsibleFilterError
2169s
2169s During handling of the above exception, another exception occurred:
2169s
2169s self =
2169s
2169s def test_ipwrap_undefined_value(self):
2169s """Check ipwrap filter undefined value"""
2169s args = ["", AnsibleUndefined(name="my_ip"), ""]
2169s > with pytest.raises(
2169s AnsibleFilterError,
2169s match="Unrecognized type <> for ipwrap filter ",
2169s ):
2169s E AssertionError: Regex pattern did not match.
2169s E Regex: "Unrecognized type <> for ipwrap filter "
2169s E Input: "Unrecognized type <> for ipwrap filter "
2169s
2169s tests/unit/plugins/filter/test_ipwrap.py:56: AssertionError
2169s =============================== warnings summary ===============================
2169s tests/unit/plugins/action/test_validate.py::TestValidate::test_support_for_disabled_format_with_invalid_data
2169s tests/unit/plugins/action/test_validate.py::TestValidate::test_support_for_format
2169s tests/unit/plugins/action/test_validate.py::TestValidate::test_support_for_format_with_invalid_data
2169s /tmp/autopkgtest.5tw1FI/build.bwJ/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.
2169s validator_class = jsonschema.validators.validator_for(criteria)
2169s
2169s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
2169s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ansible/utils/tests/output/junit/python3.13-controller-units.xml -
2169s =========================== short test summary info ============================
2169s SKIPPED [1] tests/unit/plugins/sub_plugins/cli_parsers/test_ttp_parser.py:18: could not import 'ttp': No module named 'ttp'
2169s FAILED tests/unit/plugins/filter/test_ipaddr.py::TestIpFilter::test_ipaddr_undefined_value
2169s FAILED tests/unit/plugins/filter/test_ipv4.py::TestIp4::test_ipv4_undefined_value
2169s FAILED tests/unit/plugins/filter/test_ipv6.py::TestIp6::test_ipv6_undefined_value
2169s FAILED tests/unit/plugins/filter/test_ipwrap.py::TestIpWrap::test_ipwrap_undefined_value
2169s ============ 4 failed, 379 passed, 1 skipped, 3 warnings in 15.73s =============
2170s 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.5tw1FI/build.bwJ/src/ansible_collections/ansible/utils/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ansible/utils --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/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.
2170s ## return code is 1
2170s
2170s
2170s
2170s ############################################################
2170s ############################################################
2170s #### Running FLAKY tests in ansible_collections/cisco/aci
2170s ############################################################
2170s ############################################################
2170s Unit test controller with Python 3.13
2171s ============================= test session starts ==============================
2171s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
2171s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/aci
2171s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
2171s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
2171s created: 2/2 workers
2171s 2 workers [5 items]
2171s
2171s .FF.. [100%]
2171s =================================== FAILURES ===================================
2171s __________________________ AciRest.test_invalid_input __________________________
2171s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2171s
2171s self =
2171s
2171s def test_invalid_input(self):
2171s self.maxDiff = None
2171s
2171s error = dict(
2171s code="401",
2171s text=("Username or password is incorrect - " "FAILED local authentication"),
2171s )
2171s
2171s imdata = [
2171s {
2171s "error": {
2171s "attributes": {
2171s "code": "401",
2171s "text": ("Username or password is incorrect - " "FAILED local authentication"),
2171s },
2171s },
2171s }
2171s ]
2171s
2171s totalCount = 1
2171s
2171s json_response = '{"totalCount":"1","imdata":[{"error":{"attributes":{"code":"401","text":"Username or password is incorrect - FAILED local authentication"}}}]}' # NOQA
2171s aci.response_json(json_response)
2171s self.assertEqual(aci.error, error)
2171s self.assertEqual(aci.imdata, imdata)
2171s self.assertEqual(aci.totalCount, totalCount)
2171s
2171s # Python 2.7+ is needed for xmljson
2171s if sys.version_info < (2, 7):
2171s return
2171s
2171s xml_response = """
2171s
2171s
2171s """
2171s aci.response_xml(xml_response)
2171s > self.assertEqual(aci.error, error)
2171s 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'}
2171s E - {'code': -1,
2171s E ? ^
2171s E
2171s E + {'code': '401',
2171s E ? ^^^ +
2171s E
2171s E + 'text': 'Username or password is incorrect - FAILED local authentication'}
2171s E - 'text': "Unable to parse output as XML, see 'raw' output. name 'cobra' is not "
2171s E - 'defined'}
2171s
2171s tests/unit/module_utils/test_aci.py:237: AssertionError
2171s ________________________ AciRest.test_invalid_aci_login ________________________
2171s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2171s
2171s self =
2171s
2171s def test_invalid_aci_login(self):
2171s self.maxDiff = None
2171s
2171s error = dict(
2171s code="401",
2171s text=("Username or password is incorrect - " "FAILED local authentication"),
2171s )
2171s
2171s imdata = [
2171s {
2171s "error": {
2171s "attributes": {
2171s "code": "401",
2171s "text": ("Username or password is incorrect - " "FAILED local authentication"),
2171s },
2171s },
2171s }
2171s ]
2171s
2171s totalCount = 1
2171s
2171s json_response = '{"totalCount":"1","imdata":[{"error":{"attributes":{"code":"401","text":"Username or password is incorrect - FAILED local authentication"}}}]}' # NOQA
2171s aci.response_json(json_response)
2171s self.assertEqual(aci.error, error)
2171s self.assertEqual(aci.imdata, imdata)
2171s self.assertEqual(aci.totalCount, totalCount)
2171s
2171s # Python 2.7+ is needed for xmljson
2171s if sys.version_info < (2, 7):
2171s return
2171s
2171s xml_response = """
2171s
2171s
2171s
2171s """
2171s aci.response_xml(xml_response)
2171s > self.assertEqual(aci.error, error)
2171s 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'}
2171s E - {'code': -1,
2171s E ? ^
2171s E
2171s E + {'code': '401',
2171s E ? ^^^ +
2171s E
2171s E + 'text': 'Username or password is incorrect - FAILED local authentication'}
2171s E - 'text': "Unable to parse output as XML, see 'raw' output. name 'cobra' is not "
2171s E - 'defined'}
2171s
2171s tests/unit/module_utils/test_aci.py:89: AssertionError
2171s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/aci/tests/output/junit/python3.13-controller-units.xml -
2171s =========================== short test summary info ============================
2171s FAILED tests/unit/module_utils/test_aci.py::AciRest::test_invalid_input - Ass...
2171s FAILED tests/unit/module_utils/test_aci.py::AciRest::test_invalid_aci_login
2171s ========================= 2 failed, 3 passed in 0.78s ==========================
2171s 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.5tw1FI/build.bwJ/src/ansible_collections/cisco/aci/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/aci --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/aci tests/unit/module_utils/test_aci.py" returned exit status 1.
2171s ## return code is 1
2171s
2171s
2171s
2171s ############################################################
2171s ############################################################
2171s #### Running FLAKY tests in ansible_collections/cisco/dnac
2171s ############################################################
2171s ############################################################
2171s Unit test controller with Python 3.13
2173s ============================= test session starts ==============================
2173s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0
2173s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/dnac
2173s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini
2173s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0
2173s created: 2/2 workers
2173s 2 workers [167 items]
2173s
2180s ..FFF.FFFFFFFF..FFFFF.FFFF.FFFFFFFFFFFFFFFF.FFFFFFFFFFFFFFFFFFFFFFFFFFF. [ 43%]
2187s F.F..F.FFF.FFFFFFFFFF....FFF..FFFFFFF.F.FFF.FFFFFFFF...F....F.FFF.FFFFFF [ 86%]
2188s FFF.FFFFFFFFFFFFFFFFFFF [100%]
2188s ==================================== ERRORS ====================================
2188s ______ ERROR collecting tests/unit/modules/dnac/test_discovery_intent.py _______
2188s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call
2188s result: TResult | None = func()
2188s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect
2188s return list(collector.collect())
2188s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect
2188s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid)
2188s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance
2188s return self.obj("runTest")
2188s E TypeError: TestDnacDiscoveryIntent.__init__() takes 1 positional argument but 2 were given
2188s ______ ERROR collecting tests/unit/modules/dnac/test_discovery_intent.py _______
2188s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call
2188s result: TResult | None = func()
2188s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect
2188s return list(collector.collect())
2188s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect
2188s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid)
2188s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance
2188s return self.obj("runTest")
2188s E TypeError: TestDnacDiscoveryIntent.__init__() takes 1 positional argument but 2 were given
2188s _________ ERROR collecting tests/unit/modules/dnac/test_pnp_intent.py __________
2188s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call
2188s result: TResult | None = func()
2188s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect
2188s return list(collector.collect())
2188s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect
2188s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid)
2188s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance
2188s return self.obj("runTest")
2188s E TypeError: TestDnacPnPIntent.__init__() takes 1 positional argument but 2 were given
2188s _________ ERROR collecting tests/unit/modules/dnac/test_pnp_intent.py __________
2188s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call
2188s result: TResult | None = func()
2188s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect
2188s return list(collector.collect())
2188s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect
2188s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid)
2188s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance
2188s return self.obj("runTest")
2188s E TypeError: TestDnacPnPIntent.__init__() takes 1 positional argument but 2 were given
2188s _________ ERROR collecting tests/unit/modules/dnac/test_site_intent.py _________
2188s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call
2188s result: TResult | None = func()
2188s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect
2188s return list(collector.collect())
2188s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect
2188s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid)
2188s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance
2188s return self.obj("runTest")
2188s E TypeError: TestDnacSiteIntent.__init__() takes 1 positional argument but 2 were given
2188s _________ ERROR collecting tests/unit/modules/dnac/test_site_intent.py _________
2188s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call
2188s result: TResult | None = func()
2188s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect
2188s return list(collector.collect())
2188s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect
2188s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid)
2188s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance
2188s return self.obj("runTest")
2188s E TypeError: TestDnacSiteIntent.__init__() takes 1 positional argument but 2 were given
2188s _________ ERROR collecting tests/unit/modules/dnac/test_swim_intent.py _________
2188s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call
2188s result: TResult | None = func()
2188s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect
2188s return list(collector.collect())
2188s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect
2188s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid)
2188s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance
2188s return self.obj("runTest")
2188s E TypeError: TestDnacSwimIntent.__init__() takes 1 positional argument but 2 were given
2188s _________ ERROR collecting tests/unit/modules/dnac/test_swim_intent.py _________
2188s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call
2188s result: TResult | None = func()
2188s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect
2188s return list(collector.collect())
2188s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect
2188s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid)
2188s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance
2188s return self.obj("runTest")
2188s E TypeError: TestDnacSwimIntent.__init__() takes 1 positional argument but 2 were given
2188s _______ ERROR collecting tests/unit/modules/dnac/test_template_intent.py _______
2188s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call
2188s result: TResult | None = func()
2188s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect
2188s return list(collector.collect())
2188s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect
2188s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid)
2188s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance
2188s return self.obj("runTest")
2188s E TypeError: TestDnacTemplateIntent.__init__() takes 1 positional argument but 2 were given
2188s _______ ERROR collecting tests/unit/modules/dnac/test_template_intent.py _______
2188s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call
2188s result: TResult | None = func()
2188s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect
2188s return list(collector.collect())
2188s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect
2188s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid)
2188s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance
2188s return self.obj("runTest")
2188s E TypeError: TestDnacTemplateIntent.__init__() takes 1 positional argument but 2 were given
2188s =================================== FAILURES ===================================
2188s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_null_sync_status _
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_device_credentials_workflow_manager_null_sync_status(self):
2188s """
2188s Test case for device credential workflow manager when exception occured during sync credential.
2188s
2188s This test case checks the behavior of the device credential workflow manager, when exception occured during sync credential in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_version="2.3.7.6",
2188s dnac_log=True,
2188s state="merged",
2188s config=self.playbook_config_apply
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result['msg'],
2188s "Exception occurred while getting global device credentials sync status: "
2188s )
2188s E AssertionError: 'An exception occurred while retrieving Si[515 chars]rue}' != 'Exception occurred while getting global d[27 chars]us: '
2188s 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}
2188s E + Exception occurred while getting global device credentials sync status:
2188s
2188s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:411: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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}
2188s ------------------------------ Captured log call -------------------------------
2188s 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: .
2188s
2188s 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}
2188s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_negative_config_input _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_accesspoint_workflow_manager_negative_config_input(self):
2188s """
2188s Test case for access point workfollow manager and negative test verify ap update
2188s
2188s This test case checks the behavior of the update access point data in the specified Cisco Catalyst Center.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="merged",
2188s config_verify=True,
2188s dnac_version="2.3.7.6",
2188s config=self.playbook_config_update_some_missing_data
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s self.maxDiff = None
2188s > self.assertEqual(
2188s result.get('msg'),
2188s 'Invalid parameters in playbook config: \'[["Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' +
2188s 'for the radio type xor_radio allowed series 280", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' +
2188s 'for the radio type xor_radio allowed series 380", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' +
2188s 'for the radio type xor_radio allowed series 480", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' +
2188s 'for the radio type xor_radio allowed series 9120", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' +
2188s 'for the radio type xor_radio allowed series 9166", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' +
2188s 'for the radio type xor_radio allowed series IW9167EH", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' +
2188s 'for the radio type xor_radio allowed series IW9165E", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' +
2188s 'for the radio type xor_radio allowed series IW9165DH"], "management_ip_address: Invalid Management IP ' +
2188s 'Address \'204.192.12.201dsd\' in playbook.", \'ap_name:hostname,family,type,mac_address,management_ip_address,' +
2188s 'ap_ethernet_mac_address : The string exceeds the allowed range of max 32 char\', "led_status: Invalid LED Status \'Enableddd\' in ' +
2188s 'playbook.", "ap_mode: Invalid value \'Monitorw\' for ap_mode in playbook. Must be one of: Local, Monitor, Sniffer or ' +
2188s 'Bridge.", "failover_priority: Invalid value \'Lossw\' for failover_priority in playbook. Must be one of: Low, Medium, High or ' +
2188s 'Critical.", "clean_air_si_2.4ghz: Invalid value \'Disableds\' in playbook. Must be ' +
2188s 'either \'Enabled\' or \'Disabled\'.", "clean_air_si_5ghz: Invalid value \'Disableds\' in playbook. Must be ' +
2188s 'either \'Enabled\' or \'Disabled\'.", "clean_air_si_6ghz: Invalid value \'Enableds\' in playbook. Must be ' +
2188s 'either \'Enabled\' or \'Disabled\'.", "primary_ip_address: Invalid primary_ip_address \'{\'address\': \'204.192.4.20dfasd0\'}\' in ' +
2188s 'playbook", "secondary_ip_address: Invalid secondary_ip_address \'{\'address\': \'204.192.4.20dfasd0\'}\' in playbook", "tertiary_ip_address: ' +
2188s 'Invalid tertiary_ip_address \'{\'address\': \'204.192.4.20dfasd0\'}\' in playbook", \'Radio Params cannot be changed when AP mode is in ' +
2188s 'Monitorw.\', "admin_status: Invalid value \'Enabledsds\' for admin_status in playbook. Must be ' +
2188s 'either \'Enabled\' or \'Disabled\'.", "channel_assignment_mode: Invalid value \'any\' for Channel Assignment Mode in playbook. Must be ' +
2188s 'either \'Global\' or \'Custom\'.", "channel_number: Invalid value \'22\' for Channel Number in playbook. Must be one of: ' +
2188s '[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 ' +
2188s 'of: \'20 MHz\', \'40 MHz\', \'80 MHz\', \'160 MHz\', or \'320 MHz\'.", "power_assignment_mode: Invalid ' +
2188s 'value \'any\' for Power assignment mode in ' +
2188s 'playbook. Must be either \'Global\' or \'Custom\'.", \'powerlevel: This configuration is only supported with Client-Serving Radio Role ' +
2188s 'Assignment None \', "radio_role_assignment: Invalid value \'any\' for radio role assignment in playbook. Must be one ' +
2188s 'of: \'Auto\', \'Monitor\' or \'Client-Serving\'.", \'Radio Params cannot be changed when AP mode is in Monitorw.\', "admin_status: ' +
2188s 'Invalid value \'Enabledsds\' for admin_status in playbook. Must be either \'Enabled\' or \'Disabled\'.", "antenna_gain: Invalid \'41\' in ' +
2188s 'playbook, allowed range of min: 0 and max: 40", "channel_assignment_mode: Invalid value \'any\' for Channel Assignment Mode in playbook. ' +
2188s 'Must be either \'Global\' or \'Custom\'.", ' +
2188s '"radio_role_assignment: Invalid value \'Client-Serving\'. Hence, AP mode is not Local. Kindly change the AP mode to Local then ' +
2188s 'change the radio_role_assignment to Auto."]\' '
2188s )
2188s 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]]\' '
2188s 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'."]'
2188s E ? ^^^^^^^^^^ ^^^ ^^^^^^^^^^ ^^^ ^^^^^^^^^^ ^^^ ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ ^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^ ---------------------------------------------------------------------------------------------------
2188s 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."]'
2188s E ? ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^ ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^ +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2188s
2188s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:221: AssertionError
2188s ------------------------------ Captured log call -------------------------------
2188s 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'."]'
2188s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_update_verify _
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s def get_tasks_by_id(self, task_id):
2188s """
2188s Get the tasks of a task ID in Cisco Catalyst Center.
2188s Args:
2188s self (object): An instance of a class that provides access to Cisco Catalyst Center.
2188s task_id (str): The unique identifier of the task for which you want to retrieve details.
2188s Returns:
2188s dict or None: A dictionary status information about the specified task,
2188s or None if the task with the given task_id is not found.
2188s Description:
2188s Call the API 'get_tasks_by_id' to get the status of the task.
2188s Return the details along with the status of the task.
2188s """
2188s # Need to handle exception
2188s task_status = None
2188s try:
2188s > response = self.dnac._exec(
2188s family="task",
2188s function="get_tasks_by_id",
2188s params={"id": task_id}
2188s )
2188s
2188s plugins/module_utils/dnac.py:1662:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s /usr/lib/python3.13/unittest/mock.py:1169: in __call__
2188s return self._mock_call(*args, **kwargs)
2188s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call
2188s return self._execute_mock_call(*args, **kwargs)
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s self = , args = ()
2188s kwargs = {'family': 'task', 'function': 'get_tasks_by_id', 'params': {'id': '0191e542-b3fb-7ac8-ae85-81e461c8b022'}}
2188s effect =
2188s
2188s def _execute_mock_call(self, /, *args, **kwargs):
2188s # separate from _increment_mock_call so that awaited functions are
2188s # executed separately from their call, also AsyncMock overrides this method
2188s
2188s effect = self.side_effect
2188s if effect is not None:
2188s if _is_exception(effect):
2188s raise effect
2188s elif not _callable(effect):
2188s > result = next(effect)
2188s E StopIteration
2188s
2188s /usr/lib/python3.13/unittest/mock.py:1230: StopIteration
2188s
2188s During handling of the above exception, another exception occurred:
2188s
2188s self =
2188s
2188s def test_device_credentials_workflow_manager_update_verify(self):
2188s """
2188s Test case for device credential workflow manager when updating a device credential.
2188s
2188s This test case checks the behavior of the device credential workflow manager when updating a new device credentials in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_version="2.3.7.6",
2188s dnac_log=True,
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_config_creation
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:336:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/device_credential_workflow_manager.py:3277: in main
2188s ccc_credential.get_diff_state_apply[state](config).check_return_status()
2188s plugins/modules/device_credential_workflow_manager.py:2977: in get_diff_merged
2188s self.update_device_credentials().check_return_status()
2188s plugins/modules/device_credential_workflow_manager.py:2684: in update_device_credentials
2188s self.check_tasks_response_status(response, "update_global_credentials_v2").check_return_status()
2188s plugins/module_utils/dnac.py:1730: in check_tasks_response_status
2188s task_details = self.get_tasks_by_id(task_id)
2188s plugins/module_utils/dnac.py:1684: in get_tasks_by_id
2188s self.fail_and_exit(self.msg)
2188s plugins/module_utils/dnac.py:1787: in fail_and_exit
2188s self.check_return_status()
2188s plugins/module_utils/dnac.py:307: in check_return_status
2188s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def fail_json(*args, **kwargs):
2188s kwargs["failed"] = True
2188s > raise AnsibleFailJson(kwargs)
2188s 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}
2188s
2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
2188s ------------------------------ Captured log call -------------------------------
2188s 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: .
2188s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_add_existing_devices _
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_inventory_workflow_manager_playbook_add_existing_devices(self):
2188s """
2188s Test case for add device with full crendentials.
2188s
2188s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.5.3",
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_add_existing_devices
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=False)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "device(s) '70.2.2.2', '80.2.2.2' already present in Cisco Catalyst Center."
2188s )
2188s 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."
2188s E - No changes were made. No inventory actions were performed in Cisco Catalyst Center.
2188s E + device(s) '70.2.2.2', '80.2.2.2' already present in Cisco Catalyst Center.
2188s
2188s tests/unit/modules/dnac/test_inventory_workflow_manager.py:282: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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.'}
2188s ------------------------------ Captured log call -------------------------------
2188s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3566: self.config
2188s
2188s 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'}
2188s
2188s WARNING logger:dnac.py:294 Inventory: verify_diff_merged: 3882: verify starts here verify diff merged
2188s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_provision_device _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_accesspoint_workflow_manager_provision_device(self):
2188s """
2188s Test case for access point workfollow manager provision and update device.
2188s
2188s This test case checks the behavior of the access point workflow when provisioned in the specified Cisco Catalyst Center.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="merged",
2188s dnac_version="2.3.7.6",
2188s config_verify=True,
2188s config=self.playbook_config_complete
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:145:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/accesspoint_workflow_manager.py:4190: in main
2188s ccc_network.get_diff_state_apply[state](config).check_return_status()
2188s plugins/modules/accesspoint_workflow_manager.py:1894: in get_diff_merged
2188s self.validate_ap_config_parameters(ap_config).check_return_status()
2188s plugins/module_utils/dnac.py:307: in check_return_status
2188s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def fail_json(*args, **kwargs):
2188s kwargs["failed"] = True
2188s > raise AnsibleFailJson(kwargs)
2188s 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}
2188s
2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
2188s ------------------------------ Captured log call -------------------------------
2188s 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']'
2188s __ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_add_udf __
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_inventory_workflow_manager_playbook_add_udf(self):
2188s """
2188s Test case for add device with full crendentials.
2188s
2188s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_add_udf
2188s )
2188s )
2188s result = self.execute_module(changed=True, failed=False)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "device(s) '70.2.2.2', '80.2.2.2' already present in Cisco Catalyst Center."
2188s )
2188s 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."
2188s E - Global User Defined Field(UDF) named 'Test123' has been successfully added to the device.
2188s E + device(s) '70.2.2.2', '80.2.2.2' already present in Cisco Catalyst Center.
2188s
2188s tests/unit/modules/dnac/test_inventory_workflow_manager.py:306: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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."}
2188s ------------------------------ Captured log call -------------------------------
2188s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3566: self.config
2188s
2188s 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']}
2188s
2188s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3570: udf_field_list
2188s
2188s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3571: [{'name': 'Test123'}]
2188s
2188s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3584: False
2188s
2188s WARNING logger:dnac.py:294 Inventory: verify_diff_merged: 3882: verify starts here verify diff merged
2188s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_del_provisioned_device_2353 _
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_inventory_workflow_manager_playbook_del_provisioned_device_2353(self):
2188s """
2188s Test case for add device with full crendentials.
2188s
2188s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.5.3",
2188s state="deleted",
2188s config_verify=True,
2188s config=self.playbook_del_provisioned_device_2353
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_inventory_workflow_manager.py:553:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/inventory_workflow_manager.py:4197: in main
2188s ccc_device.get_diff_state_apply[state](config).check_return_status()
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def get_diff_deleted(self, config):
2188s """
2188s Main function to delete devices in Cisco Catalyst Center based on device IP address.
2188s Parameters:
2188s config (dict): The configuration settings for the deletion process.
2188s Returns:
2188s self (object): An instance of a class used for interacting with Cisco Catalyst Center.
2188s Description:
2188s This method compares the provided configuration against the current
2188s devices in the Cisco Catalyst Center and deletes devices based on
2188s their IP addresses. It returns a success status indicating whether
2188s the deletion process was completed successfully.
2188s """
2188s
2188s device_to_delete = self.get_device_ips_from_config_priority()
2188s self.result['msg'] = []
2188s
2188s # Handle Global User Defined Fields (UDF) Deletion
2188s if self.config[0].get('add_user_defined_field'):
2188s return self.delete_user_defined_fields()
2188s
2188s # Loop over devices to delete them
2188s for device_ip in device_to_delete:
2188s if device_ip not in self.have.get("device_in_ccc"):
2188s self.status = "success"
2188s self.result['changed'] = False
2188s self.msg = "Device '{0}' is not present in Cisco Catalyst Center so can't perform delete operation".format(device_ip)
2188s self.no_device_to_delete.append(device_ip)
2188s self.result['msg'].append(self.msg)
2188s self.result['response'] = self.msg
2188s self.log(self.msg, "INFO")
2188s continue
2188s device_ids = self.get_device_ids([device_ip])
2188s > device_id = device_ids[0]
2188s E IndexError: list index out of range
2188s
2188s plugins/modules/inventory_workflow_manager.py:3665: IndexError
2188s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_delete_a_device _
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_inventory_workflow_manager_playbook_delete_a_device(self):
2188s """
2188s Test case for add device with full crendentials.
2188s
2188s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.7.6",
2188s state="deleted",
2188s config_verify=True,
2188s config=self.playbook_delete_a_device
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_inventory_workflow_manager.py:329:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/inventory_workflow_manager.py:4197: in main
2188s ccc_device.get_diff_state_apply[state](config).check_return_status()
2188s plugins/modules/inventory_workflow_manager.py:3668: in get_diff_deleted
2188s self.handle_device_deletion(device_ip)
2188s plugins/modules/inventory_workflow_manager.py:3857: in handle_device_deletion
2188s self.check_tasks_response_status(response, api_name='deleted_device_by_id')
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def check_tasks_response_status(self, response, api_name):
2188s """
2188s Get the task response status from taskId
2188s Args:
2188s self: The current object details.
2188s response (dict): API response.
2188s api_name (str): API name.
2188s Returns:
2188s self (object): The current object with updated desired Fabric Transits information.
2188s Description:
2188s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE'
2188s state or till it reaches the maximum timeout.
2188s Log the task details and return self.
2188s """
2188s
2188s if not response:
2188s self.msg = "response is empty"
2188s self.status = "exited"
2188s return self
2188s
2188s if not isinstance(response, dict):
2188s self.msg = "response is not a dictionary"
2188s self.status = "exited"
2188s return self
2188s
2188s task_info = response.get("response")
2188s if task_info.get("errorcode") is not None:
2188s self.msg = response.get("response").get("detail")
2188s self.status = "failed"
2188s return self
2188s
2188s task_id = task_info.get("taskId")
2188s start_time = time.time()
2188s while True:
2188s elapsed_time = time.time() - start_time
2188s if elapsed_time >= self.max_timeout:
2188s self.msg = "Max timeout of {0} sec has reached for the task id '{1}'. " \
2188s .format(self.max_timeout, task_id) + \
2188s "Exiting the loop due to unexpected API '{0}' status.".format(api_name)
2188s self.log(self.msg, "WARNING")
2188s self.status = "failed"
2188s break
2188s
2188s task_details = self.get_tasks_by_id(task_id)
2188s self.log('Getting tasks details from task ID {0}: {1}'
2188s .format(task_id, task_details), "DEBUG")
2188s
2188s > task_status = task_details.get("status")
2188s E AttributeError: 'list' object has no attribute 'get'
2188s
2188s plugins/module_utils/dnac.py:1734: AttributeError
2188s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_provision_old_version _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_accesspoint_workflow_manager_provision_old_version(self):
2188s """
2188s Test case for access point workfollow manager provision device old version.
2188s
2188s This test case checks the behavior of the access point workflow when provisioned in the specified Cisco Catalyst Center.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="merged",
2188s dnac_version="2.3.5.3",
2188s config_verify=True,
2188s config=self.playbook_config_provision_old_version
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s self.maxDiff = None
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "The provided site name 'Global/Chennai/LTTS/FLOOR1' is either invalid or not present in the Cisco Catalyst Center."
2188s )
2188s E AssertionError: 'AP - LTTS_Test_9124_T2 does not need any update' != "The provided site name 'Global/Chennai/L[94 chars]ter."
2188s E - AP - LTTS_Test_9124_T2 does not need any update
2188s E + The provided site name 'Global/Chennai/LTTS/FLOOR1' is either invalid or not present in the Cisco Catalyst Center.
2188s
2188s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:302: AssertionError
2188s ------------------------------ Captured log call -------------------------------
2188s 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'
2188s
2188s 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.
2188s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_delete_device_udf _
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_inventory_workflow_manager_playbook_delete_device_udf(self):
2188s """
2188s Test case for add device with full crendentials.
2188s
2188s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.7.6",
2188s state="deleted",
2188s config_verify=True,
2188s config=self.playbook_delete_device_udf
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_inventory_workflow_manager.py:478:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/inventory_workflow_manager.py:4197: in main
2188s ccc_device.get_diff_state_apply[state](config).check_return_status()
2188s plugins/modules/inventory_workflow_manager.py:3668: in get_diff_deleted
2188s self.handle_device_deletion(device_ip)
2188s plugins/modules/inventory_workflow_manager.py:3857: in handle_device_deletion
2188s self.check_tasks_response_status(response, api_name='deleted_device_by_id')
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def check_tasks_response_status(self, response, api_name):
2188s """
2188s Get the task response status from taskId
2188s Args:
2188s self: The current object details.
2188s response (dict): API response.
2188s api_name (str): API name.
2188s Returns:
2188s self (object): The current object with updated desired Fabric Transits information.
2188s Description:
2188s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE'
2188s state or till it reaches the maximum timeout.
2188s Log the task details and return self.
2188s """
2188s
2188s if not response:
2188s self.msg = "response is empty"
2188s self.status = "exited"
2188s return self
2188s
2188s if not isinstance(response, dict):
2188s self.msg = "response is not a dictionary"
2188s self.status = "exited"
2188s return self
2188s
2188s task_info = response.get("response")
2188s if task_info.get("errorcode") is not None:
2188s self.msg = response.get("response").get("detail")
2188s self.status = "failed"
2188s return self
2188s
2188s task_id = task_info.get("taskId")
2188s start_time = time.time()
2188s while True:
2188s elapsed_time = time.time() - start_time
2188s if elapsed_time >= self.max_timeout:
2188s self.msg = "Max timeout of {0} sec has reached for the task id '{1}'. " \
2188s .format(self.max_timeout, task_id) + \
2188s "Exiting the loop due to unexpected API '{0}' status.".format(api_name)
2188s self.log(self.msg, "WARNING")
2188s self.status = "failed"
2188s break
2188s
2188s task_details = self.get_tasks_by_id(task_id)
2188s self.log('Getting tasks details from task ID {0}: {1}'
2188s .format(task_id, task_details), "DEBUG")
2188s
2188s > task_status = task_details.get("status")
2188s E AttributeError: 'list' object has no attribute 'get'
2188s
2188s plugins/module_utils/dnac.py:1734: AttributeError
2188s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_delete_provisioned_device _
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_inventory_workflow_manager_playbook_delete_provisioned_device(self):
2188s """
2188s Test case for add device with full crendentials.
2188s
2188s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.7.6",
2188s state="deleted",
2188s config_verify=True,
2188s config=self.playbook_delete_provisioned_device
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_inventory_workflow_manager.py:354:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/inventory_workflow_manager.py:4197: in main
2188s ccc_device.get_diff_state_apply[state](config).check_return_status()
2188s plugins/modules/inventory_workflow_manager.py:3675: in get_diff_deleted
2188s self.delete_provisioned_device_v2(device_ip)
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def delete_provisioned_device_v2(self, device_ip):
2188s """
2188s Deletes provisioned devices for versions > 2.3.5.3.
2188s
2188s Parameters:
2188s device_ip (str): The IP address of the device to be deleted.
2188s
2188s Description:
2188s This method deletes a provisioned device with the specified IP address
2188s for software versions greater than 2.3.5.3. It ensures that the device
2188s is properly removed from the Cisco Catalyst Center, handling any
2188s required validations and API interactions.
2188s """
2188s
2188s device_ids = self.get_device_ids([device_ip])
2188s > device_id = device_ids[0]
2188s E IndexError: list index out of range
2188s
2188s plugins/modules/inventory_workflow_manager.py:3801: IndexError
2188s ------------------------------ Captured log call -------------------------------
2188s ERROR logger:dnac.py:294 Inventory: get_device_ids: 2403: Error while fetching device '204.1.2.4' from Cisco Catalyst Center: 0
2188s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_some_error_data_update_accesspoint _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_accesspoint_workflow_manager_some_error_data_update_accesspoint(self):
2188s """
2188s Test case for access point workfollow manager negative case.
2188s
2188s This test case checks the behavior of the access point workflow when wrong data passed in the specified Cisco Catalyst Center.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="merged",
2188s config_verify=True,
2188s dnac_version="2.3.7.6",
2188s config=self.playbook_config_update_some_error_data
2188s )
2188s )
2188s result = self.execute_module(changed=True, failed=True)
2188s self.maxDiff = None
2188s > self.assertEqual(
2188s result.get('msg'),
2188s 'The provided site name \'Global/USA/New York/BLDNYCGlobal/USA/New York/BLDNYCGlobal/USA/iikk/FLOOR2FLOOR2FLOOR2FLOOR2FLOOR2FLOOR2FLOO\' ' +
2188s 'is either invalid or not present in the Cisco Catalyst Center.'
2188s )
2188s E AssertionError: "An error occurred while executing GET API[211 chars]n: ." != "The provided site name 'Global/USA/New Yo[175 chars]ter."
2188s 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: .
2188s 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.
2188s
2188s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:195: AssertionError
2188s ------------------------------ Captured log call -------------------------------
2188s 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: .
2188s
2188s 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}
2188s
2188s 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.
2188s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_prov_device_2353 _
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_inventory_workflow_manager_playbook_prov_device_2353(self):
2188s """
2188s Test case for add device with full crendentials.
2188s
2188s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.5.3",
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_prov_device_2353
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_inventory_workflow_manager.py:578:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/inventory_workflow_manager.py:4197: in main
2188s ccc_device.get_diff_state_apply[state](config).check_return_status()
2188s plugins/modules/inventory_workflow_manager.py:3613: in get_diff_merged
2188s self.provisioned_wired_device().check_return_status()
2188s plugins/module_utils/dnac.py:307: in check_return_status
2188s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def fail_json(*args, **kwargs):
2188s kwargs["failed"] = True
2188s > raise AnsibleFailJson(kwargs)
2188s 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}
2188s
2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
2188s ------------------------------ Captured log call -------------------------------
2188s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3566: self.config
2188s
2188s 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'}]}
2188s
2188s ERROR logger:dnac.py:294 Inventory: provisioned_wired_device: 1720: Cannot do Provisioning for device 204.1.2.4.
2188s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_provision_device _
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_inventory_workflow_manager_playbook_provision_device(self):
2188s """
2188s Test case for add device with full crendentials.
2188s
2188s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.7.6",
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_provision_device
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_inventory_workflow_manager.py:528:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/inventory_workflow_manager.py:4197: in main
2188s ccc_device.get_diff_state_apply[state](config).check_return_status()
2188s plugins/modules/inventory_workflow_manager.py:3613: in get_diff_merged
2188s self.provisioned_wired_device().check_return_status()
2188s plugins/module_utils/dnac.py:307: in check_return_status
2188s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def fail_json(*args, **kwargs):
2188s kwargs["failed"] = True
2188s > raise AnsibleFailJson(kwargs)
2188s 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}
2188s
2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
2188s ------------------------------ Captured log call -------------------------------
2188s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3566: self.config
2188s
2188s 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'}]}
2188s
2188s WARNING logger:dnac.py:294 Inventory: is_device_assigned_to_site: 1876: Response collected from the API 'get_device_detail' {'response': [], 'version': '1.0'}
2188s
2188s 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'
2188s
2188s 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}
2188s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_provision_failed_for_site _
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_inventory_workflow_manager_playbook_provision_failed_for_site(self):
2188s """
2188s Test case for add device with full crendentials.
2188s
2188s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_provision_failed_for_site
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "Wired Device Provisioning failed for all devices"
2188s )
2188s E AssertionError: "An exception occurred while retrieving S[136 chars]able" != 'Wired Device Provisioning failed for all devices'
2188s 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
2188s E + Wired Device Provisioning failed for all devices
2188s
2188s tests/unit/modules/dnac/test_inventory_workflow_manager.py:380: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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}
2188s ------------------------------ Captured log call -------------------------------
2188s 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
2188s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_task_error_update_accesspoint _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_accesspoint_workflow_manager_task_error_update_accesspoint(self):
2188s """
2188s Test case for access point workfollow manager and negative test verify ap update.
2188s
2188s This test case checks the behavior of the nagative test case of update in the specified Cisco Catalyst Center.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="merged",
2188s config_verify=True,
2188s dnac_version="2.3.7.6",
2188s config=self.playbook_config
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "Unable to get success response, hence AP config not updated"
2188s )
2188s E AssertionError: "An error occurred while executing API ca[74 chars]n: ." != 'Unable to get success response, hence AP[15 chars]ated'
2188s E - An error occurred while executing API call to Function: 'get_task_details_by_id' due to the the following exception: .
2188s E + Unable to get success response, hence AP config not updated
2188s
2188s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:326: AssertionError
2188s ------------------------------ Captured log call -------------------------------
2188s WARNING logger:dnac.py:294 Accesspoint: update_ap_configuration: 3501: No AP name or MAC address found in ap_config.
2188s
2188s 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: .
2188s ___________ TestDnacAccesspointWorkflow.test_invalid_get_site_device ___________
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_invalid_get_site_device(self):
2188s """
2188s Test case for access point workfollow manager get device details from site
2188s
2188s This test case checks the behavior of the access point workflow when check the devices in the site on the specified Cisco Catalyst Center.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="merged",
2188s dnac_version="2.3.7.6",
2188s config=self.get_membership_empty
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "Required param of mac_address,ip_address or hostname is not in playbook config"
2188s )
2188s E AssertionError: 'Successfully validated playbook config pa[1253 chars]}\n]' != 'Required param of mac_address,ip_address [33 chars]nfig'
2188s E Diff is 1423 characters long. Set self.maxDiff to None to see it.
2188s
2188s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:399: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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}
2188s ------------------------------ Captured log call -------------------------------
2188s WARNING logger:dnac.py:294 Accesspoint: get_accesspoint_details: 2688: Required param of mac_address,ip_address or hostname is not in playbook config
2188s
2188s ERROR logger:dnac.py:294 Accesspoint: set_operation_result: 1780: Required param of mac_address,ip_address or hostname is not in playbook config
2188s _____________ TestDnacAccesspointWorkflow.test_invalid_site_exists _____________
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_invalid_site_exists(self):
2188s """
2188s Test case for access point workfollow manager check site exists.
2188s
2188s This test case checks the behavior of the access point workflow when site exist in the specified Cisco Catalyst Center.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="merged",
2188s dnac_version="2.3.7.6",
2188s config=self.playbook_config_provision
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "MAC Address is not Access point"
2188s )
2188s E AssertionError: 'Provided device is not Access Point.' != 'MAC Address is not Access point'
2188s E - Provided device is not Access Point.
2188s E + MAC Address is not Access point
2188s
2188s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:350: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'msg': 'Provided device is not Access Point.', 'response': 'Provided device is not Access Point.', 'failed': True}
2188s ------------------------------ Captured log call -------------------------------
2188s ERROR logger:dnac.py:294 Accesspoint: set_operation_result: 1780: Provided device is not Access Point.
2188s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_update_mgmt_ip _
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_inventory_workflow_manager_playbook_update_mgmt_ip(self):
2188s """
2188s Test case for add device with full crendentials.
2188s
2188s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.7.6",
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_update_mgmt_ip
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_inventory_workflow_manager.py:503:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/inventory_workflow_manager.py:4197: in main
2188s ccc_device.get_diff_state_apply[state](config).check_return_status()
2188s plugins/modules/inventory_workflow_manager.py:3391: in get_diff_merged
2188s csv_reader = self.decrypt_and_read_csv(export_response, password)
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def decrypt_and_read_csv(self, response, password):
2188s """
2188s Parameters:
2188s self (object): An instance of a class used for interacting with Cisco Catalyst Center.
2188s response (requests.Response): HTTP response object containing the encrypted CSV file.
2188s password (str): Password used for decrypting the CSV file.
2188s Returns:
2188s csv.DictReader: A CSV reader object for the decrypted content, allowing iteration over rows as dictionaries.
2188s Description:
2188s Decrypts and reads a CSV-like file from the given HTTP response using the provided password.
2188s """
2188s
2188s > zip_data = BytesIO(response.data)
2188s E AttributeError: 'NoneType' object has no attribute 'data'
2188s
2188s plugins/modules/inventory_workflow_manager.py:1132: AttributeError
2188s _____________ TestDnacAccesspointWorkflow.test_invalid_wlc_device ______________
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_invalid_wlc_device(self):
2188s """
2188s Test case for access point workfollow manager check invalid wireless controller.
2188s
2188s This test case checks the behavior of the access point workflow of invalid wlc specified Cisco Catalyst Center.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="merged",
2188s dnac_version="2.3.7.6",
2188s config=self.playbook_config_provision
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s self.maxDiff = None
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "Wireles controller is not provisioned:"
2188s )
2188s E AssertionError: "An error occurred while executing GET AP[157 chars]n: ." != 'Wireles controller is not provisioned:'
2188s 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: .
2188s E + Wireles controller is not provisioned:
2188s
2188s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:170: AssertionError
2188s ------------------------------ Captured log call -------------------------------
2188s 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: .
2188s
2188s 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}
2188s
2188s ERROR logger:dnac.py:294 Accesspoint: verify_ap_provision: 3010: Wireles controller is not provisioned:
2188s
2188s ERROR logger:dnac.py:294 Accesspoint: set_operation_result: 1780: Wireles controller is not provisioned:
2188s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_already_sync_cred _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_device_credentials_workflow_manager_already_sync_cred(self):
2188s """
2188s Test case for device credential workflow manager when applying a device credential to site devices where sync is already applied.
2188s
2188s This test case checks the behavior of the device credential workflow manager when applying a device credential to site devices
2188s
2188s where sync is already applied in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_version="2.3.7.6",
2188s dnac_log=True,
2188s state="merged",
2188s config=self.playbook_config_apply
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=False)
2188s print(result)
2188s self.assertEqual(
2188s > result['response'][0]['applyCredential']['Applied Credentials']['msg'],
2188s "Provided credentials category is/are already synced."
2188s )
2188s E KeyError: 'applyCredential'
2188s
2188s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:314: KeyError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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': []}
2188s ------------------------------ Captured log call -------------------------------
2188s 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'}
2188s _________ TestNetworkCompliance.test_run_compliance_categories_iplist __________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_run_compliance_categories_iplist(self):
2188s
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_log_level="DEBUG",
2188s dnac_log_append=False,
2188s state="merged",
2188s config=self.test_data.get("playbook_config_run_compliance_categories_iplist")
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:412:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/network_compliance_workflow_manager.py:1670: in main
2188s ccc_network_compliance.get_want(config).check_return_status()
2188s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
2188s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
2188s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list
2188s self.fail_and_exit(self.msg)
2188s plugins/module_utils/dnac.py:1787: in fail_and_exit
2188s self.check_return_status()
2188s plugins/module_utils/dnac.py:307: in check_return_status
2188s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def fail_json(*args, **kwargs):
2188s kwargs["failed"] = True
2188s > raise AnsibleFailJson(kwargs)
2188s 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}
2188s
2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
2188s ----------------------------- Captured stdout call -----------------------------
2188s Inside load_fixtures
2188s Mock for DNACSDK._exec:
2188s Inside load_fixtures
2188s ------------------------------ Captured log call -------------------------------
2188s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
2188s
2188s 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}
2188s
2188s 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}]
2188s
2188s 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}]
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0']
2188s
2188s 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}
2188s
2188s 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
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None'
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
2188s
2188s 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
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_run_compliance_categories: 510: Validating the provided run compliance categories: ['INTENT', 'RUNNING_CONFIG', 'IMAGE', 'PSIRT']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_run_compliance_categories: 518: Validation successful: valid run compliance categorites provided: ['INTENT', 'RUNNING_CONFIG', 'IMAGE', 'PSIRT']
2188s
2188s 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}
2188s
2188s 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
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0
2188s
2188s 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']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']}
2188s
2188s 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']}
2188s
2188s 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'}]}
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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'}
2188s
2188s 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
2188s
2188s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 782: Total number of devices received: 1
2188s
2188s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 783: Number of devices that are Unreachable or APs: 1
2188s
2188s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 784: Config Backup Operation can be performed on the following filtered devices: 0
2188s
2188s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {}
2188s
2188s 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).
2188s
2188s 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).
2188s ____________ TestNetworkCompliance.test_run_compliance_with_iplist _____________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_run_compliance_with_iplist(self):
2188s
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=False,
2188s dnac_log_level="DEBUG",
2188s dnac_log_append=False,
2188s state="merged",
2188s config=self.test_data.get("playbook_config_run_compliance_iplist")
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:349:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/network_compliance_workflow_manager.py:1670: in main
2188s ccc_network_compliance.get_want(config).check_return_status()
2188s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
2188s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
2188s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list
2188s self.fail_and_exit(self.msg)
2188s plugins/module_utils/dnac.py:1787: in fail_and_exit
2188s self.check_return_status()
2188s plugins/module_utils/dnac.py:307: in check_return_status
2188s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def fail_json(*args, **kwargs):
2188s kwargs["failed"] = True
2188s > raise AnsibleFailJson(kwargs)
2188s 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}
2188s
2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
2188s ----------------------------- Captured stdout call -----------------------------
2188s Inside load_fixtures
2188s Mock for DNACSDK._exec:
2188s Inside load_fixtures
2188s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_1 ________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_run_compliance_with_iplist_failure_1(self):
2188s
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=False,
2188s dnac_log_level="DEBUG",
2188s dnac_log_append=False,
2188s state="merged",
2188s config=self.test_data.get("playbook_config_run_compliance_iplist")
2188s )
2188s )
2188s > result = self.execute_module(changed=False, failed=False)
2188s
2188s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:541:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/network_compliance_workflow_manager.py:1670: in main
2188s ccc_network_compliance.get_want(config).check_return_status()
2188s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
2188s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
2188s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list
2188s self.fail_and_exit(self.msg)
2188s plugins/module_utils/dnac.py:1787: in fail_and_exit
2188s self.check_return_status()
2188s plugins/module_utils/dnac.py:307: in check_return_status
2188s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def fail_json(*args, **kwargs):
2188s kwargs["failed"] = True
2188s > raise AnsibleFailJson(kwargs)
2188s 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}
2188s
2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
2188s ----------------------------- Captured stdout call -----------------------------
2188s Inside load_fixtures
2188s Mock for DNACSDK._exec:
2188s Inside load_fixtures
2188s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_2 ________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_run_compliance_with_iplist_failure_2(self):
2188s
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_log_level="DEBUG",
2188s dnac_log_append=False,
2188s state="merged",
2188s config=self.test_data.get("playbook_config_run_compliance_iplist")
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s > self.assertIn(
2188s "An error occurred while retrieving Compliance Details for device:192.168.0.0 using 'compliance_details_of_device' API call",
2188s result.get('msg')
2188s )
2188s 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)."
2188s
2188s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:563: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s Inside load_fixtures
2188s Mock for DNACSDK._exec:
2188s Inside load_fixtures
2188s ------------------------------ Captured log call -------------------------------
2188s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
2188s
2188s 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}
2188s
2188s 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}]
2188s
2188s 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}]
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0']
2188s
2188s 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}
2188s
2188s 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
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None'
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
2188s
2188s 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
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
2188s
2188s 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}
2188s
2188s 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
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0
2188s
2188s 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']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']}
2188s
2188s 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']}
2188s
2188s 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'}]}
2188s
2188s 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
2188s
2188s 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.
2188s
2188s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 788: Error fetching device IDs from Cisco Catalyst Center. Error details: Simulated exception
2188s
2188s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {}
2188s
2188s 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).
2188s
2188s 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).
2188s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_apply_sync _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s def get_tasks_by_id(self, task_id):
2188s """
2188s Get the tasks of a task ID in Cisco Catalyst Center.
2188s Args:
2188s self (object): An instance of a class that provides access to Cisco Catalyst Center.
2188s task_id (str): The unique identifier of the task for which you want to retrieve details.
2188s Returns:
2188s dict or None: A dictionary status information about the specified task,
2188s or None if the task with the given task_id is not found.
2188s Description:
2188s Call the API 'get_tasks_by_id' to get the status of the task.
2188s Return the details along with the status of the task.
2188s """
2188s # Need to handle exception
2188s task_status = None
2188s try:
2188s > response = self.dnac._exec(
2188s family="task",
2188s function="get_tasks_by_id",
2188s params={"id": task_id}
2188s )
2188s
2188s plugins/module_utils/dnac.py:1662:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s /usr/lib/python3.13/unittest/mock.py:1169: in __call__
2188s return self._mock_call(*args, **kwargs)
2188s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call
2188s return self._execute_mock_call(*args, **kwargs)
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s self = , args = ()
2188s kwargs = {'family': 'task', 'function': 'get_tasks_by_id', 'params': {'id': '0191ea00-6acf-7863-83c3-638499ad0aff'}}
2188s effect =
2188s
2188s def _execute_mock_call(self, /, *args, **kwargs):
2188s # separate from _increment_mock_call so that awaited functions are
2188s # executed separately from their call, also AsyncMock overrides this method
2188s
2188s effect = self.side_effect
2188s if effect is not None:
2188s if _is_exception(effect):
2188s raise effect
2188s elif not _callable(effect):
2188s > result = next(effect)
2188s E StopIteration
2188s
2188s /usr/lib/python3.13/unittest/mock.py:1230: StopIteration
2188s
2188s During handling of the above exception, another exception occurred:
2188s
2188s self =
2188s
2188s def test_device_credentials_workflow_manager_apply_sync(self):
2188s """
2188s Test case for device credential workflow manager when applying a device credential to site devices.
2188s
2188s This test case checks the behavior of the device credential workflow manager when applying a device credential
2188s
2188s to site devices in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_version="2.3.7.6",
2188s dnac_log=True,
2188s state="merged",
2188s config=self.playbook_config_apply
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:362:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/device_credential_workflow_manager.py:3277: in main
2188s ccc_credential.get_diff_state_apply[state](config).check_return_status()
2188s plugins/modules/device_credential_workflow_manager.py:2983: in get_diff_merged
2188s self.apply_credentials_to_site().check_return_status()
2188s plugins/modules/device_credential_workflow_manager.py:2936: in apply_credentials_to_site
2188s self.check_tasks_response_status(response,
2188s plugins/module_utils/dnac.py:1730: in check_tasks_response_status
2188s task_details = self.get_tasks_by_id(task_id)
2188s plugins/module_utils/dnac.py:1684: in get_tasks_by_id
2188s self.fail_and_exit(self.msg)
2188s plugins/module_utils/dnac.py:1787: in fail_and_exit
2188s self.check_return_status()
2188s plugins/module_utils/dnac.py:307: in check_return_status
2188s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def fail_json(*args, **kwargs):
2188s kwargs["failed"] = True
2188s > raise AnsibleFailJson(kwargs)
2188s 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}
2188s
2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
2188s ------------------------------ Captured log call -------------------------------
2188s 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: .
2188s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_3 ________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_run_compliance_with_iplist_failure_3(self):
2188s
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_log_level="DEBUG",
2188s dnac_log_append=False,
2188s state="merged",
2188s config=self.test_data.get("playbook_config_run_compliance_iplist")
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s > self.assertEqual(
2188s "An error occurred while retrieving the task_id of the run_compliance operation.",
2188s result.get('msg')
2188s )
2188s E AssertionError: 'An error occurred while retrieving the t[35 chars]ion.' != "No device UUIDs were fetched for network[153 chars]Ps)."
2188s E - An error occurred while retrieving the task_id of the run_compliance operation.
2188s 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).
2188s
2188s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:584: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s Inside load_fixtures
2188s Mock for DNACSDK._exec:
2188s Inside load_fixtures
2188s ------------------------------ Captured log call -------------------------------
2188s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
2188s
2188s 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}
2188s
2188s 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}]
2188s
2188s 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}]
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0']
2188s
2188s 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}
2188s
2188s 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
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None'
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
2188s
2188s 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
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
2188s
2188s 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}
2188s
2188s 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
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0
2188s
2188s 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']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']}
2188s
2188s 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']}
2188s
2188s 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'}]}
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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'}
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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
2188s
2188s 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.
2188s
2188s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 788: Error fetching device IDs from Cisco Catalyst Center. Error details: Simulated exception
2188s
2188s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {}
2188s
2188s 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).
2188s
2188s 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).
2188s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_4 ________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_run_compliance_with_iplist_failure_4(self):
2188s
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_log_level="DEBUG",
2188s dnac_log_append=False,
2188s state="merged",
2188s config=self.test_data.get("playbook_config_run_compliance_iplist")
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s > self.assertIn(
2188s "Error occurred while retrieving 'get_task_by_id' for Task Run Compliance Check with Task id",
2188s result.get('msg')
2188s )
2188s 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)."
2188s
2188s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:605: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s Inside load_fixtures
2188s Mock for DNACSDK._exec:
2188s Inside load_fixtures
2188s ------------------------------ Captured log call -------------------------------
2188s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
2188s
2188s 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}
2188s
2188s 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}]
2188s
2188s 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}]
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0']
2188s
2188s 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}
2188s
2188s 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
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None'
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
2188s
2188s 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
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
2188s
2188s 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}
2188s
2188s 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
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0
2188s
2188s 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']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']}
2188s
2188s 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']}
2188s
2188s 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'}]}
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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'}
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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'}
2188s
2188s 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'
2188s
2188s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {}
2188s
2188s 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).
2188s
2188s 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).
2188s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_5 ________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_run_compliance_with_iplist_failure_5(self):
2188s
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_log_level="DEBUG",
2188s dnac_log_append=False,
2188s state="merged",
2188s config=self.test_data.get("playbook_config_run_compliance_iplist")
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s > self.assertIn(
2188s "An error occurred while retrieving Compliance Details for device:192.168.0.0 using 'compliance_details_of_device' API call",
2188s result.get('msg')
2188s )
2188s 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)."
2188s
2188s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:626: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s Inside load_fixtures
2188s Mock for DNACSDK._exec:
2188s Inside load_fixtures
2188s ------------------------------ Captured log call -------------------------------
2188s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
2188s
2188s 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}
2188s
2188s 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}]
2188s
2188s 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}]
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0']
2188s
2188s 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}
2188s
2188s 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
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None'
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
2188s
2188s 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
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
2188s
2188s 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}
2188s
2188s 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
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0
2188s
2188s 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']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']}
2188s
2188s 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']}
2188s
2188s 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'}]}
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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'}
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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'}
2188s
2188s 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'
2188s
2188s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {}
2188s
2188s 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).
2188s
2188s 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).
2188s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_assign_cred_1 _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s def get_tasks_by_id(self, task_id):
2188s """
2188s Get the tasks of a task ID in Cisco Catalyst Center.
2188s Args:
2188s self (object): An instance of a class that provides access to Cisco Catalyst Center.
2188s task_id (str): The unique identifier of the task for which you want to retrieve details.
2188s Returns:
2188s dict or None: A dictionary status information about the specified task,
2188s or None if the task with the given task_id is not found.
2188s Description:
2188s Call the API 'get_tasks_by_id' to get the status of the task.
2188s Return the details along with the status of the task.
2188s """
2188s # Need to handle exception
2188s task_status = None
2188s try:
2188s > response = self.dnac._exec(
2188s family="task",
2188s function="get_tasks_by_id",
2188s params={"id": task_id}
2188s )
2188s
2188s plugins/module_utils/dnac.py:1662:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s /usr/lib/python3.13/unittest/mock.py:1169: in __call__
2188s return self._mock_call(*args, **kwargs)
2188s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call
2188s return self._execute_mock_call(*args, **kwargs)
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s self = , args = ()
2188s kwargs = {'family': 'task', 'function': 'get_tasks_by_id', 'params': {'id': '0191e691-f5f5-7c89-9cf4-099515272844'}}
2188s effect =
2188s
2188s def _execute_mock_call(self, /, *args, **kwargs):
2188s # separate from _increment_mock_call so that awaited functions are
2188s # executed separately from their call, also AsyncMock overrides this method
2188s
2188s effect = self.side_effect
2188s if effect is not None:
2188s if _is_exception(effect):
2188s raise effect
2188s elif not _callable(effect):
2188s > result = next(effect)
2188s E StopIteration
2188s
2188s /usr/lib/python3.13/unittest/mock.py:1230: StopIteration
2188s
2188s During handling of the above exception, another exception occurred:
2188s
2188s self =
2188s
2188s def test_device_credentials_workflow_manager_assign_cred_1(self):
2188s """
2188s Test case for device credential workflow manager when assigning a device credential to site in dnac_version="2.3.7.6".
2188s
2188s This test case checks the behavior of the device credential workflow manager when assigning a device credential to site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_version="2.3.7.6",
2188s dnac_log=True,
2188s state="merged",
2188s config=self.playbook_config_assign
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:261:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/device_credential_workflow_manager.py:3277: in main
2188s ccc_credential.get_diff_state_apply[state](config).check_return_status()
2188s plugins/modules/device_credential_workflow_manager.py:2980: in get_diff_merged
2188s self.assign_credentials_to_site().check_return_status()
2188s plugins/modules/device_credential_workflow_manager.py:2757: in assign_credentials_to_site
2188s self.check_tasks_response_status(
2188s plugins/module_utils/dnac.py:1730: in check_tasks_response_status
2188s task_details = self.get_tasks_by_id(task_id)
2188s plugins/module_utils/dnac.py:1684: in get_tasks_by_id
2188s self.fail_and_exit(self.msg)
2188s plugins/module_utils/dnac.py:1787: in fail_and_exit
2188s self.check_return_status()
2188s plugins/module_utils/dnac.py:307: in check_return_status
2188s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def fail_json(*args, **kwargs):
2188s kwargs["failed"] = True
2188s > raise AnsibleFailJson(kwargs)
2188s 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}
2188s
2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
2188s ------------------------------ Captured log call -------------------------------
2188s 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: .
2188s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_assign_cred_2 _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_device_credentials_workflow_manager_assign_cred_2(self):
2188s """
2188s Test case for device credential workflow manager when assigning a device credential to site in dnac_version="2.3.5.3".
2188s
2188s This test case checks the behavior of the device credential workflow manager when assigning a device credential to site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_version="2.3.5.3",
2188s dnac_log=True,
2188s state="merged",
2188s config=self.playbook_config_assign
2188s )
2188s )
2188s result = self.execute_module(changed=True, failed=False)
2188s print(result)
2188s self.assertEqual(
2188s > result['response'][0]['assignCredential']['Assign Credentials']['msg'],
2188s "Device Credential Assigned to a site is Successfully"
2188s )
2188s E KeyError: 'assignCredential'
2188s
2188s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:288: KeyError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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': []}
2188s __________ TestNetworkCompliance.test_run_compliance_with_iplist_site __________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_run_compliance_with_iplist_site(self):
2188s
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_log_level="DEBUG",
2188s dnac_log_append=False,
2188s state="merged",
2188s config=self.test_data.get("playbook_config_run_compliance_iplist_site")
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:391:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/network_compliance_workflow_manager.py:1670: in main
2188s ccc_network_compliance.get_want(config).check_return_status()
2188s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
2188s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
2188s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list
2188s self.fail_and_exit(self.msg)
2188s plugins/module_utils/dnac.py:1787: in fail_and_exit
2188s self.check_return_status()
2188s plugins/module_utils/dnac.py:307: in check_return_status
2188s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def fail_json(*args, **kwargs):
2188s kwargs["failed"] = True
2188s > raise AnsibleFailJson(kwargs)
2188s 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}
2188s
2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
2188s ----------------------------- Captured stdout call -----------------------------
2188s Inside load_fixtures
2188s Mock for DNACSDK._exec:
2188s Inside load_fixtures
2188s ------------------------------ Captured log call -------------------------------
2188s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
2188s
2188s 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}
2188s
2188s 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}]
2188s
2188s 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}]
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0']
2188s
2188s 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}
2188s
2188s 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
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'Global'
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
2188s
2188s 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
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
2188s
2188s 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}
2188s
2188s 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
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0
2188s
2188s 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']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']}
2188s
2188s 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']}
2188s
2188s 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'}]}
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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'}]}
2188s
2188s 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
2188s
2188s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 782: Total number of devices received: 1
2188s
2188s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 783: Number of devices that are Unreachable or APs: 1
2188s
2188s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 784: Config Backup Operation can be performed on the following filtered devices: 0
2188s
2188s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {}
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 823: Retrieving device IDs for site: Global
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 809: Initiating retrieval of site details for site name: 'Global'.
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 813: Using 'get_site' API for Catalyst Center version: '2233'.
2188s
2188s 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'}.
2188s
2188s 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'}]}
2188s
2188s 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'}]}
2188s
2188s 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'.
2188s
2188s 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'.
2188s
2188s 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'.
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 664: Using 'get_membership' API for Catalyst Center version: '2233'.
2188s
2188s 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'}.
2188s
2188s 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'}
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 668: Received response from 'get_membership'. Extracting device IDs.
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 674: Retrieved device IDs from membership for site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': []
2188s
2188s 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'.
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 721: Device IDs retrieved from site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': []
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 763: Device details retrieved for site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b': []
2188s
2188s INFO logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 792: No reachable devices found at Site: 92ffce88-9fce-41d2-ae69-086fa74e9c4b
2188s
2188s 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).
2188s
2188s 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).
2188s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_creation _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_device_credentials_workflow_manager_creation(self):
2188s """
2188s Test case for device credential workflow manager when creating a device credential.
2188s
2188s This test case checks the behavior of the device credential workflow manager when creating a new device credentials in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="merged",
2188s config=self.playbook_config_creation
2188s )
2188s )
2188s result = self.execute_module(changed=True, failed=False)
2188s print(result)
2188s self.assertEqual(
2188s > result['response'][0]['globalCredential']['Creation']['msg'],
2188s "Global Credential Created Successfully"
2188s )
2188s E KeyError: 'globalCredential'
2188s
2188s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:216: KeyError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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': []}
2188s _____________ TestNetworkCompliance.test_run_compliance_with_site ______________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_run_compliance_with_site(self):
2188s
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=False,
2188s dnac_log_level="DEBUG",
2188s dnac_log_append=False,
2188s state="merged",
2188s config=self.test_data.get("playbook_config_run_compliance_site")
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:370:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/network_compliance_workflow_manager.py:1670: in main
2188s ccc_network_compliance.get_want(config).check_return_status()
2188s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
2188s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
2188s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list
2188s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name)
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def get_reachable_devices_from_site(self, site_name):
2188s """
2188s Retrieves a mapping of management IP addresses to instance IDs for reachable devices from a specified site.
2188s Args:
2188s site_id (str): The ID of the site from which to retrieve device details.
2188s Returns:
2188s tuple: A tuple containing:
2188s - dict: A mapping of management IP addresses to instance IDs for reachable devices.
2188s - list: A list of management IP addresses of skipped devices.
2188s """
2188s mgmt_ip_to_instance_id_map = {}
2188s skipped_devices_list = []
2188s
2188s (site_exists, site_id) = self.get_site_id(site_name)
2188s if not site_exists:
2188s self.msg = "Site '{0}' does not exist in the Cisco Catalyst Center, cannot proceed with device(s) retrieval.".format(site_name)
2188s self.fail_and_exit(self.msg)
2188s
2188s self.log("Initiating retrieval of device details for site ID: '{0}'.".format(site_id), "INFO")
2188s
2188s # Retrieve the list of device details from the specified site
2188s device_details_list = self.get_device_details_from_site(site_name, site_id)
2188s self.log("Device details retrieved for site ID: '{0}': {1}".format(site_id, device_details_list), "DEBUG")
2188s
2188s # Iterate through each device's details
2188s for device_info in device_details_list:
2188s > management_ip = device_info.get("managementIpAddress")
2188s E AttributeError: 'list' object has no attribute 'get'
2188s
2188s plugins/module_utils/dnac.py:767: AttributeError
2188s ----------------------------- Captured stdout call -----------------------------
2188s Inside load_fixtures
2188s Mock for DNACSDK._exec:
2188s Inside load_fixtures
2188s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_1 _________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_run_compliance_with_site_failure_1(self):
2188s
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=False,
2188s dnac_log_level="DEBUG",
2188s dnac_log_append=False,
2188s state="merged",
2188s config=self.test_data.get("playbook_config_run_compliance_site")
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s > self.assertIn(
2188s "An error occurred while retrieving site details for Site 'Global'. Please verify that the site exists.",
2188s result.get('msg')
2188s )
2188s 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}'
2188s
2188s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:647: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s Inside load_fixtures
2188s Mock for DNACSDK._exec:
2188s Inside load_fixtures
2188s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_deletion _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_device_credentials_workflow_manager_deletion(self):
2188s """
2188s Test case for device credential workflow manager when deleting a device credential.
2188s
2188s This test case checks the behavior of the device credential workflow manager when deleting a device credentials in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="deleted",
2188s config_verify=True,
2188s config=self.playbook_config_deletion
2188s )
2188s )
2188s result = self.execute_module(changed=True, failed=False)
2188s print(result)
2188s self.assertEqual(
2188s > result['response'][0]['globalCredential']['Deletion']['msg'],
2188s "Global Device Credentials Deleted Successfully"
2188s )
2188s E KeyError: 'globalCredential'
2188s
2188s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:240: KeyError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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': []}
2188s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_2 _________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s def execute_get_request(self, api_family, api_function, api_parameters):
2188s """
2188s Makes a GET API call to the specified function within a given family and returns the response.
2188s Args:
2188s api_family (str): The family of the API to call.
2188s api_function (str): The specific function of the API to call.
2188s api_parameters (dict): Parameters to pass to the API call.
2188s Returns:
2188s dict or None: The response from the API call if successful, otherwise None.
2188s Logs detailed information about the API call, including responses and errors.
2188s """
2188s self.log(
2188s "Initiating GET API call for Function: {0} from Family: {1} with Parameters: {2}.".format(
2188s api_function, api_family, api_parameters
2188s ),
2188s "DEBUG"
2188s )
2188s try:
2188s # Execute the API call
2188s > response = self.dnac._exec(
2188s family=api_family,
2188s function=api_function,
2188s op_modifies=False,
2188s params=api_parameters,
2188s )
2188s
2188s plugins/module_utils/dnac.py:1840:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s /usr/lib/python3.13/unittest/mock.py:1169: in __call__
2188s return self._mock_call(*args, **kwargs)
2188s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call
2188s return self._execute_mock_call(*args, **kwargs)
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s self = , args = ()
2188s kwargs = {'family': 'sites', 'function': 'get_membership', 'op_modifies': False, 'params': {'site_id': '3cf15665-7b7b-4b29-82a9-75b8d094b602'}}
2188s effect =
2188s result = Exception('Simulated exception')
2188s
2188s def _execute_mock_call(self, /, *args, **kwargs):
2188s # separate from _increment_mock_call so that awaited functions are
2188s # executed separately from their call, also AsyncMock overrides this method
2188s
2188s effect = self.side_effect
2188s if effect is not None:
2188s if _is_exception(effect):
2188s raise effect
2188s elif not _callable(effect):
2188s result = next(effect)
2188s if _is_exception(result):
2188s > raise result
2188s E Exception: Simulated exception
2188s
2188s /usr/lib/python3.13/unittest/mock.py:1232: Exception
2188s
2188s During handling of the above exception, another exception occurred:
2188s
2188s self =
2188s
2188s def test_run_compliance_with_site_failure_2(self):
2188s
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=False,
2188s dnac_log_level="DEBUG",
2188s dnac_log_append=False,
2188s state="merged",
2188s config=self.test_data.get("playbook_config_run_compliance_site")
2188s )
2188s )
2188s > result = self.execute_module(changed=False, failed=False)
2188s
2188s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:667:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/network_compliance_workflow_manager.py:1670: in main
2188s ccc_network_compliance.get_want(config).check_return_status()
2188s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
2188s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
2188s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list
2188s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name)
2188s plugins/module_utils/dnac.py:762: in get_reachable_devices_from_site
2188s device_details_list = self.get_device_details_from_site(site_name, site_id)
2188s plugins/module_utils/dnac.py:716: in get_device_details_from_site
2188s api_response, device_ids = self.get_device_ids_from_site(site_name, site_id)
2188s plugins/module_utils/dnac.py:666: in get_device_ids_from_site
2188s api_response = self.execute_get_request("sites", "get_membership", get_membership_params)
2188s plugins/module_utils/dnac.py:1882: in execute_get_request
2188s self.fail_and_exit(self.msg)
2188s plugins/module_utils/dnac.py:1787: in fail_and_exit
2188s self.check_return_status()
2188s plugins/module_utils/dnac.py:307: in check_return_status
2188s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def fail_json(*args, **kwargs):
2188s kwargs["failed"] = True
2188s > raise AnsibleFailJson(kwargs)
2188s 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}
2188s
2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
2188s ----------------------------- Captured stdout call -----------------------------
2188s Inside load_fixtures
2188s Mock for DNACSDK._exec:
2188s Inside load_fixtures
2188s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_invalid_site _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_device_credentials_workflow_manager_invalid_site(self):
2188s """
2188s Test case for device credential workflow manager when provided site is invalid.
2188s
2188s This test case checks the behavior of the device credential workflow manager, when provided site is invalid in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_version="2.3.7.6",
2188s dnac_log=True,
2188s state="merged",
2188s config=self.playbook_config_assign
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result['msg'],
2188s "The site_name 'Global/Vietnam/halong/Hanoi' is invalid in 'assign_credentials_to_site'"
2188s )
2188s E AssertionError: 'An exception occurred while retrieving S[516 chars]rue}' != "The site_name 'Global/Vietnam/halong/Han[42 chars]ite'"
2188s 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}
2188s E + The site_name 'Global/Vietnam/halong/Hanoi' is invalid in 'assign_credentials_to_site'
2188s
2188s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:435: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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}
2188s ------------------------------ Captured log call -------------------------------
2188s 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: .
2188s
2188s 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}
2188s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_3 _________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_run_compliance_with_site_failure_3(self):
2188s
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=False,
2188s dnac_log_level="DEBUG",
2188s dnac_log_append=False,
2188s state="merged",
2188s config=self.test_data.get("playbook_config_run_compliance_site")
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s > self.assertIn(
2188s "An error occurred while retrieving Compliance Details for device:192.168.0.3 using 'compliance_details_of_device' API call",
2188s result.get('msg')
2188s )
2188s 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."
2188s
2188s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:689: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s Inside load_fixtures
2188s Mock for DNACSDK._exec:
2188s Inside load_fixtures
2188s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_4 _________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_run_compliance_with_site_failure_4(self):
2188s
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=False,
2188s dnac_log_level="DEBUG",
2188s dnac_log_append=False,
2188s state="merged",
2188s config=self.test_data.get("playbook_config_run_compliance_site")
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s > self.assertIn(
2188s "An error occurred while retrieving the task_id of the run_compliance operation.",
2188s result.get('msg')
2188s )
2188s 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."
2188s
2188s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:710: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s Inside load_fixtures
2188s Mock for DNACSDK._exec:
2188s Inside load_fixtures
2188s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_invalid_site_response _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_device_credentials_workflow_manager_invalid_site_response(self):
2188s """
2188s Test case for device credential workflow manager when provided site response is invalid.
2188s
2188s This test case checks the behavior of the device credential workflow manager when provided site response is invalid in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="merged",
2188s config=self.playbook_config_apply
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result['msg'],
2188s "Exception occurred while getting global device credentials: "
2188s )
2188s E AssertionError: "An exception occurred while retrieving S[137 chars]able" != 'Exception occurred while getting global [16 chars]ls: '
2188s 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
2188s E + Exception occurred while getting global device credentials:
2188s
2188s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:481: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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}
2188s ------------------------------ Captured log call -------------------------------
2188s 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
2188s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_5 _________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_run_compliance_with_site_failure_5(self):
2188s
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=False,
2188s dnac_log_level="DEBUG",
2188s dnac_log_append=False,
2188s state="merged",
2188s config=self.test_data.get("playbook_config_run_compliance_site")
2188s )
2188s )
2188s > result = self.execute_module(changed=False, failed=True)
2188s
2188s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:730:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:107: in execute_module
2188s result = self.failed()
2188s tests/unit/modules/dnac/dnac_module.py:125: in failed
2188s self.module.main()
2188s plugins/modules/network_compliance_workflow_manager.py:1670: in main
2188s ccc_network_compliance.get_want(config).check_return_status()
2188s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
2188s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
2188s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list
2188s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name)
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def get_reachable_devices_from_site(self, site_name):
2188s """
2188s Retrieves a mapping of management IP addresses to instance IDs for reachable devices from a specified site.
2188s Args:
2188s site_id (str): The ID of the site from which to retrieve device details.
2188s Returns:
2188s tuple: A tuple containing:
2188s - dict: A mapping of management IP addresses to instance IDs for reachable devices.
2188s - list: A list of management IP addresses of skipped devices.
2188s """
2188s mgmt_ip_to_instance_id_map = {}
2188s skipped_devices_list = []
2188s
2188s (site_exists, site_id) = self.get_site_id(site_name)
2188s if not site_exists:
2188s self.msg = "Site '{0}' does not exist in the Cisco Catalyst Center, cannot proceed with device(s) retrieval.".format(site_name)
2188s self.fail_and_exit(self.msg)
2188s
2188s self.log("Initiating retrieval of device details for site ID: '{0}'.".format(site_id), "INFO")
2188s
2188s # Retrieve the list of device details from the specified site
2188s device_details_list = self.get_device_details_from_site(site_name, site_id)
2188s self.log("Device details retrieved for site ID: '{0}': {1}".format(site_id, device_details_list), "DEBUG")
2188s
2188s # Iterate through each device's details
2188s for device_info in device_details_list:
2188s > management_ip = device_info.get("managementIpAddress")
2188s E AttributeError: 'list' object has no attribute 'get'
2188s
2188s plugins/module_utils/dnac.py:767: AttributeError
2188s ----------------------------- Captured stdout call -----------------------------
2188s Inside load_fixtures
2188s Mock for DNACSDK._exec:
2188s Inside load_fixtures
2188s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_invalid_site_response_2 _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_device_credentials_workflow_manager_invalid_site_response_2(self):
2188s """
2188s Test case for device credential workflow manager when provided site response is invalid.
2188s
2188s This test case checks the behavior of the device credential workflow manager when provided site response is invalid in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="merged",
2188s config=self.playbook_config_apply
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result['msg'],
2188s "Exception occurred while getting global device credentials: "
2188s )
2188s E AssertionError: "An exception occurred while retrieving S[278 chars]rue}" != 'Exception occurred while getting global [16 chars]ls: '
2188s 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}
2188s E + Exception occurred while getting global device credentials:
2188s
2188s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:504: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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}
2188s ------------------------------ Captured log call -------------------------------
2188s WARNING logger:dnac.py:294 DeviceCredential: execute_get_request: 1857: No response received from GET API call to Function: 'get_site' from Family: 'sites'.
2188s
2188s ERROR logger:dnac.py:294 DeviceCredential: set_operation_result: 1780: No site details retrieved for site name: Global/Vietnam/halong/Hanoi
2188s
2188s 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}
2188s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_6 _________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_run_compliance_with_site_failure_6(self):
2188s
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=False,
2188s dnac_log_level="DEBUG",
2188s dnac_log_append=False,
2188s state="merged",
2188s config=self.test_data.get("playbook_config_run_compliance_site")
2188s )
2188s )
2188s > result = self.execute_module(changed=False, failed=True)
2188s
2188s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:751:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:107: in execute_module
2188s result = self.failed()
2188s tests/unit/modules/dnac/dnac_module.py:125: in failed
2188s self.module.main()
2188s plugins/modules/network_compliance_workflow_manager.py:1670: in main
2188s ccc_network_compliance.get_want(config).check_return_status()
2188s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
2188s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
2188s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list
2188s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name)
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def get_reachable_devices_from_site(self, site_name):
2188s """
2188s Retrieves a mapping of management IP addresses to instance IDs for reachable devices from a specified site.
2188s Args:
2188s site_id (str): The ID of the site from which to retrieve device details.
2188s Returns:
2188s tuple: A tuple containing:
2188s - dict: A mapping of management IP addresses to instance IDs for reachable devices.
2188s - list: A list of management IP addresses of skipped devices.
2188s """
2188s mgmt_ip_to_instance_id_map = {}
2188s skipped_devices_list = []
2188s
2188s (site_exists, site_id) = self.get_site_id(site_name)
2188s if not site_exists:
2188s self.msg = "Site '{0}' does not exist in the Cisco Catalyst Center, cannot proceed with device(s) retrieval.".format(site_name)
2188s self.fail_and_exit(self.msg)
2188s
2188s self.log("Initiating retrieval of device details for site ID: '{0}'.".format(site_id), "INFO")
2188s
2188s # Retrieve the list of device details from the specified site
2188s device_details_list = self.get_device_details_from_site(site_name, site_id)
2188s self.log("Device details retrieved for site ID: '{0}': {1}".format(site_id, device_details_list), "DEBUG")
2188s
2188s # Iterate through each device's details
2188s for device_info in device_details_list:
2188s > management_ip = device_info.get("managementIpAddress")
2188s E AttributeError: 'list' object has no attribute 'get'
2188s
2188s plugins/module_utils/dnac.py:767: AttributeError
2188s ----------------------------- Captured stdout call -----------------------------
2188s Inside load_fixtures
2188s Mock for DNACSDK._exec:
2188s Inside load_fixtures
2188s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_aaa_get _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Network_settings_workflow_manager_network_exception_aaa_get(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.7.6",
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_config_network
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "Exception occurred while getting AAA settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
2188s )
2188s E AssertionError: "Exception occurred while getting AAA set[72 chars]7): " != 'Exception occurred while getting AAA set[49 chars]a7: '
2188s E - Exception occurred while getting AAA settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7):
2188s E ? ---------------------- -
2188s E + Exception occurred while getting AAA settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
2188s
2188s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:879: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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}
2188s ------------------------------ Captured log call -------------------------------
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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):
2188s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_banner_get _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Network_settings_workflow_manager_network_exception_banner_get(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.7.6",
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_config_network
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "Exception occurred while getting banner settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
2188s )
2188s E AssertionError: "Exception occurred while getting banner [75 chars]7): " != 'Exception occurred while getting banner [52 chars]a7: '
2188s E - Exception occurred while getting banner settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7):
2188s E ? ---------------------- -
2188s E + Exception occurred while getting banner settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
2188s
2188s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:854: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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}
2188s ------------------------------ Captured log call -------------------------------
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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):
2188s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_dhcp_gett _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Network_settings_workflow_manager_network_exception_dhcp_gett(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.7.6",
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_config_network
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "Exception occurred while getting DHCP settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
2188s )
2188s E AssertionError: "Exception occurred while getting DHCP se[73 chars]7): " != 'Exception occurred while getting DHCP se[50 chars]a7: '
2188s E - Exception occurred while getting DHCP settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7):
2188s E ? ---------------------- -
2188s E + Exception occurred while getting DHCP settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
2188s
2188s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:829: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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}
2188s ------------------------------ Captured log call -------------------------------
2188s 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):
2188s _______________ TestNetworkCompliance.test_scale_run_compliance ________________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_scale_run_compliance(self):
2188s
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_log_level="DEBUG",
2188s dnac_log_append=False,
2188s state="merged",
2188s config=self.test_data.get("playbook_config_run_compliance_scale_iplist")
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:433:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/network_compliance_workflow_manager.py:1670: in main
2188s ccc_network_compliance.get_want(config).check_return_status()
2188s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
2188s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
2188s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list
2188s self.fail_and_exit(self.msg)
2188s plugins/module_utils/dnac.py:1787: in fail_and_exit
2188s self.check_return_status()
2188s plugins/module_utils/dnac.py:307: in check_return_status
2188s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def fail_json(*args, **kwargs):
2188s kwargs["failed"] = True
2188s > raise AnsibleFailJson(kwargs)
2188s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleFailJson: {'msg': "No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0', '192.168.0.1'] or site name: None. This could be due to Unreachable devices or access points (APs).", 'response': "No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0', '192.168.0.1'] or site name: None. This could be due to Unreachable devices or access points (APs).", 'failed': True}
2188s
2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
2188s ----------------------------- Captured stdout call -----------------------------
2188s Inside load_fixtures
2188s Mock for DNACSDK._exec:
2188s Inside load_fixtures
2188s ------------------------------ Captured log call -------------------------------
2188s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
2188s
2188s 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}
2188s
2188s 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}]
2188s
2188s 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}]
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0', '192.168.0.1']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0', '192.168.0.1']
2188s
2188s 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}
2188s
2188s 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
2188s
2188s 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'
2188s
2188s 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']
2188s
2188s 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
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
2188s
2188s 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
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
2188s
2188s 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}
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 809: Entering get_device_id_list with args: ip_address_list=['192.168.0.0', '192.168.0.1'], site_name=None
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0, 192.168.0.1
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 677: Entering get_device_list_params method with ip_address_list: ['192.168.0.0', '192.168.0.1']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0', '192.168.0.1']}
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 697: Entering 'get_device_ids_from_ip' method with parameters: {'management_ip_address': ['192.168.0.0', '192.168.0.1']}
2188s
2188s 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'}]}
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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'}
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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'}
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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'}
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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'}
2188s
2188s 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'
2188s
2188s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {}
2188s
2188s ERROR logger:dnac.py:294 NetworkCompliance: set_operation_result: 1780: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0', '192.168.0.1'] or site name: None. This could be due to Unreachable devices or access points (APs).
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: check_return_status: 302: Line No: 1787 status: failed, msg: No device UUIDs were fetched for network compliance operations with the provided IP address(es): ['192.168.0.0', '192.168.0.1'] or site name: None. This could be due to Unreachable devices or access points (APs).
2188s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_dns_get _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Network_settings_workflow_manager_network_exception_dns_get(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.7.6",
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_config_network
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "Exception occurred while getting DNS settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
2188s )
2188s E AssertionError: "Exception occurred while getting DNS set[72 chars]7): " != 'Exception occurred while getting DNS set[49 chars]a7: '
2188s E - Exception occurred while getting DNS settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7):
2188s E ? ---------------------- -
2188s E + Exception occurred while getting DNS settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
2188s
2188s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:754: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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}
2188s ------------------------------ Captured log call -------------------------------
2188s 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):
2188s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_ntp_get _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Network_settings_workflow_manager_network_exception_ntp_get(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.7.6",
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_config_network
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "Exception occurred while getting NTP server settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
2188s )
2188s E AssertionError: "Exception occurred while getting NTP ser[79 chars]7): " != 'Exception occurred while getting NTP ser[56 chars]a7: '
2188s E - Exception occurred while getting NTP server settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7):
2188s E ? ---------------------- -
2188s E + Exception occurred while getting NTP server settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
2188s
2188s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:779: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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}
2188s ------------------------------ Captured log call -------------------------------
2188s 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)
2188s
2188s 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):
2188s _____________ TestNetworkCompliance.test_sync_device_config_iplist _____________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_sync_device_config_iplist(self):
2188s
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_log_level="DEBUG",
2188s dnac_log_append=False,
2188s state="merged",
2188s config=self.test_data.get("playbook_config_sync_device_config_iplist")
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:455:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/network_compliance_workflow_manager.py:1670: in main
2188s ccc_network_compliance.get_want(config).check_return_status()
2188s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
2188s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
2188s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list
2188s self.fail_and_exit(self.msg)
2188s plugins/module_utils/dnac.py:1787: in fail_and_exit
2188s self.check_return_status()
2188s plugins/module_utils/dnac.py:307: in check_return_status
2188s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def fail_json(*args, **kwargs):
2188s kwargs["failed"] = True
2188s > raise AnsibleFailJson(kwargs)
2188s 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}
2188s
2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
2188s ----------------------------- Captured stdout call -----------------------------
2188s Inside load_fixtures
2188s Mock for DNACSDK._exec:
2188s Inside load_fixtures
2188s ------------------------------ Captured log call -------------------------------
2188s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
2188s
2188s 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}
2188s
2188s 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}]
2188s
2188s 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}]
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0']
2188s
2188s 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}
2188s
2188s 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
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None'
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
2188s
2188s 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
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
2188s
2188s 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}
2188s
2188s 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
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0
2188s
2188s 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']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']}
2188s
2188s 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']}
2188s
2188s 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'}]}
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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'}
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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'}
2188s
2188s 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'
2188s
2188s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {}
2188s
2188s 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).
2188s
2188s 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).
2188s ________ TestNetworkCompliance.test_sync_device_config_iplist_failure_1 ________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_sync_device_config_iplist_failure_1(self):
2188s
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_log_level="DEBUG",
2188s dnac_log_append=False,
2188s state="merged",
2188s config=self.test_data.get("playbook_config_sync_device_config_iplist")
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s > self.assertIn(
2188s "Error occurred while synchronizing device configuration for parameters - {'deviceId':",
2188s result.get('msg')
2188s )
2188s 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)."
2188s
2188s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:773: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s Inside load_fixtures
2188s Mock for DNACSDK._exec:
2188s Inside load_fixtures
2188s ------------------------------ Captured log call -------------------------------
2188s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
2188s
2188s 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}
2188s
2188s 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}]
2188s
2188s 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}]
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0']
2188s
2188s 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}
2188s
2188s 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
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None'
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
2188s
2188s 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
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
2188s
2188s 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}
2188s
2188s 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
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0
2188s
2188s 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']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']}
2188s
2188s 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']}
2188s
2188s 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'}]}
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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'}
2188s
2188s 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
2188s
2188s 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.
2188s
2188s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 788: Error fetching device IDs from Cisco Catalyst Center. Error details: Simulated exception
2188s
2188s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {}
2188s
2188s 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).
2188s
2188s 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).
2188s ________ TestNetworkCompliance.test_sync_device_config_iplist_failure_2 ________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_sync_device_config_iplist_failure_2(self):
2188s
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_log_level="DEBUG",
2188s dnac_log_append=False,
2188s state="merged",
2188s config=self.test_data.get("playbook_config_sync_device_config_iplist")
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s > self.assertIn(
2188s "Error occurred while retrieving 'get_task_tree' for Task Sync Device Configuration with task id",
2188s result.get('msg')
2188s )
2188s 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)."
2188s
2188s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:794: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s Inside load_fixtures
2188s Mock for DNACSDK._exec:
2188s Inside load_fixtures
2188s ------------------------------ Captured log call -------------------------------
2188s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
2188s
2188s 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}
2188s
2188s 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}]
2188s
2188s 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}]
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0']
2188s
2188s 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}
2188s
2188s 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
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None'
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
2188s
2188s 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
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
2188s
2188s 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}
2188s
2188s 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
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0
2188s
2188s 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']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']}
2188s
2188s 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']}
2188s
2188s 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'}]}
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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'}
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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'}
2188s
2188s 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'
2188s
2188s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {}
2188s
2188s 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).
2188s
2188s 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).
2188s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_site_not_exist _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Network_settings_workflow_manager_network_exception_site_not_exist(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.7.6",
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_config_network
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "An exception occurred: Site 'Global/Vietnam' does not exist in the Cisco Catalyst Center."
2188s )
2188s E AssertionError: "An error occurred while executing API call to[62 chars]n: ." != "An exception occurred: Site 'Global/Vietnam' [40 chars]ter."
2188s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .
2188s E + An exception occurred: Site 'Global/Vietnam' does not exist in the Cisco Catalyst Center.
2188s
2188s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:704: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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}
2188s ------------------------------ Captured log call -------------------------------
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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: .
2188s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_telemetry_get _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Network_settings_workflow_manager_network_exception_telemetry_get(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.7.6",
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_config_network
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "Exception occurred while getting telemetry settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
2188s )
2188s E AssertionError: "Exception occurred while getting telemet[78 chars]7): " != 'Exception occurred while getting telemet[55 chars]a7: '
2188s E - Exception occurred while getting telemetry settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7):
2188s E ? ---------------------- -
2188s E + Exception occurred while getting telemetry settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
2188s
2188s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:729: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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}
2188s ------------------------------ Captured log call -------------------------------
2188s 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)
2188s
2188s 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):
2188s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_timezone_get _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Network_settings_workflow_manager_network_exception_timezone_get(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.7.6",
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_config_network
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "Exception occurred while getting time zone settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
2188s )
2188s E AssertionError: "Exception occurred while getting time zo[78 chars]7): " != 'Exception occurred while getting time zo[55 chars]a7: '
2188s E - Exception occurred while getting time zone settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7):
2188s E ? ---------------------- -
2188s E + Exception occurred while getting time zone settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
2188s
2188s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:804: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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}
2188s ------------------------------ Captured log call -------------------------------
2188s 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)
2188s
2188s 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)
2188s
2188s 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):
2188s __________ TestNetworkCompliance.test_sync_device_config_iplist_site ___________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_sync_device_config_iplist_site(self):
2188s
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_log_level="DEBUG",
2188s dnac_log_append=False,
2188s state="merged",
2188s config=self.test_data.get("playbook_config_sync_device_config_iplist_site")
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:497:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/network_compliance_workflow_manager.py:1670: in main
2188s ccc_network_compliance.get_want(config).check_return_status()
2188s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
2188s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
2188s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list
2188s self.fail_and_exit(self.msg)
2188s plugins/module_utils/dnac.py:1787: in fail_and_exit
2188s self.check_return_status()
2188s plugins/module_utils/dnac.py:307: in check_return_status
2188s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def fail_json(*args, **kwargs):
2188s kwargs["failed"] = True
2188s > raise AnsibleFailJson(kwargs)
2188s 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}
2188s
2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
2188s ----------------------------- Captured stdout call -----------------------------
2188s Inside load_fixtures
2188s Mock for DNACSDK._exec:
2188s Inside load_fixtures
2188s ------------------------------ Captured log call -------------------------------
2188s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
2188s
2188s 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}
2188s
2188s 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}]
2188s
2188s 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}]
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0']
2188s
2188s 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}
2188s
2188s 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
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'Global'
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
2188s
2188s 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
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
2188s
2188s 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}
2188s
2188s 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
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0
2188s
2188s 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']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']}
2188s
2188s 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']}
2188s
2188s 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'}]}
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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'}]}
2188s
2188s 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
2188s
2188s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 782: Total number of devices received: 1
2188s
2188s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 783: Number of devices that are Unreachable or APs: 1
2188s
2188s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 784: Config Backup Operation can be performed on the following filtered devices: 0
2188s
2188s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {}
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 823: Retrieving device IDs for site: Global
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 809: Initiating retrieval of site details for site name: 'Global'.
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 813: Using 'get_site' API for Catalyst Center version: '2233'.
2188s
2188s 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'}.
2188s
2188s 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'}]}
2188s
2188s 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'}]}
2188s
2188s 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'.
2188s
2188s 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'.
2188s
2188s 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'.
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 664: Using 'get_membership' API for Catalyst Center version: '2233'.
2188s
2188s 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'}.
2188s
2188s 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'}
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 668: Received response from 'get_membership'. Extracting device IDs.
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 674: Retrieved device IDs from membership for site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': []
2188s
2188s 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'.
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 721: Device IDs retrieved from site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': []
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 763: Device details retrieved for site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b': []
2188s
2188s INFO logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 792: No reachable devices found at Site: 92ffce88-9fce-41d2-ae69-086fa74e9c4b
2188s
2188s 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).
2188s
2188s 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).
2188s _________ TestNetworkCompliance.test_sync_device_config_iplist_site_nr _________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_sync_device_config_iplist_site_nr(self):
2188s
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_log_level="DEBUG",
2188s dnac_log_append=False,
2188s state="merged",
2188s config=self.test_data.get("playbook_config_sync_device_config_iplist_site_nr")
2188s )
2188s )
2188s > result = self.execute_module(changed=False, failed=False)
2188s
2188s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:518:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/network_compliance_workflow_manager.py:1670: in main
2188s ccc_network_compliance.get_want(config).check_return_status()
2188s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
2188s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
2188s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list
2188s self.fail_and_exit(self.msg)
2188s plugins/module_utils/dnac.py:1787: in fail_and_exit
2188s self.check_return_status()
2188s plugins/module_utils/dnac.py:307: in check_return_status
2188s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def fail_json(*args, **kwargs):
2188s kwargs["failed"] = True
2188s > raise AnsibleFailJson(kwargs)
2188s 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}
2188s
2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
2188s ----------------------------- Captured stdout call -----------------------------
2188s Inside load_fixtures
2188s Mock for DNACSDK._exec:
2188s Inside load_fixtures
2188s ------------------------------ Captured log call -------------------------------
2188s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
2188s
2188s 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}
2188s
2188s 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}]
2188s
2188s 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}]
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0']
2188s
2188s 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}
2188s
2188s 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
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'Global'
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
2188s
2188s 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
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
2188s
2188s 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}
2188s
2188s 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
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0
2188s
2188s 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']
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']}
2188s
2188s 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']}
2188s
2188s 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'}]}
2188s
2188s 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
2188s
2188s 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.
2188s
2188s 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'}]}
2188s
2188s 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
2188s
2188s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 782: Total number of devices received: 1
2188s
2188s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 783: Number of devices that are Unreachable or APs: 1
2188s
2188s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 784: Config Backup Operation can be performed on the following filtered devices: 0
2188s
2188s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {}
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 823: Retrieving device IDs for site: Global
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 809: Initiating retrieval of site details for site name: 'Global'.
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 813: Using 'get_site' API for Catalyst Center version: '2233'.
2188s
2188s 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'}.
2188s
2188s 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'}]}
2188s
2188s 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'}]}
2188s
2188s 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'.
2188s
2188s 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'.
2188s
2188s 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'.
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 664: Using 'get_membership' API for Catalyst Center version: '2233'.
2188s
2188s 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'}.
2188s
2188s 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'}
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 668: Received response from 'get_membership'. Extracting device IDs.
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 674: Retrieved device IDs from membership for site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': []
2188s
2188s 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'.
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 721: Device IDs retrieved from site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': []
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 763: Device details retrieved for site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b': []
2188s
2188s INFO logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 792: No reachable devices found at Site: 92ffce88-9fce-41d2-ae69-086fa74e9c4b
2188s
2188s 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).
2188s
2188s 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).
2188s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_aaa _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Network_settings_workflow_manager_network_exception_update_aaa(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.7.6",
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_update_network
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "Exception occurred while updating AAA settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
2188s )
2188s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating AAA se[50 chars]a7: '
2188s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .
2188s E + Exception occurred while updating AAA settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
2188s
2188s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:654: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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}
2188s ------------------------------ Captured log call -------------------------------
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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: .
2188s ______________ TestNetworkCompliance.test_sync_device_config_site ______________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_sync_device_config_site(self):
2188s
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_log_level="DEBUG",
2188s dnac_log_append=False,
2188s state="merged",
2188s config=self.test_data.get("playbook_config_sync_device_config_site")
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:476:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/network_compliance_workflow_manager.py:1670: in main
2188s ccc_network_compliance.get_want(config).check_return_status()
2188s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want
2188s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name)
2188s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list
2188s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name)
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def get_reachable_devices_from_site(self, site_name):
2188s """
2188s Retrieves a mapping of management IP addresses to instance IDs for reachable devices from a specified site.
2188s Args:
2188s site_id (str): The ID of the site from which to retrieve device details.
2188s Returns:
2188s tuple: A tuple containing:
2188s - dict: A mapping of management IP addresses to instance IDs for reachable devices.
2188s - list: A list of management IP addresses of skipped devices.
2188s """
2188s mgmt_ip_to_instance_id_map = {}
2188s skipped_devices_list = []
2188s
2188s (site_exists, site_id) = self.get_site_id(site_name)
2188s if not site_exists:
2188s self.msg = "Site '{0}' does not exist in the Cisco Catalyst Center, cannot proceed with device(s) retrieval.".format(site_name)
2188s self.fail_and_exit(self.msg)
2188s
2188s self.log("Initiating retrieval of device details for site ID: '{0}'.".format(site_id), "INFO")
2188s
2188s # Retrieve the list of device details from the specified site
2188s device_details_list = self.get_device_details_from_site(site_name, site_id)
2188s self.log("Device details retrieved for site ID: '{0}': {1}".format(site_id, device_details_list), "DEBUG")
2188s
2188s # Iterate through each device's details
2188s for device_info in device_details_list:
2188s > management_ip = device_info.get("managementIpAddress")
2188s E AttributeError: 'list' object has no attribute 'get'
2188s
2188s plugins/module_utils/dnac.py:767: AttributeError
2188s ----------------------------- Captured stdout call -----------------------------
2188s Inside load_fixtures
2188s Mock for DNACSDK._exec:
2188s Inside load_fixtures
2188s ------------------------------ Captured log call -------------------------------
2188s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated
2188s
2188s 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}
2188s
2188s 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}]
2188s
2188s 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}]
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: None
2188s
2188s 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}
2188s
2188s 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
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': 'None' or 'site_name': 'Global'
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid
2188s
2188s 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
2188s
2188s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present
2188s
2188s 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}
2188s
2188s 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
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 823: Retrieving device IDs for site: Global
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 809: Initiating retrieval of site details for site name: 'Global'.
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 813: Using 'get_site' API for Catalyst Center version: '2233'.
2188s
2188s 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'}.
2188s
2188s 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'}]}
2188s
2188s 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'}]}
2188s
2188s 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'.
2188s
2188s 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'.
2188s
2188s 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'.
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 664: Using 'get_membership' API for Catalyst Center version: '2233'.
2188s
2188s 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'}.
2188s
2188s 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'}]}
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 668: Received response from 'get_membership'. Extracting device IDs.
2188s
2188s 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']
2188s
2188s 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']
2188s
2188s 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'.
2188s
2188s 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'}.
2188s
2188s 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'}
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '3bf3f269-88ae-48fc-910d-3263ba618f87'.
2188s
2188s 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'.
2188s
2188s 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'}.
2188s
2188s 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'}
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b'.
2188s
2188s 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'.
2188s
2188s 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'}.
2188s
2188s 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'}
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '9db11f54-8007-438c-ba9b-711513deecc6'.
2188s
2188s 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'.
2188s
2188s 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'}.
2188s
2188s 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'}
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: 'f490e92f-490e-4bb1-9519-770b1dc604c4'.
2188s
2188s 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'.
2188s
2188s 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'}.
2188s
2188s 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'}
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: 'e0bdf3e1-fbcf-4faa-a11c-156e32e7ae38'.
2188s
2188s 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'.
2188s
2188s 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'}.
2188s
2188s 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'}
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '37b05b0f-1b1e-496a-b101-8f277f0af8ff'.
2188s
2188s 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'.
2188s
2188s 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'}.
2188s
2188s 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'}
2188s
2188s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '778a27bb-d795-4fa3-a321-f2e693ebe1f4'.
2188s
2188s 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'}]
2188s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_banner _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Network_settings_workflow_manager_network_exception_update_banner(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.7.6",
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_update_network
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "Exception occurred while updating banner settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
2188s )
2188s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating banner[53 chars]a7: '
2188s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .
2188s E + Exception occurred while updating banner settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
2188s
2188s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:629: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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}
2188s ------------------------------ Captured log call -------------------------------
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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: .
2188s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_global_pool_Updation_not_req _
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Network_settings_workflow_manager_global_pool_Updation_not_req(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_global_pool_updation
2188s )
2188s )
2188s result = self.execute_module(changed=True, failed=True)
2188s # print(result["response"][0].get("globalPool").get("msg"))
2188s # print(result)
2188s > self.assertEqual(
2188s result["response"][0].get("globalPool").get("msg"),
2188s {'Global_Pool2': "Global pool doesn't require an update", 'Global_Pool3': "Global pool doesn't require an update"}
2188s
2188s )
2188s E AssertionError: {} != {'Global_Pool2': "Global pool doesn't requ[67 chars]ate"}
2188s E - {}
2188s E + {'Global_Pool2': "Global pool doesn't require an update",
2188s E + 'Global_Pool3': "Global pool doesn't require an update"}
2188s
2188s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:1003: AssertionError
2188s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_global_pool_creation _
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Network_settings_workflow_manager_global_pool_creation(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_global_pool_creation
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:975:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/network_settings_workflow_manager.py:4301: in main
2188s ccc_network.check_return_status()
2188s plugins/module_utils/dnac.py:307: in check_return_status
2188s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def fail_json(*args, **kwargs):
2188s kwargs["failed"] = True
2188s > raise AnsibleFailJson(kwargs)
2188s 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}
2188s
2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
2188s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_global_pool_deletion _
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Network_settings_workflow_manager_global_pool_deletion(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="deleted",
2188s config_verify=True,
2188s config=self.playbook_config_global_pool_deletion
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:1026:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/network_settings_workflow_manager.py:4301: in main
2188s ccc_network.check_return_status()
2188s plugins/module_utils/dnac.py:307: in check_return_status
2188s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def fail_json(*args, **kwargs):
2188s kwargs["failed"] = True
2188s > raise AnsibleFailJson(kwargs)
2188s 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}
2188s
2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
2188s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_dns _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Network_settings_workflow_manager_network_exception_update_dns(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.7.6",
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_update_network
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "Exception occurred while updating DNS settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
2188s )
2188s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating DNS se[50 chars]a7: '
2188s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .
2188s E + Exception occurred while updating DNS settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
2188s
2188s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:604: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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}
2188s ------------------------------ Captured log call -------------------------------
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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: .
2188s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_ntp _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Network_settings_workflow_manager_network_exception_update_ntp(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.7.6",
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_update_network
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "Exception occurred while updating NTP settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
2188s )
2188s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating NTP se[50 chars]a7: '
2188s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .
2188s E + Exception occurred while updating NTP settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
2188s
2188s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:554: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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}
2188s ------------------------------ Captured log call -------------------------------
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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: .
2188s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_assign_wired_device_to_site _
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_provision_workflow_manager_playbook_assign_wired_device_to_site(self):
2188s """
2188s Test case for add device with full crendentials.
2188s
2188s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_assign_wired_device_to_site
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_provision_workflow_manager.py:152:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/provision_workflow_manager.py:1809: in main
2188s ccc_provision.get_diff_state_apply[state]().check_return_status()
2188s plugins/modules/provision_workflow_manager.py:1044: in get_diff_merged
2188s self.provision_wired_device(to_provisioning, to_force_provisioning)
2188s plugins/modules/provision_workflow_manager.py:1143: in provision_wired_device
2188s device_id = self.get_device_id()
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def get_device_id(self):
2188s """
2188s Fetches the UUID of the device added in the inventory
2188s
2188s Parameters:
2188s - self: The instance of the class containing the 'config' attribute
2188s to be validated.
2188s Returns:
2188s The method returns the serial number of the device as a string. If it fails, it returns None.
2188s Example:
2188s After creating the validated input, this method retrieves the
2188s UUID of the device.
2188s """
2188s
2188s dev_response = self.dnac_apply['exec'](
2188s family="devices",
2188s function='get_network_device_by_ip',
2188s params={"ip_address": self.validated_config["management_ip_address"]}
2188s )
2188s
2188s self.log("The device response from 'get_network_device_by_ip' API is {0}".format(str(dev_response)), "DEBUG")
2188s dev_dict = dev_response.get("response")
2188s > device_id = dev_dict.get("id")
2188s E AttributeError: 'NoneType' object has no attribute 'get'
2188s
2188s plugins/modules/provision_workflow_manager.py:490: AttributeError
2188s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_telemetry _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Network_settings_workflow_manager_network_exception_update_telemetry(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.7.6",
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_config_network
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "Exception occurred while updating telemetry settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
2188s )
2188s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating teleme[56 chars]a7: '
2188s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .
2188s E + Exception occurred while updating telemetry settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
2188s
2188s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:679: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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}
2188s ------------------------------ Captured log call -------------------------------
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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: .
2188s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_del_provision_device _
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_provision_workflow_manager_playbook_del_provision_device(self):
2188s """
2188s Test case for add device with full crendentials.
2188s
2188s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="deleted",
2188s config_verify=True,
2188s config=self.playbook_del_provision_device
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_provision_workflow_manager.py:176:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/provision_workflow_manager.py:1809: in main
2188s ccc_provision.get_diff_state_apply[state]().check_return_status()
2188s plugins/modules/provision_workflow_manager.py:1596: in get_diff_deleted
2188s device_id = self.get_device_id()
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def get_device_id(self):
2188s """
2188s Fetches the UUID of the device added in the inventory
2188s
2188s Parameters:
2188s - self: The instance of the class containing the 'config' attribute
2188s to be validated.
2188s Returns:
2188s The method returns the serial number of the device as a string. If it fails, it returns None.
2188s Example:
2188s After creating the validated input, this method retrieves the
2188s UUID of the device.
2188s """
2188s
2188s dev_response = self.dnac_apply['exec'](
2188s family="devices",
2188s function='get_network_device_by_ip',
2188s params={"ip_address": self.validated_config["management_ip_address"]}
2188s )
2188s
2188s self.log("The device response from 'get_network_device_by_ip' API is {0}".format(str(dev_response)), "DEBUG")
2188s dev_dict = dev_response.get("response")
2188s > device_id = dev_dict.get("id")
2188s E AttributeError: 'list' object has no attribute 'get'
2188s
2188s plugins/modules/provision_workflow_manager.py:490: AttributeError
2188s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_timezone _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Network_settings_workflow_manager_network_exception_update_timezone(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.7.6",
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_update_network
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "Exception occurred while updating time zone settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: "
2188s )
2188s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating time z[56 chars]a7: '
2188s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: .
2188s E + Exception occurred while updating time zone settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7:
2188s
2188s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:579: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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}
2188s ------------------------------ Captured log call -------------------------------
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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: .
2188s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_force_provision_device _
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_provision_workflow_manager_playbook_force_provision_device(self):
2188s """
2188s Test case for add device with full crendentials.
2188s
2188s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="merged",
2188s config=self.playbook_force_provision_device
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_provision_workflow_manager.py:248:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/provision_workflow_manager.py:1809: in main
2188s ccc_provision.get_diff_state_apply[state]().check_return_status()
2188s plugins/modules/provision_workflow_manager.py:1044: in get_diff_merged
2188s self.provision_wired_device(to_provisioning, to_force_provisioning)
2188s plugins/modules/provision_workflow_manager.py:1143: in provision_wired_device
2188s device_id = self.get_device_id()
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def get_device_id(self):
2188s """
2188s Fetches the UUID of the device added in the inventory
2188s
2188s Parameters:
2188s - self: The instance of the class containing the 'config' attribute
2188s to be validated.
2188s Returns:
2188s The method returns the serial number of the device as a string. If it fails, it returns None.
2188s Example:
2188s After creating the validated input, this method retrieves the
2188s UUID of the device.
2188s """
2188s
2188s dev_response = self.dnac_apply['exec'](
2188s family="devices",
2188s function='get_network_device_by_ip',
2188s params={"ip_address": self.validated_config["management_ip_address"]}
2188s )
2188s
2188s self.log("The device response from 'get_network_device_by_ip' API is {0}".format(str(dev_response)), "DEBUG")
2188s dev_dict = dev_response.get("response")
2188s > device_id = dev_dict.get("id")
2188s E AttributeError: 'list' object has no attribute 'get'
2188s
2188s plugins/modules/provision_workflow_manager.py:490: AttributeError
2188s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_provision_device _
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_provision_workflow_manager_playbook_provision_device(self):
2188s """
2188s Test case for add device with full crendentials.
2188s
2188s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="merged",
2188s config=self.playbook_provision_device
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_provision_workflow_manager.py:199:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/provision_workflow_manager.py:1809: in main
2188s ccc_provision.get_diff_state_apply[state]().check_return_status()
2188s plugins/modules/provision_workflow_manager.py:1044: in get_diff_merged
2188s self.provision_wired_device(to_provisioning, to_force_provisioning)
2188s plugins/modules/provision_workflow_manager.py:1143: in provision_wired_device
2188s device_id = self.get_device_id()
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def get_device_id(self):
2188s """
2188s Fetches the UUID of the device added in the inventory
2188s
2188s Parameters:
2188s - self: The instance of the class containing the 'config' attribute
2188s to be validated.
2188s Returns:
2188s The method returns the serial number of the device as a string. If it fails, it returns None.
2188s Example:
2188s After creating the validated input, this method retrieves the
2188s UUID of the device.
2188s """
2188s
2188s dev_response = self.dnac_apply['exec'](
2188s family="devices",
2188s function='get_network_device_by_ip',
2188s params={"ip_address": self.validated_config["management_ip_address"]}
2188s )
2188s
2188s self.log("The device response from 'get_network_device_by_ip' API is {0}".format(str(dev_response)), "DEBUG")
2188s dev_dict = dev_response.get("response")
2188s > device_id = dev_dict.get("id")
2188s E AttributeError: 'list' object has no attribute 'get'
2188s
2188s plugins/modules/provision_workflow_manager.py:490: AttributeError
2188s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_wireless_provision _
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_provision_workflow_manager_playbook_wireless_provision(self):
2188s """
2188s Test case for add device with full crendentials.
2188s
2188s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="merged",
2188s > config=self.playbook_wireless_provisionZ
2188s )
2188s )
2188s E AttributeError: 'TestDnacProvisionWorkflow' object has no attribute 'playbook_wireless_provisionZ'. Did you mean: 'playbook_wireless_provision'?
2188s
2188s tests/unit/modules/dnac/test_provision_workflow_manager.py:268: AttributeError
2188s _ TestDnacRmaIntent.test_rma_workflow_manager_deploy_workflow_failure_unmark_failure _
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_rma_workflow_manager_deploy_workflow_failure_unmark_failure(self):
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="replaced",
2188s config=self.playbook_config_valid
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "Error while unmarking device for replacement: Task failed. | Unmarking result: Error while unmarking device for replacement: Task failed."
2188s )
2188s E AssertionError: 'The replacement device is not reachable. [46 chars]ent.' != 'Error while unmarking device for replacem[92 chars]led.'
2188s E - The replacement device is not reachable. Unable to proceed with the RMA device replacement.
2188s E + Error while unmarking device for replacement: Task failed. | Unmarking result: Error while unmarking device for replacement: Task failed.
2188s
2188s tests/unit/modules/dnac/test_rma_workflow_manager.py:310: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'msg': 'The replacement device is not reachable. Unable to proceed with the RMA device replacement.', 'response': [], 'failed': True}
2188s ------------------------------ Captured log call -------------------------------
2188s 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.
2188s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_mandatory_aaa_param _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Network_settings_workflow_manager_network_mandatory_aaa_param(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.7.6",
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_config_aaa_req
2188s )
2188s )
2188s > result = self.execute_module(changed=False, failed=True)
2188s
2188s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:902:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:107: in execute_module
2188s result = self.failed()
2188s tests/unit/modules/dnac/dnac_module.py:125: in failed
2188s self.module.main()
2188s plugins/modules/network_settings_workflow_manager.py:4316: in main
2188s ccc_network.get_diff_state_apply[state](config).check_return_status()
2188s plugins/modules/network_settings_workflow_manager.py:3824: in get_diff_merged
2188s self.update_network(network_management).check_return_status()
2188s plugins/modules/network_settings_workflow_manager.py:3790: in update_network
2188s self.check_tasks_response_status(response, "set_aaa_settings_for_a_site").check_return_status()
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def check_tasks_response_status(self, response, api_name):
2188s """
2188s Get the task response status from taskId
2188s Args:
2188s self: The current object details.
2188s response (dict): API response.
2188s api_name (str): API name.
2188s Returns:
2188s self (object): The current object with updated desired Fabric Transits information.
2188s Description:
2188s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE'
2188s state or till it reaches the maximum timeout.
2188s Log the task details and return self.
2188s """
2188s
2188s if not response:
2188s self.msg = "response is empty"
2188s self.status = "exited"
2188s return self
2188s
2188s if not isinstance(response, dict):
2188s self.msg = "response is not a dictionary"
2188s self.status = "exited"
2188s return self
2188s
2188s task_info = response.get("response")
2188s > if task_info.get("errorcode") is not None:
2188s E AttributeError: 'list' object has no attribute 'get'
2188s
2188s plugins/module_utils/dnac.py:1713: AttributeError
2188s ------------------------------ Captured log call -------------------------------
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_network_not_need_update _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Network_settings_workflow_manager_network_network_not_need_update(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_config_network
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "Successfully retrieved details from the playbook"
2188s )
2188s E AssertionError: "The specified version '2.2.3.3' does not[94 chars]ds. " != 'Successfully retrieved details from the playbook'
2188s 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.
2188s E + Successfully retrieved details from the playbook
2188s
2188s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:454: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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}
2188s _ TestDnacRmaIntent.test_rma_workflow_manager_deploy_workflow_failure_unmark_success _
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_rma_workflow_manager_deploy_workflow_failure_unmark_success(self):
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="replaced",
2188s config=self.playbook_config_valid
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_rma_workflow_manager.py:326:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/rma_workflow_manager.py:1434: in main
2188s ccc_device_replacement.rma_device_replacement_pre_check().check_return_status()
2188s plugins/module_utils/dnac.py:307: in check_return_status
2188s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def fail_json(*args, **kwargs):
2188s kwargs["failed"] = True
2188s > raise AnsibleFailJson(kwargs)
2188s 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}
2188s
2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
2188s ------------------------------ Captured log call -------------------------------
2188s 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.
2188s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_null_network_params _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Network_settings_workflow_manager_network_null_network_params(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.5.3",
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_config_update_not_req
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "Successfully retrieved details from the playbook"
2188s )
2188s E AssertionError: "Exception occurred while updating the ne[37 chars]t': " != 'Successfully retrieved details from the playbook'
2188s E - Exception occurred while updating the network settings of 'Global/Testing/test':
2188s E + Successfully retrieved details from the playbook
2188s
2188s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:953: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'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}
2188s ------------------------------ Captured log call -------------------------------
2188s ERROR logger:dnac.py:294 NetworkSettings: update_network: 3730:
2188s _____ TestDnacRmaIntent.test_rma_workflow_manager_deploy_workflow_success ______
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_rma_workflow_manager_deploy_workflow_success(self):
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="replaced",
2188s config=self.playbook_config_valid
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_rma_workflow_manager.py:290:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/rma_workflow_manager.py:1434: in main
2188s ccc_device_replacement.rma_device_replacement_pre_check().check_return_status()
2188s plugins/module_utils/dnac.py:307: in check_return_status
2188s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def fail_json(*args, **kwargs):
2188s kwargs["failed"] = True
2188s > raise AnsibleFailJson(kwargs)
2188s 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}
2188s
2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
2188s ------------------------------ Captured log call -------------------------------
2188s 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.
2188s _______ TestDnacRmaIntent.test_rma_workflow_manager_mark_device_failure ________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_rma_workflow_manager_mark_device_failure(self):
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="replaced",
2188s config=self.playbook_config_valid
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "An error occurred during the operation"
2188s )
2188s E AssertionError: 'The replacement device is not reachable. [46 chars]ent.' != 'An error occurred during the operation'
2188s E - The replacement device is not reachable. Unable to proceed with the RMA device replacement.
2188s E + An error occurred during the operation
2188s
2188s tests/unit/modules/dnac/test_rma_workflow_manager.py:274: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'msg': 'The replacement device is not reachable. Unable to proceed with the RMA device replacement.', 'response': [], 'failed': True}
2188s ------------------------------ Captured log call -------------------------------
2188s 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.
2188s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_update _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Network_settings_workflow_manager_network_update(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.7.6",
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_update_network
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:502:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/network_settings_workflow_manager.py:4316: in main
2188s ccc_network.get_diff_state_apply[state](config).check_return_status()
2188s plugins/modules/network_settings_workflow_manager.py:3824: in get_diff_merged
2188s self.update_network(network_management).check_return_status()
2188s plugins/modules/network_settings_workflow_manager.py:3741: in update_network
2188s self.check_tasks_response_status(response, "set_dhcp_settings_for_a_site").check_return_status()
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def check_tasks_response_status(self, response, api_name):
2188s """
2188s Get the task response status from taskId
2188s Args:
2188s self: The current object details.
2188s response (dict): API response.
2188s api_name (str): API name.
2188s Returns:
2188s self (object): The current object with updated desired Fabric Transits information.
2188s Description:
2188s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE'
2188s state or till it reaches the maximum timeout.
2188s Log the task details and return self.
2188s """
2188s
2188s if not response:
2188s self.msg = "response is empty"
2188s self.status = "exited"
2188s return self
2188s
2188s if not isinstance(response, dict):
2188s self.msg = "response is not a dictionary"
2188s self.status = "exited"
2188s return self
2188s
2188s task_info = response.get("response")
2188s if task_info.get("errorcode") is not None:
2188s self.msg = response.get("response").get("detail")
2188s self.status = "failed"
2188s return self
2188s
2188s task_id = task_info.get("taskId")
2188s start_time = time.time()
2188s while True:
2188s elapsed_time = time.time() - start_time
2188s if elapsed_time >= self.max_timeout:
2188s self.msg = "Max timeout of {0} sec has reached for the task id '{1}'. " \
2188s .format(self.max_timeout, task_id) + \
2188s "Exiting the loop due to unexpected API '{0}' status.".format(api_name)
2188s self.log(self.msg, "WARNING")
2188s self.status = "failed"
2188s break
2188s
2188s task_details = self.get_tasks_by_id(task_id)
2188s self.log('Getting tasks details from task ID {0}: {1}'
2188s .format(task_id, task_details), "DEBUG")
2188s
2188s > task_status = task_details.get("status")
2188s E AttributeError: 'list' object has no attribute 'get'
2188s
2188s plugins/module_utils/dnac.py:1734: AttributeError
2188s ------------------------------ Captured log call -------------------------------
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s _ TestDnacRmaIntent.test_rma_workflow_manager_mark_device_for_replacement_exception _
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_rma_workflow_manager_mark_device_for_replacement_exception(self):
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="replaced",
2188s config=self.playbook_config_valid
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "Exception occurred while marking device for replacement: "
2188s )
2188s E AssertionError: 'The replacement device is not reachable. [46 chars]ent.' != 'Exception occurred while marking device for replacement: '
2188s E - The replacement device is not reachable. Unable to proceed with the RMA device replacement.
2188s E + Exception occurred while marking device for replacement:
2188s
2188s tests/unit/modules/dnac/test_rma_workflow_manager.py:256: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'msg': 'The replacement device is not reachable. Unable to proceed with the RMA device replacement.', 'response': [], 'failed': True}
2188s ------------------------------ Captured log call -------------------------------
2188s 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.
2188s ___ TestDnacRmaIntent.test_rma_workflow_manager_replacement_device_not_found ___
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_rma_workflow_manager_replacement_device_not_found(self):
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="replaced",
2188s config=self.playbook_config_device_not_found
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s print(result)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "Replacement device '204.1.2.19' not found in Cisco Catalyst Center"
2188s )
2188s E AssertionError: "Replacement device '204.1.2.19' not found in PnP" != "Replacement device '204.1.2.19' not found in Cisco Catalyst Center"
2188s E - Replacement device '204.1.2.19' not found in PnP
2188s E ? ^ ^
2188s E + Replacement device '204.1.2.19' not found in Cisco Catalyst Center
2188s E ? ^^^^^^^^^^^^^^^^^ ^^^
2188s
2188s tests/unit/modules/dnac/test_rma_workflow_manager.py:220: AssertionError
2188s ----------------------------- Captured stdout call -----------------------------
2188s {'msg': "Replacement device '204.1.2.19' not found in PnP", 'response': [], 'failed': True}
2188s ------------------------------ Captured log call -------------------------------
2188s ERROR logger:dnac.py:294 DeviceReplacement: device_exists: 802: No valid response received from Cisco Catalyst Center
2188s
2188s ERROR logger:dnac.py:294 DeviceReplacement: pnp_device_exists: 713: Invalid identifier type provided
2188s
2188s ERROR logger:dnac.py:294 DeviceReplacement: get_have: 586: Replacement device '204.1.2.19' not found in PnP
2188s _______ TestDnacSiteWorkflow.test_Site_workflow_manager_create_bulk_site _______
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Site_workflow_manager_create_bulk_site(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_version="2.3.7.6",
2188s dnac_log=True,
2188s state="merged",
2188s config=self.upload_floor_map_playbook
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_site_workflow_manager.py:274:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/site_workflow_manager.py:2520: in main
2188s ccc_site.validate_site_input_data(ccc_site.validated_config, state).check_return_status()
2188s plugins/module_utils/dnac.py:307: in check_return_status
2188s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def fail_json(*args, **kwargs):
2188s kwargs["failed"] = True
2188s > raise AnsibleFailJson(kwargs)
2188s 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}
2188s
2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
2188s ------------------------------ Captured log call -------------------------------
2188s ERROR logger:dnac.py:294 Site: validate_site_input_data: 1188: Missing 'name' field in entry.
2188s
2188s ERROR logger:dnac.py:294 Site: validate_site_input_data: 1196: Missing 'parent_name' field in entry.
2188s
2188s 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'
2188s _________ TestDnacSiteWorkflow.test_Site_workflow_manager_create_site __________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Site_workflow_manager_create_site(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_version="2.3.5.3",
2188s dnac_log=True,
2188s state="merged",
2188s config=self.playbook_config_site
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_site_workflow_manager.py:297:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/site_workflow_manager.py:2539: in main
2188s ccc_site.get_diff_state_apply[state](config).check_return_status()
2188s plugins/module_utils/dnac.py:307: in check_return_status
2188s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def fail_json(*args, **kwargs):
2188s kwargs["failed"] = True
2188s > raise AnsibleFailJson(kwargs)
2188s 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}
2188s
2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
2188s ------------------------------ Captured log call -------------------------------
2188s ERROR logger:dnac.py:294 Site: get_site_v1: 619: An error occurred in 'get_sites':
2188s
2188s ERROR logger:dnac.py:294 Site: site_exists: 676: No response received from 'get_site' API for site: Global/japan8888
2188s
2188s ERROR logger:dnac.py:294 Site: get_site_v1: 619: An error occurred in 'get_sites':
2188s
2188s ERROR logger:dnac.py:294 Site: set_operation_result: 1780: Parent name 'Global' does not exist in the Cisco Catalyst Center.
2188s
2188s 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}
2188s
2188s WARNING logger:dnac.py:294 Site: get_site_v1: 612: Empty response received for site: Global/japan8888
2188s
2188s ERROR logger:dnac.py:294 Site: site_exists: 676: No response received from 'get_site' API for site: Global/japan8888
2188s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_not_verified __
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Network_settings_workflow_manager_not_verified(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s dnac_version="2.3.7.6",
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_config_network
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=True)
2188s
2188s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:477:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:107: in execute_module
2188s result = self.failed()
2188s tests/unit/modules/dnac/dnac_module.py:125: in failed
2188s self.module.main()
2188s plugins/modules/network_settings_workflow_manager.py:4316: in main
2188s ccc_network.get_diff_state_apply[state](config).check_return_status()
2188s plugins/modules/network_settings_workflow_manager.py:3824: in get_diff_merged
2188s self.update_network(network_management).check_return_status()
2188s plugins/modules/network_settings_workflow_manager.py:3741: in update_network
2188s self.check_tasks_response_status(response, "set_dhcp_settings_for_a_site").check_return_status()
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def check_tasks_response_status(self, response, api_name):
2188s """
2188s Get the task response status from taskId
2188s Args:
2188s self: The current object details.
2188s response (dict): API response.
2188s api_name (str): API name.
2188s Returns:
2188s self (object): The current object with updated desired Fabric Transits information.
2188s Description:
2188s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE'
2188s state or till it reaches the maximum timeout.
2188s Log the task details and return self.
2188s """
2188s
2188s if not response:
2188s self.msg = "response is empty"
2188s self.status = "exited"
2188s return self
2188s
2188s if not isinstance(response, dict):
2188s self.msg = "response is not a dictionary"
2188s self.status = "exited"
2188s return self
2188s
2188s task_info = response.get("response")
2188s if task_info.get("errorcode") is not None:
2188s self.msg = response.get("response").get("detail")
2188s self.status = "failed"
2188s return self
2188s
2188s task_id = task_info.get("taskId")
2188s start_time = time.time()
2188s while True:
2188s elapsed_time = time.time() - start_time
2188s if elapsed_time >= self.max_timeout:
2188s self.msg = "Max timeout of {0} sec has reached for the task id '{1}'. " \
2188s .format(self.max_timeout, task_id) + \
2188s "Exiting the loop due to unexpected API '{0}' status.".format(api_name)
2188s self.log(self.msg, "WARNING")
2188s self.status = "failed"
2188s break
2188s
2188s task_details = self.get_tasks_by_id(task_id)
2188s self.log('Getting tasks details from task ID {0}: {1}'
2188s .format(task_id, task_details), "DEBUG")
2188s
2188s > task_status = task_details.get("status")
2188s E AttributeError: 'list' object has no attribute 'get'
2188s
2188s plugins/module_utils/dnac.py:1734: AttributeError
2188s ------------------------------ Captured log call -------------------------------
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s
2188s 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)
2188s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_reserve_pool_creation _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Network_settings_workflow_manager_reserve_pool_creation(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="merged",
2188s config_verify=True,
2188s config=self.playbook_config_reserve_pool
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:1075:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/network_settings_workflow_manager.py:4301: in main
2188s ccc_network.check_return_status()
2188s plugins/module_utils/dnac.py:307: in check_return_status
2188s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def fail_json(*args, **kwargs):
2188s kwargs["failed"] = True
2188s > raise AnsibleFailJson(kwargs)
2188s 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}
2188s
2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
2188s ___ TestDnacSiteWorkflow.test_Site_workflow_manager_create_site_bulk_invalid ___
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Site_workflow_manager_create_site_bulk_invalid(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_version="2.3.7.6",
2188s dnac_log=True,
2188s state="merged",
2188s config=self.playbook_config_site
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "An error occurred while executing GET API call to Function: 'get_sites' "
2188s "from Family: 'site_design'. "
2188s "Parameters: {'name_hierarchy': 'Global/japan8888'}. "
2188s "Exception: ."
2188s )
2188s E AssertionError: "An e[106 chars]: {'name_hierarchy': 'Global/japan8888/blossom'}. Exception: ." != "An e[106 chars]: {'name_hierarchy': 'Global/japan8888'}. Exception: ."
2188s E - An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/japan8888/blossom'}. Exception: .
2188s E ? --------
2188s E + An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/japan8888'}. Exception: .
2188s
2188s tests/unit/modules/dnac/test_site_workflow_manager.py:416: AssertionError
2188s ------------------------------ Captured log call -------------------------------
2188s 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: .
2188s
2188s 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}
2188s
2188s 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: .
2188s
2188s 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}
2188s
2188s 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'.
2188s
2188s ERROR logger:dnac.py:294 Site: get_have: 1037: Unexpected response received:
2188s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_reserve_pool_deletion _
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Network_settings_workflow_manager_reserve_pool_deletion(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_log=True,
2188s state="deleted",
2188s config_verify=True,
2188s config=self.playbook_config_reserve_pool_deletion
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:1050:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/network_settings_workflow_manager.py:4301: in main
2188s ccc_network.check_return_status()
2188s plugins/module_utils/dnac.py:307: in check_return_status
2188s self.module.fail_json(msg=self.msg, response=self.result.get('response', []))
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def fail_json(*args, **kwargs):
2188s kwargs["failed"] = True
2188s > raise AnsibleFailJson(kwargs)
2188s 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}
2188s
2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson
2188s ______ TestDnacSiteWorkflow.test_Site_workflow_manager_delete_a_new_site _______
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Site_workflow_manager_delete_a_new_site(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_version="2.3.7.6",
2188s dnac_log=True,
2188s state="deleted",
2188s config=self.delete_config_playbook
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_site_workflow_manager.py:489:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s plugins/modules/site_workflow_manager.py:2527: in main
2188s ccc_site.get_diff_state_apply[state](ccc_site.validated_config).check_return_status()
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def get_diff_deleted(self, config):
2188s """
2188s Call Cisco Catalyst Center API to delete sites with provided inputs.
2188s Parameters:
2188s - self (object): An instance of a class used for interacting with Cisco Catalyst Center.
2188s - config (dict): Dictionary containing information for site deletion.
2188s Returns:
2188s - self: The result dictionary includes the following keys:
2188s - 'changed' (bool): Indicates whether changes were made
2188s during the deletion process.
2188s - 'response' (dict): Contains details about the execution
2188s and the deleted site ID.
2188s - 'msg' (str): A message indicating the status of the deletion operation.
2188s Description:
2188s This method initiates the deletion of a site by calling the 'delete_site' function in the 'sites' family
2188s of the Cisco Catalyst Center API. It uses the site ID obtained from the 'have' attribute.
2188s """
2188s
2188s if self.compare_dnac_versions(self.get_ccc_version(), "2.3.5.3") <= 0:
2188s site_exists = self.have.get("site_exists")
2188s site_name_hierarchy = self.want.get("site_name_hierarchy")
2188s site_id = self.have.get("site_id")
2188s if not site_exists:
2188s if site_name_hierarchy not in self.deleted_site_list:
2188s self.site_absent_list.append(site_name_hierarchy)
2188s self.log(
2188s "Failed to delete site '{0}'. Reason: The site was not found in the Cisco Catalyst Center.".format(site_name_hierarchy),
2188s "DEBUG"
2188s )
2188s return self
2188s api_response, response = self.get_device_ids_from_site(site_name_hierarchy, site_id)
2188s self.log(
2188s "Received API response from 'get_membership': {0}".format(str(api_response)), "DEBUG")
2188s
2188s site_response = api_response.get("site", {}).get("response", [])
2188s self.log(
2188s "Site '{0}' response along with its child sites: {1}".format(site_name_hierarchy, str(site_response)), "DEBUG")
2188s
2188s if not site_response:
2188s self.delete_single_site(site_id, site_name_hierarchy)
2188s return self
2188s
2188s sorted_site_resp = sorted(
2188s site_response, key=lambda x: x.get("groupHierarchy"), reverse=True)
2188s
2188s for item in sorted_site_resp:
2188s self.delete_single_site(item['id'], item['groupNameHierarchy'])
2188s
2188s self.delete_single_site(site_id, site_name_hierarchy)
2188s self.log(
2188s "The site '{0}' and its child sites have been deleted successfully".format(site_name_hierarchy), "INFO")
2188s
2188s elif self.compare_dnac_versions(self.get_ccc_version(), "2.3.7.6") >= 0:
2188s final_deletion_list = []
2188s for each_type in ("floor", "building", "area"):
2188s if self.handle_config[each_type]:
2188s self.log("Starting bulk site creation for type: {}".format(each_type), "DEBUG")
2188s for config in self.handle_config[each_type]:
2188s site_exists = config.get("site_exists")
2188s if not site_exists:
2188s self.log("Unable to delete site {0} as it's not found in Cisco Catalyst Center".
2188s format(config.get("site_name_hierarchy")), "INFO")
2188s self.site_absent_list.append(str(each_type) + ": " + str(config.get("site_name_hierarchy")))
2188s else:
2188s final_deletion_list.append(config)
2188s self.log("Deletion list re-arranged order: {0}.".format(final_deletion_list), "INFO")
2188s
2188s if len(final_deletion_list) > 0:
2188s for config in final_deletion_list:
2188s site_name_hierarchy = config.get("site_name_hierarchy")
2188s site_params = config.get("site_params")
2188s site_params["site_id"] = config.get("site_id")
2188s site_type = site_params.get("type")
2188s site_id = site_params["site_id"]
2188s self.log("Site ID from 'have' for retrieval: {0}".format(site_id), "DEBUG")
2188s self.log("Site TYPE from 'have' for retrieval: {0}".format(site_type), "DEBUG")
2188s self.log("Site PARAMS from 'have' for retrieval: {0}".format(site_params), "DEBUG")
2188s self.log("Site NAME from 'want' for retrieval: {0}".format(site_name_hierarchy), "DEBUG")
2188s
2188s self.log("Initiating deletion for site '{0}' with site ID: {1} of type: {2}".format(
2188s site_name_hierarchy, site_id, site_type), "DEBUG")
2188s
2188s response = None
2188s if site_type == "floor":
2188s response = self.delete_floor(site_name_hierarchy, site_id)
2188s elif site_type == "area":
2188s response = self.delete_area(site_name_hierarchy, site_id)
2188s self.log("Response for deleting area: {0}".format(str(response)), "DEBUG")
2188s elif site_type == "building":
2188s response = self.delete_building(site_name_hierarchy, site_id)
2188s
2188s if isinstance(response, dict):
2188s > task_id = response.get("response", {}).get("taskId")
2188s E AttributeError: 'list' object has no attribute 'get'
2188s
2188s plugins/modules/site_workflow_manager.py:2136: AttributeError
2188s __________ TestDnacPnpWorkflow.test_pnp_workflow_manager_claim_switch __________
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_pnp_workflow_manager_claim_switch(self):
2188s """
2188s Test case for PNP workflow manager when add and claim switch device.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_version="2.3.7.6",
2188s dnac_log=True,
2188s config_verify=True,
2188s state="merged",
2188s config=self.playbook_config_switch
2188s )
2188s )
2188s > result = self.execute_module(changed=False, failed=True)
2188s
2188s tests/unit/modules/dnac/test_pnp_workflow_manager.py:193:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:107: in execute_module
2188s result = self.failed()
2188s tests/unit/modules/dnac/dnac_module.py:125: in failed
2188s self.module.main()
2188s plugins/modules/pnp_workflow_manager.py:1414: in main
2188s ccc_pnp.get_diff_state_apply[state]().check_return_status()
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def get_diff_merged(self):
2188s """
2188s If given device doesnot exist
2188s then add it to pnp database and get the device id
2188s Args:
2188s self: An instance of a class used for interacting with Cisco Catalyst Center.
2188s Returns:
2188s object: An instance of the class with updated results and status
2188s based on the processing of differences. Based on the length of devices passed
2188s it adds/claims or does both.
2188s Description:
2188s The function processes the differences and, depending on the
2188s changes required, it may add, update,or resynchronize devices in
2188s Cisco Catalyst Center. The updated results and status are stored in the
2188s class instance for further use.
2188s """
2188s
2188s if not isinstance(self.want.get("pnp_params"), list):
2188s self.msg = "Device Info must be passed as a list"
2188s self.log(self.msg, "ERROR")
2188s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status()
2188s
2188s if len(self.want.get("pnp_params")) > 1:
2188s devices_added = []
2188s for device in self.want.get("pnp_params"):
2188s multi_device_response = self.get_device_list_pnp(device["deviceInfo"]["serialNumber"])
2188s self.log("Device details for serial number {0} \
2188s obtained from the API 'get_device_list': {1}".format(device["deviceInfo"]["serialNumber"],
2188s str(multi_device_response)), "DEBUG")
2188s if (multi_device_response and (len(multi_device_response) == 1)):
2188s devices_added.append(device)
2188s self.log("Details of the added device:{0}".format(str(device)), "INFO")
2188s if (len(self.want.get("pnp_params")) - len(devices_added)) == 0:
2188s self.result['response'] = []
2188s self.result['msg'] = "Devices are already added"
2188s self.log(self.result['msg'], "WARNING")
2188s return self
2188s
2188s bulk_list = [
2188s device
2188s for device in self.want.get("pnp_params")
2188s if device not in devices_added
2188s ]
2188s bulk_params = self.dnac_apply['exec'](
2188s family="device_onboarding_pnp",
2188s function="import_devices_in_bulk",
2188s params={"payload": bulk_list},
2188s op_modifies=True,
2188s )
2188s self.log("Response from API 'import_devices_in_bulk' for imported devices: {0}".format(bulk_params), "DEBUG")
2188s if len(bulk_params.get("successList")) > 0:
2188s self.result['msg'] = "{0} device(s) imported successfully".format(
2188s len(bulk_params.get("successList")))
2188s self.log(self.result['msg'], "INFO")
2188s self.result['response'] = bulk_params
2188s self.result['diff'] = self.validated_config
2188s self.result['changed'] = True
2188s return self
2188s elif len(bulk_params.get("failureList")) > 0:
2188s self.msg = "Unable to import below {0} device(s). ".format(
2188s len(bulk_params.get("failureList")))
2188s self.set_operation_result("failed", False, self.msg, "ERROR",
2188s bulk_params).check_return_status()
2188s
2188s self.msg = "Bulk import failed"
2188s self.log(self.msg, "CRITICAL")
2188s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status()
2188s
2188s provisioned_count_params = {
2188s "serial_number": self.want.get("serial_number"),
2188s "state": "Provisioned"
2188s }
2188s
2188s planned_count_params = {
2188s "serial_number": self.want.get("serial_number"),
2188s "state": "Planned"
2188s }
2188s
2188s if not self.have.get("device_found"):
2188s if not self.want['pnp_params']:
2188s self.msg = "Device needs to be added before claiming. Please add device_info"
2188s self.log(self.msg, "ERROR")
2188s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status()
2188s
2188s if not self.want["site_name"]:
2188s self.log("Adding device to pnp database", "INFO")
2188s dev_add_response = self.add_pnp_device(self.want.get('pnp_params')[0])
2188s self.have["deviceInfo"] = dev_add_response.get("deviceInfo")
2188s self.log("Response from API 'add device' for a single device addition: {0}".format(str(dev_add_response)), "DEBUG")
2188s
2188s if self.have["deviceInfo"]:
2188s self.result['msg'] = "Only Device Added Successfully"
2188s self.log(self.result['msg'], "INFO")
2188s self.result['response'] = dev_add_response
2188s self.result['diff'] = self.validated_config
2188s self.result['changed'] = True
2188s else:
2188s self.msg = "Device Addition Failed"
2188s self.log(self.result['msg'], "CRITICAL")
2188s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status()
2188s
2188s return self
2188s
2188s else:
2188s self.log("Adding device to pnp database")
2188s dev_add_response = self.add_pnp_device(self.want.get('pnp_params')[0])
2188s self.get_have().check_return_status()
2188s self.have["deviceInfo"] = dev_add_response.get("deviceInfo")
2188s self.log("Response from API 'add device' for single device addition: {0}".format(str(dev_add_response)), "DEBUG")
2188s claim_params = self.get_claim_params()
2188s claim_params["deviceId"] = dev_add_response.get("id")
2188s
2188s claim_response = self.claim_device_site(claim_params)
2188s self.log("Response from API 'claim a device to a site' for a single claiming: {0}".format(str(claim_response)), "DEBUG")
2188s
2188s if claim_response.get("response") == "Device Claimed" and self.have["deviceInfo"]:
2188s self.result['msg'] = "Device Added and Claimed Successfully"
2188s self.log(self.result['msg'], "INFO")
2188s self.result['response'] = claim_response
2188s self.result['diff'] = self.validated_config
2188s self.result['changed'] = True
2188s
2188s else:
2188s self.msg = "Device Claim Failed"
2188s > self.log(self.result['msg'], "CRITICAL")
2188s E KeyError: 'msg'
2188s
2188s plugins/modules/pnp_workflow_manager.py:985: KeyError
2188s ------------------------------ Captured log call -------------------------------
2188s WARNING logger:dnac.py:294 PnP: get_device_list_pnp: 1219: No device found with serial number: FOC2439LA89
2188s
2188s WARNING logger:dnac.py:294 PnP: get_have: 701: Device with serial number FOC2439LA89 is not found in the inventory
2188s
2188s WARNING logger:dnac.py:294 PnP: get_diff_merged: 965: Adding device to pnp database
2188s
2188s WARNING logger:dnac.py:294 PnP: get_device_list_pnp: 1219: No device found with serial number: FOC2439LA89
2188s
2188s WARNING logger:dnac.py:294 PnP: get_have: 701: Device with serial number FOC2439LA89 is not found in the inventory
2188s ________ TestDnacSiteWorkflow.test_Site_workflow_manager_delete_a_site _________
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Site_workflow_manager_delete_a_site(self):
2188s """
2188s Test case for site workflow manager when deleting a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_version="2.3.7.6",
2188s dnac_log=True,
2188s state="merged",
2188s config=self.playbook_config_delete
2188s )
2188s )
2188s result = self.execute_module(changed=False, failed=True)
2188s > self.assertEqual(
2188s result.get('msg'),
2188s "This version : '2.3.7.6' given yaml format is not applicable to create a site' "
2188s )
2188s E AssertionError: 'Exception occurred while creating site due to: ' != "This version : '2.3.7.6' given yaml form[35 chars]te' "
2188s E - Exception occurred while creating site due to:
2188s E + This version : '2.3.7.6' given yaml format is not applicable to create a site'
2188s
2188s tests/unit/modules/dnac/test_site_workflow_manager.py:467: AssertionError
2188s ------------------------------ Captured log call -------------------------------
2188s WARNING logger:dnac.py:294 Site: execute_get_request: 1866: Empty 'response' key in the API response from GET API call to Function: 'get_sites' from Family: 'site_design'.
2188s
2188s ERROR logger:dnac.py:294 Site: get_have: 1037: Unexpected response received:
2188s
2188s ERROR logger:dnac.py:294 Site: set_operation_result: 1780: Exception occurred while creating site due to:
2188s
2188s ERROR logger:dnac.py:294 Site: get_diff_merged: 1783: Yaml is not available for bulk: {'msg': 'Exception occurred while creating site due to: ', 'response': 'Exception occurred while creating site due to: ', 'failed': True}
2188s ________ TestDnacSiteWorkflow.test_Site_workflow_manager_update_a_site _________
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Site_workflow_manager_update_a_site(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_version="2.3.7.6",
2188s dnac_log=True,
2188s state="merged",
2188s config=self.playbook_config_site
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_site_workflow_manager.py:611:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:136: in changed
2188s self.assertEqual(result["changed"], changed, result)
2188s E AssertionError: False != True : {'changed': False, 'diff': [], 'response': [], 'warnings': []}
2188s ------------------------------ Captured log call -------------------------------
2188s ERROR logger:dnac.py:294 Site: get_diff_merged: 1783: Yaml is not available for bulk: list indices must be integers or slices, not str
2188s ____ TestDnacSiteWorkflow.test_Site_workflow_manager_update_not_needed_site ____
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Site_workflow_manager_update_not_needed_site(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_version="2.3.5.3",
2188s dnac_log=True,
2188s state="merged",
2188s config=self.playbook_config_update_site
2188s )
2188s )
2188s > result = self.execute_module(changed=True, failed=False)
2188s
2188s tests/unit/modules/dnac/test_site_workflow_manager.py:585:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def main():
2188s """ main entry point for module execution
2188s """
2188s element_spec = {'dnac_host': {'required': True, 'type': 'str'},
2188s 'dnac_port': {'type': 'str', 'default': '443'},
2188s 'dnac_username': {'type': 'str', 'default': 'admin', 'aliases': ['user']},
2188s 'dnac_password': {'type': 'str', 'no_log': True},
2188s 'dnac_verify': {'type': 'bool', 'default': 'True'},
2188s 'dnac_version': {'type': 'str', 'default': '2.2.3.3'},
2188s 'dnac_debug': {'type': 'bool', 'default': False},
2188s 'dnac_log_level': {'type': 'str', 'default': 'WARNING'},
2188s "dnac_log_file_path": {"type": 'str', "default": 'dnac.log'},
2188s "dnac_log_append": {"type": 'bool', "default": True},
2188s 'dnac_log': {'type': 'bool', 'default': False},
2188s 'validate_response_schema': {'type': 'bool', 'default': True},
2188s 'config_verify': {'type': 'bool', "default": False},
2188s 'dnac_api_task_timeout': {'type': 'int', "default": 1200},
2188s 'dnac_task_poll_interval': {'type': 'int', "default": 2},
2188s 'config': {'required': True, 'type': 'list', 'elements': 'dict'},
2188s 'state': {'default': 'merged', 'choices': ['merged', 'deleted']}
2188s }
2188s
2188s module = AnsibleModule(argument_spec=element_spec,
2188s supports_check_mode=False)
2188s
2188s ccc_site = Site(module)
2188s state = ccc_site.params.get("state")
2188s
2188s if ccc_site.compare_dnac_versions(ccc_site.get_ccc_version(), "2.3.5.3") < 0:
2188s ccc_site.msg = (
2188s "The specified version '{0}' does not support the site workflow feature. Supported versions start from '2.3.5.3' onwards. "
2188s "Version '2.3.5.3' introduces APIs for creating, updating, and deleting sites. "
2188s "Version '2.3.7.6' expands support to include APIs for bulk site creating, updating, and deleting sites.".format(
2188s ccc_site.get_ccc_version())
2188s )
2188s
2188s ccc_site.status = "failed"
2188s ccc_site.check_return_status()
2188s
2188s if state not in ccc_site.supported_states:
2188s ccc_site.status = "invalid"
2188s ccc_site.msg = "State {0} is invalid".format(state)
2188s ccc_site.check_return_status()
2188s
2188s ccc_site.validate_input().check_return_status()
2188s config_verify = ccc_site.params.get("config_verify")
2188s ccc_site.validate_site_input_data(ccc_site.validated_config, state).check_return_status()
2188s
2188s if ccc_site.compare_dnac_versions(ccc_site.get_ccc_version(), "2.3.7.6") >= 0:
2188s ccc_site.reset_values()
2188s ccc_site.get_want(ccc_site.validated_config).check_return_status()
2188s ccc_site.get_have(ccc_site.validated_config).check_return_status()
2188s
2188s ccc_site.get_diff_state_apply[state](ccc_site.validated_config).check_return_status()
2188s
2188s if config_verify:
2188s ccc_site.update_site_messages().check_return_status()
2188s
2188s else:
2188s for config in ccc_site.validated_config:
2188s ccc_site.reset_values()
2188s
2188s ccc_site.get_want(config).check_return_status()
2188s > ccc_site.get_have(config).check_return_status()
2188s E AttributeError: 'NoneType' object has no attribute 'check_return_status'
2188s
2188s plugins/modules/site_workflow_manager.py:2537: AttributeError
2188s ------------------------------ Captured log call -------------------------------
2188s ERROR logger:dnac.py:294 Site: set_operation_result: 1780: An unexpected error occurred while retrieving site details: 'NoneType' object is not subscriptable
2188s ____ TestDnacSiteWorkflow.test_Site_workflow_manager_invalid_delete_config _____
2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s self =
2188s
2188s def test_Site_workflow_manager_invalid_delete_config(self):
2188s """
2188s Test case for site workflow manager when creating a site.
2188s
2188s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC.
2188s """
2188s set_module_args(
2188s dict(
2188s dnac_host="1.1.1.1",
2188s dnac_username="dummy",
2188s dnac_password="dummy",
2188s dnac_version="2.3.7.6",
2188s dnac_log=True,
2188s state="merged",
2188s config=self.playbook_config_empty
2188s )
2188s )
2188s > result = self.execute_module(changed=False, failed=False)
2188s
2188s tests/unit/modules/dnac/test_site_workflow_manager.py:391:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s tests/unit/modules/dnac/dnac_module.py:110: in execute_module
2188s result = self.changed(changed)
2188s tests/unit/modules/dnac/dnac_module.py:133: in changed
2188s self.module.main()
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s def main():
2188s """ main entry point for module execution
2188s """
2188s element_spec = {'dnac_host': {'required': True, 'type': 'str'},
2188s 'dnac_port': {'type': 'str', 'default': '443'},
2188s 'dnac_username': {'type': 'str', 'default': 'admin', 'aliases': ['user']},
2188s 'dnac_password': {'type': 'str', 'no_log': True},
2188s 'dnac_verify': {'type': 'bool', 'default': 'True'},
2188s 'dnac_version': {'type': 'str', 'default': '2.2.3.3'},
2188s 'dnac_debug': {'type': 'bool', 'default': False},
2188s 'dnac_log_level': {'type': 'str', 'default': 'WARNING'},
2188s "dnac_log_file_path": {"type": 'str', "default": 'dnac.log'},
2188s "dnac_log_append": {"type": 'bool', "default": True},
2188s 'dnac_log': {'type': 'bool', 'default': False},
2188s 'validate_response_schema': {'type': 'bool', 'default': True},
2188s 'config_verify': {'type': 'bool', "default": False},
2188s 'dnac_api_task_timeout': {'type': 'int', "default": 1200},
2188s 'dnac_task_poll_interval': {'type': 'int', "default": 2},
2188s 'config': {'required': True, 'type': 'list', 'elements': 'dict'},
2188s 'state': {'default': 'merged', 'choices': ['merged', 'deleted']}
2188s }
2188s
2188s module = AnsibleModule(argument_spec=element_spec,
2188s supports_check_mode=False)
2188s
2188s ccc_site = Site(module)
2188s state = ccc_site.params.get("state")
2188s
2188s if ccc_site.compare_dnac_versions(ccc_site.get_ccc_version(), "2.3.5.3") < 0:
2188s ccc_site.msg = (
2188s "The specified version '{0}' does not support the site workflow feature. Supported versions start from '2.3.5.3' onwards. "
2188s "Version '2.3.5.3' introduces APIs for creating, updating, and deleting sites. "
2188s "Version '2.3.7.6' expands support to include APIs for bulk site creating, updating, and deleting sites.".format(
2188s ccc_site.get_ccc_version())
2188s )
2188s
2188s ccc_site.status = "failed"
2188s ccc_site.check_return_status()
2188s
2188s if state not in ccc_site.supported_states:
2188s ccc_site.status = "invalid"
2188s ccc_site.msg = "State {0} is invalid".format(state)
2188s ccc_site.check_return_status()
2188s
2188s ccc_site.validate_input().check_return_status()
2188s config_verify = ccc_site.params.get("config_verify")
2188s > ccc_site.validate_site_input_data(ccc_site.validated_config, state).check_return_status()
2188s E AttributeError: 'list' object has no attribute 'check_return_status'
2188s
2188s plugins/modules/site_workflow_manager.py:2520: AttributeError
2188s ------------------------------ Captured log call -------------------------------
2188s ERROR logger:dnac.py:294 Site: validate_input: 493: Error: Configuration is not available in the playbook for validation
2188s
2188s ERROR logger:dnac.py:294 Site: validate_site_input_data: 1172: Config data is missing.
2188s _________ TestDnacSiteWorkflow.test_Site_workflow_manager_update_site __________
2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3
2188s
2188s def get_diff_merged(self, config):
2188s """
2188s Update/Create site information in Cisco Catalyst Center with fields
2188s provided in the playbook.
2188s Parameters:
2188s self (object): An instance of a class used for interacting with Cisco Catalyst Center.
2188s config (dict): A dictionary containing configuration information.
2188s Returns:
2188s self (object): An instance of a class used for interacting with Cisco Catalyst Center.
2188s Description:
2188s This method determines whether to update or create a site in Cisco Catalyst Center based on the provided
2188s configuration information. If the specified site exists, the method checks if it requires an update
2188s by calling the 'site_requires_update' method. If an update is required, it calls the 'update_site'
2188s function from the 'sites' family of the Cisco Catalyst Center API. If the site does not require an update,
2188s the method exits, indicating that the site is up to date.
2188s """
2188s site_updated = False
2188s site_created = False
2188s
2188s if self.compare_dnac_versions(self.get_ccc_version(), "2.3.7.6") >= 0:
2188s self.handle_config['area'] = []
2188s self.handle_config['building'] = []
2188s self.handle_config['floor'] = []
2188s try:
2188s create_site = copy.deepcopy(self.handle_config["create_site"])
2188s if len(create_site) > 0:
2188s self.log("Starting site creation process.", "DEBUG")
2188s for each_config in create_site:
2188s payload_data = self.change_payload_data(each_config.get("want"))
2188s if payload_data:
2188s payload_data[self.keymap["parent_name_hierarchy"]] =\
2188s payload_data.get(self.keymap["parent_name"])
2188s del payload_data[self.keymap["parent_name"]]
2188s self.log("Payload data prepared for site creation: {}".format(payload_data), "DEBUG")
2188s
2188s if payload_data.get("type") == "area":
2188s self.handle_config["area"].append(payload_data)
2188s self.log("Added to area: {}".format(payload_data), "DEBUG")
2188s elif payload_data.get("type") == "building":
2188s self.handle_config["building"].append(payload_data)
2188s self.log("Added to building: {}".format(payload_data), "DEBUG")
2188s elif payload_data.get("type") == "floor":
2188s self.handle_config["floor"].append(payload_data)
2188s self.log("Added to floor: {}".format(payload_data), "DEBUG")
2188s for each_type in ("area", "building", "floor"):
2188s if self.handle_config[each_type]:
2188s self.log("Processing configurations for '{0}'.".format(each_type), "DEBUG")
2188s for create_config in self.handle_config[each_type]:
2188s self.log("Handling configuration: {0}".format(create_config), "DEBUG")
2188s parent_name = create_config.get(self.keymap.get("parent_name_hierarchy"))
2188s if not parent_name:
2188s self.msg = "No parent name found in configuration for '{0}'.".format(each_type)
2188s self.log(self.msg, "DEBUG")
2188s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status()
2188s self.log("Checking if parent site '{0}' exists in the hierarchy.".format(parent_name), "DEBUG")
2188s
2188s site_exists = self.is_site_exist(parent_name)
2188s if not site_exists:
2188s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name)
2188s self.log(self.msg, "DEBUG")
2188s self.site_absent_list.append(str(parent_name) + " does not exist ")
2188s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status()
2188s
2188s response = self.creating_bulk_site(self.handle_config[each_type])
2188s self.log("Response from creating_bulk_site for {}: {}".format(each_type, response), "DEBUG")
2188s
2188s if response and isinstance(response, dict) and "response" in response:
2188s task_id = response["response"].get("taskId")
2188s if task_id:
2188s self.log("Task Id for the 'site_creation' task is {}".format(task_id), "INFO")
2188s
2188s task_name = "create_sites"
2188s success_msg = "Site created successfully."
2188s self.get_task_status_from_tasks_by_id(task_id, task_name, success_msg)
2188s
2188s for site in self.handle_config[each_type]:
2188s if "name" in site:
2188s self.created_site_list.append(str(each_type) + ": " + str(site.get("name")))
2188s
2188s self.log("Site '{}' created successfully".format(self.created_site_list), "INFO")
2188s
2188s for site in self.handle_config[each_type]:
2188s if site.get("type") == "floor":
2188s floor_name = site.get("name")
2188s self.log("Floor '{}' has been created successfully.".format(floor_name), "INFO")
2188s
2188s upload_path = site.get("upload_floor_image_path", None)
2188s if upload_path:
2188s self.log("Upload path found for floor '{}'. Starting upload floor map from '{}.'".
2188s format(floor_name, upload_path), "INFO")
2188s
2188s map_details, map_status, success_message = self.upload_floor_image(site)
2188s if map_details:
2188s self.log("Floor map for '{}' uploaded successfully: {}".
2188s format(floor_name, success_message), "INFO")
2188s else:
2188s self.log("Floor map upload failed for '{}'. Please check the upload path and retry.".
2188s format(floor_name), "ERROR")
2188s else:
2188s self.log("No upload path provided for '{}'. Floor created without floor map.".
2188s format(floor_name), "INFO")
2188s else:
2188s self.log("No valid task ID received from the 'creating_bulk_site' response.", "WARNING")
2188s return None
2188s else:
2188s self.log("No response received from the 'creating_bulk_site' API call.", "WARNING")
2188s return None
2188s
2188s task_detail_list = []
2188s for each_config in self.have:
2188s site_name_hierarchy = each_config.get("site_name_hierarchy")
2188s
2188s if each_config.get("site_exists"):
2188s self.log("Processing site: {}".format(site_name_hierarchy), "DEBUG")
2188s payload_new = self.change_payload_data(each_config.get("want"))
2188s if payload_new.get("type") == "area":
2188s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy)
2188s self.log(self.msg, "INFO")
2188s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy)
2188s elif payload_new.get("type") in ("building", "floor"):
2188s site_params = each_config.get("site_params")
2188s site_params["site_id"] = each_config.get("site_id")
2188s site_type = site_params.get("type")
2188s
2188s if self.site_requires_update(each_config):
2188s self.log("Site requires update, starting update for type: {}".format(site_type), "DEBUG")
2188s response = (self.update_floor(site_params, payload_new) if site_type == "floor"
2188s else self.update_area(site_params) if site_type == "area"
2188s else self.update_building(site_params) if site_type == "building"
2188s else self.log("Unknown site type: {0}".format(site_type), "ERROR"))
2188s
2188s self.log("Received API response from 'update_site': {0}".
2188s format(str(response)), "DEBUG")
2188s
2188s if response and isinstance(response, dict):
2188s taskid = response["response"]["taskId"]
2188s
2188s while True:
2188s task_details = self.get_task_details(taskid)
2188s if site_type != "floor":
2188s if task_details.get("progress") == "Group is updated successfully":
2188s task_detail_list.append(task_details)
2188s self.updated_site_list.append(site_type + ": " + site_name_hierarchy)
2188s self.log("Site '{}' updated successfully.".format(site_name_hierarchy), "INFO")
2188s break
2188s else:
2188s if task_details.get("progress") == "Service domain is updated successfully.":
2188s task_detail_list.append(task_details)
2188s self.updated_site_list.append(site_type + ": " + site_name_hierarchy)
2188s break
2188s
2188s if task_details.get("bapiError"):
2188s msg = task_details.get("bapiError")
2188s self.set_operation_result("failed", False, msg, "ERROR",
2188s task_details).check_return_status()
2188s break
2188s else:
2188s self.msg = "Unable to execute the update the site: {0} ".format(site_name_hierarchy)
2188s self.log(self.msg, "INFO")
2188s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status()
2188s else:
2188s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy)
2188s self.log(self.msg, "INFO")
2188s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy)
2188s except Exception as e:
2188s self.log("Yaml is not available for bulk: {}".format(str(e)), "ERROR")
2188s
2188s return self
2188s
2188s else:
2188s site_params = self.want.get("site_params")
2188s site_type = site_params.get("type")
2188s if self.have.get("site_exists"):
2188s site_name_hierarchy = self.want.get("site_name_hierarchy")
2188s if not self.site_requires_update():
2188s self.update_not_needed_sites.append(site_type + ": " + site_name_hierarchy)
2188s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy)
2188s self.log(self.msg, "INFO")
2188s else:
2188s try:
2188s site_params["site_id"] = self.have.get("site_id")
2188s self.log("Site parameters prepared for update: {}".format(site_params))
2188s self.log("Site update process started.", "INFO")
2188s
2188s if site_params['site'].get('building'):
2188s building_details = {}
2188s for key, value in site_params['site']['building'].items():
2188s if value is not None:
2188s building_details[key] = value
2188s
2188s site_params['site']['building'] = building_details
2188s
2188s response = self.dnac._exec(
2188s family="sites",
2188s function='update_site',
2188s op_modifies=True,
2188s params=site_params,
2188s )
2188s self.log("Received API response from 'update_site': {0}".format(str(response)), "DEBUG")
2188s
2188s if response and isinstance(response, dict):
2188s execution_id = response.get("executionId")
2188s while True:
2188s execution_details = self.get_execution_details(execution_id)
2188s if execution_details.get("status") == "SUCCESS":
2188s self.result['changed'] = True
2188s site_updated = True
2188s self.updated_site_list.append(str(site_type) + ": " + str(site_name_hierarchy))
2188s self.log("Site - {0} Updated Successfully".format(site_name_hierarchy), "INFO")
2188s break
2188s elif execution_details.get("bapiError"):
2188s self.msg = "Unable to Update: " + execution_details.get("bapiError")
2188s self.set_operation_result("failed", False, self.msg, "ERROR",
2188s execution_details).check_return_status()
2188s
2188s except Exception as e:
2188s self.msg = "Unexpected error occurred while update: {0}".format(str(e))
2188s self.log(self.msg, "ERROR")
2188s self.set_operation_result("failed", False, self.msg, "ERROR",
2188s site_name_hierarchy).check_return_status()
2188s
2188s else:
2188s try:
2188s try:
2188s if site_params['site'].get('building'):
2188s building_details = {}
2188s for key, value in site_params['site']['building'].items():
2188s if value is not None:
2188s building_details[key] = value
2188s
2188s site_params['site']['building'] = building_details
2188s
2188s except Exception as e:
2188s site_type = site_params['type']
2188s name = site_params['site'][site_type]['name']
2188s self.log("The site '{0}' is not categorized as a building; no need to filter 'None' values.".
2188s format(name), "INFO")
2188s
2188s site_type = site_params['type']
2188s parent_name = site_params.get('site').get(site_type).get('parentName')
2188s try:
2188s response = self.get_site_v1(parent_name)
2188s if not response:
2188s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name)
2188s self.log(self.msg, "DEBUG")
2188s self.site_absent_list.append(str(parent_name) + " does not exist ")
2188s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status()
2188s except Exception as e:
2188s self.log("No response received from 'get_site_v1' API for site: {0}".format(parent_name + str(e)), "ERROR")
2188s
2188s > response = self.dnac._exec(
2188s family="sites",
2188s function='create_site',
2188s op_modifies=True,
2188s params=site_params,
2188s )
2188s
2188s plugins/modules/site_workflow_manager.py:1868:
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s /usr/lib/python3.13/unittest/mock.py:1169: in __call__
2188s return self._mock_call(*args, **kwargs)
2188s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call
2188s return self._execute_mock_call(*args, **kwargs)
2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2188s
2188s self =