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 = , args = () 2188s kwargs = {'family': 'sites', 'function': 'create_site', 'op_modifies': True, 'params': {'site': {'area': {'name': 'japan8888', 'parentName': 'Global'}}, 'type': 'area'}} 2188s effect = , result = 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 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_Site_workflow_manager_update_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:559: 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 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 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 self.log("Received API response from 'create_site': {0}".format(str(response)), "DEBUG") 2188s 2188s if response and isinstance(response, dict): 2188s executionid = response.get("executionId") 2188s while True: 2188s execution_details = self.get_execution_details(executionid) 2188s if execution_details.get("status") == "SUCCESS": 2188s self.result['changed'] = True 2188s break 2188s elif execution_details.get("bapiError"): 2188s self.msg = "Unable to Create: " + str(execution_details.get("bapiError")) 2188s self.set_operation_result("failed", False, self.msg, "ERROR", 2188s execution_details).check_return_status() 2188s break 2188s 2188s site_exists, current_site = self.site_exists() 2188s if site_exists: 2188s site_name_hierarchy = self.want.get("site_name_hierarchy") 2188s self.created_site_list.append(str(site_type) + ": " + str(site_name_hierarchy)) 2188s self.log("Site '{0}' created successfully".format(site_name_hierarchy), "INFO") 2188s return self 2188s 2188s except Exception as e: 2188s self.msg = "Unexpected error occurred while create: {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 E UnboundLocalError: cannot access local variable 'site_name_hierarchy' where it is not associated with a value 2188s 2188s plugins/modules/site_workflow_manager.py:1900: UnboundLocalError 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_diff_merged: 1898: Unexpected error occurred while create: 2188s _______ TestDnacSiteWorkflow.test_Site_workflow_manager_upload_floor_map _______ 2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_Site_workflow_manager_upload_floor_map(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:320: 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_invalid_delete_site ______ 2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_Site_workflow_manager_invalid_delete_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="deleted", 2188s config=self.delete_playbook_config 2188s ) 2188s ) 2188s self.maxDiff = None 2188s > result = self.execute_module(changed=False, failed=True) 2188s 2188s tests/unit/modules/dnac/test_site_workflow_manager.py:536: 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/site_workflow_manager.py:2542: in main 2188s module.exit_json(**ccc_site.result) 2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2188s 2188s def exit_json(*args, **kwargs): 2188s if "changed" not in kwargs: 2188s kwargs["changed"] = False 2188s > raise AnsibleExitJson(kwargs) 2188s E ansible_collections.ansible.netcommon.tests.unit.modules.utils.AnsibleExitJson: {'changed': True, 'diff': [], 'response': ['Global/bangalore', 'Global/bangalore/s1', 'Global/bangalore/s1/cherry4'], 'warnings': [], 'msg': "Given site(s) '['Global/bangalore', 'Global/bangalore/s1', 'Global/bangalore/s1/cherry4']' deleted successfully from Cisco Catalyst Center"} 2188s 2188s ../../ansible/netcommon/tests/unit/modules/utils.py:35: AnsibleExitJson 2188s ------------------------------ Captured log call ------------------------------- 2188s WARNING logger:dnac.py:294 Site: get_device_ids_from_site: 688: No devices found for site 'Global/bangalore' with site ID: '445a755e-b654-44b9-a294-3e304becc9ee'. 2188s 2188s WARNING logger:dnac.py:294 Site: get_device_ids_from_site: 688: No devices found for site 'Global/bangalore/s1' with site ID: '445a755e-b654-44b9-a294-3e304becc9ee'. 2188s 2188s WARNING logger:dnac.py:294 Site: get_device_ids_from_site: 688: No devices found for site 'Global/bangalore/s1/cherry4' with site ID: '445a755e-b654-44b9-a294-3e304becc9ee'. 2188s _ TestswimWorkflowManager.test_swim_workflow_manager_playbook_import_cco_image _ 2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_swim_workflow_manager_playbook_import_cco_image(self): 2188s """ 2188s Test case for SWIM workflow manager to import an image from Cisco's cloud (CCO). 2188s This test case verifies the import of an image from the CCO into the specified Cisco Catalyst Center. 2188s """ 2188s set_module_args( 2188s dict( 2188s dnac_version='2.3.7.6', 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_import_cco_image 2188s ) 2188s ) 2188s > result = self.execute_module(changed=True, failed=False) 2188s 2188s tests/unit/modules/dnac/test_swim_workflow_manager.py:303: 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/swim_workflow_manager.py:2413: in main 2188s ccc_swims.get_diff_import().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': "Error: Import image details are missing from the playbook or the Import Image API was not triggered successfully. Please ensure that all necessary details are provided and verify the status of the Import Image process. Details: 'list' object has no attribute 'get'", 'response': "Error: Import image details are missing from the playbook or the Import Image API was not triggered successfully. Please ensure that all necessary details are provided and verify the status of the Import Image process. Details: 'list' object has no attribute 'get'", 'failed': True} 2188s 2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 2188s ------------------------------ Captured log call ------------------------------- 2188s WARNING logger:dnac.py:294 Swim: get_diff_import: 1355: image_type - cco 2188s 2188s WARNING logger:dnac.py:294 Swim: get_diff_import: 1372: cat9k_iosxe_npe.17.12.04.SPA.bin 2188s 2188s WARNING logger:dnac.py:294 Swim: get_diff_import: 1434: importing with the import_params - {'id': '8b01c34b-7e5e-4181-81ee-9bece7b5d078'} 2188s 2188s ERROR logger:dnac.py:294 Swim: get_diff_import: 1520: Error: Import image details are missing from the playbook or the Import Image API was not triggered successfully. Please ensure that all necessary details are provided and verify the status of the Import Image process. Details: 'list' object has no attribute 'get' 2188s _ TestswimWorkflowManager.test_swim_workflow_manager_playbook_import_image_already_exist _ 2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_swim_workflow_manager_playbook_import_image_already_exist(self): 2188s """ 2188s Test case for swim workflow manager when giving import image already exist 2188s This test case checks the behavior of the swim workflow when giving import image already exist 2188s """ 2188s set_module_args( 2188s dict( 2188s dnac_version='2.3.5.3', 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_import_image_already_exist 2188s ) 2188s ) 2188s result = self.execute_module(changed=False, failed=False) 2188s > self.assertEqual( 2188s result.get('msg'), 2188s "Image(s) cat9k_iosxe.17.12.02.SPA.bin were skipped as they already exist in Cisco Catalyst Center. No new images were imported." 2188s ) 2188s E AssertionError: 'Imag[61 chars]y exist in Cisco Catalyst Center.' != 'Imag[61 chars]y exist in Cisco Catalyst Center. No new images were imported.' 2188s E - Image(s) cat9k_iosxe.17.12.02.SPA.bin were skipped as they already exist in Cisco Catalyst Center. 2188s E + Image(s) cat9k_iosxe.17.12.02.SPA.bin were skipped as they already exist in Cisco Catalyst Center. No new images were imported. 2188s E ? +++++++++++++++++++++++++++++ 2188s 2188s tests/unit/modules/dnac/test_swim_workflow_manager.py:465: AssertionError 2188s ------------------------------ Captured log call ------------------------------- 2188s WARNING logger:dnac.py:294 Swim: get_diff_import: 1355: image_type - remote 2188s 2188s WARNING logger:dnac.py:294 Swim: get_diff_import: 1372: cat9k_iosxe.17.12.02.SPA.bin 2188s ___ TestDnacSiteWorkflow.test_Site_workflow_manager_verify_diff_merged_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 = , args = () 2188s kwargs = {'family': 'sites', 'function': 'create_site', 'op_modifies': True, 'params': {'site': {'area': {'name': 'japan8888', 'parentName': 'Global'}}, 'type': 'area'}} 2188s effect = , result = 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 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_Site_workflow_manager_verify_diff_merged_site(self): 2188s """ 2188s Test case for verify parameters in site workflow manager after applying merged state. 2188s 2188s This test case checks the behavior of the site workflow manager after applying merged state 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_version="2.3.5.3", 2188s dnac_log=True, 2188s state="merged", 2188s config_verify=True, 2188s config=self.playbook_config_site 2188s ) 2188s ) 2188s > result = self.execute_module(changed=False, failed=False) 2188s 2188s tests/unit/modules/dnac/test_site_workflow_manager.py:442: 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 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 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 self.log("Received API response from 'create_site': {0}".format(str(response)), "DEBUG") 2188s 2188s if response and isinstance(response, dict): 2188s executionid = response.get("executionId") 2188s while True: 2188s execution_details = self.get_execution_details(executionid) 2188s if execution_details.get("status") == "SUCCESS": 2188s self.result['changed'] = True 2188s break 2188s elif execution_details.get("bapiError"): 2188s self.msg = "Unable to Create: " + str(execution_details.get("bapiError")) 2188s self.set_operation_result("failed", False, self.msg, "ERROR", 2188s execution_details).check_return_status() 2188s break 2188s 2188s site_exists, current_site = self.site_exists() 2188s if site_exists: 2188s site_name_hierarchy = self.want.get("site_name_hierarchy") 2188s self.created_site_list.append(str(site_type) + ": " + str(site_name_hierarchy)) 2188s self.log("Site '{0}' created successfully".format(site_name_hierarchy), "INFO") 2188s return self 2188s 2188s except Exception as e: 2188s self.msg = "Unexpected error occurred while create: {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 E UnboundLocalError: cannot access local variable 'site_name_hierarchy' where it is not associated with a value 2188s 2188s plugins/modules/site_workflow_manager.py:1900: UnboundLocalError 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_diff_merged: 1898: Unexpected error occurred while create: 2188s __ TestswimWorkflowManager.test_swim_workflow_manager_playbook_activate_image __ 2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_swim_workflow_manager_playbook_activate_image(self): 2188s """ 2188s Test case for swim workflow manager import image url 2188s This test case checks the behavior of activativating the image in the specified Cisco Catalyst Center. 2188s """ 2188s set_module_args( 2188s dict( 2188s dnac_version='2.3.5.3', 2188s dnac_host="1.1.1.1", 2188s dnac_username="dummy", 2188s dnac_password="dummy", 2188s dnac_log=True, 2188s config_verify=True, 2188s state="merged", 2188s config=self.playbook_activate_image 2188s ) 2188s ) 2188s > result = self.execute_module(changed=True, failed=False) 2188s 2188s tests/unit/modules/dnac/test_swim_workflow_manager.py:281: 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/swim_workflow_manager.py:2415: in main 2188s ccc_swims.get_diff_state_apply[state](config).check_return_status() 2188s plugins/modules/swim_workflow_manager.py:2113: in get_diff_merged 2188s self.get_diff_activation().check_return_status() 2188s plugins/modules/swim_workflow_manager.py:1964: in get_diff_activation 2188s device_uuid_list = self.get_device_uuids(site_name, device_family, device_role, device_series_name) 2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2188s 2188s def get_device_uuids(self, site_name, device_family, device_role, device_series_name=None): 2188s """ 2188s Retrieve a list of device UUIDs based on the specified criteria. 2188s Parameters: 2188s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 2188s site_name (str): The name of the site for which device UUIDs are requested. 2188s device_family (str): The family/type of devices to filter on. 2188s device_role (str): The role of devices to filter on. If None, 'ALL' roles are considered. 2188s device_series_name(str): Specifies the name of the device series. 2188s Returns: 2188s list: A list of device UUIDs that match the specified criteria. 2188s Description: 2188s The function checks the reachability status and role of devices in the given site. 2188s Only devices with "Reachable" status are considered, and filtering is based on the specified 2188s device family and role (if provided). 2188s """ 2188s 2188s device_uuid_list = [] 2188s device_id_list, site_response_list = [], [] 2188s if not site_name: 2188s site_name = "Global" 2188s self.log("Site name not specified; defaulting to 'Global' to fetch all devices under this category", "INFO") 2188s 2188s (site_exists, site_id) = self.site_exists(site_name) 2188s if not site_exists: 2188s self.log("""Site '{0}' is not found in the Cisco Catalyst Center, hence unable to fetch associated 2188s devices.""".format(site_name), "INFO") 2188s return device_uuid_list 2188s 2188s if device_series_name: 2188s if device_series_name.startswith(".*") and device_series_name.endswith(".*"): 2188s self.log("Device series name '{0}' is already in the regex format".format(device_series_name), "INFO") 2188s else: 2188s device_series_name = ".*" + device_series_name + ".*" 2188s 2188s if self.dnac_version <= self.version_2_3_5_3: 2188s site_params = { 2188s "site_id": site_id, 2188s "device_family": device_family 2188s } 2188s 2188s try: 2188s response = self.dnac._exec( 2188s family="sites", 2188s function='get_membership', 2188s op_modifies=True, 2188s params=site_params, 2188s ) 2188s 2188s except Exception as e: 2188s self.log("Unable to fetch the device(s) associated to the site '{0}' due to '{1}'".format(site_name, str(e)), "WARNING") 2188s return device_uuid_list 2188s 2188s self.log("Received API response from 'get_membership': {0}".format(str(response)), "DEBUG") 2188s response = response.get("device") 2188s 2188s > for item in response: 2188s E TypeError: 'NoneType' object is not iterable 2188s 2188s plugins/modules/swim_workflow_manager.py:935: TypeError 2188s ------------------------------ Captured log call ------------------------------- 2188s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 2188s __ TestswimWorkflowManager.test_swim_workflow_manager_playbook_site_not_exist __ 2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_swim_workflow_manager_playbook_site_not_exist(self): 2188s """ 2188s Test case for swim workflow manager when giving site not exist 2188s This test case checks the behavior of the swim workflow when giving site not exist 2188s """ 2188s set_module_args( 2188s dict( 2188s dnac_version='2.3.5.3', 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_site_not_exist 2188s ) 2188s ) 2188s result = self.execute_module(changed=False, failed=True) 2188s > self.assertEqual( 2188s result.get('msg'), 2188s "An exception occurred: Site 'Global/ltts/flor1' does not exist in the Cisco Catalyst Center" 2188s ) 2188s E AssertionError: "An e[26 chars]lobal/ltts/flor1' does not exist in the Cisco Catalyst Center." != "An e[26 chars]lobal/ltts/flor1' does not exist in the Cisco Catalyst Center" 2188s E - An exception occurred: Site 'Global/ltts/flor1' does not exist in the Cisco Catalyst Center. 2188s E ? - 2188s E + An exception occurred: Site 'Global/ltts/flor1' does not exist in the Cisco Catalyst Center 2188s 2188s tests/unit/modules/dnac/test_swim_workflow_manager.py:488: AssertionError 2188s ------------------------------ Captured log call ------------------------------- 2188s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 2188s 2188s ERROR logger:dnac.py:294 Swim: set_operation_result: 1780: An error occurred while executing GET API call to Function: 'get_site' from Family: 'sites'. Parameters: {'name': 'Global/ltts/flor1'}. Exception: . 2188s 2188s ERROR logger:dnac.py:294 Swim: site_exists: 671: An exception occurred: Site 'Global/ltts/flor1' does not exist in the Cisco Catalyst Center. 2188s _ TestswimWorkflowManager.test_swim_workflow_manager_playbook_image_distribution_failed _ 2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s def get_device_ip_from_id(self, device_id): 2188s """ 2188s Retrieve the management IP address of a device from Cisco Catalyst Center using its ID. 2188s Parameters: 2188s - self (object): An instance of a class used for interacting with Cisco Catalyst Center. 2188s - device_id (str): The unique identifier of the device in Cisco Catalyst Center. 2188s Returns: 2188s str: The management IP address of the specified device. 2188s Raises: 2188s Exception: If there is an error while retrieving the response from Cisco Catalyst Center. 2188s Description: 2188s This method queries Cisco Catalyst Center for the device details based on its unique identifier (ID). 2188s It uses the 'get_device_list' function in the 'devices' family, extracts the management IP address 2188s from the response, and returns it. If any error occurs during the process, an exception is raised 2188s with an appropriate error message logged. 2188s """ 2188s 2188s try: 2188s response = self.dnac._exec( 2188s family="devices", 2188s function='get_device_list', 2188s op_modifies=True, 2188s params={"id": device_id} 2188s ) 2188s self.log("Received API response from 'get_device_list': {0}".format(str(response)), "DEBUG") 2188s > response = response.get('response')[0] 2188s E KeyError: 0 2188s 2188s plugins/modules/swim_workflow_manager.py:1746: KeyError 2188s 2188s During handling of the above exception, another exception occurred: 2188s 2188s self = 2188s 2188s def test_swim_workflow_manager_playbook_image_distribution_failed(self): 2188s """ 2188s Test case for swim workflow manager when giving image distribution failed 2188s This test case checks the behavior of the swim workflow when giving image distribution failed 2188s """ 2188s set_module_args( 2188s dict( 2188s dnac_version='2.3.5.3', 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_image_distribution_failed 2188s ) 2188s ) 2188s > result = self.execute_module(changed=False, failed=True) 2188s 2188s tests/unit/modules/dnac/test_swim_workflow_manager.py:533: 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/swim_workflow_manager.py:2415: in main 2188s ccc_swims.get_diff_state_apply[state](config).check_return_status() 2188s plugins/modules/swim_workflow_manager.py:2110: in get_diff_merged 2188s self.get_diff_distribution().check_return_status() 2188s plugins/modules/swim_workflow_manager.py:1834: in get_diff_distribution 2188s device_ip = self.get_device_ip_from_id(distribution_device_id) 2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2188s 2188s def get_device_ip_from_id(self, device_id): 2188s """ 2188s Retrieve the management IP address of a device from Cisco Catalyst Center using its ID. 2188s Parameters: 2188s - self (object): An instance of a class used for interacting with Cisco Catalyst Center. 2188s - device_id (str): The unique identifier of the device in Cisco Catalyst Center. 2188s Returns: 2188s str: The management IP address of the specified device. 2188s Raises: 2188s Exception: If there is an error while retrieving the response from Cisco Catalyst Center. 2188s Description: 2188s This method queries Cisco Catalyst Center for the device details based on its unique identifier (ID). 2188s It uses the 'get_device_list' function in the 'devices' family, extracts the management IP address 2188s from the response, and returns it. If any error occurs during the process, an exception is raised 2188s with an appropriate error message logged. 2188s """ 2188s 2188s try: 2188s response = self.dnac._exec( 2188s family="devices", 2188s function='get_device_list', 2188s op_modifies=True, 2188s params={"id": device_id} 2188s ) 2188s self.log("Received API response from 'get_device_list': {0}".format(str(response)), "DEBUG") 2188s response = response.get('response')[0] 2188s device_ip = response.get("managementIpAddress") 2188s 2188s return device_ip 2188s except Exception as e: 2188s error_message = "Error occurred while getting the response of device from Cisco Catalyst Center: {0}".format(str(e)) 2188s self.log(error_message, "ERROR") 2188s > raise Exception(error_message) 2188s E Exception: Error occurred while getting the response of device from Cisco Catalyst Center: 0 2188s 2188s plugins/modules/swim_workflow_manager.py:1753: Exception 2188s ------------------------------ Captured log call ------------------------------- 2188s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 2188s 2188s ERROR logger:dnac.py:294 Swim: get_device_uuids: 1058: An exception occured while fetching the device uuids from Cisco Catalyst Center: string indices must be integers, not 'str' 2188s 2188s ERROR logger:dnac.py:294 Swim: get_device_ip_from_id: 1752: Error occurred while getting the response of device from Cisco Catalyst Center: 0 2188s _ TestswimWorkflowManager.test_swim_workflow_manager_playbook_swim_image_golden_already_tagged _ 2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_swim_workflow_manager_playbook_swim_image_golden_already_tagged(self): 2188s """ 2188s Test case for swim workflow manager when givingswim image golden already tagged 2188s This test case checks the behavior of the swim workflow when giving swim image golden already tagged 2188s """ 2188s set_module_args( 2188s dict( 2188s dnac_version='2.3.5.3', 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_swim_image_golden_already_tagged 2188s ) 2188s ) 2188s result = self.execute_module(changed=False, failed=False) 2188s > self.assertEqual( 2188s result.get('msg'), 2188s "SWIM Image 'cat9k_iosxe.17.12.02.SPA.bin' already tagged as Golden image in Cisco Catalyst Center" 2188s ) 2188s E AssertionError: "SWIM[52 chars] as Golden image in Cisco Catalyst Center for the roles - ALL." != "SWIM[52 chars] as Golden image in Cisco Catalyst Center" 2188s E - SWIM Image 'cat9k_iosxe.17.12.02.SPA.bin' already tagged as Golden image in Cisco Catalyst Center for the roles - ALL. 2188s E ? --------------------- 2188s E + SWIM Image 'cat9k_iosxe.17.12.02.SPA.bin' already tagged as Golden image in Cisco Catalyst Center 2188s 2188s tests/unit/modules/dnac/test_swim_workflow_manager.py:580: AssertionError 2188s ------------------------------ Captured log call ------------------------------- 2188s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 2188s _ TestswimWorkflowManager.test_swim_workflow_manager_playbook_swim_image_golden_tag _ 2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_swim_workflow_manager_playbook_swim_image_golden_tag(self): 2188s """ 2188s Test case for swim workflow manager when givingswim image golden already tagged 2188s This test case checks the behavior of the swim workflow when giving swim image golden tagged 2188s """ 2188s set_module_args( 2188s dict( 2188s dnac_version='2.3.5.3', 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_swim_image_golden_tag 2188s ) 2188s ) 2188s result = self.execute_module(changed=True, failed=False) 2188s > self.assertEqual( 2188s result.get('msg'), 2188s "Tagging image cat9k_iosxe.17.12.02.SPA.bin golden for site Global for family Cisco Catalyst 9300 Switch for device deviceTag ALL successful." 2188s ) 2188s E AssertionError: 'Tagging image cat9k_iosxe.17.12.02.SPA.bin golden for s[76 chars]ful.' != 'Tagging image cat9k_iosxe.17.12.02.SPA.bin golden for[85 chars]ful.' 2188s E - Tagging image cat9k_iosxe.17.12.02.SPA.bin golden for site Global for family Cisco Catalyst 9300 Switch for device role ALL successful. 2188s E ? ^^^ 2188s E + Tagging image cat9k_iosxe.17.12.02.SPA.bin golden for site Global for family Cisco Catalyst 9300 Switch for device deviceTag ALL successful. 2188s E ? + + + + ^ +++++++ 2188s 2188s tests/unit/modules/dnac/test_swim_workflow_manager.py:557: AssertionError 2188s ------------------------------ Captured log call ------------------------------- 2188s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 2188s 2188s WARNING logger:dnac.py:294 Swim: get_have: 1154: Site Name not given by user. Using global site. 2188s 2188s WARNING logger:dnac.py:294 Swim: get_have: 1154: Site Name not given by user. Using global site. 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_create_1_role _ 2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_create_1_role(self): 2188s """ 2188s Test case for user role workflow manager when creating a role. 2188s 2188s This test case checks the behavior of the role workflow when creating a new role in the specified Cisco Calyst 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_config_1_role 2188s ) 2188s ) 2188s > result = self.execute_module(changed=True, failed=False) 2188s 2188s tests/unit/modules/dnac/test_user_role_workflow_manager.py:510: 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/user_role_workflow_manager.py:3458: in main 2188s ccc_user_role.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 user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s 2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_create_default_role _ 2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_create_default_role(self): 2188s """ 2188s Test case for user role workflow manager when update is not needed for a role . 2188s 2188s This test case checks the behavior of the role workflow when update is not needed for a role in the specified Cisco Calyst 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_config_for_creating_default_role 2188s ) 2188s ) 2188s > result = self.execute_module(changed=True, failed=False) 2188s 2188s tests/unit/modules/dnac/test_user_role_workflow_manager.py:787: 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/user_role_workflow_manager.py:3458: in main 2188s ccc_user_role.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 user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s 2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 2188s _ TestswimWorkflowManager.test_swim_workflow_manager_playbook_untag_image_as_golden_and_load_on_device _ 2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_swim_workflow_manager_playbook_untag_image_as_golden_and_load_on_device(self): 2188s """ 2188s Test case for swim workflow manager when giving untag image as golden and load on device 2188s This test case checks the behavior of the swim workflow when giving untag image as golden and load on device 2188s """ 2188s set_module_args( 2188s dict( 2188s dnac_version='2.3.5.3', 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_untag_image_as_golden_and_load_on_device 2188s ) 2188s ) 2188s result = self.execute_module(changed=True, failed=False) 2188s print(result) 2188s > self.assertEqual( 2188s result.get('msg'), 2188s "Untagging of image cat9k_iosxe.17.12.02.SPA.bin for site LTTS for family Cisco \ 2188s Catalyst 9000 UADP 8 Port Virtual Switch for device deviceTag ALL successful." 2188s ) 2188s E AssertionError: 'Un-Tagging image cat9k_iosxe.17.12.02.SPA.b[116 chars]ful.' != 'Untagging of image cat9k_iosxe.17.12.02.SP[112 chars]ful.' 2188s E - Un-Tagging image cat9k_iosxe.17.12.02.SPA.bin golden for site Global/LTTS for family Cisco Catalyst 9000 UADP 8 Port Virtual Switch for device role ALL successful. 2188s E ? ^^ ------- ^^^^^^^ ^^^ 2188s E + Untagging of image cat9k_iosxe.17.12.02.SPA.bin for site LTTS for family Cisco Catalyst 9000 UADP 8 Port Virtual Switch for device deviceTag ALL successful. 2188s E ? ^ +++ + ^ + ^ +++++++ 2188s 2188s tests/unit/modules/dnac/test_swim_workflow_manager.py:442: AssertionError 2188s ----------------------------- Captured stdout call ----------------------------- 2188s {'changed': True, 'diff': [], 'response': 'Un-Tagging image cat9k_iosxe.17.12.02.SPA.bin golden for site Global/LTTS for family Cisco Catalyst 9000 UADP 8 Port Virtual Switch for device role ALL successful.', 'warnings': [], 'msg': 'Un-Tagging image cat9k_iosxe.17.12.02.SPA.bin golden for site Global/LTTS for family Cisco Catalyst 9000 UADP 8 Port Virtual Switch for device role ALL successful.'} 2188s ------------------------------ Captured log call ------------------------------- 2188s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_create_role __ 2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_create_role(self): 2188s """ 2188s Test case for user role workflow manager when creating a role. 2188s 2188s This test case checks the behavior of the role workflow when creating a new role in the specified Cisco Calyst 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_config_role 2188s ) 2188s ) 2188s > result = self.execute_module(changed=True, failed=False) 2188s 2188s tests/unit/modules/dnac/test_user_role_workflow_manager.py:487: 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/user_role_workflow_manager.py:3458: in main 2188s ccc_user_role.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 user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s 2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 2188s _ TestswimWorkflowManager.test_swim_workflow_playbook_image_distribution_successfull _ 2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_swim_workflow_playbook_image_distribution_successfull(self): 2188s """ 2188s Test case for SWIM workflow manager image distribution. 2188s This test case verifies the successful distribution of an image to all specified devices in the Cisco Catalyst Center. 2188s """ 2188s set_module_args( 2188s dict( 2188s dnac_version='2.3.5.3', 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_image_distribution_successfull 2188s ) 2188s ) 2188s > result = self.execute_module(changed=True, failed=False) 2188s 2188s tests/unit/modules/dnac/test_swim_workflow_manager.py:395: 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/swim_workflow_manager.py:2415: in main 2188s ccc_swims.get_diff_state_apply[state](config).check_return_status() 2188s plugins/modules/swim_workflow_manager.py:2110: in get_diff_merged 2188s self.get_diff_distribution().check_return_status() 2188s plugins/modules/swim_workflow_manager.py:1828: in get_diff_distribution 2188s device_uuid_list = self.get_device_uuids(site_name, device_family, device_role, device_series_name) 2188s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2188s 2188s def get_device_uuids(self, site_name, device_family, device_role, device_series_name=None): 2188s """ 2188s Retrieve a list of device UUIDs based on the specified criteria. 2188s Parameters: 2188s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 2188s site_name (str): The name of the site for which device UUIDs are requested. 2188s device_family (str): The family/type of devices to filter on. 2188s device_role (str): The role of devices to filter on. If None, 'ALL' roles are considered. 2188s device_series_name(str): Specifies the name of the device series. 2188s Returns: 2188s list: A list of device UUIDs that match the specified criteria. 2188s Description: 2188s The function checks the reachability status and role of devices in the given site. 2188s Only devices with "Reachable" status are considered, and filtering is based on the specified 2188s device family and role (if provided). 2188s """ 2188s 2188s device_uuid_list = [] 2188s device_id_list, site_response_list = [], [] 2188s if not site_name: 2188s site_name = "Global" 2188s self.log("Site name not specified; defaulting to 'Global' to fetch all devices under this category", "INFO") 2188s 2188s (site_exists, site_id) = self.site_exists(site_name) 2188s if not site_exists: 2188s self.log("""Site '{0}' is not found in the Cisco Catalyst Center, hence unable to fetch associated 2188s devices.""".format(site_name), "INFO") 2188s return device_uuid_list 2188s 2188s if device_series_name: 2188s if device_series_name.startswith(".*") and device_series_name.endswith(".*"): 2188s self.log("Device series name '{0}' is already in the regex format".format(device_series_name), "INFO") 2188s else: 2188s device_series_name = ".*" + device_series_name + ".*" 2188s 2188s if self.dnac_version <= self.version_2_3_5_3: 2188s site_params = { 2188s "site_id": site_id, 2188s "device_family": device_family 2188s } 2188s 2188s try: 2188s response = self.dnac._exec( 2188s family="sites", 2188s function='get_membership', 2188s op_modifies=True, 2188s params=site_params, 2188s ) 2188s 2188s except Exception as e: 2188s self.log("Unable to fetch the device(s) associated to the site '{0}' due to '{1}'".format(site_name, str(e)), "WARNING") 2188s return device_uuid_list 2188s 2188s self.log("Received API response from 'get_membership': {0}".format(str(response)), "DEBUG") 2188s response = response.get("device") 2188s 2188s > for item in response: 2188s E TypeError: 'NoneType' object is not iterable 2188s 2188s plugins/modules/swim_workflow_manager.py:935: TypeError 2188s ------------------------------ Captured log call ------------------------------- 2188s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_create_user __ 2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_create_user(self): 2188s """ 2188s Test case for user role workflow manager when creating a user. 2188s 2188s This test case checks the behavior of the user workflow when creating a new user 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=self.playbook_config_user 2188s ) 2188s ) 2188s > result = self.execute_module(changed=True, failed=False) 2188s 2188s tests/unit/modules/dnac/test_user_role_workflow_manager.py:228: 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/user_role_workflow_manager.py:3458: in main 2188s ccc_user_role.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 user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s 2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_delete_existing_role _ 2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_delete_existing_role(self): 2188s """ 2188s Test case for user role workflow manager when deleting a role. 2188s 2188s This test case checks the behavior of the role workflow when deleting a role in the specified Cisco Calyst 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=self.playbook_config_role 2188s ) 2188s ) 2188s > result = self.execute_module(changed=True, failed=False) 2188s 2188s tests/unit/modules/dnac/test_user_role_workflow_manager.py:579: 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/user_role_workflow_manager.py:3458: in main 2188s ccc_user_role.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 user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s 2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 2188s _ TestswimWorkflowManager.test_swim_workflow_playbook_image_distribution_successfull_v2_3_7_6 _ 2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s def site_exists(self, site_name): 2188s """ 2188s Parameters: 2188s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 2188s Returns: 2188s tuple: A tuple containing two values: 2188s - site_exists (bool): A boolean indicating whether the site exists (True) or not (False). 2188s - site_id (str or None): The ID of the site if it exists, or None if the site is not found. 2188s Description: 2188s This method checks the existence of a site in the Catalyst Center. If the site is found,it sets 'site_exists' to True, 2188s retrieves the site's ID, and returns both values in a tuple. If the site does not exist, 'site_exists' is set 2188s to False, and 'site_id' is None. If an exception occurs during the site lookup, an exception is raised. 2188s """ 2188s 2188s site_exists = False 2188s site_id = None 2188s response = None 2188s 2188s try: 2188s response = self.get_site(site_name) 2188s if response is None: 2188s > raise ValueError 2188s E ValueError 2188s 2188s plugins/modules/swim_workflow_manager.py:662: ValueError 2188s 2188s During handling of the above exception, another exception occurred: 2188s 2188s self = 2188s 2188s def test_swim_workflow_playbook_image_distribution_successfull_v2_3_7_6(self): 2188s """ 2188s Test case for SWIM workflow manager image distribution with DNAC version 2.3.7.6. 2188s This test case verifies the successful distribution of an image to all specified devices in the Cisco Catalyst Center for DNAC version 2.3.7.6. 2188s """ 2188s set_module_args( 2188s dict( 2188s dnac_version='2.3.7.6', 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_image_distribution_successfull_v2_3_7_6 2188s ) 2188s ) 2188s > result = self.execute_module(changed=True, failed=False) 2188s 2188s tests/unit/modules/dnac/test_swim_workflow_manager.py:418: 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/swim_workflow_manager.py:2417: in main 2188s ccc_swims.verify_diff_state_apply[state](config).check_return_status() 2188s plugins/modules/swim_workflow_manager.py:2314: in verify_diff_merged 2188s self.get_have() 2188s plugins/modules/swim_workflow_manager.py:1167: in get_have 2188s (site_exists, site_id) = self.site_exists(site_name) 2188s plugins/modules/swim_workflow_manager.py:672: in site_exists 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 exception occurred: Site 'Global/LTTS/FLOOR1' does not exist in the Cisco Catalyst Center.", 'response': "An exception occurred: Site 'Global/LTTS/FLOOR1' does not exist in the Cisco Catalyst Center.", 'failed': True} 2188s 2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 2188s ------------------------------ Captured log call ------------------------------- 2188s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 2188s 2188s WARNING logger:dnac.py:294 Swim: get_diff_distribution: 1892: The SWIM image distribution task could not proceed because no eligible devices were found 2188s 2188s WARNING logger:dnac.py:294 Swim: execute_get_request: 1866: Empty 'response' key in the API response from GET API call to Function: 'get_sites' from Family: 'site_design'. 2188s 2188s ERROR logger:dnac.py:294 Swim: site_exists: 671: An exception occurred: Site 'Global/LTTS/FLOOR1' does not exist in the Cisco Catalyst Center. 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_invalid_param_role_update_invalid_permission _ 2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_invalid_param_role_update_invalid_permission(self): 2188s """ 2188s Test case for user workflow manager when invalid role param given. 2188s 2188s This test case checks the behavior of the user workflow when invalid role param given 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=self.playbook_config_invalid_param_role_invalid_permission 2188s ) 2188s ) 2188s result = self.execute_module(changed=False, failed=True) 2188s print(result) 2188s > self.assertEqual( 2188s result.get("msg"), 2188s "Invalid permission aaa for assurance resource overall" 2188s ) 2188s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'Invalid permission aaa for assurance resource overall' 2188s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 2188s E + Invalid permission aaa for assurance resource overall 2188s 2188s tests/unit/modules/dnac/test_user_role_workflow_manager.py:766: AssertionError 2188s ----------------------------- Captured stdout call ----------------------------- 2188s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_invalid_param_type_list_missing _ 2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_invalid_param_type_list_missing(self): 2188s """ 2188s Test case for user workflow manager when invalid role param given. 2188s 2188s This test case checks the behavior of the user workflow when invalid role param given 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=self.playbook_config_invalid_param_type_list_missing 2188s ) 2188s ) 2188s result = self.execute_module(changed=False, failed=True) 2188s print(result) 2188s > self.assertEqual( 2188s result.get("msg"), 2188s "Configuration is not available in the playbook for validation or user/role details are not type list" 2188s ) 2188s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'Configuration is not available in the pl[56 chars]list' 2188s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 2188s E + Configuration is not available in the playbook for validation or user/role details are not type list 2188s 2188s tests/unit/modules/dnac/test_user_role_workflow_manager.py:720: AssertionError 2188s ----------------------------- Captured stdout call ----------------------------- 2188s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_role_invalid_param_not_type_list _ 2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_role_invalid_param_not_type_list(self): 2188s """ 2188s Test case for user role workflow manager when invalid role param given. 2188s 2188s This test case checks the behavior of the role workflow when invalid role param given in the specified Cisco Calyst 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_config_invalid_param_role_not_type_list 2188s ) 2188s ) 2188s result = self.execute_module(changed=False, failed=True) 2188s print(result) 2188s > self.assertEqual( 2188s result.get('msg'), 2188s "Invalid parameter(s) found in playbook: {'overall': 'read'} : is not a valid list" 2188s ) 2188s E AssertionError: "The specified version '2.2.3.3' does not [315 chars]les." != "Invalid parameter(s) found in playbook: {[36 chars]list" 2188s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 2188s E + Invalid parameter(s) found in playbook: {'overall': 'read'} : is not a valid list 2188s 2188s tests/unit/modules/dnac/test_user_role_workflow_manager.py:650: AssertionError 2188s ----------------------------- Captured stdout call ----------------------------- 2188s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_delete_existing_user _ 2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_delete_existing_user(self): 2188s """ 2188s Test case for user role workflow manager when deleting a user. 2188s 2188s This test case checks the behavior of the user workflow when deleting a user 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="deleted", 2188s config=self.playbook_config_delete_existing_user 2188s ) 2188s ) 2188s > result = self.execute_module(changed=True, failed=False) 2188s 2188s tests/unit/modules/dnac/test_user_role_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/user_role_workflow_manager.py:3458: in main 2188s ccc_user_role.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 user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s 2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_delete_non_existing_role _ 2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_delete_non_existing_role(self): 2188s """ 2188s Test case for user role workflow manager when deleting a non existing role. 2188s 2188s This test case checks the behavior of the role workflow when deleting a non existing role in the specified Cisco Calyst 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=self.playbook_config_role 2188s ) 2188s ) 2188s result = self.execute_module(changed=False, failed=True) 2188s print(result) 2188s > self.assertEqual( 2188s result.get('msg'), 2188s "Please provide a valid role_name for role deletion" 2188s ) 2188s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'Please provide a valid role_name for role deletion' 2188s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 2188s E + Please provide a valid role_name for role deletion 2188s 2188s tests/unit/modules/dnac/test_user_role_workflow_manager.py:604: AssertionError 2188s ----------------------------- Captured stdout call ----------------------------- 2188s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_role_invalid_param_rolename_not_correct_formate _ 2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_role_invalid_param_rolename_not_correct_formate(self): 2188s """ 2188s Test case for user workflow manager when invalid role param given. 2188s 2188s This test case checks the behavior of the user workflow when invalid role param given 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=self.playbook_config_invalid_param_rolename_not_correct_formate 2188s ) 2188s ) 2188s result = self.execute_module(changed=False, failed=True) 2188s print(result) 2188s > self.assertEqual( 2188s result.get("msg"), 2188s "Invalid parameters in playbook config: role_name: 'Test_Role_1 ' must only contain letters, numbers, underscores \ 2188s and hyphens and should not contain spaces or other special characters." 2188s ) 2188s E AssertionError: "The specified version '2.2.3.3' does not [315 chars]les." != "Invalid parameters in playbook config: ro[138 chars]ers." 2188s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 2188s E + Invalid parameters in playbook config: role_name: 'Test_Role_1 ' must only contain letters, numbers, underscores and hyphens and should not contain spaces or other special characters. 2188s 2188s tests/unit/modules/dnac/test_user_role_workflow_manager.py:696: AssertionError 2188s ----------------------------- Captured stdout call ----------------------------- 2188s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_delete_non_existing_user _ 2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_delete_non_existing_user(self): 2188s """ 2188s Test case for user role workflow manager when deleting a non existing user. 2188s 2188s This test case checks the behavior of the user workflow when deleting a non existing user 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="deleted", 2188s config=self.playbook_config_user 2188s ) 2188s ) 2188s result = self.execute_module(changed=False, failed=True) 2188s print(result) 2188s > self.assertEqual( 2188s result.get("msg"), 2188s "Please provide a valid 'username' or 'email' for user deletion" 2188s ) 2188s E AssertionError: "The specified version '2.2.3.3' does not [315 chars]les." != "Please provide a valid 'username' or 'ema[17 chars]tion" 2188s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 2188s E + Please provide a valid 'username' or 'email' for user deletion 2188s 2188s tests/unit/modules/dnac/test_user_role_workflow_manager.py:322: AssertionError 2188s ----------------------------- Captured stdout call ----------------------------- 2188s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_role_invalid_param_rolename_not_present _ 2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_role_invalid_param_rolename_not_present(self): 2188s """ 2188s Test case for user role workflow manager when invalid role param given. 2188s 2188s This test case checks the behavior of the role workflow when invalid role param given in the specified Cisco Calyst 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_config_invalid_param_rolename_not_present 2188s ) 2188s ) 2188s result = self.execute_module(changed=False, failed=True) 2188s print(result) 2188s > self.assertEqual( 2188s result.get('msg'), 2188s "Configuration params like 'username' or 'email' or 'role_name' is not available in the playbook" 2188s ) 2188s E AssertionError: "The specified version '2.2.3.3' does not [315 chars]les." != "Configuration params like 'username' or '[50 chars]book" 2188s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 2188s E + Configuration params like 'username' or 'email' or 'role_name' is not available in the playbook 2188s 2188s tests/unit/modules/dnac/test_user_role_workflow_manager.py:627: AssertionError 2188s ----------------------------- Captured stdout call ----------------------------- 2188s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_invalid_param_role_invalid_permission _ 2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_invalid_param_role_invalid_permission(self): 2188s """ 2188s Test case for user workflow manager when invalid role param given. 2188s 2188s This test case checks the behavior of the user workflow when invalid role param given 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=self.playbook_config_invalid_param_role_invalid_permission 2188s ) 2188s ) 2188s result = self.execute_module(changed=False, failed=True) 2188s print(result) 2188s > self.assertEqual( 2188s result.get("msg"), 2188s "Invalid permission aaa for assurance resource overall" 2188s ) 2188s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'Invalid permission aaa for assurance resource overall' 2188s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 2188s E + Invalid permission aaa for assurance resource overall 2188s 2188s tests/unit/modules/dnac/test_user_role_workflow_manager.py:743: AssertionError 2188s ----------------------------- Captured stdout call ----------------------------- 2188s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_role_param_with_all_permision_deny _ 2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_role_param_with_all_permision_deny(self): 2188s """ 2188s Test case for user role workflow manager when invalid role param given. 2188s 2188s This test case checks the behavior of the role workflow when invalid role param given in the specified Cisco Calyst 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_config_invalid_param_with_all_permision_deny 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 while creating the role without access-level parameters and permissions" 2188s ) 2188s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'An error occurred while creating the rol[45 chars]ions' 2188s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 2188s E + An error occurred while creating the role without access-level parameters and permissions 2188s 2188s tests/unit/modules/dnac/test_user_role_workflow_manager.py:673: AssertionError 2188s ----------------------------- Captured stdout call ----------------------------- 2188s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_role_update_needed _ 2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_role_update_needed(self): 2188s """ 2188s Test case for user role workflow manager when update for a role is needed. 2188s 2188s This test case checks the behavior of the role workflow when updating a existing role in the specified Cisco Calyst 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_config_role 2188s ) 2188s ) 2188s > result = self.execute_module(changed=True, failed=False) 2188s 2188s tests/unit/modules/dnac/test_user_role_workflow_manager.py:533: 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/user_role_workflow_manager.py:3458: in main 2188s ccc_user_role.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 user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s 2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_role_update_not_needed _ 2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_role_update_not_needed(self): 2188s """ 2188s Test case for user role workflow manager when update is not needed for a role . 2188s 2188s This test case checks the behavior of the role workflow when update is not needed for a role in the specified Cisco Calyst 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_config_role 2188s ) 2188s ) 2188s > result = self.execute_module(changed=False, failed=False) 2188s 2188s tests/unit/modules/dnac/test_user_role_workflow_manager.py:556: 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/user_role_workflow_manager.py:3458: in main 2188s ccc_user_role.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 user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s 2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_invalid_mandatory_field_not_present_param _ 2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_user_invalid_mandatory_field_not_present_param(self): 2188s """ 2188s Test case for user workflow manager when invalid user param given. 2188s 2188s This test case checks the behavior of the user workflow when invalid user param given 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=self.playbook_config_invalid_param_mandatory_field_not_present 2188s ) 2188s ) 2188s result = self.execute_module(changed=False, failed=True) 2188s print(result) 2188s > self.assertEqual( 2188s result.get("msg"), 2188s "Mandatory field not present: An error occurred while creating the user" 2188s ) 2188s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'Mandatory field not present: An error oc[26 chars]user' 2188s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 2188s E + Mandatory field not present: An error occurred while creating the user 2188s 2188s tests/unit/modules/dnac/test_user_role_workflow_manager.py:345: AssertionError 2188s ----------------------------- Captured stdout call ----------------------------- 2188s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_invalid_param_not_correct_formate _ 2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_user_invalid_param_not_correct_formate(self): 2188s """ 2188s Test case for user workflow manager when invalid user param given. 2188s 2188s This test case checks the behavior of the user workflow when invalid user param given 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=self.playbook_config_invalid_param_username_not_correct_formate 2188s ) 2188s ) 2188s result = self.execute_module(changed=False, failed=True) 2188s print(result) 2188s > self.assertEqual( 2188s result.get("msg"), 2188s "Invalid parameters in playbook config: first_name: 'ajith ' must only contain letters, \ 2188s numbers, underscores and hyphens and should not contain spaces or other \ 2188s special characters., last_name: 'andrew ' must only contain letters, numbers, underscores \ 2188s and hyphens and should not contain spaces or other special characters., email: Invalid email format for 'email': ajith.andrewexample.com, \ 2188s password: 'Password' does not meet complexity requirements for password: \ 2188s Ajith123, username: 'ajithandrewj ' must only contain letters, numbers, underscores \ 2188s and hyphens and should not contain spaces or other special characters." 2188s ) 2188s E AssertionError: "The specified version '2.2.3.3' does not [315 chars]les." != "Invalid parameters in playbook config: fi[569 chars]ers." 2188s E Diff is 981 characters long. Set self.maxDiff to None to see it. 2188s 2188s tests/unit/modules/dnac/test_user_role_workflow_manager.py:391: AssertionError 2188s ----------------------------- Captured stdout call ----------------------------- 2188s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_invalid_param_not_type_list _ 2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_user_invalid_param_not_type_list(self): 2188s """ 2188s Test case for user role workflow manager when invalid user param given. 2188s 2188s This test case checks the behavior of the role workflow when invalid user param given in the specified Cisco Calyst 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_config_invalid_param_user_rolelist_not_type_list 2188s ) 2188s ) 2188s result = self.execute_module(changed=False, failed=True) 2188s print(result) 2188s > self.assertEqual( 2188s result.get('msg'), 2188s "Invalid parameter(s) found in playbook: Super-Admin-Role : is not a valid list" 2188s ) 2188s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'Invalid parameter(s) found in playbook: [34 chars]list' 2188s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 2188s E + Invalid parameter(s) found in playbook: Super-Admin-Role : is not a valid list 2188s 2188s tests/unit/modules/dnac/test_user_role_workflow_manager.py:420: AssertionError 2188s ----------------------------- Captured stdout call ----------------------------- 2188s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_invalid_param_rolelist_not_found _ 2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_user_invalid_param_rolelist_not_found(self): 2188s """ 2188s Test case for user role workflow manager when invalid user param given. 2188s 2188s This test case checks the behavior of the role workflow when invalid user param given in the specified Cisco Calyst 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_config_user_invalid_param_rolelist_not_found 2188s ) 2188s ) 2188s result = self.execute_module(changed=False, failed=True) 2188s print(result) 2188s > self.assertEqual( 2188s result.get('msg'), 2188s "The role name in the user details role_list is not present in the Cisco Catalyst Center, Please provide a valid role name" 2188s ) 2188s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'The role name in the user details role_l[77 chars]name' 2188s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 2188s E + The role name in the user details role_list is not present in the Cisco Catalyst Center, Please provide a valid role name 2188s 2188s tests/unit/modules/dnac/test_user_role_workflow_manager.py:443: AssertionError 2188s ----------------------------- Captured stdout call ----------------------------- 2188s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_invalid_param_update_rolelist_not_found _ 2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_user_invalid_param_update_rolelist_not_found(self): 2188s """ 2188s Test case for user role workflow manager when invalid user param given. 2188s 2188s This test case checks the behavior of the role workflow when invalid user param given in the specified Cisco Calyst 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_config_user_invalid_param_rolelist_not_found 2188s ) 2188s ) 2188s result = self.execute_module(changed=False, failed=True) 2188s print(result) 2188s > self.assertEqual( 2188s result.get('msg'), 2188s "The role name in the user details role_list is not present in the Cisco Catalyst Center, Please provide a valid role name" 2188s ) 2188s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'The role name in the user details role_l[77 chars]name' 2188s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 2188s E + The role name in the user details role_list is not present in the Cisco Catalyst Center, Please provide a valid role name 2188s 2188s tests/unit/modules/dnac/test_user_role_workflow_manager.py:466: AssertionError 2188s ----------------------------- Captured stdout call ----------------------------- 2188s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_invalid_username_email_not_present_param _ 2188s 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/dnac/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/dnac --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/dnac tests/unit/modules/dnac/test_accesspoint_workflow_manager.py tests/unit/modules/dnac/test_device_credential_workflow_manager.py tests/unit/modules/dnac/test_discovery_intent.py tests/unit/modules/dnac/test_inventory_workflow_manager.py tests/unit/modules/dnac/test_network_compliance_workflow_manager.py tests/unit/modules/dnac/test_network_settings_workflow_manager.py tests/unit/modules/dnac/test_pnp_intent.py tests/unit/modules/dnac/test_pnp_workflow_manager.py tests/unit/modules/dnac/test_provision_workflow_manager.py tests/unit/modules/dnac/test_rma_workflow_manager.py tests/unit/modules/dnac/test_site_intent.py tests/unit/modules/dnac/test_site_workflow_manager.py tests/unit/modules/dnac/test_swim_intent.py tests/unit/modules/dnac/test_swim_workflow_manager.py tests/unit/modules/dnac/test_template_intent.py tests/unit/modules/dnac/test_user_role_workflow_manager.py" returned exit status 1. 2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_user_invalid_username_email_not_present_param(self): 2188s """ 2188s Test case for user workflow manager when invalid user param given. 2188s 2188s This test case checks the behavior of the user workflow when invalid user param given 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=self.playbook_config_invalid_param_username_email_not_present 2188s ) 2188s ) 2188s result = self.execute_module(changed=False, failed=True) 2188s print(result) 2188s > self.assertEqual( 2188s result.get("msg"), 2188s "Configuration params like 'username' or 'email' or 'role_name' is not available in the playbook" 2188s ) 2188s E AssertionError: "The specified version '2.2.3.3' does not [315 chars]les." != "Configuration params like 'username' or '[50 chars]book" 2188s E - The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles. 2188s E + Configuration params like 'username' or 'email' or 'role_name' is not available in the playbook 2188s 2188s tests/unit/modules/dnac/test_user_role_workflow_manager.py:368: AssertionError 2188s ----------------------------- Captured stdout call ----------------------------- 2188s {'msg': "The specified version '2.2.3.3' does not support the user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_update_needed _ 2188s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_user_update_needed(self): 2188s """ 2188s Test case for user role workflow manager when updating a user. 2188s 2188s This test case checks the behavior of the user workflow when updating a user 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=self.playbook_config_user 2188s ) 2188s ) 2188s > result = self.execute_module(changed=True, failed=False) 2188s 2188s tests/unit/modules/dnac/test_user_role_workflow_manager.py:251: 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/user_role_workflow_manager.py:3458: in main 2188s ccc_user_role.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 user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s 2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 2188s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_update_not_needed _ 2188s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2188s 2188s self = 2188s 2188s def test_user_role_workflow_manager_user_update_not_needed(self): 2188s """ 2188s Test case for user role workflow manager when user update not needed. 2188s 2188s This test case checks the behavior of the user workflow when user update not needed 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=self.playbook_config_user 2188s ) 2188s ) 2188s > result = self.execute_module(changed=False, failed=False) 2188s 2188s tests/unit/modules/dnac/test_user_role_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/user_role_workflow_manager.py:3458: in main 2188s ccc_user_role.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 user and role workflow feature. Supported versions start from '2.3.5.3' onwards. Version '2.3.5.3' introduces APIs for creating and updating users, as well as retrieving users and roles. Version '2.3.7.6' expands support to include APIs for creating, updating, retrieving, and deleting both users and roles.", 'response': [], 'failed': True} 2188s 2188s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 2188s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/dnac/tests/output/junit/python3.13-controller-units.xml - 2188s =========================== short test summary info ============================ 2188s ERROR tests/unit/modules/dnac/test_discovery_intent.py::TestDnacDiscoveryIntent 2188s ERROR tests/unit/modules/dnac/test_discovery_intent.py::TestDnacDiscoveryIntent 2188s ERROR tests/unit/modules/dnac/test_pnp_intent.py::TestDnacPnPIntent - TypeErr... 2188s ERROR tests/unit/modules/dnac/test_pnp_intent.py::TestDnacPnPIntent - TypeErr... 2188s ERROR tests/unit/modules/dnac/test_site_intent.py::TestDnacSiteIntent - TypeE... 2188s ERROR tests/unit/modules/dnac/test_site_intent.py::TestDnacSiteIntent - TypeE... 2188s ERROR tests/unit/modules/dnac/test_swim_intent.py::TestDnacSwimIntent - TypeE... 2188s ERROR tests/unit/modules/dnac/test_swim_intent.py::TestDnacSwimIntent - TypeE... 2188s ERROR tests/unit/modules/dnac/test_template_intent.py::TestDnacTemplateIntent 2188s ERROR tests/unit/modules/dnac/test_template_intent.py::TestDnacTemplateIntent 2188s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_null_sync_status 2188s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_accesspoint_workflow_manager_negative_config_input 2188s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_update_verify 2188s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_add_existing_devices 2188s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_accesspoint_workflow_manager_provision_device 2188s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_add_udf 2188s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_del_provisioned_device_2353 2188s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_delete_a_device 2188s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_accesspoint_workflow_manager_provision_old_version 2188s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_delete_device_udf 2188s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_delete_provisioned_device 2188s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_accesspoint_workflow_manager_some_error_data_update_accesspoint 2188s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_prov_device_2353 2188s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_provision_device 2188s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_provision_failed_for_site 2188s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_accesspoint_workflow_manager_task_error_update_accesspoint 2188s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_invalid_get_site_device 2188s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_invalid_site_exists 2188s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_update_mgmt_ip 2188s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_invalid_wlc_device 2188s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_already_sync_cred 2188s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_categories_iplist 2188s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist 2188s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist_failure_1 2188s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist_failure_2 2188s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_apply_sync 2188s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist_failure_3 2188s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist_failure_4 2188s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist_failure_5 2188s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_assign_cred_1 2188s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_assign_cred_2 2188s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist_site 2188s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_creation 2188s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site 2188s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site_failure_1 2188s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_deletion 2188s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site_failure_2 2188s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_invalid_site 2188s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site_failure_3 2188s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site_failure_4 2188s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_invalid_site_response 2188s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site_failure_5 2188s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_invalid_site_response_2 2188s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site_failure_6 2188s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_aaa_get 2188s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_banner_get 2188s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_dhcp_gett 2188s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_scale_run_compliance 2188s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_dns_get 2188s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_ntp_get 2188s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_sync_device_config_iplist 2188s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_sync_device_config_iplist_failure_1 2188s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_sync_device_config_iplist_failure_2 2188s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_site_not_exist 2188s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_telemetry_get 2188s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_timezone_get 2188s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_sync_device_config_iplist_site 2188s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_sync_device_config_iplist_site_nr 2188s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_update_aaa 2188s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_sync_device_config_site 2188s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_update_banner 2188s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_global_pool_Updation_not_req 2188s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_global_pool_creation 2188s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_global_pool_deletion 2188s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_update_dns 2188s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_update_ntp 2188s FAILED tests/unit/modules/dnac/test_provision_workflow_manager.py::TestDnacProvisionWorkflow::test_provision_workflow_manager_playbook_assign_wired_device_to_site 2188s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_update_telemetry 2188s FAILED tests/unit/modules/dnac/test_provision_workflow_manager.py::TestDnacProvisionWorkflow::test_provision_workflow_manager_playbook_del_provision_device 2188s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_update_timezone 2188s FAILED tests/unit/modules/dnac/test_provision_workflow_manager.py::TestDnacProvisionWorkflow::test_provision_workflow_manager_playbook_force_provision_device 2188s FAILED tests/unit/modules/dnac/test_provision_workflow_manager.py::TestDnacProvisionWorkflow::test_provision_workflow_manager_playbook_provision_device 2188s FAILED tests/unit/modules/dnac/test_provision_workflow_manager.py::TestDnacProvisionWorkflow::test_provision_workflow_manager_playbook_wireless_provision 2188s FAILED tests/unit/modules/dnac/test_rma_workflow_manager.py::TestDnacRmaIntent::test_rma_workflow_manager_deploy_workflow_failure_unmark_failure 2188s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_mandatory_aaa_param 2188s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_network_not_need_update 2188s FAILED tests/unit/modules/dnac/test_rma_workflow_manager.py::TestDnacRmaIntent::test_rma_workflow_manager_deploy_workflow_failure_unmark_success 2188s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_null_network_params 2188s FAILED tests/unit/modules/dnac/test_rma_workflow_manager.py::TestDnacRmaIntent::test_rma_workflow_manager_deploy_workflow_success 2188s FAILED tests/unit/modules/dnac/test_rma_workflow_manager.py::TestDnacRmaIntent::test_rma_workflow_manager_mark_device_failure 2188s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_update 2188s FAILED tests/unit/modules/dnac/test_rma_workflow_manager.py::TestDnacRmaIntent::test_rma_workflow_manager_mark_device_for_replacement_exception 2188s FAILED tests/unit/modules/dnac/test_rma_workflow_manager.py::TestDnacRmaIntent::test_rma_workflow_manager_replacement_device_not_found 2188s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_create_bulk_site 2188s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_create_site 2188s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_not_verified 2188s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_reserve_pool_creation 2188s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_create_site_bulk_invalid 2188s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_reserve_pool_deletion 2188s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_delete_a_new_site 2188s FAILED tests/unit/modules/dnac/test_pnp_workflow_manager.py::TestDnacPnpWorkflow::test_pnp_workflow_manager_claim_switch 2188s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_delete_a_site 2188s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_update_a_site 2188s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_update_not_needed_site 2188s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_invalid_delete_config 2188s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_update_site 2188s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_upload_floor_map 2188s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_invalid_delete_site 2188s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_import_cco_image 2188s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_import_image_already_exist 2188s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_verify_diff_merged_site 2188s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_activate_image 2188s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_site_not_exist 2188s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_image_distribution_failed 2188s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_swim_image_golden_already_tagged 2188s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_swim_image_golden_tag 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_create_1_role 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_create_default_role 2188s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_untag_image_as_golden_and_load_on_device 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_create_role 2188s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_playbook_image_distribution_successfull 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_create_user 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_delete_existing_role 2188s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_playbook_image_distribution_successfull_v2_3_7_6 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_invalid_param_role_update_invalid_permission 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_invalid_param_type_list_missing 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_role_invalid_param_not_type_list 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_delete_existing_user 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_delete_non_existing_role 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_role_invalid_param_rolename_not_correct_formate 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_delete_non_existing_user 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_role_invalid_param_rolename_not_present 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_invalid_param_role_invalid_permission 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_role_param_with_all_permision_deny 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_role_update_needed 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_role_update_not_needed 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_invalid_mandatory_field_not_present_param 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_invalid_param_not_correct_formate 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_invalid_param_not_type_list 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_invalid_param_rolelist_not_found 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_invalid_param_update_rolelist_not_found 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_invalid_username_email_not_present_param 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_update_needed 2188s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_update_not_needed 2188s ================== 134 failed, 33 passed, 10 errors in 16.16s ================== 2188s ## return code is 1 2188s 2188s 2188s 2188s ############################################################ 2188s ############################################################ 2188s #### Running FLAKY tests in ansible_collections/community/dns 2188s ############################################################ 2188s ############################################################ 2188s Unit test modules with Python 3.13 2190s ============================= test session starts ============================== 2190s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 2190s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/dns 2190s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 2190s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0 2190s created: 2/2 workers 2190s 2 workers [0 items] 2190s 2190s 2190s ==================================== ERRORS ==================================== 2190s ____ ERROR collecting tests/unit/plugins/modules/test_hetzner_dns_record.py ____ 2190s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hetzner_dns_record.py'. 2190s Hint: make sure your test modules/packages have valid Python names. 2190s Traceback: 2190s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2190s return _bootstrap._gcd_import(name[level:], package, level) 2190s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2190s assertion_rewriting_hook.exec_module(module) 2190s tests/unit/plugins/modules/test_hetzner_dns_record.py:9: in 2190s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2190s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2190s _ ERROR collecting tests/unit/plugins/modules/test_hetzner_dns_record_info.py __ 2190s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hetzner_dns_record_info.py'. 2190s Hint: make sure your test modules/packages have valid Python names. 2190s Traceback: 2190s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2190s return _bootstrap._gcd_import(name[level:], package, level) 2190s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2190s assertion_rewriting_hook.exec_module(module) 2190s tests/unit/plugins/modules/test_hetzner_dns_record_info.py:9: in 2190s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import patch 2190s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2190s __ ERROR collecting tests/unit/plugins/modules/test_hetzner_dns_record_set.py __ 2190s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hetzner_dns_record_set.py'. 2190s Hint: make sure your test modules/packages have valid Python names. 2190s Traceback: 2190s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2190s return _bootstrap._gcd_import(name[level:], package, level) 2190s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2190s assertion_rewriting_hook.exec_module(module) 2190s tests/unit/plugins/modules/test_hetzner_dns_record_set.py:9: in 2190s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2190s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2190s _ ERROR collecting tests/unit/plugins/modules/test_hetzner_dns_record_set_info.py _ 2190s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hetzner_dns_record_set_info.py'. 2190s Hint: make sure your test modules/packages have valid Python names. 2190s Traceback: 2190s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2190s return _bootstrap._gcd_import(name[level:], package, level) 2190s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2190s assertion_rewriting_hook.exec_module(module) 2190s tests/unit/plugins/modules/test_hetzner_dns_record_set_info.py:9: in 2190s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import patch 2190s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2190s _ ERROR collecting tests/unit/plugins/modules/test_hetzner_dns_record_sets.py __ 2190s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hetzner_dns_record_sets.py'. 2190s Hint: make sure your test modules/packages have valid Python names. 2190s Traceback: 2190s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2190s return _bootstrap._gcd_import(name[level:], package, level) 2190s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2190s assertion_rewriting_hook.exec_module(module) 2190s tests/unit/plugins/modules/test_hetzner_dns_record_sets.py:9: in 2190s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2190s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2190s __ ERROR collecting tests/unit/plugins/modules/test_hetzner_dns_zone_info.py ___ 2190s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hetzner_dns_zone_info.py'. 2190s Hint: make sure your test modules/packages have valid Python names. 2190s Traceback: 2190s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2190s return _bootstrap._gcd_import(name[level:], package, level) 2190s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2190s assertion_rewriting_hook.exec_module(module) 2190s tests/unit/plugins/modules/test_hetzner_dns_zone_info.py:9: in 2190s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2190s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2190s ___ ERROR collecting tests/unit/plugins/modules/test_hosttech_dns_record.py ____ 2190s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hosttech_dns_record.py'. 2190s Hint: make sure your test modules/packages have valid Python names. 2190s Traceback: 2190s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2190s return _bootstrap._gcd_import(name[level:], package, level) 2190s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2190s assertion_rewriting_hook.exec_module(module) 2190s tests/unit/plugins/modules/test_hosttech_dns_record.py:11: in 2190s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2190s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2190s _ ERROR collecting tests/unit/plugins/modules/test_hosttech_dns_record_info.py _ 2190s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hosttech_dns_record_info.py'. 2190s Hint: make sure your test modules/packages have valid Python names. 2190s Traceback: 2190s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2190s return _bootstrap._gcd_import(name[level:], package, level) 2190s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2190s assertion_rewriting_hook.exec_module(module) 2190s tests/unit/plugins/modules/test_hosttech_dns_record_info.py:11: in 2190s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import patch 2190s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2190s _ ERROR collecting tests/unit/plugins/modules/test_hosttech_dns_record_set.py __ 2190s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hosttech_dns_record_set.py'. 2190s Hint: make sure your test modules/packages have valid Python names. 2190s Traceback: 2190s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2190s return _bootstrap._gcd_import(name[level:], package, level) 2190s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2190s assertion_rewriting_hook.exec_module(module) 2190s tests/unit/plugins/modules/test_hosttech_dns_record_set.py:11: in 2190s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2190s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2190s _ ERROR collecting tests/unit/plugins/modules/test_hosttech_dns_record_set_info.py _ 2190s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hosttech_dns_record_set_info.py'. 2190s Hint: make sure your test modules/packages have valid Python names. 2190s Traceback: 2190s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2190s return _bootstrap._gcd_import(name[level:], package, level) 2190s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2190s assertion_rewriting_hook.exec_module(module) 2190s tests/unit/plugins/modules/test_hosttech_dns_record_set_info.py:11: in 2190s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import patch 2190s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2190s _ ERROR collecting tests/unit/plugins/modules/test_hosttech_dns_record_sets.py _ 2190s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hosttech_dns_record_sets.py'. 2190s Hint: make sure your test modules/packages have valid Python names. 2190s Traceback: 2190s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2190s return _bootstrap._gcd_import(name[level:], package, level) 2190s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2190s assertion_rewriting_hook.exec_module(module) 2190s tests/unit/plugins/modules/test_hosttech_dns_record_sets.py:11: in 2190s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2190s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2190s __ ERROR collecting tests/unit/plugins/modules/test_hosttech_dns_zone_info.py __ 2190s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hosttech_dns_zone_info.py'. 2190s Hint: make sure your test modules/packages have valid Python names. 2190s Traceback: 2190s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2190s return _bootstrap._gcd_import(name[level:], package, level) 2190s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2190s assertion_rewriting_hook.exec_module(module) 2190s tests/unit/plugins/modules/test_hosttech_dns_zone_info.py:11: in 2190s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2190s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2190s _____ ERROR collecting tests/unit/plugins/modules/test_nameserver_info.py ______ 2190s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_nameserver_info.py'. 2190s Hint: make sure your test modules/packages have valid Python names. 2190s Traceback: 2190s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2190s return _bootstrap._gcd_import(name[level:], package, level) 2190s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2190s assertion_rewriting_hook.exec_module(module) 2190s tests/unit/plugins/modules/test_nameserver_info.py:14: in 2190s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import MagicMock, patch 2190s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2190s __ ERROR collecting tests/unit/plugins/modules/test_nameserver_record_info.py __ 2190s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_nameserver_record_info.py'. 2190s Hint: make sure your test modules/packages have valid Python names. 2190s Traceback: 2190s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2190s return _bootstrap._gcd_import(name[level:], package, level) 2190s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2190s assertion_rewriting_hook.exec_module(module) 2190s tests/unit/plugins/modules/test_nameserver_record_info.py:14: in 2190s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import MagicMock, patch 2190s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2190s _______ ERROR collecting tests/unit/plugins/modules/test_wait_for_txt.py _______ 2190s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_wait_for_txt.py'. 2190s Hint: make sure your test modules/packages have valid Python names. 2190s Traceback: 2190s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2190s return _bootstrap._gcd_import(name[level:], package, level) 2190s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2190s assertion_rewriting_hook.exec_module(module) 2190s tests/unit/plugins/modules/test_wait_for_txt.py:14: in 2190s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import MagicMock, patch 2190s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2190s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/dns/tests/output/junit/python3.13-modules-units.xml - 2190s =========================== short test summary info ============================ 2190s ERROR tests/unit/plugins/modules/test_hetzner_dns_record.py 2190s ERROR tests/unit/plugins/modules/test_hetzner_dns_record_info.py 2190s ERROR tests/unit/plugins/modules/test_hetzner_dns_record_set.py 2190s ERROR tests/unit/plugins/modules/test_hetzner_dns_record_set_info.py 2190s ERROR tests/unit/plugins/modules/test_hetzner_dns_record_sets.py 2190s ERROR tests/unit/plugins/modules/test_hetzner_dns_zone_info.py 2190s ERROR tests/unit/plugins/modules/test_hosttech_dns_record.py 2190s ERROR tests/unit/plugins/modules/test_hosttech_dns_record_info.py 2190s ERROR tests/unit/plugins/modules/test_hosttech_dns_record_set.py 2190s ERROR tests/unit/plugins/modules/test_hosttech_dns_record_set_info.py 2190s ERROR tests/unit/plugins/modules/test_hosttech_dns_record_sets.py 2190s ERROR tests/unit/plugins/modules/test_hosttech_dns_zone_info.py 2190s ERROR tests/unit/plugins/modules/test_nameserver_info.py 2190s ERROR tests/unit/plugins/modules/test_nameserver_record_info.py 2190s ERROR tests/unit/plugins/modules/test_wait_for_txt.py 2190s ============================== 15 errors in 1.30s ============================== 2190s 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/community/dns/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/dns --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/dns tests/unit/plugins/modules/test_hetzner_dns_record.py tests/unit/plugins/modules/test_hetzner_dns_record_info.py tests/unit/plugins/modules/test_hetzner_dns_record_set.py tests/unit/plugins/modules/test_hetzner_dns_record_set_info.py tests/unit/plugins/modules/test_hetzner_dns_record_sets.py tests/unit/plugins/modules/test_hetzner_dns_zone_info.py tests/unit/plugins/modules/test_hosttech_dns_record.py tests/unit/plugins/modules/test_hosttech_dns_record_info.py tests/unit/plugins/modules/test_hosttech_dns_record_set.py tests/unit/plugins/modules/test_hosttech_dns_record_set_info.py tests/unit/plugins/modules/test_hosttech_dns_record_sets.py tests/unit/plugins/modules/test_hosttech_dns_zone_info.py tests/unit/plugins/modules/test_nameserver_info.py tests/unit/plugins/modules/test_nameserver_record_info.py tests/unit/plugins/modules/test_wait_for_txt.py" returned exit status 1. 2190s ## return code is 1 2190s 2190s 2190s 2190s ############################################################ 2190s ############################################################ 2190s #### Running FLAKY tests in ansible_collections/community/general 2190s ############################################################ 2190s ############################################################ 2190s Unit test modules with Python 3.13 2196s ============================= test session starts ============================== 2196s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 2196s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/general 2196s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 2196s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0 2196s created: 2/2 workers 2196s 2 workers [1282 items] 2196s 2197s ...F..FF.FFF.F.F........................................................ [ 5%] 2198s ........................................................................ [ 11%] 2199s ........................................................................ [ 16%] 2200s ...........................................................s............ [ 22%] 2202s ...............................s.......................FFFFFF........... [ 28%] 2204s ........................................................................ [ 33%] 2205s ........................................................................ [ 39%] 2207s ........................................................................ [ 44%] 2209s ........................................................................ [ 50%] 2210s ........................................................................ [ 56%] 2211s ........................................................................ [ 61%] 2213s ........................................................................ [ 67%] 2215s ...........................................s............s........sss.... [ 73%] 2216s ........................................................................ [ 78%] 2249s ........................................................................ [ 84%] 2250s ........................................................................ [ 89%] 2252s ........................................................................ [ 95%] 2279s .......................................................... [100%] 2279s ==================================== ERRORS ==================================== 2279s _______ ERROR collecting tests/unit/plugins/modules/test_jenkins_node.py _______ 2279s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/general/tests/unit/plugins/modules/test_jenkins_node.py'. 2279s Hint: make sure your test modules/packages have valid Python names. 2279s Traceback: 2279s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2279s return _bootstrap._gcd_import(name[level:], package, level) 2279s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2279s assertion_rewriting_hook.exec_module(module) 2279s tests/unit/plugins/modules/test_jenkins_node.py:8: in 2279s import jenkins 2279s E ModuleNotFoundError: No module named 'jenkins' 2279s _______ ERROR collecting tests/unit/plugins/modules/test_nomad_token.py ________ 2279s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/general/tests/unit/plugins/modules/test_nomad_token.py'. 2279s Hint: make sure your test modules/packages have valid Python names. 2279s Traceback: 2279s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2279s return _bootstrap._gcd_import(name[level:], package, level) 2279s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2279s assertion_rewriting_hook.exec_module(module) 2279s tests/unit/plugins/modules/test_nomad_token.py:11: in 2279s import nomad 2279s E ModuleNotFoundError: No module named 'nomad' 2279s =================================== FAILURES =================================== 2279s ___________________ TestGithubRepo.test_create_new_org_repo ____________________ 2279s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2279s 2279s self = 2279s 2279s @with_httmock(get_orgs_mock) 2279s @with_httmock(get_repo_notfound_mock) 2279s @with_httmock(create_new_org_repo_mock) 2279s def test_create_new_org_repo(self): 2279s > result = github_repo.run_module({ 2279s 'username': None, 2279s 'password': None, 2279s "access_token": "mytoken", 2279s "organization": "MyOrganization", 2279s "name": "myrepo", 2279s "description": "Just for fun", 2279s "private": False, 2279s "state": "present", 2279s "api_url": "https://api.github.com", 2279s "force_defaults": False, 2279s }) 2279s 2279s tests/unit/plugins/modules/test_github_repo.py:179: 2279s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2279s plugins/modules/github_repo.py:222: in run_module 2279s gh = authenticate( 2279s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2279s 2279s username = None, password = None, access_token = 'mytoken' 2279s api_url = 'https://api.github.com' 2279s 2279s def authenticate(username=None, password=None, access_token=None, api_url=None): 2279s if not api_url: 2279s return None 2279s 2279s if access_token: 2279s > return Github(base_url=api_url, login_or_token=access_token) 2279s E NameError: name 'Github' is not defined 2279s 2279s plugins/modules/github_repo.py:150: NameError 2279s ______________ TestGithubRepo.test_create_new_org_repo_incomplete ______________ 2279s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2279s 2279s self = 2279s 2279s @with_httmock(get_orgs_mock) 2279s @with_httmock(get_repo_notfound_mock) 2279s @with_httmock(create_new_org_repo_mock) 2279s def test_create_new_org_repo_incomplete(self): 2279s > result = github_repo.run_module({ 2279s 'username': None, 2279s 'password': None, 2279s "access_token": "mytoken", 2279s "organization": "MyOrganization", 2279s "name": "myrepo", 2279s "description": None, 2279s "private": None, 2279s "state": "present", 2279s "api_url": "https://api.github.com", 2279s "force_defaults": False, 2279s }) 2279s 2279s tests/unit/plugins/modules/test_github_repo.py:200: 2279s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2279s plugins/modules/github_repo.py:222: in run_module 2279s gh = authenticate( 2279s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2279s 2279s username = None, password = None, access_token = 'mytoken' 2279s api_url = 'https://api.github.com' 2279s 2279s def authenticate(username=None, password=None, access_token=None, api_url=None): 2279s if not api_url: 2279s return None 2279s 2279s if access_token: 2279s > return Github(base_url=api_url, login_or_token=access_token) 2279s E NameError: name 'Github' is not defined 2279s 2279s plugins/modules/github_repo.py:150: NameError 2279s ___________________ TestGithubRepo.test_create_new_user_repo ___________________ 2279s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2279s 2279s self = 2279s 2279s @with_httmock(get_user_mock) 2279s @with_httmock(get_repo_notfound_mock) 2279s @with_httmock(create_new_user_repo_mock) 2279s def test_create_new_user_repo(self): 2279s > result = github_repo.run_module({ 2279s 'username': None, 2279s 'password': None, 2279s "access_token": "mytoken", 2279s "organization": None, 2279s "name": "myrepo", 2279s "description": "Just for fun", 2279s "private": True, 2279s "state": "present", 2279s "api_url": "https://api.github.com", 2279s "force_defaults": False, 2279s }) 2279s 2279s tests/unit/plugins/modules/test_github_repo.py:221: 2279s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2279s plugins/modules/github_repo.py:222: in run_module 2279s gh = authenticate( 2279s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2279s 2279s username = None, password = None, access_token = 'mytoken' 2279s api_url = 'https://api.github.com' 2279s 2279s def authenticate(username=None, password=None, access_token=None, api_url=None): 2279s if not api_url: 2279s return None 2279s 2279s if access_token: 2279s > return Github(base_url=api_url, login_or_token=access_token) 2279s E NameError: name 'Github' is not defined 2279s 2279s plugins/modules/github_repo.py:150: NameError 2279s _____________________ TestGithubRepo.test_delete_org_repo ______________________ 2279s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2279s 2279s self = 2279s 2279s @with_httmock(get_orgs_mock) 2279s @with_httmock(get_repo_mock) 2279s @with_httmock(delete_repo_mock) 2279s def test_delete_org_repo(self): 2279s > result = github_repo.run_module({ 2279s 'username': None, 2279s 'password': None, 2279s "access_token": "mytoken", 2279s "organization": "MyOrganization", 2279s "name": "myrepo", 2279s "description": "Just for fun", 2279s "private": False, 2279s "state": "absent", 2279s "api_url": "https://api.github.com", 2279s "force_defaults": False, 2279s }) 2279s 2279s tests/unit/plugins/modules/test_github_repo.py:278: 2279s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2279s plugins/modules/github_repo.py:222: in run_module 2279s gh = authenticate( 2279s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2279s 2279s username = None, password = None, access_token = 'mytoken' 2279s api_url = 'https://api.github.com' 2279s 2279s def authenticate(username=None, password=None, access_token=None, api_url=None): 2279s if not api_url: 2279s return None 2279s 2279s if access_token: 2279s > return Github(base_url=api_url, login_or_token=access_token) 2279s E NameError: name 'Github' is not defined 2279s 2279s plugins/modules/github_repo.py:150: NameError 2279s _________________ TestGithubRepo.test_delete_org_repo_notfound _________________ 2279s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2279s 2279s self = 2279s 2279s @with_httmock(get_orgs_mock) 2279s @with_httmock(get_repo_notfound_mock) 2279s @with_httmock(delete_repo_notfound_mock) 2279s def test_delete_org_repo_notfound(self): 2279s > result = github_repo.run_module({ 2279s 'username': None, 2279s 'password': None, 2279s "access_token": "mytoken", 2279s "organization": "MyOrganization", 2279s "name": "myrepo", 2279s "description": "Just for fun", 2279s "private": True, 2279s "state": "absent", 2279s "api_url": "https://api.github.com", 2279s "force_defaults": False, 2279s }) 2279s 2279s tests/unit/plugins/modules/test_github_repo.py:314: 2279s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2279s plugins/modules/github_repo.py:222: in run_module 2279s gh = authenticate( 2279s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2279s 2279s username = None, password = None, access_token = 'mytoken' 2279s api_url = 'https://api.github.com' 2279s 2279s def authenticate(username=None, password=None, access_token=None, api_url=None): 2279s if not api_url: 2279s return None 2279s 2279s if access_token: 2279s > return Github(base_url=api_url, login_or_token=access_token) 2279s E NameError: name 'Github' is not defined 2279s 2279s plugins/modules/github_repo.py:150: NameError 2279s _____________________ TestGithubRepo.test_delete_user_repo _____________________ 2279s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2279s 2279s self = 2279s 2279s @with_httmock(get_user_mock) 2279s @with_httmock(get_repo_mock) 2279s @with_httmock(delete_repo_mock) 2279s def test_delete_user_repo(self): 2279s > result = github_repo.run_module({ 2279s 'username': None, 2279s 'password': None, 2279s "access_token": "mytoken", 2279s "organization": None, 2279s "name": "myrepo", 2279s "description": "Just for fun", 2279s "private": False, 2279s "state": "absent", 2279s "api_url": "https://api.github.com", 2279s "force_defaults": False, 2279s }) 2279s 2279s tests/unit/plugins/modules/test_github_repo.py:296: 2279s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2279s plugins/modules/github_repo.py:222: in run_module 2279s gh = authenticate( 2279s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2279s 2279s username = None, password = None, access_token = 'mytoken' 2279s api_url = 'https://api.github.com' 2279s 2279s def authenticate(username=None, password=None, access_token=None, api_url=None): 2279s if not api_url: 2279s return None 2279s 2279s if access_token: 2279s > return Github(base_url=api_url, login_or_token=access_token) 2279s E NameError: name 'Github' is not defined 2279s 2279s plugins/modules/github_repo.py:150: NameError 2279s __________ TestGithubRepo.test_idempotency_existing_org_private_repo ___________ 2279s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2279s 2279s self = 2279s 2279s @with_httmock(get_orgs_mock) 2279s @with_httmock(get_private_repo_mock) 2279s def test_idempotency_existing_org_private_repo(self): 2279s > result = github_repo.run_module({ 2279s 'username': None, 2279s 'password': None, 2279s "access_token": "mytoken", 2279s "organization": "MyOrganization", 2279s "name": "myrepo", 2279s "description": None, 2279s "private": None, 2279s "state": "present", 2279s "api_url": "https://api.github.com", 2279s "force_defaults": False, 2279s }) 2279s 2279s tests/unit/plugins/modules/test_github_repo.py:258: 2279s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2279s plugins/modules/github_repo.py:222: in run_module 2279s gh = authenticate( 2279s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2279s 2279s username = None, password = None, access_token = 'mytoken' 2279s api_url = 'https://api.github.com' 2279s 2279s def authenticate(username=None, password=None, access_token=None, api_url=None): 2279s if not api_url: 2279s return None 2279s 2279s if access_token: 2279s > return Github(base_url=api_url, login_or_token=access_token) 2279s E NameError: name 'Github' is not defined 2279s 2279s plugins/modules/github_repo.py:150: NameError 2279s _________________ TestGithubRepo.test_patch_existing_org_repo __________________ 2279s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2279s 2279s self = 2279s 2279s @with_httmock(get_orgs_mock) 2279s @with_httmock(get_repo_mock) 2279s @with_httmock(patch_repo_mock) 2279s def test_patch_existing_org_repo(self): 2279s > result = github_repo.run_module({ 2279s 'username': None, 2279s 'password': None, 2279s "access_token": "mytoken", 2279s "organization": "MyOrganization", 2279s "name": "myrepo", 2279s "description": "Just for fun", 2279s "private": True, 2279s "state": "present", 2279s "api_url": "https://api.github.com", 2279s "force_defaults": False, 2279s }) 2279s 2279s tests/unit/plugins/modules/test_github_repo.py:240: 2279s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2279s plugins/modules/github_repo.py:222: in run_module 2279s gh = authenticate( 2279s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2279s 2279s username = None, password = None, access_token = 'mytoken' 2279s api_url = 'https://api.github.com' 2279s 2279s def authenticate(username=None, password=None, access_token=None, api_url=None): 2279s if not api_url: 2279s return None 2279s 2279s if access_token: 2279s > return Github(base_url=api_url, login_or_token=access_token) 2279s E NameError: name 'Github' is not defined 2279s 2279s plugins/modules/github_repo.py:150: NameError 2279s _________________ test_find_version_by_spec[None-(,3.9]-3.8.2] _________________ 2279s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2279s 2279s mocker = 2279s version_by_spec = '(,3.9]', version_choosed = '3.8.2' 2279s 2279s @pytest.mark.parametrize('patch_ansible_module, version_by_spec, version_choosed', [ 2279s (None, "(,3.9]", "3.8.2"), 2279s (None, "3.0", "3.8.2"), 2279s (None, "[3.7]", "3.7"), 2279s (None, "[4.10, 4.12]", "4.12"), 2279s (None, "[4.10, 4.12)", "4.11"), 2279s (None, "[2.0,)", "4.13-beta-2"), 2279s ]) 2279s def test_find_version_by_spec(mocker, version_by_spec, version_choosed): 2279s _getContent = mocker.patch('ansible_collections.community.general.plugins.modules.maven_artifact.MavenDownloader._getContent') 2279s _getContent.return_value = maven_metadata_example 2279s 2279s artifact = maven_artifact.Artifact("junit", "junit", None, version_by_spec, "jar") 2279s mvn_downloader = maven_artifact.MavenDownloader(basic.AnsibleModule, "https://repo1.maven.org/maven2") 2279s 2279s > assert mvn_downloader.find_version_by_spec(artifact) == version_choosed 2279s 2279s tests/unit/plugins/modules/test_maven_artifact.py:71: 2279s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2279s 2279s self = 2279s artifact = 2279s 2279s def find_version_by_spec(self, artifact): 2279s path = "/%s/%s" % (artifact.path(False), self.metadata_file_name) 2279s content = self._getContent(self.base + path, "Failed to retrieve the maven metadata file: " + path) 2279s xml = etree.fromstring(content) 2279s original_versions = xml.xpath("/metadata/versioning/versions/version/text()") 2279s versions = [] 2279s for version in original_versions: 2279s try: 2279s > versions.append(Version.coerce(version)) 2279s E NameError: name 'Version' is not defined 2279s 2279s plugins/modules/maven_artifact.py:407: NameError 2279s __________________ test_find_version_by_spec[None-3.0-3.8.2] ___________________ 2279s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2279s 2279s mocker = 2279s version_by_spec = '3.0', version_choosed = '3.8.2' 2279s 2279s @pytest.mark.parametrize('patch_ansible_module, version_by_spec, version_choosed', [ 2279s (None, "(,3.9]", "3.8.2"), 2279s (None, "3.0", "3.8.2"), 2279s (None, "[3.7]", "3.7"), 2279s (None, "[4.10, 4.12]", "4.12"), 2279s (None, "[4.10, 4.12)", "4.11"), 2279s (None, "[2.0,)", "4.13-beta-2"), 2279s ]) 2279s def test_find_version_by_spec(mocker, version_by_spec, version_choosed): 2279s _getContent = mocker.patch('ansible_collections.community.general.plugins.modules.maven_artifact.MavenDownloader._getContent') 2279s _getContent.return_value = maven_metadata_example 2279s 2279s artifact = maven_artifact.Artifact("junit", "junit", None, version_by_spec, "jar") 2279s mvn_downloader = maven_artifact.MavenDownloader(basic.AnsibleModule, "https://repo1.maven.org/maven2") 2279s 2279s > assert mvn_downloader.find_version_by_spec(artifact) == version_choosed 2279s 2279s tests/unit/plugins/modules/test_maven_artifact.py:71: 2279s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2279s 2279s self = 2279s artifact = 2279s 2279s def find_version_by_spec(self, artifact): 2279s path = "/%s/%s" % (artifact.path(False), self.metadata_file_name) 2279s content = self._getContent(self.base + path, "Failed to retrieve the maven metadata file: " + path) 2279s xml = etree.fromstring(content) 2279s original_versions = xml.xpath("/metadata/versioning/versions/version/text()") 2279s versions = [] 2279s for version in original_versions: 2279s try: 2279s > versions.append(Version.coerce(version)) 2279s E NameError: name 'Version' is not defined 2279s 2279s plugins/modules/maven_artifact.py:407: NameError 2279s __________________ test_find_version_by_spec[None-[3.7]-3.7] ___________________ 2279s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2279s 2279s mocker = 2279s version_by_spec = '[3.7]', version_choosed = '3.7' 2279s 2279s @pytest.mark.parametrize('patch_ansible_module, version_by_spec, version_choosed', [ 2279s (None, "(,3.9]", "3.8.2"), 2279s (None, "3.0", "3.8.2"), 2279s (None, "[3.7]", "3.7"), 2279s (None, "[4.10, 4.12]", "4.12"), 2279s (None, "[4.10, 4.12)", "4.11"), 2279s (None, "[2.0,)", "4.13-beta-2"), 2279s ]) 2279s def test_find_version_by_spec(mocker, version_by_spec, version_choosed): 2279s _getContent = mocker.patch('ansible_collections.community.general.plugins.modules.maven_artifact.MavenDownloader._getContent') 2279s _getContent.return_value = maven_metadata_example 2279s 2279s artifact = maven_artifact.Artifact("junit", "junit", None, version_by_spec, "jar") 2279s mvn_downloader = maven_artifact.MavenDownloader(basic.AnsibleModule, "https://repo1.maven.org/maven2") 2279s 2279s > assert mvn_downloader.find_version_by_spec(artifact) == version_choosed 2279s 2279s tests/unit/plugins/modules/test_maven_artifact.py:71: 2279s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2279s 2279s self = 2279s artifact = 2279s 2279s def find_version_by_spec(self, artifact): 2279s path = "/%s/%s" % (artifact.path(False), self.metadata_file_name) 2279s content = self._getContent(self.base + path, "Failed to retrieve the maven metadata file: " + path) 2279s xml = etree.fromstring(content) 2279s original_versions = xml.xpath("/metadata/versioning/versions/version/text()") 2279s versions = [] 2279s for version in original_versions: 2279s try: 2279s > versions.append(Version.coerce(version)) 2279s E NameError: name 'Version' is not defined 2279s 2279s plugins/modules/maven_artifact.py:407: NameError 2279s ______________ test_find_version_by_spec[None-[4.10, 4.12]-4.12] _______________ 2279s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2279s 2279s mocker = 2279s version_by_spec = '[4.10, 4.12]', version_choosed = '4.12' 2279s 2279s @pytest.mark.parametrize('patch_ansible_module, version_by_spec, version_choosed', [ 2279s (None, "(,3.9]", "3.8.2"), 2279s (None, "3.0", "3.8.2"), 2279s (None, "[3.7]", "3.7"), 2279s (None, "[4.10, 4.12]", "4.12"), 2279s (None, "[4.10, 4.12)", "4.11"), 2279s (None, "[2.0,)", "4.13-beta-2"), 2279s ]) 2279s def test_find_version_by_spec(mocker, version_by_spec, version_choosed): 2279s _getContent = mocker.patch('ansible_collections.community.general.plugins.modules.maven_artifact.MavenDownloader._getContent') 2279s _getContent.return_value = maven_metadata_example 2279s 2279s artifact = maven_artifact.Artifact("junit", "junit", None, version_by_spec, "jar") 2279s mvn_downloader = maven_artifact.MavenDownloader(basic.AnsibleModule, "https://repo1.maven.org/maven2") 2279s 2279s > assert mvn_downloader.find_version_by_spec(artifact) == version_choosed 2279s 2279s tests/unit/plugins/modules/test_maven_artifact.py:71: 2279s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2279s 2279s self = 2279s artifact = 2279s 2279s def find_version_by_spec(self, artifact): 2279s path = "/%s/%s" % (artifact.path(False), self.metadata_file_name) 2279s content = self._getContent(self.base + path, "Failed to retrieve the maven metadata file: " + path) 2279s xml = etree.fromstring(content) 2279s original_versions = xml.xpath("/metadata/versioning/versions/version/text()") 2279s versions = [] 2279s for version in original_versions: 2279s try: 2279s > versions.append(Version.coerce(version)) 2279s E NameError: name 'Version' is not defined 2279s 2279s plugins/modules/maven_artifact.py:407: NameError 2279s ______________ test_find_version_by_spec[None-[4.10, 4.12)-4.11] _______________ 2279s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2279s 2279s mocker = 2279s version_by_spec = '[4.10, 4.12)', version_choosed = '4.11' 2279s 2279s @pytest.mark.parametrize('patch_ansible_module, version_by_spec, version_choosed', [ 2279s (None, "(,3.9]", "3.8.2"), 2279s (None, "3.0", "3.8.2"), 2279s (None, "[3.7]", "3.7"), 2279s (None, "[4.10, 4.12]", "4.12"), 2279s (None, "[4.10, 4.12)", "4.11"), 2279s (None, "[2.0,)", "4.13-beta-2"), 2279s ]) 2279s def test_find_version_by_spec(mocker, version_by_spec, version_choosed): 2279s _getContent = mocker.patch('ansible_collections.community.general.plugins.modules.maven_artifact.MavenDownloader._getContent') 2279s _getContent.return_value = maven_metadata_example 2279s 2279s artifact = maven_artifact.Artifact("junit", "junit", None, version_by_spec, "jar") 2279s mvn_downloader = maven_artifact.MavenDownloader(basic.AnsibleModule, "https://repo1.maven.org/maven2") 2279s 2279s > assert mvn_downloader.find_version_by_spec(artifact) == version_choosed 2279s 2279s tests/unit/plugins/modules/test_maven_artifact.py:71: 2279s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2279s 2279s self = 2279s artifact = 2279s 2279s def find_version_by_spec(self, artifact): 2279s path = "/%s/%s" % (artifact.path(False), self.metadata_file_name) 2279s content = self._getContent(self.base + path, "Failed to retrieve the maven metadata file: " + path) 2279s xml = etree.fromstring(content) 2279s original_versions = xml.xpath("/metadata/versioning/versions/version/text()") 2279s versions = [] 2279s for version in original_versions: 2279s try: 2279s > versions.append(Version.coerce(version)) 2279s E NameError: name 'Version' is not defined 2279s 2279s plugins/modules/maven_artifact.py:407: NameError 2279s ______________ test_find_version_by_spec[None-[2.0,)-4.13-beta-2] ______________ 2279s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2279s 2279s mocker = 2279s version_by_spec = '[2.0,)', version_choosed = '4.13-beta-2' 2279s 2279s @pytest.mark.parametrize('patch_ansible_module, version_by_spec, version_choosed', [ 2279s (None, "(,3.9]", "3.8.2"), 2279s (None, "3.0", "3.8.2"), 2279s (None, "[3.7]", "3.7"), 2279s (None, "[4.10, 4.12]", "4.12"), 2279s (None, "[4.10, 4.12)", "4.11"), 2279s (None, "[2.0,)", "4.13-beta-2"), 2279s ]) 2279s def test_find_version_by_spec(mocker, version_by_spec, version_choosed): 2279s _getContent = mocker.patch('ansible_collections.community.general.plugins.modules.maven_artifact.MavenDownloader._getContent') 2279s _getContent.return_value = maven_metadata_example 2279s 2279s artifact = maven_artifact.Artifact("junit", "junit", None, version_by_spec, "jar") 2279s mvn_downloader = maven_artifact.MavenDownloader(basic.AnsibleModule, "https://repo1.maven.org/maven2") 2279s 2279s > assert mvn_downloader.find_version_by_spec(artifact) == version_choosed 2279s 2279s tests/unit/plugins/modules/test_maven_artifact.py:71: 2279s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2279s 2279s self = 2279s artifact = 2279s 2279s def find_version_by_spec(self, artifact): 2279s path = "/%s/%s" % (artifact.path(False), self.metadata_file_name) 2279s content = self._getContent(self.base + path, "Failed to retrieve the maven metadata file: " + path) 2279s xml = etree.fromstring(content) 2279s original_versions = xml.xpath("/metadata/versioning/versions/version/text()") 2279s versions = [] 2279s for version in original_versions: 2279s try: 2279s > versions.append(Version.coerce(version)) 2279s E NameError: name 'Version' is not defined 2279s 2279s plugins/modules/maven_artifact.py:407: NameError 2279s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/general/tests/output/junit/python3.13-modules-units.xml - 2279s =========================== short test summary info ============================ 2279s SKIPPED [1] tests/unit/plugins/modules/test_datadog_downtime.py:19: could not import 'datadog_api_client': No module named 'datadog_api_client' 2279s SKIPPED [1] tests/unit/plugins/modules/test_dnsimple.py:17: could not import 'dnsimple': No module named 'dnsimple' 2279s SKIPPED [1] tests/unit/plugins/modules/test_linode_v4.py:14: could not import 'linode_api4': No module named 'linode_api4' 2279s SKIPPED [1] tests/unit/plugins/modules/helper.py:99: test helper does not support check mode yet 2279s SKIPPED [1] tests/unit/plugins/modules/test_linode.py: test_linode.py requires the `linode-python` module 2279s SKIPPED [1] tests/unit/plugins/modules/test_redis_data.py:137: Redis version > 3.4.0 2279s SKIPPED [1] tests/unit/plugins/modules/test_redis_data_incr.py:107: Redis version > 3.4.0 2279s SKIPPED [1] tests/unit/plugins/modules/test_redis_data_info.py:68: Redis version > 3.4.0 2279s SKIPPED [1] tests/unit/plugins/modules/test_redis_data_info.py:85: Redis version > 3.4.0 2279s SKIPPED [1] tests/unit/plugins/modules/test_redis_data_info.py:101: Redis version > 3.4.0 2279s ERROR tests/unit/plugins/modules/test_jenkins_node.py 2279s ERROR tests/unit/plugins/modules/test_nomad_token.py 2279s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_create_new_org_repo 2279s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_create_new_org_repo_incomplete 2279s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_create_new_user_repo 2279s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_delete_org_repo 2279s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_delete_org_repo_notfound 2279s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_delete_user_repo 2279s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_idempotency_existing_org_private_repo 2279s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_patch_existing_org_repo 2279s FAILED tests/unit/plugins/modules/test_maven_artifact.py::test_find_version_by_spec[None-(,3.9]-3.8.2] 2279s FAILED tests/unit/plugins/modules/test_maven_artifact.py::test_find_version_by_spec[None-3.0-3.8.2] 2279s FAILED tests/unit/plugins/modules/test_maven_artifact.py::test_find_version_by_spec[None-[3.7]-3.7] 2279s FAILED tests/unit/plugins/modules/test_maven_artifact.py::test_find_version_by_spec[None-[4.10, 4.12]-4.12] 2279s FAILED tests/unit/plugins/modules/test_maven_artifact.py::test_find_version_by_spec[None-[4.10, 4.12)-4.11] 2279s FAILED tests/unit/plugins/modules/test_maven_artifact.py::test_find_version_by_spec[None-[2.0,)-4.13-beta-2] 2279s ======= 14 failed, 1261 passed, 10 skipped, 2 errors in 87.84s (0:01:27) ======= 2279s 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/community/general/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/general --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/general tests/unit/plugins/modules/interfaces_file/test_interfaces_file.py tests/unit/plugins/modules/test_alerta_customer.py tests/unit/plugins/modules/test_apache2_module.py tests/unit/plugins/modules/test_apk.py tests/unit/plugins/modules/test_archive.py tests/unit/plugins/modules/test_bitbucket_access_key.py tests/unit/plugins/modules/test_bitbucket_pipeline_key_pair.py tests/unit/plugins/modules/test_bitbucket_pipeline_known_host.py tests/unit/plugins/modules/test_bitbucket_pipeline_variable.py tests/unit/plugins/modules/test_bootc_manage.py tests/unit/plugins/modules/test_campfire.py tests/unit/plugins/modules/test_circonus_annotation.py tests/unit/plugins/modules/test_cpanm.py tests/unit/plugins/modules/test_datadog_downtime.py tests/unit/plugins/modules/test_dconf.py tests/unit/plugins/modules/test_discord.py tests/unit/plugins/modules/test_django_check.py tests/unit/plugins/modules/test_django_command.py tests/unit/plugins/modules/test_django_createcachetable.py tests/unit/plugins/modules/test_dnf_config_manager.py tests/unit/plugins/modules/test_dnsimple.py tests/unit/plugins/modules/test_dnsimple_info.py tests/unit/plugins/modules/test_facter_facts.py tests/unit/plugins/modules/test_gconftool2.py tests/unit/plugins/modules/test_gconftool2_info.py tests/unit/plugins/modules/test_gem.py tests/unit/plugins/modules/test_gio_mime.py tests/unit/plugins/modules/test_github_repo.py tests/unit/plugins/modules/test_gitlab_deploy_key.py tests/unit/plugins/modules/test_gitlab_group.py tests/unit/plugins/modules/test_gitlab_group_access_token.py tests/unit/plugins/modules/test_gitlab_hook.py tests/unit/plugins/modules/test_gitlab_project.py tests/unit/plugins/modules/test_gitlab_project_access_token.py tests/unit/plugins/modules/test_gitlab_protected_branch.py tests/unit/plugins/modules/test_gitlab_runner.py tests/unit/plugins/modules/test_gitlab_user.py tests/unit/plugins/modules/test_homebrew.py tests/unit/plugins/modules/test_homebrew_cask.py tests/unit/plugins/modules/test_icinga2_feature.py tests/unit/plugins/modules/test_ini_file.py tests/unit/plugins/modules/test_ipa_getkeytab.py tests/unit/plugins/modules/test_ipa_otpconfig.py tests/unit/plugins/modules/test_ipa_otptoken.py tests/unit/plugins/modules/test_ipa_pwpolicy.py tests/unit/plugins/modules/test_ipbase.py tests/unit/plugins/modules/test_java_keystore.py tests/unit/plugins/modules/test_jenkins_build.py tests/unit/plugins/modules/test_jenkins_build_info.py tests/unit/plugins/modules/test_jenkins_node.py tests/unit/plugins/modules/test_jenkins_plugin.py tests/unit/plugins/modules/test_keycloak_authentication.py tests/unit/plugins/modules/test_keycloak_authentication_required_actions.py tests/unit/plugins/modules/test_keycloak_client.py tests/unit/plugins/modules/test_keycloak_client_rolemapping.py tests/unit/plugins/modules/test_keycloak_clientscope.py tests/unit/plugins/modules/test_keycloak_component.py tests/unit/plugins/modules/test_keycloak_identity_provider.py tests/unit/plugins/modules/test_keycloak_realm.py tests/unit/plugins/modules/test_keycloak_realm_info.py tests/unit/plugins/modules/test_keycloak_realm_keys.py tests/unit/plugins/modules/test_keycloak_realm_keys_metadata_info.py tests/unit/plugins/modules/test_keycloak_role.py tests/unit/plugins/modules/test_keycloak_user.py tests/unit/plugins/modules/test_keycloak_user_federation.py tests/unit/plugins/modules/test_keycloak_userprofile.py tests/unit/plugins/modules/test_krb_ticket.py tests/unit/plugins/modules/test_linode.py tests/unit/plugins/modules/test_linode_v4.py tests/unit/plugins/modules/test_lvg_rename.py tests/unit/plugins/modules/test_lxca_cmms.py tests/unit/plugins/modules/test_lxca_nodes.py tests/unit/plugins/modules/test_macports.py tests/unit/plugins/modules/test_maven_artifact.py tests/unit/plugins/modules/test_modprobe.py tests/unit/plugins/modules/test_monit.py tests/unit/plugins/modules/test_nmcli.py tests/unit/plugins/modules/test_nomad_token.py tests/unit/plugins/modules/test_npm.py tests/unit/plugins/modules/test_ocapi_command.py tests/unit/plugins/modules/test_ocapi_info.py tests/unit/plugins/modules/test_one_vm.py tests/unit/plugins/modules/test_oneview_datacenter_info.py tests/unit/plugins/modules/test_oneview_enclosure_info.py tests/unit/plugins/modules/test_oneview_ethernet_network.py tests/unit/plugins/modules/test_oneview_ethernet_network_info.py tests/unit/plugins/modules/test_oneview_fc_network.py tests/unit/plugins/modules/test_oneview_fc_network_info.py tests/unit/plugins/modules/test_oneview_fcoe_network.py tests/unit/plugins/modules/test_oneview_fcoe_network_info.py tests/unit/plugins/modules/test_oneview_logical_interconnect_group.py tests/unit/plugins/modules/test_oneview_logical_interconnect_group_info.py tests/unit/plugins/modules/test_oneview_network_set.py tests/unit/plugins/modules/test_oneview_network_set_info.py tests/unit/plugins/modules/test_oneview_san_manager.py tests/unit/plugins/modules/test_oneview_san_manager_info.py tests/unit/plugins/modules/test_opkg.py tests/unit/plugins/modules/test_pacman.py tests/unit/plugins/modules/test_pacman_key.py tests/unit/plugins/modules/test_pagerduty.py tests/unit/plugins/modules/test_pagerduty_alert.py tests/unit/plugins/modules/test_pagerduty_change.py tests/unit/plugins/modules/test_pamd.py tests/unit/plugins/modules/test_parted.py tests/unit/plugins/modules/test_pkgin.py tests/unit/plugins/modules/test_pmem.py tests/unit/plugins/modules/test_pritunl_org.py tests/unit/plugins/modules/test_pritunl_org_info.py tests/unit/plugins/modules/test_pritunl_user.py tests/unit/plugins/modules/test_pritunl_user_info.py tests/unit/plugins/modules/test_proxmox_backup.py tests/unit/plugins/modules/test_proxmox_backup_info.py tests/unit/plugins/modules/test_proxmox_kvm.py tests/unit/plugins/modules/test_proxmox_snap.py tests/unit/plugins/modules/test_proxmox_storage_contents_info.py tests/unit/plugins/modules/test_proxmox_tasks_info.py tests/unit/plugins/modules/test_proxmox_template.py tests/unit/plugins/modules/test_proxmox_vm_info.py tests/unit/plugins/modules/test_puppet.py tests/unit/plugins/modules/test_redhat_subscription.py tests/unit/plugins/modules/test_redis_data.py tests/unit/plugins/modules/test_redis_data_incr.py tests/unit/plugins/modules/test_redis_data_info.py tests/unit/plugins/modules/test_redis_info.py tests/unit/plugins/modules/test_rhsm_release.py tests/unit/plugins/modules/test_rhsm_repository.py tests/unit/plugins/modules/test_rpm_ostree_pkg.py tests/unit/plugins/modules/test_scaleway_compute_private_network.py tests/unit/plugins/modules/test_scaleway_private_network.py tests/unit/plugins/modules/test_simpleinit_msb.py tests/unit/plugins/modules/test_slack.py tests/unit/plugins/modules/test_snap.py tests/unit/plugins/modules/test_solaris_zone.py tests/unit/plugins/modules/test_ss_3par_cpg.py tests/unit/plugins/modules/test_statsd.py tests/unit/plugins/modules/test_sysupgrade.py tests/unit/plugins/modules/test_terraform.py tests/unit/plugins/modules/test_ufw.py tests/unit/plugins/modules/test_usb_facts.py tests/unit/plugins/modules/test_wdc_redfish_command.py tests/unit/plugins/modules/test_wdc_redfish_info.py tests/unit/plugins/modules/test_xcc_redfish_command.py tests/unit/plugins/modules/test_xenserver_guest_info.py tests/unit/plugins/modules/test_xenserver_guest_powerstate.py tests/unit/plugins/modules/test_xfconf.py tests/unit/plugins/modules/test_xfconf_info.py" returned exit status 1. 2279s ## return code is 1 2279s 2279s 2279s 2279s ############################################################ 2279s ############################################################ 2279s #### Running FLAKY tests in ansible_collections/community/hrobot 2279s ############################################################ 2279s ############################################################ 2279s Unit test modules with Python 3.13 2280s ============================= test session starts ============================== 2280s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 2280s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hrobot 2280s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 2280s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0 2280s created: 2/2 workers 2280s 2 workers [0 items] 2280s 2280s 2280s ==================================== ERRORS ==================================== 2280s ___________ ERROR collecting tests/unit/plugins/modules/test_boot.py ___________ 2280s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_boot.py'. 2280s Hint: make sure your test modules/packages have valid Python names. 2280s Traceback: 2280s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2280s return _bootstrap._gcd_import(name[level:], package, level) 2280s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2280s assertion_rewriting_hook.exec_module(module) 2280s tests/unit/plugins/modules/test_boot.py:9: in 2280s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2280s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2280s _______ ERROR collecting tests/unit/plugins/modules/test_failover_ip.py ________ 2280s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_failover_ip.py'. 2280s Hint: make sure your test modules/packages have valid Python names. 2280s Traceback: 2280s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2280s return _bootstrap._gcd_import(name[level:], package, level) 2280s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2280s assertion_rewriting_hook.exec_module(module) 2280s tests/unit/plugins/modules/test_failover_ip.py:9: in 2280s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2280s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2280s _____ ERROR collecting tests/unit/plugins/modules/test_failover_ip_info.py _____ 2280s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_failover_ip_info.py'. 2280s Hint: make sure your test modules/packages have valid Python names. 2280s Traceback: 2280s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2280s return _bootstrap._gcd_import(name[level:], package, level) 2280s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2280s assertion_rewriting_hook.exec_module(module) 2280s tests/unit/plugins/modules/test_failover_ip_info.py:9: in 2280s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2280s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2280s _________ ERROR collecting tests/unit/plugins/modules/test_firewall.py _________ 2280s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_firewall.py'. 2280s Hint: make sure your test modules/packages have valid Python names. 2280s Traceback: 2280s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2280s return _bootstrap._gcd_import(name[level:], package, level) 2280s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2280s assertion_rewriting_hook.exec_module(module) 2280s tests/unit/plugins/modules/test_firewall.py:11: in 2280s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2280s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2280s ______ ERROR collecting tests/unit/plugins/modules/test_firewall_info.py _______ 2280s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_firewall_info.py'. 2280s Hint: make sure your test modules/packages have valid Python names. 2280s Traceback: 2280s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2280s return _bootstrap._gcd_import(name[level:], package, level) 2280s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2280s assertion_rewriting_hook.exec_module(module) 2280s tests/unit/plugins/modules/test_firewall_info.py:9: in 2280s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2280s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2280s __________ ERROR collecting tests/unit/plugins/modules/test_reset.py ___________ 2280s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_reset.py'. 2280s Hint: make sure your test modules/packages have valid Python names. 2280s Traceback: 2280s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2280s return _bootstrap._gcd_import(name[level:], package, level) 2280s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2280s assertion_rewriting_hook.exec_module(module) 2280s tests/unit/plugins/modules/test_reset.py:9: in 2280s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2280s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2280s _______ ERROR collecting tests/unit/plugins/modules/test_reverse_dns.py ________ 2280s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_reverse_dns.py'. 2280s Hint: make sure your test modules/packages have valid Python names. 2280s Traceback: 2280s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2280s return _bootstrap._gcd_import(name[level:], package, level) 2280s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2280s assertion_rewriting_hook.exec_module(module) 2280s tests/unit/plugins/modules/test_reverse_dns.py:9: in 2280s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2280s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2280s __________ ERROR collecting tests/unit/plugins/modules/test_server.py __________ 2280s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_server.py'. 2280s Hint: make sure your test modules/packages have valid Python names. 2280s Traceback: 2280s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2280s return _bootstrap._gcd_import(name[level:], package, level) 2280s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2280s assertion_rewriting_hook.exec_module(module) 2280s tests/unit/plugins/modules/test_server.py:9: in 2280s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2280s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2280s _______ ERROR collecting tests/unit/plugins/modules/test_server_info.py ________ 2280s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_server_info.py'. 2280s Hint: make sure your test modules/packages have valid Python names. 2280s Traceback: 2280s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2280s return _bootstrap._gcd_import(name[level:], package, level) 2280s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2280s assertion_rewriting_hook.exec_module(module) 2280s tests/unit/plugins/modules/test_server_info.py:9: in 2280s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2280s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2280s _________ ERROR collecting tests/unit/plugins/modules/test_ssh_key.py __________ 2280s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_ssh_key.py'. 2280s Hint: make sure your test modules/packages have valid Python names. 2280s Traceback: 2280s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2280s return _bootstrap._gcd_import(name[level:], package, level) 2280s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2280s assertion_rewriting_hook.exec_module(module) 2280s tests/unit/plugins/modules/test_ssh_key.py:9: in 2280s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2280s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2280s _______ ERROR collecting tests/unit/plugins/modules/test_ssh_key_info.py _______ 2280s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_ssh_key_info.py'. 2280s Hint: make sure your test modules/packages have valid Python names. 2280s Traceback: 2280s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2280s return _bootstrap._gcd_import(name[level:], package, level) 2280s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2280s assertion_rewriting_hook.exec_module(module) 2280s tests/unit/plugins/modules/test_ssh_key_info.py:9: in 2280s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2280s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2280s ________ ERROR collecting tests/unit/plugins/modules/test_storagebox.py ________ 2280s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_storagebox.py'. 2280s Hint: make sure your test modules/packages have valid Python names. 2280s Traceback: 2280s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2280s return _bootstrap._gcd_import(name[level:], package, level) 2280s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2280s assertion_rewriting_hook.exec_module(module) 2280s tests/unit/plugins/modules/test_storagebox.py:9: in 2280s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2280s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2280s _____ ERROR collecting tests/unit/plugins/modules/test_storagebox_info.py ______ 2280s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_storagebox_info.py'. 2280s Hint: make sure your test modules/packages have valid Python names. 2280s Traceback: 2280s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2280s return _bootstrap._gcd_import(name[level:], package, level) 2280s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2280s assertion_rewriting_hook.exec_module(module) 2280s tests/unit/plugins/modules/test_storagebox_info.py:9: in 2280s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2280s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2280s _ ERROR collecting tests/unit/plugins/modules/test_storagebox_set_password.py __ 2280s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_storagebox_set_password.py'. 2280s Hint: make sure your test modules/packages have valid Python names. 2280s Traceback: 2280s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2280s return _bootstrap._gcd_import(name[level:], package, level) 2280s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2280s assertion_rewriting_hook.exec_module(module) 2280s tests/unit/plugins/modules/test_storagebox_set_password.py:9: in 2280s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2280s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2280s _ ERROR collecting tests/unit/plugins/modules/test_storagebox_snapshot_plan.py _ 2280s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_storagebox_snapshot_plan.py'. 2280s Hint: make sure your test modules/packages have valid Python names. 2280s Traceback: 2280s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2280s return _bootstrap._gcd_import(name[level:], package, level) 2280s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2280s assertion_rewriting_hook.exec_module(module) 2280s tests/unit/plugins/modules/test_storagebox_snapshot_plan.py:9: in 2280s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2280s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2280s _ ERROR collecting tests/unit/plugins/modules/test_storagebox_snapshot_plan_info.py _ 2280s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_storagebox_snapshot_plan_info.py'. 2280s Hint: make sure your test modules/packages have valid Python names. 2280s Traceback: 2280s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2280s return _bootstrap._gcd_import(name[level:], package, level) 2280s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2280s assertion_rewriting_hook.exec_module(module) 2280s tests/unit/plugins/modules/test_storagebox_snapshot_plan_info.py:9: in 2280s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2280s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2280s _________ ERROR collecting tests/unit/plugins/modules/test_v_switch.py _________ 2280s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_v_switch.py'. 2280s Hint: make sure your test modules/packages have valid Python names. 2280s Traceback: 2280s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2280s return _bootstrap._gcd_import(name[level:], package, level) 2280s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2280s assertion_rewriting_hook.exec_module(module) 2280s tests/unit/plugins/modules/test_v_switch.py:12: in 2280s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 2280s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2280s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hrobot/tests/output/junit/python3.13-modules-units.xml - 2280s =========================== short test summary info ============================ 2280s ERROR tests/unit/plugins/modules/test_boot.py 2280s ERROR tests/unit/plugins/modules/test_failover_ip.py 2280s ERROR tests/unit/plugins/modules/test_failover_ip_info.py 2280s ERROR tests/unit/plugins/modules/test_firewall.py 2280s ERROR tests/unit/plugins/modules/test_firewall_info.py 2280s ERROR tests/unit/plugins/modules/test_reset.py 2280s ERROR tests/unit/plugins/modules/test_reverse_dns.py 2280s ERROR tests/unit/plugins/modules/test_server.py 2280s ERROR tests/unit/plugins/modules/test_server_info.py 2280s ERROR tests/unit/plugins/modules/test_ssh_key.py 2280s ERROR tests/unit/plugins/modules/test_ssh_key_info.py 2280s ERROR tests/unit/plugins/modules/test_storagebox.py 2280s ERROR tests/unit/plugins/modules/test_storagebox_info.py 2280s ERROR tests/unit/plugins/modules/test_storagebox_set_password.py 2280s ERROR tests/unit/plugins/modules/test_storagebox_snapshot_plan.py 2280s ERROR tests/unit/plugins/modules/test_storagebox_snapshot_plan_info.py 2280s ERROR tests/unit/plugins/modules/test_v_switch.py 2280s ============================== 17 errors in 0.95s ============================== 2280s 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/community/hrobot/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hrobot --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hrobot tests/unit/plugins/modules/test_boot.py tests/unit/plugins/modules/test_failover_ip.py tests/unit/plugins/modules/test_failover_ip_info.py tests/unit/plugins/modules/test_firewall.py tests/unit/plugins/modules/test_firewall_info.py tests/unit/plugins/modules/test_reset.py tests/unit/plugins/modules/test_reverse_dns.py tests/unit/plugins/modules/test_server.py tests/unit/plugins/modules/test_server_info.py tests/unit/plugins/modules/test_ssh_key.py tests/unit/plugins/modules/test_ssh_key_info.py tests/unit/plugins/modules/test_storagebox.py tests/unit/plugins/modules/test_storagebox_info.py tests/unit/plugins/modules/test_storagebox_set_password.py tests/unit/plugins/modules/test_storagebox_snapshot_plan.py tests/unit/plugins/modules/test_storagebox_snapshot_plan_info.py tests/unit/plugins/modules/test_v_switch.py" returned exit status 1. 2280s ## return code is 1 2280s 2280s 2280s 2280s ############################################################ 2280s ############################################################ 2280s #### Running FLAKY tests in ansible_collections/community/library_inventory_filtering_v1 2280s ############################################################ 2280s ############################################################ 2281s Unit test controller with Python 3.13 2282s ============================= test session starts ============================== 2282s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 2282s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/library_inventory_filtering_v1 2282s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 2282s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0 2282s created: 2/2 workers 2282s 2 workers [0 items] 2282s 2282s 2282s ==================================== ERRORS ==================================== 2282s __ ERROR collecting tests/unit/plugins/plugin_utils/test_inventory_filter.py ___ 2282s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/library_inventory_filtering_v1/tests/unit/plugins/plugin_utils/test_inventory_filter.py'. 2282s Hint: make sure your test modules/packages have valid Python names. 2282s Traceback: 2282s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2282s return _bootstrap._gcd_import(name[level:], package, level) 2282s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2282s assertion_rewriting_hook.exec_module(module) 2282s tests/unit/plugins/plugin_utils/test_inventory_filter.py:14: in 2282s from ansible_collections.community.internal_test_tools.tests.unit.mock.loader import DictDataLoader 2282s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2282s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/library_inventory_filtering_v1/tests/output/junit/python3.13-controller-units.xml - 2282s =========================== short test summary info ============================ 2282s ERROR tests/unit/plugins/plugin_utils/test_inventory_filter.py 2282s =============================== 1 error in 0.71s =============================== 2282s 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/community/library_inventory_filtering_v1/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/library_inventory_filtering_v1 --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/library_inventory_filtering_v1 tests/unit/plugins/plugin_utils/test_inventory_filter.py" returned exit status 1. 2282s ## return code is 1 2282s 2282s 2282s 2282s ############################################################ 2282s ############################################################ 2282s #### Running FLAKY tests in ansible_collections/infoblox/nios_modules 2282s ############################################################ 2282s ############################################################ 2282s Unit test modules with Python 3.13 2283s ============================= test session starts ============================== 2283s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 2283s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/infoblox/nios_modules 2283s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 2283s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0 2283s created: 2/2 workers 2283s 2 workers [91 items] 2283s 2286s FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF [ 79%] 2287s FFFFFFFFFFFFFFFFFFF [100%] 2287s =================================== FAILURES =================================== 2287s ______ TestNiosExtensibleAttributeModule.test_create_extensible_attribute ______ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosExtensibleAttributeModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_extensible_attribute.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ___________ TestNiosCNameRecordModule.test_nios_cname_record_create ____________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosCNameRecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_cname_record.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ________ TestNiosExtensibleAttributeModule.test_nios_ea_update_comment _________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosExtensibleAttributeModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_extensible_attribute.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ___________ TestNiosCNameRecordModule.test_nios_cname_record_remove ____________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosCNameRecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_cname_record.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ______ TestNiosExtensibleAttributeModule.test_remove_extensible_attribute ______ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosExtensibleAttributeModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_extensible_attribute.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _______ TestNiosCNameRecordModule.test_nios_cname_record_update_comment ________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosCNameRecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_cname_record.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _______________ TestNiosARecordModule.test_nios_a_record_create ________________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosARecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_a_record.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _______________ TestNiosDnsViewModule.test_nios_dns_view_create ________________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosDnsViewModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_dns_view.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _______________ TestNiosDnsViewModule.test_nios_dns_view_remove ________________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosDnsViewModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_dns_view.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _______________ TestNiosARecordModule.test_nios_a_record_remove ________________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosARecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_a_record.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ___________ TestNiosDnsViewModule.test_nios_dns_view_update_comment ____________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosDnsViewModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_dns_view.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ___________ TestNiosARecordModule.test_nios_a_record_update_comment ____________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosARecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_a_record.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ________ TestNiosDtcHttpMonitorModule.test_nios_dtc_monitor_http_create ________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosDtcHttpMonitorModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_dtc_monitor_http.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _________ TestNiosARecordModule.test_nios_a_record_update_record_name __________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosARecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_a_record.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ________ TestNiosDtcHttpMonitorModule.test_nios_dtc_monitor_http_remove ________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosDtcHttpMonitorModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_dtc_monitor_http.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ____________ TestNiosAAAARecordModule.test_nios_aaaa_record_create _____________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosAAAARecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_aaaa_record.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ____ TestNiosDtcHttpMonitorModule.test_nios_dtc_monitor_http_update_comment ____ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosDtcHttpMonitorModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_dtc_monitor_http.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ____________ TestNiosAAAARecordModule.test_nios_aaaa_record_remove _____________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosAAAARecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_aaaa_record.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ________ TestNiosDtcIcmpMonitorModule.test_nios_dtc_monitor_icmp_create ________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosDtcIcmpMonitorModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ________ TestNiosAAAARecordModule.test_nios_aaaa_record_update_comment _________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosAAAARecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_aaaa_record.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ________ TestNiosDtcIcmpMonitorModule.test_nios_dtc_monitor_icmp_remove ________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosDtcIcmpMonitorModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ______ TestNiosAAAARecordModule.test_nios_aaaa_record_update_record_name _______ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosAAAARecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_aaaa_record.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _________ TestNiosDtcTcpMonitorModule.test_nios_dtc_monitor_tcp_create _________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosDtcTcpMonitorModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ____ TestNiosDtcIcmpMonitorModule.test_nios_dtc_monitor_icmp_update_comment ____ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosDtcIcmpMonitorModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _________ TestNiosDtcTcpMonitorModule.test_nios_dtc_monitor_tcp_remove _________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosDtcTcpMonitorModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _________ TestNiosDtcTcpMonitorModule.test_nios_dtc_monitor_pdp_create _________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosDtcTcpMonitorModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _____ TestNiosDtcTcpMonitorModule.test_nios_dtc_monitor_tcp_update_comment _____ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosDtcTcpMonitorModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _________ TestNiosDtcTcpMonitorModule.test_nios_dtc_monitor_pdp_remove _________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosDtcTcpMonitorModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _____ TestNiosDtcTcpMonitorModule.test_nios_dtc_monitor_pdp_update_comment _____ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosDtcTcpMonitorModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ___________ TestNiosDtcTopologyModule.test_nios_dtc_topology_create ____________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosDtcTopologyModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_dtc_topology.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _________ TestNiosDtcSipMonitorModule.test_nios_dtc_monitor_sip_create _________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosDtcSipMonitorModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ___________ TestNiosDtcTopologyModule.test_nios_dtc_topology_remove ____________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosDtcTopologyModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_dtc_topology.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _______ TestNiosDtcTopologyModule.test_nios_dtc_topology_update_comment ________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosDtcTopologyModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_dtc_topology.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _________ TestNiosDtcSipMonitorModule.test_nios_dtc_monitor_sip_remove _________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosDtcSipMonitorModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _____ TestNiosDtcSipMonitorModule.test_nios_dtc_monitor_sip_update_comment _____ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosDtcSipMonitorModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ________ TestNiosFixedAddressModule.test_nios_fixed_address_ipv4_create ________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosFixedAddressModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_fixed_address.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ________ TestNiosDtcSnmpMonitorModule.test_nios_dtc_monitor_snmp_create ________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosDtcSnmpMonitorModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _____ TestNiosFixedAddressModule.test_nios_fixed_address_ipv4_dhcp_update ______ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosFixedAddressModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_fixed_address.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ________ TestNiosDtcSnmpMonitorModule.test_nios_dtc_monitor_snmp_remove ________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosDtcSnmpMonitorModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ________ TestNiosFixedAddressModule.test_nios_fixed_address_ipv4_remove ________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosFixedAddressModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_fixed_address.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ____ TestNiosDtcSnmpMonitorModule.test_nios_dtc_monitor_snmp_update_comment ____ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosDtcSnmpMonitorModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ________ TestNiosFixedAddressModule.test_nios_fixed_address_ipv6_create ________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosFixedAddressModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_fixed_address.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _________________ TestNiosMemberModule.test_nios_member_create _________________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosMemberModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_member.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ________ TestNiosFixedAddressModule.test_nios_fixed_address_ipv6_remove ________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosFixedAddressModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_fixed_address.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _________________ TestNiosMemberModule.test_nios_member_remove _________________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosMemberModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_member.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ____________ TestNiosHostRecordModule.test_nios_host_record_create _____________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s 2287s super(TestNiosHostRecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_host_record.py:43: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _________________ TestNiosMemberModule.test_nios_member_update _________________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosMemberModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_member.py:40: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ____________ TestNiosHostRecordModule.test_nios_host_record_remove _____________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s 2287s super(TestNiosHostRecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_host_record.py:43: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ______________ TestNiosMXRecordModule.test_nios_mx_record_create _______________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosMXRecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_mx_record.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ________ TestNiosHostRecordModule.test_nios_host_record_update_comment _________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s 2287s super(TestNiosHostRecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_host_record.py:43: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ______________ TestNiosMXRecordModule.test_nios_mx_record_remove _______________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosMXRecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_mx_record.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ______ TestNiosHostRecordModule.test_nios_host_record_update_record_name _______ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s 2287s super(TestNiosHostRecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_host_record.py:43: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s __________ TestNiosMXRecordModule.test_nios_mx_record_update_comment ___________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosMXRecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_mx_record.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ___________ TestNiosNAPTRRecordModule.test_nios_naptr_record_remove ____________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosNAPTRRecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_naptr_record.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ___________ TestNiosNAPTRRecordModule.test_nios_naptr_record_create ____________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosNAPTRRecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_naptr_record.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _______ TestNiosNAPTRRecordModule.test_nios_naptr_record_update_comment ________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosNAPTRRecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_naptr_record.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _ TestNiosNetworkModule.test_nios_network_ipv4_update_with_use_logic_filter_rules _ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosNetworkModule, self).setUp() 2287s self.module = MagicMock( 2287s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 2287s ) 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch( 2287s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 2287s ) 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_network.py:44: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _____________ TestNiosNetworkModule.test_nios_network_ipv4_create ______________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosNetworkModule, self).setUp() 2287s self.module = MagicMock( 2287s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 2287s ) 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch( 2287s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 2287s ) 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_network.py:44: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _____________ TestNiosNetworkModule.test_nios_network_ipv6_create ______________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosNetworkModule, self).setUp() 2287s self.module = MagicMock( 2287s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 2287s ) 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch( 2287s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 2287s ) 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_network.py:44: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _ TestNiosNetworkModule.test_nios_network_ipv4_create_with_use_logic_filter_rules _ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosNetworkModule, self).setUp() 2287s self.module = MagicMock( 2287s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 2287s ) 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch( 2287s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 2287s ) 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_network.py:44: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ___________ TestNiosNetworkModule.test_nios_network_ipv6_dhcp_update ___________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosNetworkModule, self).setUp() 2287s self.module = MagicMock( 2287s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 2287s ) 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch( 2287s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 2287s ) 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_network.py:44: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ___________ TestNiosNetworkModule.test_nios_network_ipv4_dhcp_update ___________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosNetworkModule, self).setUp() 2287s self.module = MagicMock( 2287s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 2287s ) 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch( 2287s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 2287s ) 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_network.py:44: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _____________ TestNiosNetworkModule.test_nios_network_ipv6_remove ______________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosNetworkModule, self).setUp() 2287s self.module = MagicMock( 2287s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 2287s ) 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch( 2287s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 2287s ) 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_network.py:44: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _____________ TestNiosNetworkModule.test_nios_network_ipv4_remove ______________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosNetworkModule, self).setUp() 2287s self.module = MagicMock( 2287s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 2287s ) 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch( 2287s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 2287s ) 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_network.py:44: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _________ TestNiosNetworkModule.test_nios_networkcontainer_ipv4_create _________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosNetworkModule, self).setUp() 2287s self.module = MagicMock( 2287s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 2287s ) 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch( 2287s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 2287s ) 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_network.py:44: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _________ TestNiosNetworkModule.test_nios_networkcontainer_ipv4_remove _________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosNetworkModule, self).setUp() 2287s self.module = MagicMock( 2287s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 2287s ) 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch( 2287s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 2287s ) 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_network.py:44: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _______ TestNiosNetworkViewModule.test_nios_network_view_update_comment ________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosNetworkViewModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_network_view.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _________ TestNiosNetworkModule.test_nios_networkcontainer_ipv6_create _________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosNetworkModule, self).setUp() 2287s self.module = MagicMock( 2287s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 2287s ) 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch( 2287s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 2287s ) 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_network.py:44: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _________ TestNiosNetworkViewModule.test_nios_network_view_update_name _________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosNetworkViewModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_network_view.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ___________ TestNiosNetworkViewModule.test_nios_network_view_create ____________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosNetworkViewModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_network_view.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ________________ TestNiosNSGroupModule.test_nios_nsgroup_create ________________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s 2287s super(TestNiosNSGroupModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_nsgroup.py:43: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ___________ TestNiosNetworkViewModule.test_nios_network_view_remove ____________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosNetworkViewModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_network_view.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ________________ TestNiosNSGroupModule.test_nios_nsgroup_remove ________________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s 2287s super(TestNiosNSGroupModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_nsgroup.py:43: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ____________ TestNiosNSGroupModule.test_nios_nsgroup_update_comment ____________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s 2287s super(TestNiosNSGroupModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_nsgroup.py:43: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _____________ TestNiosPTRRecordModule.test_nios_ptr_record_remove ______________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s 2287s super(TestNiosPTRRecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_ptr_record.py:43: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _____________ TestNiosPTRRecordModule.test_nios_ptr6_record_create _____________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s 2287s super(TestNiosPTRRecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_ptr_record.py:43: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _________ TestNiosPTRRecordModule.test_nios_ptr_record_update_comment __________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s 2287s super(TestNiosPTRRecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_ptr_record.py:43: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _____________ TestNiosPTRRecordModule.test_nios_ptr_record_create ______________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s 2287s super(TestNiosPTRRecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_ptr_record.py:43: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _____ TestNiosPTRRecordModule.test_nios_ptr_record_update_record_ptrdname ______ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s 2287s super(TestNiosPTRRecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_ptr_record.py:43: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _____________ TestNiosSRVRecordModule.test_nios_srv_record_remove ______________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosSRVRecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_srv_record.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _____________ TestNiosSRVRecordModule.test_nios_srv_record_create ______________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosSRVRecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_srv_record.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _________ TestNiosSRVRecordModule.test_nios_srv_record_update_comment __________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosSRVRecordModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_srv_record.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ___________________ TestNiosZoneModule.test_nios_zone_create ___________________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosZoneModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_zone.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _______ TestNiosZoneModule.test_nios_zone_create_using_name_server_group _______ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosZoneModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_zone.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ___ TestNiosZoneModule.test_nios_zone_create_using_grid_primary_secondaries ____ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosZoneModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_zone.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ___________________ TestNiosZoneModule.test_nios_zone_remove ___________________ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosZoneModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_zone.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s __________ TestNiosZoneModule.test_nios_zone_create_using_zone_format __________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosZoneModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_zone.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s ___ TestNiosZoneModule.test_nios_zone_remove_using_grid_primary_secondaries ____ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosZoneModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_zone.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _______ TestNiosZoneModule.test_nios_zone_remove_using_name_server_group _______ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosZoneModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_zone.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _______ TestNiosZoneModule.test_nios_zone_remove_using_using_zone_format _______ 2287s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosZoneModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_zone.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s _______________ TestNiosZoneModule.test_nios_zone_update_comment _______________ 2287s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2287s 2287s self = 2287s 2287s def setUp(self): 2287s super(TestNiosZoneModule, self).setUp() 2287s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 2287s self.module.check_mode = False 2287s self.module.params = {'provider': None} 2287s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 2287s self.exec_command = self.mock_wapi.start() 2287s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 2287s self.mock_wapi_run.start() 2287s > self.load_config = self.mock_wapi_run.start() 2287s 2287s tests/unit/plugins/modules/test_nios_zone.py:42: 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s /usr/lib/python3.13/unittest/mock.py:1654: in start 2287s result = self.__enter__() 2287s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2287s 2287s self = 2287s 2287s def __enter__(self): 2287s """Perform the patch.""" 2287s if self.is_started: 2287s > raise RuntimeError("Patch is already started") 2287s E RuntimeError: Patch is already started 2287s 2287s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 2287s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/infoblox/nios_modules/tests/output/junit/python3.13-modules-units.xml - 2287s =========================== short test summary info ============================ 2287s FAILED tests/unit/plugins/modules/test_extensible_attribute.py::TestNiosExtensibleAttributeModule::test_create_extensible_attribute 2287s FAILED tests/unit/plugins/modules/test_nios_cname_record.py::TestNiosCNameRecordModule::test_nios_cname_record_create 2287s FAILED tests/unit/plugins/modules/test_extensible_attribute.py::TestNiosExtensibleAttributeModule::test_nios_ea_update_comment 2287s FAILED tests/unit/plugins/modules/test_nios_cname_record.py::TestNiosCNameRecordModule::test_nios_cname_record_remove 2287s FAILED tests/unit/plugins/modules/test_extensible_attribute.py::TestNiosExtensibleAttributeModule::test_remove_extensible_attribute 2287s FAILED tests/unit/plugins/modules/test_nios_cname_record.py::TestNiosCNameRecordModule::test_nios_cname_record_update_comment 2287s FAILED tests/unit/plugins/modules/test_nios_a_record.py::TestNiosARecordModule::test_nios_a_record_create 2287s FAILED tests/unit/plugins/modules/test_nios_dns_view.py::TestNiosDnsViewModule::test_nios_dns_view_create 2287s FAILED tests/unit/plugins/modules/test_nios_dns_view.py::TestNiosDnsViewModule::test_nios_dns_view_remove 2287s FAILED tests/unit/plugins/modules/test_nios_a_record.py::TestNiosARecordModule::test_nios_a_record_remove 2287s FAILED tests/unit/plugins/modules/test_nios_dns_view.py::TestNiosDnsViewModule::test_nios_dns_view_update_comment 2287s FAILED tests/unit/plugins/modules/test_nios_a_record.py::TestNiosARecordModule::test_nios_a_record_update_comment 2287s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_http.py::TestNiosDtcHttpMonitorModule::test_nios_dtc_monitor_http_create 2287s FAILED tests/unit/plugins/modules/test_nios_a_record.py::TestNiosARecordModule::test_nios_a_record_update_record_name 2287s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_http.py::TestNiosDtcHttpMonitorModule::test_nios_dtc_monitor_http_remove 2287s FAILED tests/unit/plugins/modules/test_nios_aaaa_record.py::TestNiosAAAARecordModule::test_nios_aaaa_record_create 2287s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_http.py::TestNiosDtcHttpMonitorModule::test_nios_dtc_monitor_http_update_comment 2287s FAILED tests/unit/plugins/modules/test_nios_aaaa_record.py::TestNiosAAAARecordModule::test_nios_aaaa_record_remove 2287s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py::TestNiosDtcIcmpMonitorModule::test_nios_dtc_monitor_icmp_create 2287s FAILED tests/unit/plugins/modules/test_nios_aaaa_record.py::TestNiosAAAARecordModule::test_nios_aaaa_record_update_comment 2287s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py::TestNiosDtcIcmpMonitorModule::test_nios_dtc_monitor_icmp_remove 2287s FAILED tests/unit/plugins/modules/test_nios_aaaa_record.py::TestNiosAAAARecordModule::test_nios_aaaa_record_update_record_name 2287s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py::TestNiosDtcTcpMonitorModule::test_nios_dtc_monitor_tcp_create 2287s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py::TestNiosDtcIcmpMonitorModule::test_nios_dtc_monitor_icmp_update_comment 2287s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py::TestNiosDtcTcpMonitorModule::test_nios_dtc_monitor_tcp_remove 2287s 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/infoblox/nios_modules/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/infoblox/nios_modules --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/infoblox/nios_modules tests/unit/plugins/modules/test_extensible_attribute.py tests/unit/plugins/modules/test_nios_a_record.py tests/unit/plugins/modules/test_nios_aaaa_record.py tests/unit/plugins/modules/test_nios_cname_record.py tests/unit/plugins/modules/test_nios_dns_view.py tests/unit/plugins/modules/test_nios_dtc_monitor_http.py tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py tests/unit/plugins/modules/test_nios_dtc_topology.py tests/unit/plugins/modules/test_nios_fixed_address.py tests/unit/plugins/modules/test_nios_host_record.py tests/unit/plugins/modules/test_nios_member.py tests/unit/plugins/modules/test_nios_module.py tests/unit/plugins/modules/test_nios_mx_record.py tests/unit/plugins/modules/test_nios_naptr_record.py tests/unit/plugins/modules/test_nios_network.py tests/unit/plugins/modules/test_nios_network_view.py tests/unit/plugins/modules/test_nios_nsgroup.py tests/unit/plugins/modules/test_nios_ptr_record.py tests/unit/plugins/modules/test_nios_srv_record.py tests/unit/plugins/modules/test_nios_zone.py" returned exit status 1. 2287s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py::TestNiosDtcTcpMonitorModule::test_nios_dtc_monitor_pdp_create 2287s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py::TestNiosDtcTcpMonitorModule::test_nios_dtc_monitor_tcp_update_comment 2287s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py::TestNiosDtcTcpMonitorModule::test_nios_dtc_monitor_pdp_remove 2287s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py::TestNiosDtcTcpMonitorModule::test_nios_dtc_monitor_pdp_update_comment 2287s FAILED tests/unit/plugins/modules/test_nios_dtc_topology.py::TestNiosDtcTopologyModule::test_nios_dtc_topology_create 2287s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py::TestNiosDtcSipMonitorModule::test_nios_dtc_monitor_sip_create 2287s FAILED tests/unit/plugins/modules/test_nios_dtc_topology.py::TestNiosDtcTopologyModule::test_nios_dtc_topology_remove 2287s FAILED tests/unit/plugins/modules/test_nios_dtc_topology.py::TestNiosDtcTopologyModule::test_nios_dtc_topology_update_comment 2287s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py::TestNiosDtcSipMonitorModule::test_nios_dtc_monitor_sip_remove 2287s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py::TestNiosDtcSipMonitorModule::test_nios_dtc_monitor_sip_update_comment 2287s FAILED tests/unit/plugins/modules/test_nios_fixed_address.py::TestNiosFixedAddressModule::test_nios_fixed_address_ipv4_create 2287s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py::TestNiosDtcSnmpMonitorModule::test_nios_dtc_monitor_snmp_create 2287s FAILED tests/unit/plugins/modules/test_nios_fixed_address.py::TestNiosFixedAddressModule::test_nios_fixed_address_ipv4_dhcp_update 2287s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py::TestNiosDtcSnmpMonitorModule::test_nios_dtc_monitor_snmp_remove 2287s FAILED tests/unit/plugins/modules/test_nios_fixed_address.py::TestNiosFixedAddressModule::test_nios_fixed_address_ipv4_remove 2287s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py::TestNiosDtcSnmpMonitorModule::test_nios_dtc_monitor_snmp_update_comment 2287s FAILED tests/unit/plugins/modules/test_nios_fixed_address.py::TestNiosFixedAddressModule::test_nios_fixed_address_ipv6_create 2287s FAILED tests/unit/plugins/modules/test_nios_member.py::TestNiosMemberModule::test_nios_member_create 2287s FAILED tests/unit/plugins/modules/test_nios_fixed_address.py::TestNiosFixedAddressModule::test_nios_fixed_address_ipv6_remove 2287s FAILED tests/unit/plugins/modules/test_nios_member.py::TestNiosMemberModule::test_nios_member_remove 2287s FAILED tests/unit/plugins/modules/test_nios_host_record.py::TestNiosHostRecordModule::test_nios_host_record_create 2287s FAILED tests/unit/plugins/modules/test_nios_member.py::TestNiosMemberModule::test_nios_member_update 2287s FAILED tests/unit/plugins/modules/test_nios_host_record.py::TestNiosHostRecordModule::test_nios_host_record_remove 2287s FAILED tests/unit/plugins/modules/test_nios_mx_record.py::TestNiosMXRecordModule::test_nios_mx_record_create 2287s FAILED tests/unit/plugins/modules/test_nios_host_record.py::TestNiosHostRecordModule::test_nios_host_record_update_comment 2287s FAILED tests/unit/plugins/modules/test_nios_mx_record.py::TestNiosMXRecordModule::test_nios_mx_record_remove 2287s FAILED tests/unit/plugins/modules/test_nios_host_record.py::TestNiosHostRecordModule::test_nios_host_record_update_record_name 2287s FAILED tests/unit/plugins/modules/test_nios_mx_record.py::TestNiosMXRecordModule::test_nios_mx_record_update_comment 2287s FAILED tests/unit/plugins/modules/test_nios_naptr_record.py::TestNiosNAPTRRecordModule::test_nios_naptr_record_remove 2287s FAILED tests/unit/plugins/modules/test_nios_naptr_record.py::TestNiosNAPTRRecordModule::test_nios_naptr_record_create 2287s FAILED tests/unit/plugins/modules/test_nios_naptr_record.py::TestNiosNAPTRRecordModule::test_nios_naptr_record_update_comment 2287s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv4_update_with_use_logic_filter_rules 2287s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv4_create 2287s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv6_create 2287s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv4_create_with_use_logic_filter_rules 2287s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv6_dhcp_update 2287s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv4_dhcp_update 2287s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv6_remove 2287s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv4_remove 2287s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_networkcontainer_ipv4_create 2287s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_networkcontainer_ipv4_remove 2287s FAILED tests/unit/plugins/modules/test_nios_network_view.py::TestNiosNetworkViewModule::test_nios_network_view_update_comment 2287s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_networkcontainer_ipv6_create 2287s FAILED tests/unit/plugins/modules/test_nios_network_view.py::TestNiosNetworkViewModule::test_nios_network_view_update_name 2287s FAILED tests/unit/plugins/modules/test_nios_network_view.py::TestNiosNetworkViewModule::test_nios_network_view_create 2287s FAILED tests/unit/plugins/modules/test_nios_nsgroup.py::TestNiosNSGroupModule::test_nios_nsgroup_create 2287s FAILED tests/unit/plugins/modules/test_nios_network_view.py::TestNiosNetworkViewModule::test_nios_network_view_remove 2287s FAILED tests/unit/plugins/modules/test_nios_nsgroup.py::TestNiosNSGroupModule::test_nios_nsgroup_remove 2287s FAILED tests/unit/plugins/modules/test_nios_nsgroup.py::TestNiosNSGroupModule::test_nios_nsgroup_update_comment 2287s FAILED tests/unit/plugins/modules/test_nios_ptr_record.py::TestNiosPTRRecordModule::test_nios_ptr_record_remove 2287s FAILED tests/unit/plugins/modules/test_nios_ptr_record.py::TestNiosPTRRecordModule::test_nios_ptr6_record_create 2287s FAILED tests/unit/plugins/modules/test_nios_ptr_record.py::TestNiosPTRRecordModule::test_nios_ptr_record_update_comment 2287s FAILED tests/unit/plugins/modules/test_nios_ptr_record.py::TestNiosPTRRecordModule::test_nios_ptr_record_create 2287s FAILED tests/unit/plugins/modules/test_nios_ptr_record.py::TestNiosPTRRecordModule::test_nios_ptr_record_update_record_ptrdname 2287s FAILED tests/unit/plugins/modules/test_nios_srv_record.py::TestNiosSRVRecordModule::test_nios_srv_record_remove 2287s FAILED tests/unit/plugins/modules/test_nios_srv_record.py::TestNiosSRVRecordModule::test_nios_srv_record_create 2287s FAILED tests/unit/plugins/modules/test_nios_srv_record.py::TestNiosSRVRecordModule::test_nios_srv_record_update_comment 2287s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_create 2287s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_create_using_name_server_group 2287s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_create_using_grid_primary_secondaries 2287s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_remove 2287s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_create_using_zone_format 2287s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_remove_using_grid_primary_secondaries 2287s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_remove_using_name_server_group 2287s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_remove_using_using_zone_format 2287s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_update_comment 2287s ============================== 91 failed in 5.12s ============================== 2287s ## return code is 1 2287s 2287s 2287s 2287s ############################################################ 2287s ############################################################ 2287s #### Running FLAKY tests in ansible_collections/junipernetworks/junos 2287s ############################################################ 2287s ############################################################ 2288s Unit test controller with Python 3.13 2289s ============================= test session starts ============================== 2289s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 2289s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/junipernetworks/junos 2289s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 2289s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0 2289s created: 2/2 workers 2289s 2 workers [305 items] 2289s 2291s ....F....F..FFFF.FFFFFFFFFFFFFFFFFFFFFFFFFF.F....F.FFFFFFF..F.....F..... [ 23%] 2293s F.....F.....F.....F....FFFFFFFFFFFFFF.FFFFFFFFFFF.FFFF.F..F..FFFF.F....F [ 47%] 2295s .FFFFFF...FFFFFFFFF.FFFFFFFFF.FFFFF.FFF.FFF.FFFF...F....F...FFF.FF...FFF [ 70%] 2297s FFF.F.FFFFFFFFFF..F...F..FFFF....F..FF...F.....FFFFF.F.F.FFFFFFFFFFFFFFF [ 94%] 2298s .FFFF.FFFF.FF..F. [100%] 2298s =================================== FAILURES =================================== 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_001 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_001(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - af_type 2298s - afi 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="evpn", 2298s af_type=[dict(type="signaling", set=True)], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s 2298s commands = [ 2298s '' 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1654: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_002 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_002(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - accepted_prefix_limit 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="evpn", 2298s af_type=[ 2298s dict( 2298s type="signaling", 2298s accepted_prefix_limit=dict( 2298s limit_threshold=98, 2298s idle_timeout_value=2001, 2298s maximum=20, 2298s ), 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "2098" 2298s "2001" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1693: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_002_001 _ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_002_001(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - accepted_prefix_limit 2298s forever: true 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="evpn", 2298s af_type=[ 2298s dict( 2298s type="signaling", 2298s accepted_prefix_limit=dict( 2298s maximum=20, 2298s limit_threshold=98, 2298s forever=True, 2298s ), 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "2098" 2298s "" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1733: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ____________ TestJunosBgp_globalModule.test_junos_bgp_global_delete ____________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_global_delete(self): 2298s set_module_args(dict(config=dict(), state="deleted")) 2298s 2298s commands = [ 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s "", 2298s '' 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_global.py:436: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_global.py:1862: in main 2298s result = Bgp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 2298s config_xmls = self.set_config(existing_bgp_global_facts) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_003 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_003(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - add_path 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="evpn", 2298s af_type=[ 2298s dict( 2298s type="signaling", 2298s add_path=dict( 2298s receive=True, 2298s send=dict( 2298s multipath=True, 2298s include_backup_path=1, 2298s path_count=10, 2298s prefix_policy="customer65443", 2298s path_selection_mode=dict( 2298s all_paths=True, 2298s equal_cost_paths=True, 2298s ), 2298s ), 2298s ), 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "10" 2298s "1" 2298s "" 2298s "customer65443" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1782: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ________ TestJunosBgp_globalModule.test_junos_bgp_global_delete_purged _________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_global_delete_purged(self): 2298s set_module_args(dict(config=dict(), state="purged")) 2298s 2298s commands = [ 2298s '', 2298s '', 2298s ] 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_global.py:446: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_global.py:1862: in main 2298s result = Bgp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 2298s config_xmls = self.set_config(existing_bgp_global_facts) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_004 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_004(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - aggregate_label 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="evpn", 2298s af_type=[ 2298s dict( 2298s type="signaling", 2298s aggregate_label=dict( 2298s set=True, 2298s community="cuastomerapn1", 2298s ), 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "cuastomerapn1" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1819: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _________ TestJunosBgp_globalModule.test_junos_bgp_global_merge_groups _________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_global_merge_groups(self): 2298s """ 2298s description: configure groups attributes: 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s groups=[ 2298s dict( 2298s name="internal", 2298s neighbors=[ 2298s dict( 2298s neighbor_address="11.11.11.11", 2298s peer_as="65534", 2298s out_delay=11, 2298s accept_remote_nexthop=True, 2298s ), 2298s dict( 2298s neighbor_address="11.11.11.12", 2298s peer_as="65534", 2298s out_delay=12, 2298s accept_remote_nexthop=True, 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "internal" 2298s "11.11.11.11" 2298s "65534" 2298s "11" 2298s "11.11.11.12" 2298s "6553412" 2298s "", 2298s '', 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_global.py:513: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_global.py:1862: in main 2298s result = Bgp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 2298s config_xmls = self.set_config(existing_bgp_global_facts) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_005 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_005(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - aigp 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet6", 2298s af_type=[ 2298s dict( 2298s type="labeled-unicast", 2298s aigp=dict(set=True), 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1852: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ____________ TestJunosBgp_globalModule.test_junos_bgp_global_merged ____________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_global_merged(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s damping=True, 2298s description="This is configured with Junos_bgp resource module", 2298s preference="2", 2298s bfd_liveness_detection=dict( 2298s minimum_receive_interval=4, 2298s multiplier=10, 2298s no_adaptation=True, 2298s version="automatic", 2298s ), 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "This is configured with Junos_bgp resource module" 2298s "2" 2298s "4" 2298s "10" 2298s "automatic", 2298s '', 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_global.py:119: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_global.py:1862: in main 2298s result = Bgp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 2298s config_xmls = self.set_config(existing_bgp_global_facts) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_005_001 _ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_005_001(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - aigp 2298s disable: true 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet6", 2298s af_type=[ 2298s dict( 2298s type="labeled-unicast", 2298s aigp=dict(disable=True), 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1887: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosBgp_globalModule.test_junos_bgp_global_merged_advertise_bgp_static __ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_global_merged_advertise_bgp_static(self): 2298s """ 2298s configure advertise_bgp_static attributes: 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict(advertise_bgp_static=dict(policy="static-to-bgp")), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "static-to-bgp" 2298s "" 2298s "", 2298s '', 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_global.py:533: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_global.py:1862: in main 2298s result = Bgp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 2298s config_xmls = self.set_config(existing_bgp_global_facts) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_globalModule.test_junos_bgp_global_merged_advertise_external ___ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_global_merged_advertise_external(self): 2298s """ 2298s configure advertise_external attributes: 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s advertise_external=dict(set=True, conditional=True), 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "", 2298s '', 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_global.py:554: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_global.py:1862: in main 2298s result = Bgp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 2298s config_xmls = self.set_config(existing_bgp_global_facts) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_006 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_006(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - aigp 2298s damping: true 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet6", 2298s af_type=[ 2298s dict(type="labeled-unicast", damping=True), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1918: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosBgp_globalModule.test_junos_bgp_global_merged_bfd_liveness_detection _ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_global_merged_bfd_liveness_detection(self): 2298s """ 2298s configure bfd_liveness_detection attributes: 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s bfd_liveness_detection=dict( 2298s minimum_receive_interval=8, 2298s no_adaptation=True, 2298s authentication=dict( 2298s algorithm="keyed-md5", 2298s key_chain="junos", 2298s loose_check=True, 2298s ), 2298s detection_time=dict(threshold=1000000), 2298s transmit_interval=dict( 2298s minimum_interval=20, 2298s threshold=100000, 2298s ), 2298s holddown_interval=20, 2298s multiplier=20, 2298s session_mode="multihop", 2298s version="1", 2298s ), 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "keyed-md5junos" 2298s "" 2298s "1000000" 2298s "20" 2298s "208" 2298s "20" 2298s "multihop" 2298s "1" 2298s "", 2298s '', 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_global.py:600: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_global.py:1862: in main 2298s result = Bgp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 2298s config_xmls = self.set_config(existing_bgp_global_facts) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_007 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_007(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - aigp 2298s defer_initial_multipath_build 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet6", 2298s af_type=[ 2298s dict( 2298s type="labeled-unicast", 2298s defer_initial_multipath_build=dict( 2298s set=True, 2298s ), 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1954: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_globalModule.test_junos_bgp_global_merged_bgp_error_tolerance __ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_global_merged_bgp_error_tolerance(self): 2298s """ 2298s configure bgp_error_tolerance attributes: 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s bgp_error_tolerance=dict( 2298s set=True, 2298s malformed_route_limit=10, 2298s malformed_update_log_interval=15, 2298s no_malformed_route_limit=True, 2298s ), 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "10" 2298s "15" 2298s "" 2298s "", 2298s '', 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_global.py:628: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_global.py:1862: in main 2298s result = Bgp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 2298s config_xmls = self.set_config(existing_bgp_global_facts) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_007_001 _ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_007_001(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s defer_initial_multipath_build 2298s maximum_delay 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet6", 2298s af_type=[ 2298s dict( 2298s type="labeled-unicast", 2298s defer_initial_multipath_build=dict( 2298s maximum_delay=1200, 2298s ), 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "1200" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1991: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __________ TestJunosBgp_globalModule.test_junos_bgp_global_merged_bmp __________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_global_merged_bmp(self): 2298s """ 2298s configure bmp attributes: 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s bmp=dict( 2298s monitor=True, 2298s route_monitoring=dict( 2298s none=True, 2298s post_policy=True, 2298s post_policy_exclude_non_eligible=True, 2298s pre_policy=True, 2298s post_policy_exclude_non_feasible=True, 2298s ), 2298s ), 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "enable" 2298s "" 2298s "", 2298s '', 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_global.py:659: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_global.py:1862: in main 2298s result = Bgp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 2298s config_xmls = self.set_config(existing_bgp_global_facts) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_008 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_008(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - delay_route_advertisements 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet6", 2298s af_type=[ 2298s dict( 2298s type="labeled-unicast", 2298s delay_route_advertisements=dict( 2298s set=True, 2298s max_delay_route_age=12000, 2298s max_delay_routing_uptime=12000, 2298s min_delay_inbound_convergence=8000, 2298s min_delay_routing_uptime=8000, 2298s ), 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "1200012000" 2298s "8000" 2298s "8000" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2033: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _________ TestJunosBgp_globalModule.test_junos_bgp_global_merged_bmp_2 _________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_global_merged_bmp_2(self): 2298s """ 2298s configure bmp attributes: 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s bmp=dict( 2298s monitor=False, 2298s route_monitoring=dict( 2298s none=False, 2298s post_policy=False, 2298s post_policy_exclude_non_eligible=False, 2298s pre_policy=False, 2298s post_policy_exclude_non_feasible=False, 2298s ), 2298s ), 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "disable" 2298s "", 2298s '', 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_global.py:689: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_global.py:1862: in main 2298s result = Bgp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 2298s config_xmls = self.set_config(existing_bgp_global_facts) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_009 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_009(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - entropy_label 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet", 2298s af_type=[ 2298s dict( 2298s type="labeled-unicast", 2298s entropy_label=dict( 2298s set=True, 2298s no_next_hop_validation=True, 2298s ), 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2070: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _______ TestJunosBgp_globalModule.test_junos_bgp_global_merged_egress_te _______ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_global_merged_egress_te(self): 2298s """ 2298s configure egress_te attributes: 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict(egress_te=dict(set=True, backup_path="sample")), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "sample" 2298s "", 2298s '', 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_global.py:708: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_global.py:1862: in main 2298s result = Bgp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 2298s config_xmls = self.set_config(existing_bgp_global_facts) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_010 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_010(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - explicit_null 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet", 2298s af_type=[ 2298s dict( 2298s type="labeled-unicast", 2298s explicit_null=dict( 2298s set=True, 2298s connected_only=True, 2298s ), 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2107: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosBgp_globalModule.test_junos_bgp_global_merged_egress_te_backup_paths _ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_global_merged_egress_te_backup_paths(self): 2298s """ 2298s configure egress_te_backup_paths attributes: 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s egress_te_backup_paths=dict( 2298s templates=[ 2298s dict( 2298s path_name="temp", 2298s ip_forward=dict(set=True, rti_name="sample"), 2298s peers=["10.10.10.10", "11.11.11.11"], 2298s remote_nexthop="11.1.1.1", 2298s ), 2298s ], 2298s ), 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "temp" 2298s "10.10.10.1011.11.11.11" 2298s "11.1.1.1" 2298s "" 2298s "", 2298s '', 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_global.py:741: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_global.py:1862: in main 2298s result = Bgp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 2298s config_xmls = self.set_config(existing_bgp_global_facts) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_011 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_011(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - extended_nexthop 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet", 2298s af_type=[ 2298s dict(type="unicast", extended_nexthop=True), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2137: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _____ TestJunosBgp_globalModule.test_junos_bgp_global_merged_groups_allow ______ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_global_merged_groups_allow(self): 2298s """ 2298s configure allow attributes: 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s groups=[dict(name="internal", allow=["all", "1.1.1.0/24"])], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "internalall" 2298s "1.1.1.0/24" 2298s "", 2298s '', 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_global.py:763: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_global.py:1862: in main 2298s result = Bgp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 2298s config_xmls = self.set_config(existing_bgp_global_facts) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ______ TestJunosBgp_globalModule.test_junos_bgp_global_merged_idempotent _______ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_global_merged_idempotent(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s accept_remote_nexthop=True, 2298s advertise_from_main_vpn_tables=True, 2298s advertise_inactive=True, 2298s as_number="65432", 2298s authentication_algorithm="md5", 2298s bgp_error_tolerance=dict(malformed_route_limit=30000000), 2298s damping=True, 2298s description="This is configured with Junos_bgp resource module", 2298s hold_time=5, 2298s holddown_all_stale_labels=True, 2298s log_updown=True, 2298s no_advertise_peer_as=True, 2298s no_aggregator_id=True, 2298s out_delay=10, 2298s preference="2", 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_global.py:145: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_global.py:1862: in main 2298s result = Bgp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 2298s config_xmls = self.set_config(existing_bgp_global_facts) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_012 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_012(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - extended_nexthop_color 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet6", 2298s af_type=[ 2298s dict( 2298s type="unicast", 2298s extended_nexthop_color=True, 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2170: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosBgp_globalModule.test_junos_bgp_global_merged_optimal_route_reflection _ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_global_merged_optimal_route_reflection(self): 2298s """ 2298s configure optimal_route_reflection attributes: 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s groups=[ 2298s dict( 2298s name="internal", 2298s optimal_route_reflection=dict( 2298s igp_backup="test_igp", 2298s igp_primary="test_primary", 2298s ), 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "internal" 2298s "test_igptest_primary" 2298s "" 2298s "", 2298s '', 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_global.py:794: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_global.py:1862: in main 2298s result = Bgp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 2298s config_xmls = self.set_config(existing_bgp_global_facts) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_013 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_013(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - graceful_restart_forwarding_state_bit: from-fib 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet", 2298s af_type=[ 2298s dict( 2298s type="unicast", 2298s graceful_restart_forwarding_state_bit="from-fib", 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "from-fib" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2204: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ____ TestJunosBgp_globalModule.test_junos_bgp_global_merged_routing_options ____ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_global_merged_routing_options(self): 2298s """ 2298s configure routing-options attributes: 2298s - loops 2298s - as_number 2298s - asdot_notation 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict(as_number="65432", loops=5, asdot_notation=True), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "", 2298s '' 2298s "654325" 2298s "", 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_global.py:469: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_global.py:1862: in main 2298s result = Bgp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 2298s config_xmls = self.set_config(existing_bgp_global_facts) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_013_001 _ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_013_001(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - graceful_restart_forwarding_state_bit: set 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet", 2298s af_type=[ 2298s dict( 2298s type="unicast", 2298s graceful_restart_forwarding_state_bit="set", 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "set" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2238: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_014 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_014(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - local_ipv4_address 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet", 2298s af_type=[ 2298s dict( 2298s type="unicast", 2298s local_ipv4_address="11.11.11.11", 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "11.11.11.11" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2271: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ___________ TestJunosBgp_globalModule.test_junos_bgp_global_rendered ___________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_global_rendered(self): 2298s """ 2298s :return: 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s description="This is configured with Junos_bgp resource module", 2298s groups=[dict(name="internal", out_delay=22)], 2298s hold_time=4, 2298s holddown_all_stale_labels=True, 2298s include_mp_next_hop=True, 2298s log_updown=True, 2298s loops=5, 2298s keep="all", 2298s mtu_discovery=True, 2298s out_delay=10, 2298s preference="2", 2298s ), 2298s state="rendered", 2298s ), 2298s ) 2298s 2298s rendered = ( 2298s '' 2298s "" 2298s "" 2298s "This is configured with Junos_bgp resource module" 2298s "4all2" 2298s "10" 2298s "internal22" 2298s "" 2298s ) 2298s > result = self.execute_module(changed=False) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_global.py:295: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_global.py:1862: in main 2298s result = Bgp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:94: in execute_module 2298s config_xmls = self.set_config(existing_bgp_global_facts) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_015 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_015(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - legacy_redirect_ip_action 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet", 2298s af_type=[ 2298s dict( 2298s type="flow", 2298s legacy_redirect_ip_action=dict( 2298s set=True, 2298s send=True, 2298s receive=True, 2298s ), 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2309: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ________ TestJunosBgp_globalModule.test_junos_bgp_global_rendered_empty ________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_global_rendered_empty(self): 2298s """ 2298s :return: 2298s """ 2298s set_module_args(dict(config=dict(description=""), state="rendered")) 2298s rendered = "" 2298s > result = self.execute_module(changed=False) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_global.py:304: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_global.py:1862: in main 2298s result = Bgp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:94: in execute_module 2298s config_xmls = self.set_config(existing_bgp_global_facts) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_016 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_016(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - loops 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict(afi="inet", af_type=[dict(type="flow", loops=3)]), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "3" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2334: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ___________ TestJunosBgp_globalModule.test_junos_bgp_global_replaced ___________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_global_replaced(self): 2298s """ 2298s :return: 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s accept_remote_nexthop=True, 2298s advertise_from_main_vpn_tables=True, 2298s advertise_inactive=True, 2298s as_number="65432", 2298s authentication_algorithm="md5", 2298s bgp_error_tolerance=dict(malformed_route_limit=20000000), 2298s damping=True, 2298s description="This is configured with Junos_bgp resource module", 2298s groups=[ 2298s dict(name="internal", out_delay=22), 2298s dict(name="external", out_delay=20), 2298s ], 2298s hold_time=4, 2298s holddown_all_stale_labels=True, 2298s log_updown=True, 2298s keep="all", 2298s mtu_discovery=True, 2298s no_precision_timers=True, 2298s no_advertise_peer_as=True, 2298s no_aggregator_id=True, 2298s out_delay=10, 2298s preference="2", 2298s ), 2298s state="replaced", 2298s ), 2298s ) 2298s 2298s commands = [ 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s '' 2298s "" 2298s "" 2298s "" 2298s "" 2298s "md5" 2298s "This is configured with Junos_bgp resource module" 2298s "4all2" 2298s "10" 2298s "20000000" 2298s "internal" 2298s "22external" 2298s "20", 2298s '' 2298s '' 2298s "65432", 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_global.py:233: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_global.py:1862: in main 2298s result = Bgp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 2298s config_xmls = self.set_config(existing_bgp_global_facts) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_017 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_017(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - no_install 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet", 2298s af_type=[dict(type="flow", no_install=True)], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2362: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _____ TestJunosBgp_globalModule.test_junos_bgp_global_replaced_idempotent ______ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_global_replaced_idempotent(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s accept_remote_nexthop=True, 2298s advertise_from_main_vpn_tables=True, 2298s advertise_inactive=True, 2298s as_number="65432", 2298s authentication_algorithm="md5", 2298s bgp_error_tolerance=dict(malformed_route_limit=30000000), 2298s damping=True, 2298s description="This is configured with Junos_bgp resource module", 2298s hold_time=5, 2298s holddown_all_stale_labels=True, 2298s log_updown=True, 2298s no_advertise_peer_as=True, 2298s no_aggregator_id=True, 2298s out_delay=10, 2298s preference="2", 2298s ), 2298s state="replaced", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_global.py:259: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_global.py:1862: in main 2298s result = Bgp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 2298s config_xmls = self.set_config(existing_bgp_global_facts) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_018 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_018(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - no_validate 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet", 2298s af_type=[dict(type="flow", no_validate="sample")], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "sample" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2390: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_019 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_019(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - output_queue_priority_expedited 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet", 2298s af_type=[ 2298s dict( 2298s type="flow", 2298s output_queue_priority_expedited=True, 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2423: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_020 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_020(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - output_queue_priority_priority 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet", 2298s af_type=[ 2298s dict( 2298s type="flow", 2298s output_queue_priority_priority=15, 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "15" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2457: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_021 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_021(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - per_group_label 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet6", 2298s af_type=[ 2298s dict( 2298s type="labeled-unicast", 2298s per_group_label=True, 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2490: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_022 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_022(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - per_prefix_label 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet", 2298s af_type=[ 2298s dict( 2298s type="labeled-unicast", 2298s per_prefix_label=True, 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2523: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_023 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_023(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - prefix_limit 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet", 2298s af_type=[ 2298s dict( 2298s type="labeled-unicast", 2298s prefix_limit=dict( 2298s maximum=4294967290, 2298s teardown=True, 2298s limit_threshold=22, 2298s idle_timeout=True, 2298s idle_timeout_value=2200, 2298s ), 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "4294967290222200" 2298s "" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2564: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_023_001 _ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_023_001(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - prefix_limit 2298s forever: true 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet", 2298s af_type=[ 2298s dict( 2298s type="labeled-unicast", 2298s prefix_limit=dict( 2298s teardown=True, 2298s forever=True, 2298s ), 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2602: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _________ TestJunosL3InterfacesModule.test_junos_l3_interfaces_merged __________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_l3_interfaces_merged(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="ge-0/0/1", 2298s ipv4=[ 2298s dict(address="100.64.0.1/10"), 2298s dict(address="100.64.0.2/10"), 2298s ], 2298s ), 2298s ], 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "ge-0/0/10" 2298s "100.64.0.1/10" 2298s "100.64.0.2/10" 2298s "", 2298s ] 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:113: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_l3_interfaces.py:1021: in main 2298s result = L3_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:103: in execute_module 2298s config_xmls = self.set_config(existing_l3_interfaces_facts) 2298s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_024 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_024(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - resolve_vpn 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet", 2298s af_type=[ 2298s dict(type="labeled-unicast", resolve_vpn=True), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2632: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ____ TestJunosL3InterfacesModule.test_junos_l3_interfaces_merged_idempotent ____ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_l3_interfaces_merged_idempotent(self): 2298s self.get_config.return_value = load_fixture( 2298s "junos_interfaces_config.xml", 2298s ) 2298s src = load_fixture("junos_l3_interfaces.cfg", content="str") 2298s set_module_args(dict(src=src)) 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="ge-0/0/1", 2298s ipv4=[ 2298s dict(address="100.64.0.1/10"), 2298s dict(address="100.64.0.2/10"), 2298s ], 2298s ), 2298s ], 2298s state="merged", 2298s ), 2298s ) 2298s > self.execute_module(changed=False, commands=[]) 2298s 2298s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:136: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_l3_interfaces.py:1021: in main 2298s result = L3_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:103: in execute_module 2298s config_xmls = self.set_config(existing_l3_interfaces_facts) 2298s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _______ TestJunosL3InterfacesModule.test_junos_l3_interfaces_overridden ________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_l3_interfaces_overridden(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="ge-0/0/1", 2298s ipv4=[ 2298s dict(address="100.64.0.1/10"), 2298s dict(address="100.64.0.2/10"), 2298s ], 2298s ), 2298s ], 2298s state="overridden", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "ge-0/0/10" 2298s "100.64.0.1/10" 2298s "100.64.0.2/10" 2298s "", 2298s ] 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:208: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_l3_interfaces.py:1021: in main 2298s result = L3_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:103: in execute_module 2298s config_xmls = self.set_config(existing_l3_interfaces_facts) 2298s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_025 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_025(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - rib 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet6", 2298s af_type=[ 2298s dict(type="labeled-unicast", rib="inet.3"), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2662: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosL3InterfacesModule.test_junos_l3_interfaces_overridden_idempotent __ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_l3_interfaces_overridden_idempotent(self): 2298s self.get_config.return_value = load_fixture( 2298s "junos_interfaces_config.xml", 2298s ) 2298s src = load_fixture("junos_l3_interfaces.cfg", content="str") 2298s set_module_args(dict(src=src)) 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="ge-0/0/1", 2298s ipv4=[ 2298s dict(address="100.64.0.1/10"), 2298s dict(address="100.64.0.2/10"), 2298s ], 2298s ), 2298s ], 2298s state="overridden", 2298s ), 2298s ) 2298s > self.execute_module(changed=False, commands=[]) 2298s 2298s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:232: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_l3_interfaces.py:1021: in main 2298s result = L3_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:103: in execute_module 2298s config_xmls = self.set_config(existing_l3_interfaces_facts) 2298s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_026 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_026(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - ribgroup_name 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet6", 2298s af_type=[ 2298s dict( 2298s type="labeled-unicast", 2298s ribgroup_name="inet3", 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "inet3" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2695: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ________ TestJunosL3InterfacesModule.test_junos_l3_interfaces_rendered _________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_l3_interfaces_rendered(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="ge-0/0/1", 2298s ipv4=[ 2298s dict(address="100.64.0.1/10"), 2298s dict(address="100.64.0.2/10"), 2298s ], 2298s ), 2298s ], 2298s state="rendered", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "ge-0/0/10" 2298s "100.64.0.1/10" 2298s "100.64.0.2/10" 2298s "", 2298s ] 2298s > self.execute_module(changed=False, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:256: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_l3_interfaces.py:1021: in main 2298s result = L3_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:96: in execute_module 2298s config_xmls = self.set_config(existing_l3_interfaces_facts) 2298s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ________ TestJunosL3InterfacesModule.test_junos_l3_interfaces_replaced _________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_l3_interfaces_replaced(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="ge-0/0/2", 2298s ipv4=[ 2298s dict(address="100.64.0.1/10"), 2298s dict(address="100.64.0.2/10"), 2298s ], 2298s ), 2298s ], 2298s state="replaced", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "ge-0/0/20" 2298s "100.64.0.1/10" 2298s "100.64.0.2/10" 2298s "", 2298s ] 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:160: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_l3_interfaces.py:1021: in main 2298s result = L3_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:103: in execute_module 2298s config_xmls = self.set_config(existing_l3_interfaces_facts) 2298s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_027 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_027(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - route_refresh_priority_expedited 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet6", 2298s af_type=[ 2298s dict( 2298s type="labeled-unicast", 2298s route_refresh_priority_expedited=True, 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2729: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ___ TestJunosL3InterfacesModule.test_junos_l3_interfaces_replaced_idempotent ___ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_l3_interfaces_replaced_idempotent(self): 2298s self.get_config.return_value = load_fixture( 2298s "junos_interfaces_config.xml", 2298s ) 2298s src = load_fixture("junos_l3_interfaces.cfg", content="str") 2298s set_module_args(dict(src=src)) 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="ge-0/0/1", 2298s ipv4=[ 2298s dict(address="100.64.0.1/10"), 2298s dict(address="100.64.0.2/10"), 2298s ], 2298s ), 2298s ], 2298s state="merged", 2298s ), 2298s ) 2298s > self.execute_module(changed=False, commands=[]) 2298s 2298s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:184: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_l3_interfaces.py:1021: in main 2298s result = L3_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:103: in execute_module 2298s config_xmls = self.set_config(existing_l3_interfaces_facts) 2298s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_028 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_028(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - route_refresh_priority_priority 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet6", 2298s af_type=[ 2298s dict( 2298s type="labeled-unicast", 2298s route_refresh_priority_priority=15, 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "15" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2763: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ___ TestJunosLogging_globalModule.test_junos_logging_global_deleted_user_11 ____ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_logging_global_deleted_user_11(self): 2298s set_module_args(dict(config=dict(), state="deleted")) 2298s commands = [ 2298s '' 2298s '', 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_logging_global.py:381: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_logging_global.py:1738: in main 2298s result = Logging_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 2298s config_xmls = self.set_config(existing_logging_global_facts) 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 2298s self.root = build_root_xml_node("system") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ______ TestJunosLogging_globalModule.test_junos_logging_global_merged_07 _______ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_logging_global_merged_07(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s allow_duplicates=True, 2298s routing_instance="inst11", 2298s log_rotate_frequency=45, 2298s source_address="33.33.33.33", 2298s time_format=dict(millisecond=True, year=True), 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "45" 2298s "inst1133.33.33.33" 2298s "", 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_logging_global.py:275: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_logging_global.py:1738: in main 2298s result = Logging_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 2298s config_xmls = self.set_config(existing_logging_global_facts) 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 2298s self.root = build_root_xml_node("system") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_029 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_029(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - secondary_independent_resolution 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s address_family=[ 2298s dict( 2298s afi="inet", 2298s af_type=[ 2298s dict( 2298s type="flow", 2298s secondary_independent_resolution=True, 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2796: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosLogging_globalModule.test_junos_logging_global_merged_archive_01 ___ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_logging_global_merged_archive_01(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s archive=dict( 2298s set=True, 2298s files=10, 2298s file_size=65578, 2298s no_binary_data=True, 2298s no_world_readable=True, 2298s ), 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "10" 2298s "65578" 2298s "", 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_logging_global.py:111: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_logging_global.py:1738: in main 2298s result = Logging_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 2298s config_xmls = self.set_config(existing_logging_global_facts) 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 2298s self.root = build_root_xml_node("system") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_030 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_030(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - groups: 2298s address_family: 2298s topology 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s groups=[ 2298s dict( 2298s name="ebgp", 2298s address_family=[ 2298s dict( 2298s afi="inet", 2298s af_type=[ 2298s dict( 2298s type="unicast", 2298s topology=[ 2298s dict( 2298s name="voice", 2298s community=["target:40:40"], 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "ebgp" 2298s "voice" 2298s "target:40:40" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2843: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosLogging_globalModule.test_junos_logging_global_merged_console_02 ___ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_logging_global_merged_console_02(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s console=dict( 2298s any=dict(level="info"), 2298s authorization=dict(level="any"), 2298s change_log=dict(level="critical"), 2298s ftp=dict(level="none"), 2298s ), 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_logging_global.py:128: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_logging_global.py:1738: in main 2298s result = Logging_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 2298s config_xmls = self.set_config(existing_logging_global_facts) 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 2298s self.root = build_root_xml_node("system") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_033 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_config_033(self): 2298s """ 2298s This function generate the commands to configure attributes: 2298s - groups: 2298s address_family: 2298s topology 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s groups=[ 2298s dict( 2298s name="ebgp", 2298s neighbors=[ 2298s dict( 2298s neighbor_address="14.14.14.14", 2298s address_family=[ 2298s dict( 2298s afi="inet", 2298s af_type=[ 2298s dict( 2298s type="unicast", 2298s no_install=True, 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "ebgp" 2298s "14.14.14.14" 2298s "" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2958: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ___ TestJunosLogging_globalModule.test_junos_logging_global_merged_files_03 ____ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_logging_global_merged_files_03(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s files=[dict(name="file101", allow_duplicates=True)], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "file101" 2298s "", 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_logging_global.py:160: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_logging_global.py:1738: in main 2298s result = Logging_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 2298s config_xmls = self.set_config(existing_logging_global_facts) 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 2298s self.root = build_root_xml_node("system") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ___ TestJunosLogging_globalModule.test_junos_logging_global_merged_files_04 ____ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_logging_global_merged_files_04(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s files=[ 2298s dict( 2298s name="file102", 2298s allow_duplicates=True, 2298s any=dict(level="any"), 2298s structured_data=dict(set=True), 2298s ), 2298s dict( 2298s name="file103", 2298s archive=dict( 2298s set=True, 2298s no_binary_data=True, 2298s files=10, 2298s file_size=65578, 2298s no_world_readable=True, 2298s ), 2298s explicit_priority=True, 2298s match="^set*", 2298s match_strings=["^delete", "^prompt"], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "file102" 2298s "any" 2298s "file103" 2298s "10" 2298s "65578" 2298s "^set*" 2298s "^delete" 2298s "^prompt", 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_logging_global.py:203: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_logging_global.py:1738: in main 2298s result = Logging_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 2298s config_xmls = self.set_config(existing_logging_global_facts) 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 2298s self.root = build_root_xml_node("system") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_deleted_031 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_deleted_031(self): 2298s """ 2298s This function generate the commands to to delete bgp_address family completely: 2298s """ 2298s set_module_args(dict(config=dict(), state="deleted")) 2298s commands = [ 2298s '' 2298s "internal" 2298s "ebgp" 2298s '' 2298s '' 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2861: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ___ TestJunosLogging_globalModule.test_junos_logging_global_merged_hosts_05 ____ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_logging_global_merged_hosts_05(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s hosts=[ 2298s dict( 2298s name="host222", 2298s exclude_hostname=True, 2298s allow_duplicates=True, 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "host222" 2298s "", 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_logging_global.py:226: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_logging_global.py:1738: in main 2298s result = Logging_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 2298s config_xmls = self.set_config(existing_logging_global_facts) 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 2298s self.root = build_root_xml_node("system") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_deleted_032 __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_bgp_address_family_deleted_032(self): 2298s """ 2298s This function generate the commands to to delete bgp_address family completely: 2298s """ 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s groups=[ 2298s dict( 2298s name="ebgp", 2298s address_family=[ 2298s dict( 2298s afi="inet", 2298s af_type=[ 2298s dict( 2298s type="unicast", 2298s topology=[ 2298s dict( 2298s name="voice", 2298s community=["target:40:40"], 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="overridden", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "internal" 2298s '' 2298s "ebgp" 2298s '' 2298s '' 2298s "ebgp" 2298s "voice" 2298s "target:40:40" 2298s "" 2298s "", 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2911: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_bgp_address_family.py:2004: in main 2298s result = Bgp_address_family(module).execute_module() 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 2298s config_xmls = self.set_config(existing_bgp_address_family_facts) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosLogging_globalModule.test_junos_logging_global_merged_hosts_idempotent_06 _ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_logging_global_merged_hosts_idempotent_06(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s hosts=[ 2298s dict( 2298s name="host111", 2298s exclude_hostname=True, 2298s allow_duplicates=True, 2298s any=dict(level="any"), 2298s structured_data=dict(set=True, brief=True), 2298s facility_override="ftp", 2298s log_prefix="field", 2298s match="^set*", 2298s match_strings=["^delete", "^prompt"], 2298s port=1231, 2298s routing_instance="inst11", 2298s source_address="11.11.11.11", 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_logging_global.py:253: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_logging_global.py:1738: in main 2298s result = Logging_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 2298s config_xmls = self.set_config(existing_logging_global_facts) 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 2298s self.root = build_root_xml_node("system") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ____________ TestJunosHostnameModule.test_junos_hostname_merged_01 _____________ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_hostname_merged_01(self): 2298s set_module_args(dict(config=dict(hostname="vsrx"), state="merged")) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_hostname.py:92: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_hostname.py:356: in main 2298s result = Hostname(module).execute_module() 2298s plugins/module_utils/network/junos/config/hostname/hostname.py:102: in execute_module 2298s config_xmls = self.set_config(existing_hostname_facts) 2298s plugins/module_utils/network/junos/config/hostname/hostname.py:140: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/hostname/hostname.py:152: in set_state 2298s self.root = build_root_xml_node("system") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ____ TestJunosLogging_globalModule.test_junos_logging_global_merged_user_08 ____ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_logging_global_merged_user_08(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s users=[ 2298s dict(name="user1", allow_duplicates=True), 2298s dict( 2298s name="user2", 2298s allow_duplicates=True, 2298s any=dict(level="any"), 2298s user=dict(level="info"), 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_logging_global.py:295: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_logging_global.py:1738: in main 2298s result = Logging_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 2298s config_xmls = self.set_config(existing_logging_global_facts) 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 2298s self.root = build_root_xml_node("system") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __________ TestJunosHostnameModule.test_junos_hostname_overridden_01 ___________ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_hostname_overridden_01(self): 2298s set_module_args( 2298s dict(config=dict(hostname="vsrx12"), state="overridden"), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_hostname.py:118: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_hostname.py:356: in main 2298s result = Hostname(module).execute_module() 2298s plugins/module_utils/network/junos/config/hostname/hostname.py:102: in execute_module 2298s config_xmls = self.set_config(existing_hostname_facts) 2298s plugins/module_utils/network/junos/config/hostname/hostname.py:140: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/hostname/hostname.py:152: in set_state 2298s self.root = build_root_xml_node("system") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosLogging_globalModule.test_junos_logging_global_overridden_user_10 __ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_logging_global_overridden_user_10(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s users=[ 2298s dict(name="user1", allow_duplicates=True), 2298s dict( 2298s name="user2", 2298s allow_duplicates=True, 2298s any=dict(level="any"), 2298s user=dict(level="info"), 2298s ), 2298s ], 2298s ), 2298s state="overridden", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_logging_global.py:361: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_logging_global.py:1738: in main 2298s result = Logging_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 2298s config_xmls = self.set_config(existing_logging_global_facts) 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 2298s self.root = build_root_xml_node("system") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _____________ TestJunosHostnameModule.test_junos_hostname_rendered _____________ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_hostname_rendered(self): 2298s set_module_args(dict(config=dict(hostname="vsrx10"), state="rendered")) 2298s rendered = ( 2298s '' 2298s "vsrx10" 2298s ) 2298s > result = self.execute_module(changed=False) 2298s 2298s tests/unit/modules/network/junos/test_junos_hostname.py:139: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_hostname.py:356: in main 2298s result = Hostname(module).execute_module() 2298s plugins/module_utils/network/junos/config/hostname/hostname.py:96: in execute_module 2298s config_xmls = self.set_config(existing_hostname_facts) 2298s plugins/module_utils/network/junos/config/hostname/hostname.py:140: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/hostname/hostname.py:152: in set_state 2298s self.root = build_root_xml_node("system") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _____________ TestJunosHostnameModule.test_junos_hostname_replaced _____________ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_hostname_replaced(self): 2298s set_module_args(dict(config=dict(hostname="vsrx12"), state="replaced")) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_hostname.py:144: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_hostname.py:356: in main 2298s result = Hostname(module).execute_module() 2298s plugins/module_utils/network/junos/config/hostname/hostname.py:102: in execute_module 2298s config_xmls = self.set_config(existing_hostname_facts) 2298s plugins/module_utils/network/junos/config/hostname/hostname.py:140: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/hostname/hostname.py:152: in set_state 2298s self.root = build_root_xml_node("system") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _____ TestJunosLogging_globalModule.test_junos_logging_global_rendered_12 ______ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_logging_global_rendered_12(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s archive=dict( 2298s set=True, 2298s files=10, 2298s file_size=65578, 2298s no_binary_data=True, 2298s no_world_readable=True, 2298s ), 2298s ), 2298s state="rendered", 2298s ), 2298s ) 2298s rendered = ( 2298s '' 2298s "10" 2298s "65578" 2298s ) 2298s > result = self.execute_module(changed=False) 2298s 2298s tests/unit/modules/network/junos/test_junos_logging_global.py:404: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_logging_global.py:1738: in main 2298s result = Logging_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:101: in execute_module 2298s config_xmls = self.set_config(existing_logging_global_facts) 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 2298s self.root = build_root_xml_node("system") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ____________ TestJunosInterfacesModule.test_junos_interfaces_delete ____________ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_interfaces_delete(self): 2298s set_module_args(dict(config=[dict(name="ge-0/0/2")], state="deleted")) 2298s 2298s commands = [ 2298s '', 2298s ] 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_interfaces.py:226: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_interfaces.py:961: in main 2298s result = Interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 2298s config_xmls = self.set_config(existing_interfaces_facts) 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ___ TestJunosLogging_globalModule.test_junos_logging_global_replaced_user_09 ___ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_logging_global_replaced_user_09(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s users=[ 2298s dict(name="user1", allow_duplicates=True), 2298s dict( 2298s name="user2", 2298s allow_duplicates=True, 2298s any=dict(level="any"), 2298s user=dict(level="info"), 2298s ), 2298s ], 2298s ), 2298s state="replaced", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_logging_global.py:326: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_logging_global.py:1738: in main 2298s result = Logging_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 2298s config_xmls = self.set_config(existing_logging_global_facts) 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 2298s self.root = build_root_xml_node("system") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ______ TestJunosInterfacesModule.test_junos_interfaces_delete_idempotent _______ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_interfaces_delete_idempotent(self): 2298s set_module_args(dict(config=[dict(name="ge-0/0/4")], state="deleted")) 2298s > self.execute_module(changed=False, commands=[]) 2298s 2298s tests/unit/modules/network/junos/test_junos_interfaces.py:231: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_interfaces.py:961: in main 2298s result = Interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 2298s config_xmls = self.set_config(existing_interfaces_facts) 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ____________ TestJunosInterfacesModule.test_junos_interfaces_merged ____________ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_interfaces_merged(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="ge-0/0/1", 2298s description="This is configured with ansible resource module", 2298s mtu=1024, 2298s speed="100m", 2298s ), 2298s ], 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "ge-0/0/1This is configured with ansible resource module" 2298s "100m1024", 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_interfaces.py:111: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_interfaces.py:961: in main 2298s result = Interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 2298s config_xmls = self.set_config(existing_interfaces_facts) 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ______ TestJunosInterfacesModule.test_junos_interfaces_merged_idempotent _______ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_interfaces_merged_idempotent(self): 2298s self.get_config.return_value = load_fixture( 2298s "junos_interfaces_config.xml", 2298s ) 2298s src = load_fixture("junos_interfaces.cfg", content="str") 2298s set_module_args(dict(src=src)) 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="ge-0/0/0", 2298s description="Configured by Ansi-Team", 2298s ), 2298s ], 2298s state="merged", 2298s ), 2298s ) 2298s > self.execute_module(changed=False, commands=[]) 2298s 2298s tests/unit/modules/network/junos/test_junos_interfaces.py:131: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_interfaces.py:961: in main 2298s result = Interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 2298s config_xmls = self.set_config(existing_interfaces_facts) 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __________ TestJunosNtp_globalModule.test_junos_ntp_global_merged_01 ___________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ntp_global_merged_01(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s boot_server="78.46.194.186", 2298s broadcasts=[ 2298s dict( 2298s address="172.16.255.255", 2298s key="50", 2298s ttl=200, 2298s version=3, 2298s routing_instance_name="rt1", 2298s ), 2298s dict( 2298s address="192.16.255.255", 2298s key="50", 2298s ttl=200, 2298s version=3, 2298s routing_instance_name="rt1", 2298s ), 2298s ], 2298s broadcast_client=True, 2298s interval_range=2, 2298s multicast_client="224.0.0.1", 2298s peers=[ 2298s dict(peer="78.44.194.186"), 2298s dict( 2298s peer="172.44.194.186", 2298s key_id="10000", 2298s prefer=True, 2298s version=3, 2298s ), 2298s ], 2298s servers=[ 2298s dict( 2298s server="48.46.194.186", 2298s key_id=34, 2298s prefer=True, 2298s version=2, 2298s routing_instance="rt1", 2298s ), 2298s dict( 2298s server="48.45.194.186", 2298s key_id=34, 2298s prefer=True, 2298s version=2, 2298s ), 2298s ], 2298s source_addresses=[ 2298s dict( 2298s source_address="172.45.194.186", 2298s routing_instance="rt1", 2298s ), 2298s dict( 2298s source_address="171.45.194.186", 2298s routing_instance="rt2", 2298s ), 2298s ], 2298s threshold=dict(action="accept", value=300), 2298s trusted_keys=[dict(key_id=3000), dict(key_id=2000)], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_ntp_global.py:154: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ntp_global.py:1014: in main 2298s result = Ntp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:102: in execute_module 2298s config_xmls = self.set_config(existing_ntp_global_facts) 2298s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:140: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:152: in set_state 2298s self.root = build_root_xml_node("system") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __________ TestJunosInterfacesModule.test_junos_interfaces_overridden __________ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_interfaces_overridden(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="ge-0/0/2", 2298s description="This is configured with ansible", 2298s mtu=1024, 2298s speed="100m", 2298s ), 2298s ], 2298s state="overridden", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "ge-0/0/2" 2298s "This is configured with ansible" 2298s "100m1024", 2298s ] 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_interfaces.py:197: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_interfaces.py:961: in main 2298s result = Interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 2298s config_xmls = self.set_config(existing_interfaces_facts) 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __________ TestJunosNtp_globalModule.test_junos_ntp_global_merged_02 ___________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ntp_global_merged_02(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s boot_server="78.46.194.186", 2298s authentication_keys=[ 2298s dict(id="2", algorithm="md5", key="asdfghd"), 2298s dict(id="5", algorithm="sha1", key="aasdad"), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_ntp_global.py:189: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ntp_global.py:1014: in main 2298s result = Ntp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:102: in execute_module 2298s config_xmls = self.set_config(existing_ntp_global_facts) 2298s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:140: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:152: in set_state 2298s self.root = build_root_xml_node("system") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ____ TestJunosInterfacesModule.test_junos_interfaces_overridden_idempotent _____ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_interfaces_overridden_idempotent(self): 2298s self.get_config.return_value = load_fixture( 2298s "junos_interfaces_config.xml", 2298s ) 2298s src = load_fixture("junos_interfaces.cfg", content="str") 2298s set_module_args(dict(src=src)) 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="ge-0/0/0", 2298s description="Configured by Ansi-Team", 2298s ), 2298s ], 2298s state="overridden", 2298s ), 2298s ) 2298s 2298s > self.execute_module(changed=False, commands=[]) 2298s 2298s tests/unit/modules/network/junos/test_junos_interfaces.py:218: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_interfaces.py:961: in main 2298s result = Interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 2298s config_xmls = self.set_config(existing_interfaces_facts) 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ________ TestJunosNtp_globalModule.test_junos_ntp_global_overridden_01 _________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ntp_global_overridden_01(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s boot_server="78.46.194.186", 2298s broadcasts=[ 2298s dict( 2298s address="172.16.255.255", 2298s key="50", 2298s ttl=200, 2298s version=3, 2298s routing_instance_name="rt1", 2298s ), 2298s dict( 2298s address="192.16.255.255", 2298s key="50", 2298s ttl=200, 2298s version=3, 2298s routing_instance_name="rt1", 2298s ), 2298s ], 2298s broadcast_client=True, 2298s interval_range=2, 2298s multicast_client="224.0.0.1", 2298s peers=[ 2298s dict(peer="78.44.194.186"), 2298s dict( 2298s peer="172.44.194.186", 2298s key_id="10000", 2298s prefer=True, 2298s version=3, 2298s ), 2298s ], 2298s servers=[ 2298s dict( 2298s server="48.46.194.186", 2298s key_id=34, 2298s prefer=True, 2298s version=2, 2298s routing_instance="rt1", 2298s ), 2298s dict( 2298s server="48.45.194.186", 2298s key_id=34, 2298s prefer=True, 2298s version=2, 2298s ), 2298s ], 2298s source_addresses=[ 2298s dict( 2298s source_address="172.45.194.186", 2298s routing_instance="rt1", 2298s ), 2298s dict( 2298s source_address="171.45.194.186", 2298s routing_instance="rt2", 2298s ), 2298s ], 2298s threshold=dict(action="accept", value=300), 2298s trusted_keys=[dict(key_id=3000), dict(key_id=2000)], 2298s ), 2298s state="overridden", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_ntp_global.py:567: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ntp_global.py:1014: in main 2298s result = Ntp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:102: in execute_module 2298s config_xmls = self.set_config(existing_ntp_global_facts) 2298s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:140: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:152: in set_state 2298s self.root = build_root_xml_node("system") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ___________ TestJunosInterfacesModule.test_junos_interfaces_rendered ___________ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_interfaces_rendered(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="ge-0/0/1", 2298s description="This is configured with ansible resource module", 2298s mtu=1024, 2298s speed="100m", 2298s ), 2298s ], 2298s state="rendered", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "ge-0/0/1" 2298s "This is configured with ansible resource module" 2298s "100m" 2298s "1024" 2298s "", 2298s ] 2298s > self.execute_module(changed=False, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_interfaces.py:255: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_interfaces.py:961: in main 2298s result = Interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:92: in execute_module 2298s config_xmls = self.set_config(existing_interfaces_facts) 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ___________ TestJunosNtp_globalModule.test_junos_ntp_global_rendered ___________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ntp_global_rendered(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s boot_server="78.46.194.186", 2298s authentication_keys=[ 2298s dict(id="2", algorithm="md5", key="asdfghd"), 2298s dict(id="5", algorithm="sha1", key="aasdad"), 2298s ], 2298s ), 2298s state="rendered", 2298s ), 2298s ) 2298s rendered = ( 2298s '' 2298s "2md5" 2298s "asdfghd" 2298s "5sha1aasdad" 2298s "78.46.194.186" 2298s ) 2298s > result = self.execute_module(changed=False) 2298s 2298s tests/unit/modules/network/junos/test_junos_ntp_global.py:631: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ntp_global.py:1014: in main 2298s result = Ntp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:96: in execute_module 2298s config_xmls = self.set_config(existing_ntp_global_facts) 2298s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:140: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:152: in set_state 2298s self.root = build_root_xml_node("system") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ___________ TestJunosInterfacesModule.test_junos_interfaces_replaced ___________ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_interfaces_replaced(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="ge-0/0/2", 2298s description="This is configured with ansible", 2298s mtu=1024, 2298s speed="100m", 2298s ), 2298s ], 2298s state="replaced", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_interfaces.py:147: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_interfaces.py:961: in main 2298s result = Interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 2298s config_xmls = self.set_config(existing_interfaces_facts) 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _________ TestJunosNtp_globalModule.test_junos_ntp_global_replaced_01 __________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ntp_global_replaced_01(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s boot_server="78.46.194.186", 2298s broadcasts=[ 2298s dict( 2298s address="172.16.255.255", 2298s key="50", 2298s ttl=200, 2298s version=3, 2298s routing_instance_name="rt1", 2298s ), 2298s dict( 2298s address="192.16.255.255", 2298s key="50", 2298s ttl=200, 2298s version=3, 2298s routing_instance_name="rt1", 2298s ), 2298s ], 2298s broadcast_client=True, 2298s interval_range=2, 2298s multicast_client="224.0.0.1", 2298s peers=[ 2298s dict(peer="78.44.194.186"), 2298s dict( 2298s peer="172.44.194.186", 2298s key_id="10000", 2298s prefer=True, 2298s version=3, 2298s ), 2298s ], 2298s servers=[ 2298s dict( 2298s server="48.46.194.186", 2298s key_id=34, 2298s prefer=True, 2298s version=2, 2298s routing_instance="rt1", 2298s ), 2298s dict( 2298s server="48.45.194.186", 2298s key_id=34, 2298s prefer=True, 2298s version=2, 2298s ), 2298s ], 2298s source_addresses=[ 2298s dict( 2298s source_address="172.45.194.186", 2298s routing_instance="rt1", 2298s ), 2298s dict( 2298s source_address="171.45.194.186", 2298s routing_instance="rt2", 2298s ), 2298s ], 2298s threshold=dict(action="accept", value=300), 2298s trusted_keys=[dict(key_id=3000), dict(key_id=2000)], 2298s ), 2298s state="replaced", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_ntp_global.py:698: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ntp_global.py:1014: in main 2298s result = Ntp_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:102: in execute_module 2298s config_xmls = self.set_config(existing_ntp_global_facts) 2298s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:140: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:152: in set_state 2298s self.root = build_root_xml_node("system") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _____ TestJunosInterfacesModule.test_junos_interfaces_replaced_idempotent ______ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_interfaces_replaced_idempotent(self): 2298s self.get_config.return_value = load_fixture( 2298s "junos_interfaces_config.xml", 2298s ) 2298s src = load_fixture("junos_interfaces.cfg", content="str") 2298s set_module_args(dict(src=src)) 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="ge-0/0/0", 2298s description="Configured by Ansi-Team", 2298s ), 2298s ], 2298s state="replaced", 2298s ), 2298s ) 2298s 2298s > self.execute_module(changed=False, commands=[]) 2298s 2298s tests/unit/modules/network/junos/test_junos_interfaces.py:175: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_interfaces.py:961: in main 2298s result = Interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 2298s config_xmls = self.set_config(existing_interfaces_facts) 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ___________ TestJunosOspfv3Module.test_junos_ospf_interfaces_delete ____________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ospf_interfaces_delete(self): 2298s self.get_connection.return_value = load_fixture( 2298s "junos_ospf_interfaces_config.cfg", 2298s ) 2298s src = load_fixture("junos_ospf_interfaces.cfg", content="str") 2298s set_module_args(dict(src=src)) 2298s set_module_args( 2298s dict( 2298s config=[dict(router_id="10.200.16.75", name="ge-0/0/2.0")], 2298s state="deleted", 2298s ), 2298s ) 2298s 2298s commands = [ 2298s '', 2298s '', 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:303: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ospf_interfaces.py:607: in main 2298s result = Ospf_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 2298s config_xmls = self.set_config(existing_ospf_interfaces_facts) 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _________ TestJunosL2InterfacesModule.test_junos_l2_interfaces_delete __________ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_l2_interfaces_delete(self): 2298s self.get_res_config.return_value = load_fixture( 2298s "junos_interfaces_config.xml", 2298s ) 2298s src = load_fixture("junos_l2_interfaces.cfg", content="str") 2298s set_module_args(dict(src=src)) 2298s set_module_args(dict(config=[dict(name="ge-0/0/1")], state="deleted")) 2298s commands = [ 2298s '' 2298s "ge-0/0/10" 2298s '' 2298s '' 2298s '', 2298s ] 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:234: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_l2_interfaces.py:1057: in main 2298s result = L2_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 2298s config_xmls = self.set_config(existing_l2_interfaces_facts) 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ______ TestJunosOspfv3Module.test_junos_ospf_interfaces_delete_idempotent ______ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ospf_interfaces_delete_idempotent(self): 2298s set_module_args( 2298s dict( 2298s config=[dict(router_id="10.200.16.75", name="ge-0/0/2.0")], 2298s state="deleted", 2298s ), 2298s ) 2298s > self.execute_module(changed=False, commands=[]) 2298s 2298s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:313: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ospf_interfaces.py:607: in main 2298s result = Ospf_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 2298s config_xmls = self.set_config(existing_ospf_interfaces_facts) 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ____ TestJunosL2InterfacesModule.test_junos_l2_interfaces_delete_idempotent ____ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_l2_interfaces_delete_idempotent(self): 2298s set_module_args(dict(config=[dict(name="ge-0/0/3")], state="deleted")) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:239: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_l2_interfaces.py:1057: in main 2298s result = L2_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 2298s config_xmls = self.set_config(existing_l2_interfaces_facts) 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ___________ TestJunosOspfv3Module.test_junos_ospf_interfaces_merged ____________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ospf_interfaces_merged(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s router_id="10.200.16.75", 2298s name="ge-0/0/2.0", 2298s address_family=[ 2298s dict( 2298s afi="ipv4", 2298s processes=dict( 2298s area=dict(area_id="0.0.0.2"), 2298s priority=3, 2298s metric=5, 2298s ), 2298s ), 2298s ], 2298s ), 2298s ], 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "0.0.0.2ge-0/0/2.0" 2298s "35", 2298s '' 2298s "10.200.16.75", 2298s ] 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:129: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ospf_interfaces.py:607: in main 2298s result = Ospf_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 2298s config_xmls = self.set_config(existing_ospf_interfaces_facts) 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _________ TestJunosL2InterfacesModule.test_junos_l2_interfaces_merged __________ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_l2_interfaces_merged(self): 2298s set_module_args( 2298s dict( 2298s config=[dict(name="ge-0/0/1", access=dict(vlan="vlan100"))], 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "ge-0/0/10" 2298s "access" 2298s "vlan100" 2298s "" 2298s "", 2298s ] 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:109: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_l2_interfaces.py:1057: in main 2298s result = L2_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 2298s config_xmls = self.set_config(existing_l2_interfaces_facts) 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ______ TestJunosOspfv3Module.test_junos_ospf_interfaces_merged_idempotent ______ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ospf_interfaces_merged_idempotent(self): 2298s self.get_connection.return_value = load_fixture( 2298s "junos_ospf_interfaces_config.cfg", 2298s ) 2298s src = load_fixture("junos_ospf_interfaces.cfg", content="str") 2298s set_module_args(dict(src=src)) 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s router_id="10.200.16.77", 2298s name="so-0/0/0.0", 2298s address_family=[ 2298s dict( 2298s afi="ipv4", 2298s processes=dict( 2298s area=dict(area_id="0.0.0.10"), 2298s priority=3, 2298s metric=5, 2298s ), 2298s ), 2298s ], 2298s ), 2298s ], 2298s state="merged", 2298s ), 2298s ) 2298s > self.execute_module(changed=False, commands=[]) 2298s 2298s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:159: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ospf_interfaces.py:607: in main 2298s result = Ospf_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 2298s config_xmls = self.set_config(existing_ospf_interfaces_facts) 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ____ TestJunosL2InterfacesModule.test_junos_l2_interfaces_merged_idempotent ____ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_l2_interfaces_merged_idempotent(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict(name="ge-0/0/1", access=dict(vlan="vlan100"), unit=0, enhanced_layer=True), 2298s dict( 2298s name="ge-0/0/2", 2298s trunk=dict(allowed_vlans=["vlan200", "vlan300"], native_vlan="400"), 2298s unit=0, 2298s enhanced_layer=True, 2298s ), 2298s ], 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:146: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_l2_interfaces.py:1057: in main 2298s result = L2_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 2298s config_xmls = self.set_config(existing_l2_interfaces_facts) 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _________ TestJunosOspfv3Module.test_junos_ospf_interfaces_overridden __________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ospf_interfaces_overridden(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s router_id="10.200.16.75", 2298s name="ge-0/0/2.0", 2298s address_family=[ 2298s dict( 2298s afi="ipv4", 2298s processes=dict( 2298s area=dict(area_id="0.0.0.1"), 2298s priority=6, 2298s metric=7, 2298s ), 2298s ), 2298s ], 2298s ), 2298s ], 2298s state="overridden", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "0.0.0.1ge-0/0/2.0" 2298s "67", 2298s '' 2298s "10.200.16.75", 2298s ] 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:252: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ospf_interfaces.py:607: in main 2298s result = Ospf_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 2298s config_xmls = self.set_config(existing_ospf_interfaces_facts) 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ____ TestJunosOspfv3Module.test_junos_ospf_interfaces_overridden_idempotent ____ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ospf_interfaces_overridden_idempotent(self): 2298s self.get_connection.return_value = load_fixture( 2298s "junos_ospf_interfaces_config.cfg", 2298s ) 2298s src = load_fixture("junos_ospf_interfaces.cfg", content="str") 2298s set_module_args(dict(src=src)) 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s router_id="10.200.16.75", 2298s name="ge-0/0/2.0", 2298s address_family=[ 2298s dict( 2298s afi="ipv4", 2298s processes=dict( 2298s area=dict(area_id="0.0.0.1"), 2298s priority=6, 2298s metric=7, 2298s ), 2298s ), 2298s ], 2298s ), 2298s ], 2298s state="overridden", 2298s ), 2298s ) 2298s 2298s > self.execute_module(changed=False, commands=[]) 2298s 2298s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:283: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ospf_interfaces.py:607: in main 2298s result = Ospf_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 2298s config_xmls = self.set_config(existing_ospf_interfaces_facts) 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _______ TestJunosL2InterfacesModule.test_junos_l2_interfaces_overridden ________ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_l2_interfaces_overridden(self): 2298s set_module_args( 2298s dict( 2298s config=[dict(name="ge-0/0/1", access=dict(vlan="vlan100"), enhanced_layer=False)], 2298s state="overridden", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "ge-0/0/10" 2298s "access" 2298s "vlan100" 2298s "", 2298s ] 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:199: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_l2_interfaces.py:1057: in main 2298s result = L2_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 2298s config_xmls = self.set_config(existing_l2_interfaces_facts) 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __________ TestJunosOspfv3Module.test_junos_ospf_interfaces_rendered ___________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ospf_interfaces_rendered(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s router_id="10.200.16.75", 2298s name="ge-0/0/2.0", 2298s address_family=[ 2298s dict( 2298s afi="ipv4", 2298s processes=dict( 2298s area=dict(area_id="0.0.0.1"), 2298s priority=6, 2298s metric=7, 2298s ), 2298s ), 2298s ], 2298s ), 2298s ], 2298s state="rendered", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "0.0.0.1ge-0/0/2.0" 2298s "67", 2298s '' 2298s "10.200.16.75", 2298s ] 2298s > self.execute_module(changed=False, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:344: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ospf_interfaces.py:607: in main 2298s result = Ospf_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:100: in execute_module 2298s config_xmls = self.set_config(existing_ospf_interfaces_facts) 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosL2InterfacesModule.test_junos_l2_interfaces_overridden_idempotent __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_l2_interfaces_overridden_idempotent(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict(name="ge-0/0/1", access=dict(vlan="vlan100"), unit=0, enhanced_layer=True), 2298s dict( 2298s name="ge-0/0/2", 2298s trunk=dict(allowed_vlans=["vlan200", "vlan300"], native_vlan="400"), 2298s unit=0, 2298s enhanced_layer=True, 2298s ), 2298s ], 2298s state="overridden", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:217: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_l2_interfaces.py:1057: in main 2298s result = L2_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 2298s config_xmls = self.set_config(existing_l2_interfaces_facts) 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __________ TestJunosOspfv3Module.test_junos_ospf_interfaces_replaced ___________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ospf_interfaces_replaced(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s router_id="10.200.16.75", 2298s name="ge-0/0/2.0", 2298s address_family=[ 2298s dict( 2298s afi="ipv4", 2298s processes=dict( 2298s area=dict(area_id="0.0.0.1"), 2298s priority=6, 2298s metric=7, 2298s ), 2298s ), 2298s ], 2298s ), 2298s ], 2298s state="replaced", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:183: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ospf_interfaces.py:607: in main 2298s result = Ospf_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 2298s config_xmls = self.set_config(existing_ospf_interfaces_facts) 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ________ TestJunosL2InterfacesModule.test_junos_l2_interfaces_rendered _________ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_l2_interfaces_rendered(self): 2298s set_module_args( 2298s dict( 2298s config=[dict(name="ge-0/0/4", access=dict(vlan="vlan100"))], 2298s state="rendered", 2298s ), 2298s ) 2298s rendered = ( 2298s '' 2298s "ge-0/0/40" 2298s "access" 2298s "vlan100" 2298s "" 2298s ) 2298s > result = self.execute_module(changed=False) 2298s 2298s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:315: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_l2_interfaces.py:1057: in main 2298s result = L2_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:99: in execute_module 2298s config_xmls = self.set_config(existing_l2_interfaces_facts) 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _____ TestJunosOspfv3Module.test_junos_ospf_interfaces_replaced_idempotent _____ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ospf_interfaces_replaced_idempotent(self): 2298s self.get_connection.return_value = load_fixture( 2298s "junos_ospf_interfaces_config.cfg", 2298s ) 2298s src = load_fixture("junos_ospf_interfaces.cfg", content="str") 2298s set_module_args(dict(src=src)) 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s router_id="10.200.16.75", 2298s name="ge-0/0/2.0", 2298s address_family=[ 2298s dict( 2298s afi="ipv4", 2298s processes=dict( 2298s area=dict(area_id="0.0.0.1"), 2298s priority=6, 2298s metric=7, 2298s ), 2298s ), 2298s ], 2298s ), 2298s ], 2298s state="replaced", 2298s ), 2298s ) 2298s 2298s > self.execute_module(changed=False, commands=[]) 2298s 2298s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:221: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ospf_interfaces.py:607: in main 2298s result = Ospf_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 2298s config_xmls = self.set_config(existing_ospf_interfaces_facts) 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ________ TestJunosL2InterfacesModule.test_junos_l2_interfaces_replaced _________ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_l2_interfaces_replaced(self): 2298s set_module_args( 2298s dict( 2298s config=[dict(name="ge-0/0/1", access=dict(vlan="vlan100"), enhanced_layer=False)], 2298s state="replaced", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "ge-0/0/10" 2298s "access" 2298s "vlan100" 2298s "", 2298s ] 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:163: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_l2_interfaces.py:1057: in main 2298s result = L2_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 2298s config_xmls = self.set_config(existing_l2_interfaces_facts) 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _______________ TestJunosOspfv2Module.test_junos_ospfv2_deleted ________________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ospfv2_deleted(self): 2298s set_module_args( 2298s dict( 2298s config=[], 2298s state="deleted", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s '0.0.0.1000.0.0.200' 2298s '' 2298s '' 2298s '', 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_ospfv2.py:585: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ospfv2.py:1168: in main 2298s result = Ospfv2(module).execute_module() 2298s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:113: in execute_module 2298s config_xmls = self.set_config(existing_ospf_facts) 2298s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:150: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:163: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ___ TestJunosL2InterfacesModule.test_junos_l2_interfaces_replaced_idempotent ___ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_l2_interfaces_replaced_idempotent(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict(name="ge-0/0/1", access=dict(vlan="vlan100"), unit=0, enhanced_layer=True), 2298s dict( 2298s name="ge-0/0/2", 2298s trunk=dict(allowed_vlans=["vlan200", "vlan300"], native_vlan="400"), 2298s unit=0, 2298s enhanced_layer=True, 2298s ), 2298s ], 2298s state="replaced", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:182: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_l2_interfaces.py:1057: in main 2298s result = L2_interfaces(module).execute_module() 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 2298s config_xmls = self.set_config(existing_l2_interfaces_facts) 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 2298s root = build_root_xml_node("interfaces") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ________________ TestJunosOspfv2Module.test_junos_ospfv2_merged ________________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ospfv2_merged(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s router_id="10.200.16.75", 2298s rfc1583compatibility="False", 2298s external_preference=10, 2298s overload=dict( 2298s allow_route_leaking=True, 2298s as_external=True, 2298s stub_network=True, 2298s timeout=1200, 2298s ), 2298s spf_options=dict( 2298s delay=3000, 2298s holddown=4000, 2298s rapid_runs=9, 2298s no_ignore_our_externals=True, 2298s ), 2298s prefix_export_limit=30000, 2298s areas=[ 2298s dict( 2298s area_id="0.0.0.100", 2298s stub=dict(default_metric=200, set=True), 2298s area_ranges=[ 2298s dict( 2298s address="10.200.17.0/24", 2298s exact=True, 2298s restrict=True, 2298s override_metric=2000, 2298s ), 2298s ], 2298s interfaces=[ 2298s dict( 2298s name="so-0/0/0.0", 2298s priority=3, 2298s metric=5, 2298s flood_reduction=False, 2298s passive=True, 2298s bandwidth_based_metrics=[ 2298s dict( 2298s bandwidth="1g", 2298s metric=5, 2298s ), 2298s ], 2298s timers=dict( 2298s dead_interval=4, 2298s hello_interval=2, 2298s poll_interval=2, 2298s retransmit_interval=2, 2298s ), 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s ], 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "30004000" 2298s "9" 2298s "1200" 2298s "10" 2298s "30000" 2298s "" 2298s "0.0.0.10010.200.17.0/24" 2298s "2000" 2298s "so-0/0/0.035" 2298s "1g5" 2298s "42" 2298s "22" 2298s "200", 2298s '' 2298s "10.200.16.75", 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_ospfv2.py:188: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ospfv2.py:1168: in main 2298s result = Ospfv2(module).execute_module() 2298s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:113: in execute_module 2298s config_xmls = self.set_config(existing_ospf_facts) 2298s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:150: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:163: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ________ TestJunosOspfv3Module.test_junos_ospfv3_overridden_idempotent _________ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ospfv3_overridden_idempotent(self): 2298s self.get_connection.return_value = load_fixture( 2298s "junos_ospfv3_config.cfg", 2298s ) 2298s src = load_fixture("junos_ospfv3.cfg", content="str") 2298s set_module_args(dict(src=src)) 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s router_id="30", 2298s areas=[ 2298s dict( 2298s area_id="100", 2298s stub=dict(default_metric=10, set=True), 2298s interfaces=[ 2298s dict( 2298s name="so-0/0/0.0", 2298s priority=3, 2298s metric=5, 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s ], 2298s state="overridden", 2298s ), 2298s ) 2298s 2298s > self.execute_module(changed=False, commands=[]) 2298s 2298s tests/unit/modules/network/junos/test_junos_ospfv3.py:303: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ospfv3.py:748: in main 2298s result = Ospfv3(module).execute_module() 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 2298s config_xmls = self.set_config(existing_ospfv3_facts) 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _____________ TestJunosOspfv2Module.test_junos_ospfv2_merged_areas _____________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ospfv2_merged_areas(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s areas=[ 2298s dict( 2298s area_id="0.0.0.100", 2298s stub=dict(default_metric=200, set=True), 2298s area_ranges=[ 2298s dict( 2298s address="10.200.17.0/24", 2298s ), 2298s dict( 2298s address="10.200.18.0/24", 2298s ), 2298s ], 2298s interfaces=[ 2298s dict( 2298s name="so-0/1/0.0", 2298s bandwidth_based_metrics=[ 2298s dict( 2298s bandwidth="1g", 2298s metric=5, 2298s ), 2298s dict( 2298s bandwidth="10g", 2298s metric=5, 2298s ), 2298s ], 2298s ), 2298s dict( 2298s name="so-0/1/0.0", 2298s priority=3, 2298s ), 2298s ], 2298s ), 2298s dict( 2298s area_id="0.0.0.200", 2298s area_range="10.200.20.0/24", 2298s interfaces=[ 2298s dict( 2298s name="so-0/1/0.0", 2298s bandwidth_based_metrics=[ 2298s dict( 2298s bandwidth="1g", 2298s metric=5, 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s ], 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "0.0.0.100" 2298s "10.200.17.0/24" 2298s "10.200.18.0/24" 2298s "so-0/1/0.0" 2298s "1g5" 2298s "10g5" 2298s "so-0/1/0.03" 2298s "200" 2298s "0.0.0.20010.200.20.0/24" 2298s "so-0/1/0.0" 2298s "1g5" 2298s "", 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_ospfv2.py:264: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ospfv2.py:1168: in main 2298s result = Ospfv2(module).execute_module() 2298s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:113: in execute_module 2298s config_xmls = self.set_config(existing_ospf_facts) 2298s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:150: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:163: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _______________ TestJunosOspfv3Module.test_junos_ospfv3_rendered _______________ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ospfv3_rendered(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s router_id="10.200.16.75", 2298s areas=[ 2298s dict( 2298s area_id="0.0.0.100", 2298s stub=dict(default_metric=200, set=True), 2298s interfaces=[ 2298s dict( 2298s name="so-0/0/0.0", 2298s priority=3, 2298s metric=5, 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s ], 2298s state="rendered", 2298s ), 2298s ) 2298s commands = ( 2298s '' 2298s "0.0.0.100so-0/0/0.0" 2298s "35" 2298s "200" 2298s ) 2298s > self.execute_module(changed=False, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_ospfv3.py:403: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ospfv3.py:748: in main 2298s result = Ospfv3(module).execute_module() 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:106: in execute_module 2298s config_xmls = self.set_config(existing_ospfv3_facts) 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ______________ TestJunosOspfv2Module.test_junos_ospfv2_overridden ______________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ospfv2_overridden(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s router_id="10.200.16.75", 2298s rfc1583compatibility="False", 2298s external_preference=10, 2298s overload=dict( 2298s allow_route_leaking=True, 2298s as_external=True, 2298s stub_network=True, 2298s timeout=1200, 2298s ), 2298s spf_options=dict( 2298s delay=3000, 2298s holddown=4000, 2298s rapid_runs=9, 2298s no_ignore_our_externals=True, 2298s ), 2298s prefix_export_limit=30000, 2298s areas=[ 2298s dict( 2298s area_id="0.0.0.100", 2298s stub=dict(default_metric=200, set=True), 2298s area_ranges=[ 2298s dict( 2298s address="10.200.17.0/24", 2298s exact=True, 2298s restrict=True, 2298s override_metric=2000, 2298s ), 2298s ], 2298s interfaces=[ 2298s dict( 2298s name="so-0/0/0.0", 2298s priority=3, 2298s metric=5, 2298s flood_reduction=False, 2298s passive=True, 2298s bandwidth_based_metrics=[ 2298s dict( 2298s bandwidth="1g", 2298s metric=5, 2298s ), 2298s ], 2298s timers=dict( 2298s dead_interval=4, 2298s hello_interval=2, 2298s poll_interval=2, 2298s retransmit_interval=2, 2298s ), 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s ], 2298s state="overridden", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s '0.0.0.100' 2298s '0.0.0.200' 2298s '' 2298s '' 2298s '' 2298s "30004000" 2298s "9" 2298s "1200" 2298s "" 2298s "10" 2298s "30000" 2298s "0.0.0.100" 2298s "10.200.17.0/24" 2298s "2000" 2298s "so-0/0/0.035" 2298s "" 2298s "1g5" 2298s "42" 2298s "22" 2298s "200" 2298s "", 2298s '' 2298s "10.200.16.75", 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_ospfv2.py:568: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ospfv2.py:1168: in main 2298s result = Ospfv2(module).execute_module() 2298s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:113: in execute_module 2298s config_xmls = self.set_config(existing_ospf_facts) 2298s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:150: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:163: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _______________ TestJunosOspfv3Module.test_junos_ospfv3_replaced _______________ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ospfv3_replaced(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s router_id="10.200.16.75", 2298s areas=[ 2298s dict( 2298s area_id="0.0.0.100", 2298s stub=dict(default_metric=200, set=True), 2298s interfaces=[ 2298s dict( 2298s name="so-0/0/0.0", 2298s priority=3, 2298s metric=5, 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s ], 2298s state="replaced", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_ospfv3.py:189: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ospfv3.py:748: in main 2298s result = Ospfv3(module).execute_module() 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 2298s config_xmls = self.set_config(existing_ospfv3_facts) 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _______________ TestJunosOspfv2Module.test_junos_ospfv2_rendered _______________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ospfv2_rendered(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s router_id="10.200.16.75", 2298s rfc1583compatibility="False", 2298s external_preference=10, 2298s overload=dict( 2298s allow_route_leaking=True, 2298s as_external=True, 2298s stub_network=True, 2298s timeout=1200, 2298s ), 2298s spf_options=dict( 2298s delay=3000, 2298s holddown=4000, 2298s rapid_runs=9, 2298s no_ignore_our_externals=True, 2298s ), 2298s prefix_export_limit=30000, 2298s areas=[ 2298s dict( 2298s area_id="0.0.0.100", 2298s stub=dict(default_metric=200, set=True), 2298s area_ranges=[ 2298s dict( 2298s address="10.200.17.0/24", 2298s exact=True, 2298s restrict=True, 2298s override_metric=2000, 2298s ), 2298s ], 2298s interfaces=[ 2298s dict( 2298s name="so-0/0/0.0", 2298s priority=3, 2298s metric=5, 2298s flood_reduction=False, 2298s passive=True, 2298s bandwidth_based_metrics=[ 2298s dict( 2298s bandwidth="1g", 2298s metric=5, 2298s ), 2298s ], 2298s timers=dict( 2298s dead_interval=4, 2298s hello_interval=2, 2298s poll_interval=2, 2298s retransmit_interval=2, 2298s ), 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s ], 2298s state="rendered", 2298s ), 2298s ) 2298s rendered = ( 2298s '' 2298s "30004000" 2298s "9" 2298s "1200" 2298s "" 2298s "10" 2298s "30000" 2298s "0.0.0.100" 2298s "10.200.17.0/24" 2298s "2000" 2298s "so-0/0/0.0" 2298s "35" 2298s "1g" 2298s "5" 2298s "42" 2298s "2" 2298s "2" 2298s "200" 2298s "" 2298s ) 2298s > result = self.execute_module(changed=False) 2298s 2298s tests/unit/modules/network/junos/test_junos_ospfv2.py:807: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ospfv2.py:1168: in main 2298s result = Ospfv2(module).execute_module() 2298s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:106: in execute_module 2298s config_xmls = self.set_config(existing_ospf_facts) 2298s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:150: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:163: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _________ TestJunosOspfv3Module.test_junos_ospfv3_replaced_idempotent __________ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ospfv3_replaced_idempotent(self): 2298s self.get_connection.return_value = load_fixture( 2298s "junos_ospfv3_config.cfg", 2298s ) 2298s src = load_fixture("junos_ospfv3.cfg", content="str") 2298s set_module_args(dict(src=src)) 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s router_id="30", 2298s areas=[ 2298s dict( 2298s area_id="100", 2298s stub=dict(default_metric=10, set=True), 2298s interfaces=[ 2298s dict( 2298s name="so-0/0/0.0", 2298s priority=3, 2298s metric=5, 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s ], 2298s state="replaced", 2298s ), 2298s ) 2298s 2298s > self.execute_module(changed=False, commands=[]) 2298s 2298s tests/unit/modules/network/junos/test_junos_ospfv3.py:235: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ospfv3.py:748: in main 2298s result = Ospfv3(module).execute_module() 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 2298s config_xmls = self.set_config(existing_ospfv3_facts) 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _______________ TestJunosOspfv2Module.test_junos_ospfv2_replaced _______________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ospfv2_replaced(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s router_id="10.200.16.75", 2298s rfc1583compatibility="False", 2298s external_preference=10, 2298s overload=dict( 2298s allow_route_leaking=True, 2298s as_external=True, 2298s stub_network=True, 2298s timeout=1200, 2298s ), 2298s spf_options=dict( 2298s delay=3000, 2298s holddown=4000, 2298s rapid_runs=9, 2298s no_ignore_our_externals=True, 2298s ), 2298s prefix_export_limit=30000, 2298s areas=[ 2298s dict( 2298s area_id="0.0.0.100", 2298s stub=dict(default_metric=200, set=True), 2298s area_ranges=[ 2298s dict( 2298s address="10.200.17.0/24", 2298s exact=True, 2298s restrict=True, 2298s override_metric=2000, 2298s ), 2298s ], 2298s interfaces=[ 2298s dict( 2298s name="so-0/0/0.0", 2298s priority=3, 2298s metric=5, 2298s flood_reduction=False, 2298s passive=True, 2298s bandwidth_based_metrics=[ 2298s dict( 2298s bandwidth="1g", 2298s metric=5, 2298s ), 2298s ], 2298s timers=dict( 2298s dead_interval=4, 2298s hello_interval=2, 2298s poll_interval=2, 2298s retransmit_interval=2, 2298s ), 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s ], 2298s state="replaced", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s '0.0.0.1000.0.0.200' 2298s '' 2298s '' 2298s '' 2298s "300040009" 2298s "1200" 2298s "" 2298s "1030000" 2298s "0.0.0.10010.200.17.0/24" 2298s "2000" 2298s "so-0/0/0.035" 2298s "1g5" 2298s "42" 2298s "22" 2298s "200", 2298s '' 2298s "10.200.16.75", 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_ospfv2.py:478: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ospfv2.py:1168: in main 2298s result = Ospfv2(module).execute_module() 2298s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:113: in execute_module 2298s config_xmls = self.set_config(existing_ospf_facts) 2298s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:150: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:163: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ________________ TestJunosOspfv3Module.test_junos_ospfv3_delete ________________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ospfv3_delete(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s router_id="10.200.16.75", 2298s areas=[ 2298s dict( 2298s area_id="0.0.0.100", 2298s stub=dict(default_metric=200, set=True), 2298s interfaces=[dict(name="so-0/0/0.0")], 2298s ), 2298s ], 2298s ), 2298s ], 2298s state="deleted", 2298s ), 2298s ) 2298s 2298s commands = [ 2298s '' 2298s "0.0.0.100so-0/0/0.0" 2298s "200", 2298s '' 2298s "10.200.16.75", 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_ospfv3.py:332: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ospfv3.py:748: in main 2298s result = Ospfv3(module).execute_module() 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 2298s config_xmls = self.set_config(existing_ospfv3_facts) 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __________ TestJunosOspfv3Module.test_junos_ospfv3_delete_idempotent ___________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ospfv3_delete_idempotent(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s router_id="10.200.16.70", 2298s areas=[ 2298s dict( 2298s area_id="0.0.0.100", 2298s stub=dict(default_metric=200, set=True), 2298s interfaces=[dict(name="so-0/0/0.0")], 2298s ), 2298s ], 2298s ), 2298s ], 2298s state="deleted", 2298s ), 2298s ) 2298s > self.execute_module(changed=False, commands=[]) 2298s 2298s tests/unit/modules/network/junos/test_junos_ospfv3.py:353: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ospfv3.py:748: in main 2298s result = Ospfv3(module).execute_module() 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 2298s config_xmls = self.set_config(existing_ospfv3_facts) 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ________________ TestJunosOspfv3Module.test_junos_ospfv3_merged ________________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ospfv3_merged(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s router_id="10.200.16.75", 2298s areas=[ 2298s dict( 2298s area_id="0.0.0.100", 2298s stub=dict(default_metric=200, set=True), 2298s interfaces=[ 2298s dict( 2298s name="so-0/0/0.0", 2298s priority=3, 2298s metric=5, 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s ], 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "0.0.0.100so-0/0/0.0" 2298s "35" 2298s "200", 2298s '' 2298s "10.200.16.75", 2298s ] 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_ospfv3.py:131: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ospfv3.py:748: in main 2298s result = Ospfv3(module).execute_module() 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 2298s config_xmls = self.set_config(existing_ospfv3_facts) 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosRouting_instancesModule.test_junos_routing_instances_domains_merged _ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_routing_instances_domains_merged(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="EVPN", 2298s type="virtual-switch", 2298s route_distinguisher="10.0.0.21:444", 2298s bridge_domains=[ 2298s dict( 2298s name="BD456", 2298s vlan_id=456, 2298s enable_mac_move_action=True, 2298s mcae_mac_flush=True, 2298s no_local_switching=True, 2298s service_id=20, 2298s ), 2298s dict( 2298s name="BD457", 2298s vlan_id=457, 2298s ), 2298s ], 2298s ), 2298s dict( 2298s name="mgmt_junos", 2298s ), 2298s ], 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "EVPN" 2298s "virtual-switch" 2298s "" 2298s "BD456" 2298s "20" 2298s "456" 2298s "" 2298s "" 2298s "" 2298s "" 2298s "BD457" 2298s "457" 2298s "10.0.0.21:444" 2298s "mgmt_junos", 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_routing_instances.py:145: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_routing_instances.py:796: in main 2298s result = Routing_instances(module).execute_module() 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 2298s config_xmls = self.set_config(existing_routing_instances_facts) 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 2298s self.root = build_root_xml_node("routing-instances") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __________ TestJunosOspfv3Module.test_junos_ospfv3_merged_idempotent ___________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ospfv3_merged_idempotent(self): 2298s self.get_connection.return_value = load_fixture( 2298s "junos_ospfv3_config.cfg", 2298s ) 2298s src = load_fixture("junos_ospfv3.cfg", content="str") 2298s set_module_args(dict(src=src)) 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s router_id="30", 2298s areas=[ 2298s dict( 2298s area_id="100", 2298s stub=dict(default_metric=10, set=True), 2298s interfaces=[ 2298s dict( 2298s name="so-0/0/0.0", 2298s priority=3, 2298s metric=5, 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s ], 2298s state="merged", 2298s ), 2298s ) 2298s > self.execute_module(changed=False, commands=[]) 2298s 2298s tests/unit/modules/network/junos/test_junos_ospfv3.py:163: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ospfv3.py:748: in main 2298s result = Ospfv3(module).execute_module() 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 2298s config_xmls = self.set_config(existing_ospfv3_facts) 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ______________ TestJunosOspfv3Module.test_junos_ospfv3_overridden ______________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ospfv3_overridden(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s router_id="10.200.16.75", 2298s areas=[ 2298s dict( 2298s area_id="0.0.0.100", 2298s stub=dict(default_metric=200, set=True), 2298s interfaces=[ 2298s dict( 2298s name="so-0/0/0.0", 2298s priority=3, 2298s metric=5, 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s ], 2298s state="overridden", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "0.0.0.100so-0/0/0.0" 2298s "3" 2298s "5" 2298s "200", 2298s '' 2298s "10.200.16.75", 2298s ] 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_ospfv3.py:270: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_ospfv3.py:748: in main 2298s result = Ospfv3(module).execute_module() 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 2298s config_xmls = self.set_config(existing_ospfv3_facts) 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _____ TestJunosRouting_instancesModule.test_junos_routing_instances_merged _____ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_routing_instances_merged(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="test", 2298s type="vrf", 2298s route_distinguisher="10.58.255.1:37", 2298s vrf_imports=["test-policy"], 2298s vrf_exports=["test-policy", "test-policy-1"], 2298s interfaces=[ 2298s dict(name="sp-0/0/0.0"), 2298s dict(name="gr-0/0/0.0"), 2298s ], 2298s connector_id_advertise=True, 2298s ), 2298s ], 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "test" 2298s "vrfsp-0/0/0.0" 2298s "gr-0/0/0.0" 2298s "10.58.255.1:37" 2298s "test-policy" 2298s "test-policytest-policy-1" 2298s "", 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_routing_instances.py:178: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_routing_instances.py:796: in main 2298s result = Routing_instances(module).execute_module() 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 2298s config_xmls = self.set_config(existing_routing_instances_facts) 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 2298s self.root = build_root_xml_node("routing-instances") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosRouting_instancesModule.test_junos_routing_instances_merged_idempotent _ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_routing_instances_merged_idempotent(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="forwardinst", 2298s type="forwarding", 2298s description="Configured by Ansible Content Team", 2298s ), 2298s ], 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_routing_instances.py:194: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_routing_instances.py:796: in main 2298s result = Routing_instances(module).execute_module() 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 2298s config_xmls = self.set_config(existing_routing_instances_facts) 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 2298s self.root = build_root_xml_node("routing-instances") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ________ TestJunosPrefix_listsModule.test_junos_prefix_lists_merged_01 _________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_prefix_lists_merged_01(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="Internal", 2298s address_prefixes=["172.16.1.32", "172.16.3.32"], 2298s ), 2298s dict(name="Test1", dynamic_db=True), 2298s dict( 2298s name="Test2", 2298s address_prefixes=[ 2298s "172.16.2.32", 2298s "172.16.7.32", 2298s "172.16.9.32", 2298s ], 2298s ), 2298s ], 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "Internal" 2298s "172.16.1.32" 2298s "172.16.3.32" 2298s "" 2298s "Test1" 2298s "Test2" 2298s "172.16.2.32" 2298s "172.16.7.32" 2298s "" 2298s "172.16.9.32" 2298s "", 2298s ] 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_prefix_lists.py:125: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_prefix_lists.py:653: in main 2298s result = Prefix_lists(module).execute_module() 2298s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:104: in execute_module 2298s config_xmls = self.set_config(existing_prefix_lists_facts) 2298s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 2298s self.root = build_root_xml_node("policy-options") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ___ TestJunosRouting_instancesModule.test_junos_routing_instances_overridden ___ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_routing_instances_overridden(self): 2298s """ 2298s :return: 2298s """ 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="test1", 2298s type="vrf", 2298s route_distinguisher="10.58.255.1:37", 2298s vrf_imports=["test-policy"], 2298s vrf_exports=["test-policy", "test-policy-1"], 2298s interfaces=[ 2298s dict(name="sp-0/0/0.0"), 2298s dict(name="gr-0/0/0.0"), 2298s ], 2298s connector_id_advertise=True, 2298s ), 2298s ], 2298s state="overridden", 2298s ), 2298s ) 2298s 2298s commands = [ 2298s '' 2298s 'forwardinst' 2298s "test1" 2298s "vrfsp-0/0/0.0" 2298s "gr-0/0/0.0" 2298s "10.58.255.1:37" 2298s "test-policytest-policy" 2298s "test-policy-1", 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_routing_instances.py:293: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_routing_instances.py:796: in main 2298s result = Routing_instances(module).execute_module() 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 2298s config_xmls = self.set_config(existing_routing_instances_facts) 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 2298s self.root = build_root_xml_node("routing-instances") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ___ TestJunosPrefix_listsModule.test_junos_prefix_lists_merged_idempotent_01 ___ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_prefix_lists_merged_idempotent_01(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict(name="customer_64510"), 2298s dict( 2298s name="customer_64500", 2298s dynamic_db=True, 2298s address_prefixes=["172.16.1.16/28", "172.16.1.32/28"], 2298s ), 2298s ], 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_prefix_lists.py:142: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_prefix_lists.py:653: in main 2298s result = Prefix_lists(module).execute_module() 2298s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:104: in execute_module 2298s config_xmls = self.set_config(existing_prefix_lists_facts) 2298s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 2298s self.root = build_root_xml_node("policy-options") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosRouting_instancesModule.test_junos_routing_instances_overridden_idempotent _ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_routing_instances_overridden_idempotent(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="forwardinst", 2298s type="forwarding", 2298s description="Configured by Ansible Content Team", 2298s ), 2298s ], 2298s state="overridden", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_routing_instances.py:309: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_routing_instances.py:796: in main 2298s result = Routing_instances(module).execute_module() 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 2298s config_xmls = self.set_config(existing_routing_instances_facts) 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 2298s self.root = build_root_xml_node("routing-instances") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ______ TestJunosPrefix_listsModule.test_junos_prefix_lists_overridden_01 _______ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_prefix_lists_overridden_01(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="customer_65500", 2298s address_prefixes=["172.16.2.16/28", "172.16.1.32/28"], 2298s ), 2298s ], 2298s state="overridden", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s 'customer_64510' 2298s 'customer_64500' 2298s "customer_65500" 2298s "172.16.2.16/28" 2298s "172.16.1.32/28" 2298s "", 2298s ] 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_prefix_lists.py:217: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_prefix_lists.py:653: in main 2298s result = Prefix_lists(module).execute_module() 2298s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:104: in execute_module 2298s config_xmls = self.set_config(existing_prefix_lists_facts) 2298s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 2298s self.root = build_root_xml_node("policy-options") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosPrefix_listsModule.test_junos_prefix_lists_overridden_idempotent_01 _ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_prefix_lists_overridden_idempotent_01(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict(name="customer_64510"), 2298s dict( 2298s name="customer_64500", 2298s dynamic_db=True, 2298s address_prefixes=["172.16.1.16/28", "172.16.1.32/28"], 2298s ), 2298s ], 2298s state="overridden", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_prefix_lists.py:234: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_prefix_lists.py:653: in main 2298s result = Prefix_lists(module).execute_module() 2298s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:104: in execute_module 2298s config_xmls = self.set_config(existing_prefix_lists_facts) 2298s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 2298s self.root = build_root_xml_node("policy-options") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ____ TestJunosRouting_instancesModule.test_junos_routing_instances_rendered ____ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_routing_instances_rendered(self): 2298s """ 2298s :return: 2298s """ 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="test", 2298s type="vrf", 2298s route_distinguisher="10.58.255.1:37", 2298s vrf_imports=["test-policy"], 2298s vrf_exports=["test-policy", "test-policy-1"], 2298s interfaces=[ 2298s dict(name="sp-0/0/0.0"), 2298s dict(name="gr-0/0/0.0"), 2298s ], 2298s connector_id_advertise=True, 2298s ), 2298s ], 2298s state="rendered", 2298s ), 2298s ) 2298s 2298s rendered = ( 2298s '' 2298s "test" 2298s "vrfsp-0/0/0.0" 2298s "gr-0/0/0.0" 2298s "10.58.255.1:37" 2298s "test-policy" 2298s "test-policytest-policy-1" 2298s "" 2298s ) 2298s > result = self.execute_module(changed=False) 2298s 2298s tests/unit/modules/network/junos/test_junos_routing_instances.py:346: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_routing_instances.py:796: in main 2298s result = Routing_instances(module).execute_module() 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:97: in execute_module 2298s config_xmls = self.set_config(existing_routing_instances_facts) 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 2298s self.root = build_root_xml_node("routing-instances") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _______ TestJunosPrefix_listsModule.test_junos_prefix_lists_rendered_01 ________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_prefix_lists_rendered_01(self): 2298s """ 2298s :return: 2298s """ 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="Internal", 2298s address_prefixes=["172.16.1.32", "172.16.3.32"], 2298s ), 2298s dict(name="Test1", dynamic_db=True), 2298s dict( 2298s name="Test2", 2298s address_prefixes=[ 2298s "172.16.2.32", 2298s "172.16.7.32", 2298s "172.16.9.32", 2298s ], 2298s ), 2298s ], 2298s state="rendered", 2298s ), 2298s ) 2298s 2298s rendered = ( 2298s '' 2298s "Internal" 2298s "172.16.1.32" 2298s "172.16.3.32" 2298s "" 2298s "Test1" 2298s "Test2" 2298s "172.16.2.32" 2298s "172.16.7.32" 2298s "" 2298s "172.16.9.32" 2298s "" 2298s ) 2298s > result = self.execute_module(changed=False) 2298s 2298s tests/unit/modules/network/junos/test_junos_prefix_lists.py:326: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_prefix_lists.py:653: in main 2298s result = Prefix_lists(module).execute_module() 2298s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:96: in execute_module 2298s config_xmls = self.set_config(existing_prefix_lists_facts) 2298s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 2298s self.root = build_root_xml_node("policy-options") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosRouting_instancesModule.test_junos_routing_instances_rendered_02 ___ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_routing_instances_rendered_02(self): 2298s """ 2298s :return: 2298s """ 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="test", 2298s type="mac-vrf", 2298s route_distinguisher="10.58.255.1:37", 2298s vrf_imports=["test-policy"], 2298s vrf_exports=["test-policy", "test-policy-1"], 2298s interfaces=[ 2298s dict(name="sp-0/0/0.0"), 2298s dict(name="gr-0/0/0.0"), 2298s ], 2298s connector_id_advertise=True, 2298s ), 2298s ], 2298s state="rendered", 2298s ), 2298s ) 2298s 2298s rendered = ( 2298s '' 2298s "test" 2298s "mac-vrfsp-0/0/0.0" 2298s "gr-0/0/0.0" 2298s "10.58.255.1:37" 2298s "test-policy" 2298s "test-policytest-policy-1" 2298s "" 2298s ) 2298s > result = self.execute_module(changed=False) 2298s 2298s tests/unit/modules/network/junos/test_junos_routing_instances.py:383: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_routing_instances.py:796: in main 2298s result = Routing_instances(module).execute_module() 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:97: in execute_module 2298s config_xmls = self.set_config(existing_routing_instances_facts) 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 2298s self.root = build_root_xml_node("routing-instances") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _______ TestJunosPrefix_listsModule.test_junos_prefix_lists_replaced_01 ________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_prefix_lists_replaced_01(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="customer_64510", 2298s address_prefixes=["172.16.1.32/28", "172.16.3.32/28"], 2298s ), 2298s dict( 2298s name="customer_64500", 2298s address_prefixes=["172.16.2.16/28", "172.16.1.32/28"], 2298s ), 2298s ], 2298s state="replaced", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s 'customer_64510' 2298s '' 2298s "customer_64500" 2298s "customer_64510" 2298s "172.16.1.32/28" 2298s "" 2298s "172.16.3.32/28" 2298s "customer_64500" 2298s "172.16.2.16/28" 2298s "172.16.1.32/28" 2298s "", 2298s ] 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_prefix_lists.py:176: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_prefix_lists.py:653: in main 2298s result = Prefix_lists(module).execute_module() 2298s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:104: in execute_module 2298s config_xmls = self.set_config(existing_prefix_lists_facts) 2298s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 2298s self.root = build_root_xml_node("policy-options") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ____ TestJunosRouting_instancesModule.test_junos_routing_instances_replaced ____ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_routing_instances_replaced(self): 2298s """ 2298s :return: 2298s """ 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="test", 2298s type="vrf", 2298s route_distinguisher="10.58.255.1:37", 2298s vrf_imports=["test-policy"], 2298s vrf_exports=["test-policy", "test-policy-1"], 2298s interfaces=[ 2298s dict(name="sp-0/0/0.0"), 2298s dict(name="gr-0/0/0.0"), 2298s ], 2298s connector_id_advertise=True, 2298s ), 2298s dict( 2298s name="forwardinst", 2298s type="forwarding", 2298s description="Replaced and Configured by Ansible Content Team", 2298s ), 2298s ], 2298s state="replaced", 2298s ), 2298s ) 2298s 2298s commands = [ 2298s '' 2298s 'forwardinst' 2298s "test" 2298s "vrfsp-0/0/0.0" 2298s "gr-0/0/0.0" 2298s "10.58.255.1:37" 2298s "test-policy" 2298s "test-policytest-policy-1" 2298s "forwardinst" 2298s "Replaced and Configured by Ansible Content Team" 2298s "forwarding" 2298s "", 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_routing_instances.py:240: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_routing_instances.py:796: in main 2298s result = Routing_instances(module).execute_module() 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 2298s config_xmls = self.set_config(existing_routing_instances_facts) 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 2298s self.root = build_root_xml_node("routing-instances") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosPrefix_listsModule.test_junos_prefix_lists_replaced_idempotent_01 __ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_prefix_lists_replaced_idempotent_01(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict(name="customer_64510"), 2298s dict( 2298s name="customer_64500", 2298s dynamic_db=True, 2298s address_prefixes=["172.16.1.16/28", "172.16.1.32/28"], 2298s ), 2298s ], 2298s state="replaced", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_prefix_lists.py:193: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_prefix_lists.py:653: in main 2298s result = Prefix_lists(module).execute_module() 2298s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:104: in execute_module 2298s config_xmls = self.set_config(existing_prefix_lists_facts) 2298s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 2298s self.root = build_root_xml_node("policy-options") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosRouting_instancesModule.test_junos_routing_instances_replaced_idempotent _ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_routing_instances_replaced_idempotent(self): 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict( 2298s name="forwardinst", 2298s type="forwarding", 2298s description="Configured by Ansible Content Team", 2298s ), 2298s ], 2298s state="replaced", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_routing_instances.py:256: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_routing_instances.py:796: in main 2298s result = Routing_instances(module).execute_module() 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 2298s config_xmls = self.set_config(existing_routing_instances_facts) 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 2298s self.root = build_root_xml_node("routing-instances") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ____ TestJunosRouting_instancesModule.test_junos_routing_instances_deleted _____ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_routing_instances_deleted(self): 2298s """ 2298s :return: 2298s """ 2298s set_module_args(dict(config=[], state="deleted")) 2298s 2298s commands = [ 2298s '' 2298s '', 2298s ] 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_routing_instances.py:411: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_routing_instances.py:796: in main 2298s result = Routing_instances(module).execute_module() 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 2298s config_xmls = self.set_config(existing_routing_instances_facts) 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 2298s self.root = build_root_xml_node("routing-instances") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _____ TestJunosRouting_optionsModule.test_junos_routing_options_merged_01 ______ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_routing_options_merged_01(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s autonomous_system=dict( 2298s as_number="2", 2298s loops=4, 2298s asdot_notation=True, 2298s ), 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_routing_options.py:103: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_routing_options.py:397: in main 2298s result = Routing_options(module).execute_module() 2298s plugins/module_utils/network/junos/config/routing_options/routing_options.py:106: in execute_module 2298s config_xmls = self.set_config(existing_routing_options_facts) 2298s plugins/module_utils/network/junos/config/routing_options/routing_options.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/routing_options/routing_options.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosRouting_instancesModule.test_junos_routing_instances_delted_single_entry _ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_routing_instances_delted_single_entry(self): 2298s """ 2298s :return: 2298s """ 2298s set_module_args( 2298s dict(config=[dict(name="forwardinst")], state="deleted"), 2298s ) 2298s 2298s commands = [ 2298s '' 2298s 'forwardinst', 2298s ] 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_routing_instances.py:426: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_routing_instances.py:796: in main 2298s result = Routing_instances(module).execute_module() 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 2298s config_xmls = self.set_config(existing_routing_instances_facts) 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 2298s self.root = build_root_xml_node("routing-instances") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosRouting_optionsModule.test_junos_routing_options_merged_idempotent __ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_routing_options_merged_idempotent(self): 2298s self.execute_show_command.return_value = load_fixture( 2298s "junos_routing_options_config.cfg", 2298s ) 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s router_id="12.12.12.13", 2298s autonomous_system=dict(as_number="1"), 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_routing_options.py:122: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_routing_options.py:397: in main 2298s result = Routing_options(module).execute_module() 2298s plugins/module_utils/network/junos/config/routing_options/routing_options.py:106: in execute_module 2298s config_xmls = self.set_config(existing_routing_options_facts) 2298s plugins/module_utils/network/junos/config/routing_options/routing_options.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/routing_options/routing_options.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _____ TestJunosRouting_optionsModule.test_junos_routing_options_overridden _____ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_routing_options_overridden(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s autonomous_system=dict( 2298s as_number="1", 2298s loops=4, 2298s asdot_notation=True, 2298s ), 2298s ), 2298s state="overridden", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_routing_options.py:207: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_routing_options.py:397: in main 2298s result = Routing_options(module).execute_module() 2298s plugins/module_utils/network/junos/config/routing_options/routing_options.py:106: in execute_module 2298s config_xmls = self.set_config(existing_routing_options_facts) 2298s plugins/module_utils/network/junos/config/routing_options/routing_options.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/routing_options/routing_options.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ______ TestJunosRouting_optionsModule.test_junos_routing_options_rendered ______ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_routing_options_rendered(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s autonomous_system=dict( 2298s as_number="2", 2298s loops=4, 2298s asdot_notation=True, 2298s ), 2298s router_id="12.12.12.12", 2298s ), 2298s state="rendered", 2298s ), 2298s ) 2298s rendered = ( 2298s '' 2298s "24" 2298s "12.12.12.12" 2298s ) 2298s > result = self.execute_module(changed=False) 2298s 2298s tests/unit/modules/network/junos/test_junos_routing_options.py:191: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_routing_options.py:397: in main 2298s result = Routing_options(module).execute_module() 2298s plugins/module_utils/network/junos/config/routing_options/routing_options.py:100: in execute_module 2298s config_xmls = self.set_config(existing_routing_options_facts) 2298s plugins/module_utils/network/junos/config/routing_options/routing_options.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/routing_options/routing_options.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ___ TestJunosSecurity_policiesModule.test_junos_security_policies_merged_01 ____ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_security_policies_merged_01(self): 2298s set_module_args( 2298s dict( 2298s config={ 2298s "from_zones": [ 2298s { 2298s "name": "one", 2298s "to_zones": [ 2298s { 2298s "name": "two", 2298s "policies": [ 2298s { 2298s "match": { 2298s "application": { 2298s "names": [ 2298s "junos-dhcp-relay", 2298s "junos-finger", 2298s ], 2298s }, 2298s "destination_address": { 2298s "addresses": ["a2", "a4"], 2298s }, 2298s "destination_address_excluded": True, 2298s "dynamic_application": { 2298s "any": True, 2298s }, 2298s "source_address": { 2298s "addresses": ["a1", "a3"], 2298s }, 2298s "source_address_excluded": True, 2298s "source_end_user_profile": "test_end_user_profile", 2298s "source_identity": { 2298s "unknown_user": True, 2298s }, 2298s "url_category": { 2298s "names": [ 2298s "Enhanced_Web_Chat", 2298s "Enhanced_Web_Collaboration", 2298s ], 2298s }, 2298s }, 2298s "name": "test_policy_1", 2298s "then": { 2298s "count": True, 2298s "deny": True, 2298s "log": {"session_close": True}, 2298s }, 2298s }, 2298s { 2298s "match": { 2298s "application": { 2298s "names": [ 2298s "junos-dhcp-relay", 2298s ], 2298s }, 2298s "destination_address": { 2298s "addresses": ["a2"], 2298s }, 2298s "source_address": { 2298s "addresses": ["a1"], 2298s }, 2298s }, 2298s "name": "test_policy_2", 2298s "then": { 2298s "reject": { 2298s "enable": True, 2298s "profile": "test_dyn_app", 2298s "ssl_proxy": { 2298s "enable": True, 2298s "profile_name": "SECURITY-SSL-PROXY", 2298s }, 2298s }, 2298s }, 2298s }, 2298s ], 2298s }, 2298s { 2298s "name": "three", 2298s "policies": [ 2298s { 2298s "match": { 2298s "application": { 2298s "names": [ 2298s "junos-dhcp-relay", 2298s ], 2298s }, 2298s "destination_address": { 2298s "addresses": ["a2"], 2298s }, 2298s "source_address": { 2298s "addresses": ["a1"], 2298s }, 2298s }, 2298s "name": "test_policy_3", 2298s "then": { 2298s "permit": { 2298s "destination_address": "drop-translated", 2298s "application_services": { 2298s "advanced_anti_malware_policy": "test_anti_malware", 2298s "application_traffic_control_rule_set": "test_traffic_control", 2298s "gprs_gtp_profile": "gtp1", 2298s "gprs_sctp_profile": "sctp1", 2298s "icap_redirect": "test_icap", 2298s "idp_policy": "test_idp", 2298s "reverse_redirect_wx": True, 2298s "ssl_proxy": { 2298s "enable": True, 2298s "profile_name": "SECURITY-SSL-PROXY", 2298s }, 2298s "uac_policy": { 2298s "enable": True, 2298s }, 2298s "utm_policy": "test_utm", 2298s }, 2298s "firewall_authentication": { 2298s "pass_through": { 2298s "access_profile": "WEBAUTH", 2298s "auth_only_browser": True, 2298s "auth_user_agent": "Opera1", 2298s "client_match": "test-client", 2298s "ssl_termination_profile": "test_ssl_term", 2298s "web_redirect": True, 2298s "web_redirect_to_https": True, 2298s }, 2298s "push_to_identity_management": True, 2298s "user_firewall": { 2298s "access_profile": "WEBAUTH", 2298s "auth_only_browser": True, 2298s "auth_user_agent": "Opera1", 2298s "ssl_termination_profile": "test_ssl_term", 2298s "web_redirect": True, 2298s "web_redirect_to_https": True, 2298s }, 2298s "web_authentication": [ 2298s "FWClient1", 2298s "FWClient2", 2298s ], 2298s }, 2298s "tcp_options": { 2298s "initial_tcp_mss": 64, 2298s "reverse_tcp_mss": 64, 2298s "window_scale": True, 2298s }, 2298s }, 2298s }, 2298s }, 2298s ], 2298s }, 2298s ], 2298s }, 2298s ], 2298s "global": { 2298s "policies": [ 2298s { 2298s "match": { 2298s "application": { 2298s "names": ["junos-dhcp-relay"], 2298s }, 2298s "destination_address": { 2298s "addresses": ["a2"], 2298s }, 2298s "source_address": {"addresses": ["a1"]}, 2298s }, 2298s "name": "test_glob_1", 2298s "then": {"deny": True}, 2298s }, 2298s { 2298s "match": { 2298s "application": { 2298s "names": ["junos-dhcp-relay"], 2298s }, 2298s "destination_address": { 2298s "addresses": ["a2"], 2298s }, 2298s "source_address": {"addresses": ["a1"]}, 2298s }, 2298s "name": "test_glob_2", 2298s "then": {"deny": True}, 2298s }, 2298s ], 2298s }, 2298s }, 2298s state="merged", 2298s ), 2298s ) 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_security_policies.py:295: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_security_policies.py:2700: in main 2298s result = Security_policies(module).execute_module() 2298s plugins/module_utils/network/junos/config/security_policies/security_policies.py:106: in execute_module 2298s config_xmls = self.set_config(existing_security_policies_facts) 2298s plugins/module_utils/network/junos/config/security_policies/security_policies.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/security_policies/security_policies.py:154: in set_state 2298s self.root = build_root_xml_node("security") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ____ TestJunosRouting_optionsModule.test_junos_routing_options_replaced_01 _____ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_routing_options_replaced_01(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s autonomous_system=dict( 2298s as_number="1", 2298s loops=4, 2298s asdot_notation=True, 2298s ), 2298s ), 2298s state="replaced", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_routing_options.py:166: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_routing_options.py:397: in main 2298s result = Routing_options(module).execute_module() 2298s plugins/module_utils/network/junos/config/routing_options/routing_options.py:106: in execute_module 2298s config_xmls = self.set_config(existing_routing_options_facts) 2298s plugins/module_utils/network/junos/config/routing_options/routing_options.py:144: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/routing_options/routing_options.py:156: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ___ TestJunosSecurity_policiesModule.test_junos_security_policies_merged_02 ____ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_security_policies_merged_02(self): 2298s set_module_args( 2298s dict( 2298s config={ 2298s "from_zones": [ 2298s { 2298s "name": "one", 2298s "to_zones": [ 2298s { 2298s "name": "two", 2298s "policies": [ 2298s { 2298s "match": { 2298s "application": {"any": True}, 2298s "destination_address": { 2298s "any_ipv4": True, 2298s "any_ipv6": True, 2298s "any": True, 2298s }, 2298s "dynamic_application": { 2298s "names": [ 2298s "test1", 2298s "test2", 2298s ], 2298s "none": True, 2298s }, 2298s "source_address": { 2298s "any_ipv4": True, 2298s "any_ipv6": True, 2298s "any": True, 2298s }, 2298s "source_identity": { 2298s "unknown_user": True, 2298s "unauthenticated_user": True, 2298s "authenticated_user": True, 2298s "names": ["test1"], 2298s }, 2298s "url_category": { 2298s "any": True, 2298s "none": True, 2298s }, 2298s }, 2298s "name": "test_policy_1", 2298s "then": { 2298s "count": True, 2298s "deny": True, 2298s "log": {"session_init": True}, 2298s }, 2298s }, 2298s ], 2298s }, 2298s { 2298s "name": "three", 2298s "policies": [ 2298s { 2298s "match": { 2298s "application": { 2298s "names": [ 2298s "junos-dhcp-relay", 2298s ], 2298s }, 2298s "destination_address": { 2298s "any": True, 2298s }, 2298s "source_address": { 2298s "any": True, 2298s }, 2298s }, 2298s "name": "test_policy_3", 2298s "then": { 2298s "permit": { 2298s "application_services": { 2298s "idp": True, 2298s "redirect_wx": True, 2298s "uac_policy": { 2298s "captive_portal": "test", 2298s }, 2298s }, 2298s "firewall_authentication": { 2298s "user_firewall": { 2298s "domain": "test", 2298s }, 2298s }, 2298s "destination_address": "drop-untranslated", 2298s "tunnel": { 2298s "ipsec_vpn": "test_vpn", 2298s "pair_policy": "test_policy", 2298s }, 2298s }, 2298s }, 2298s }, 2298s ], 2298s }, 2298s ], 2298s }, 2298s ], 2298s }, 2298s state="merged", 2298s ), 2298s ) 2298s 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_security_policies.py:450: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_security_policies.py:2700: in main 2298s result = Security_policies(module).execute_module() 2298s plugins/module_utils/network/junos/config/security_policies/security_policies.py:106: in execute_module 2298s config_xmls = self.set_config(existing_security_policies_facts) 2298s plugins/module_utils/network/junos/config/security_policies/security_policies.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/security_policies/security_policies.py:154: in set_state 2298s self.root = build_root_xml_node("security") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosSecurity_policiesModule.test_junos_security_policies_overridden_01 __ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_security_policies_overridden_01(self): 2298s set_module_args( 2298s dict( 2298s config={ 2298s "global": { 2298s "policies": [ 2298s { 2298s "description": "test update", 2298s "match": { 2298s "application": {"any": True}, 2298s "destination_address": {"any_ipv6": True}, 2298s "source_address": {"any": True}, 2298s }, 2298s "name": "test_glob_3", 2298s "then": {"deny": True}, 2298s }, 2298s ], 2298s }, 2298s }, 2298s state="overridden", 2298s ), 2298s ) 2298s commands = ( 2298s '' 2298s "test_glob_3test updateany" 2298s "any-ipv6any" 2298s "" 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_security_policies.py:825: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_security_policies.py:2700: in main 2298s result = Security_policies(module).execute_module() 2298s plugins/module_utils/network/junos/config/security_policies/security_policies.py:106: in execute_module 2298s config_xmls = self.set_config(existing_security_policies_facts) 2298s plugins/module_utils/network/junos/config/security_policies/security_policies.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/security_policies/security_policies.py:154: in set_state 2298s self.root = build_root_xml_node("security") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_overridden_01 _ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_security_policies_global_overridden_01(self): 2298s set_module_args( 2298s dict( 2298s config={ 2298s "default_policy": "permit-all", 2298s "policy_rematch": {"enable": True, "extensive": True}, 2298s "policy_stats": {"enable": True, "system_wide": True}, 2298s "pre_id_default_policy_action": { 2298s "log": {"session_init": True}, 2298s "session_timeout": {"icmp": 10, "others": 10}, 2298s }, 2298s "traceoptions": { 2298s "file": { 2298s "files": 3, 2298s "match": "/[A-Z]*/gm", 2298s "no_world_readable": True, 2298s "size": "10k", 2298s }, 2298s "flag": "ipc", 2298s "no_remote_trace": True, 2298s }, 2298s }, 2298s state="overridden", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_security_policies_global.py:509: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_security_policies_global.py:989: in main 2298s result = Security_policies_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:108: in execute_module 2298s config_xmls = self.set_config( 2298s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 2298s self.root = build_root_xml_node("security") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ____ TestJunosSecurity_policiesModule.test_junos_security_policies_rendered ____ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_security_policies_rendered(self): 2298s set_module_args( 2298s dict( 2298s config={ 2298s "global": { 2298s "policies": [ 2298s { 2298s "description": "test update", 2298s "match": { 2298s "application": {"any": True}, 2298s "destination_address": {"any_ipv6": True}, 2298s "source_address": {"any": True}, 2298s }, 2298s "name": "test_glob_3", 2298s "then": {"deny": True}, 2298s }, 2298s ], 2298s }, 2298s }, 2298s state="rendered", 2298s ), 2298s ) 2298s rendered = ( 2298s '' 2298s "test_glob_3test update" 2298s "anyany-ipv6" 2298s "any" 2298s "" 2298s ) 2298s > result = self.execute_module(changed=False) 2298s 2298s tests/unit/modules/network/junos/test_junos_security_policies.py:1055: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_security_policies.py:2700: in main 2298s result = Security_policies(module).execute_module() 2298s plugins/module_utils/network/junos/config/security_policies/security_policies.py:100: in execute_module 2298s config_xmls = self.set_config(existing_security_policies_facts) 2298s plugins/module_utils/network/junos/config/security_policies/security_policies.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/security_policies/security_policies.py:154: in set_state 2298s self.root = build_root_xml_node("security") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosSecurity_policiesModule.test_junos_security_policies_replaced_01 ___ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_security_policies_replaced_01(self): 2298s set_module_args( 2298s dict( 2298s config={ 2298s "global": { 2298s "policies": [ 2298s { 2298s "description": "test update", 2298s "match": { 2298s "application": {"any": True}, 2298s "destination_address": {"any_ipv6": True}, 2298s "source_address": {"any": True}, 2298s }, 2298s "name": "test_glob_3", 2298s "then": {"deny": True}, 2298s }, 2298s ], 2298s }, 2298s }, 2298s state="replaced", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_security_policies.py:1080: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_security_policies.py:2700: in main 2298s result = Security_policies(module).execute_module() 2298s plugins/module_utils/network/junos/config/security_policies/security_policies.py:106: in execute_module 2298s config_xmls = self.set_config(existing_security_policies_facts) 2298s plugins/module_utils/network/junos/config/security_policies/security_policies.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/security_policies/security_policies.py:154: in set_state 2298s self.root = build_root_xml_node("security") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_merged_01 _ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_security_policies_global_merged_01(self): 2298s set_module_args( 2298s dict( 2298s config={ 2298s "default_policy": "permit-all", 2298s "policy_rematch": {"enable": True, "extensive": True}, 2298s "policy_stats": {"enable": True, "system_wide": True}, 2298s "pre_id_default_policy_action": { 2298s "log": {"session_init": True, "session_close": True}, 2298s "session_timeout": {"icmp": 10, "others": 10}, 2298s }, 2298s "traceoptions": { 2298s "file": { 2298s "files": 3, 2298s "match": "/[A-Z]*/gm", 2298s "no_world_readable": True, 2298s "size": "10k", 2298s }, 2298s "flag": "all", 2298s "no_remote_trace": True, 2298s }, 2298s }, 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_security_policies_global.py:136: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_security_policies_global.py:989: in main 2298s result = Security_policies_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:108: in execute_module 2298s config_xmls = self.set_config( 2298s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 2298s self.root = build_root_xml_node("security") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_rendered _ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_security_policies_global_rendered(self): 2298s set_module_args( 2298s dict( 2298s config={ 2298s "default_policy": "permit-all", 2298s "policy_rematch": {"enable": True, "extensive": True}, 2298s "policy_stats": {"enable": True, "system_wide": True}, 2298s "pre_id_default_policy_action": { 2298s "log": {"session_init": True}, 2298s "session_timeout": {"icmp": 10, "others": 10}, 2298s }, 2298s "traceoptions": { 2298s "file": { 2298s "files": 3, 2298s "match": "/[A-Z]*/gm", 2298s "no_world_readable": True, 2298s "size": "10k", 2298s }, 2298s "flag": "routing-socket", 2298s "no_remote_trace": True, 2298s }, 2298s }, 2298s state="rendered", 2298s ), 2298s ) 2298s rendered = ( 2298s '' 2298s " " 2298s " enable" 2298s "" 2298s "1010" 2298s "3" 2298s "/[A-Z]*/gm10k" 2298s "routing-socket" 2298s "" 2298s ) 2298s > result = self.execute_module(changed=False) 2298s 2298s tests/unit/modules/network/junos/test_junos_security_policies_global.py:590: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_security_policies_global.py:989: in main 2298s result = Security_policies_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:100: in execute_module 2298s config_xmls = self.set_config( 2298s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 2298s self.root = build_root_xml_node("security") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_merged_02 _ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_security_policies_global_merged_02(self): 2298s set_module_args( 2298s dict( 2298s config={ 2298s "default_policy": "deny-all", 2298s "policy_rematch": {"enable": True, "extensive": True}, 2298s "policy_stats": {"enable": True, "system_wide": False}, 2298s "pre_id_default_policy_action": { 2298s "log": {"session_init": True}, 2298s "session_timeout": { 2298s "icmp": 10, 2298s "others": 10, 2298s "icmp6": 10, 2298s "ospf": 10, 2298s "tcp": 10, 2298s "udp": 10, 2298s }, 2298s }, 2298s "traceoptions": { 2298s "file": { 2298s "files": 3, 2298s "match": "/[A-Z]*/gm", 2298s "world_readable": True, 2298s "size": "10k", 2298s }, 2298s "flag": "configuration", 2298s "no_remote_trace": True, 2298s }, 2298s }, 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_security_policies_global.py:185: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_security_policies_global.py:989: in main 2298s result = Security_policies_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:108: in execute_module 2298s config_xmls = self.set_config( 2298s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 2298s self.root = build_root_xml_node("security") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_replaced_01 _ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_security_policies_global_replaced_01(self): 2298s set_module_args( 2298s dict( 2298s config={ 2298s "default_policy": "permit-all", 2298s "policy_rematch": {"enable": True, "extensive": True}, 2298s "policy_stats": {"enable": True, "system_wide": True}, 2298s "pre_id_default_policy_action": { 2298s "log": {"session_init": True}, 2298s "session_timeout": {"icmp": 10, "others": 10}, 2298s }, 2298s "traceoptions": { 2298s "file": { 2298s "files": 3, 2298s "match": "/[A-Z]*/gm", 2298s "no_world_readable": True, 2298s "size": "10k", 2298s }, 2298s "flag": "rules", 2298s "no_remote_trace": True, 2298s }, 2298s }, 2298s state="replaced", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_security_policies_global.py:623: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_security_policies_global.py:989: in main 2298s result = Security_policies_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:108: in execute_module 2298s config_xmls = self.set_config( 2298s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 2298s self.root = build_root_xml_node("security") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_merged_03 _ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_security_policies_global_merged_03(self): 2298s set_module_args( 2298s dict( 2298s config={"traceoptions": {"flag": "compilation"}}, 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_security_policies_global.py:209: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_security_policies_global.py:989: in main 2298s result = Security_policies_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:108: in execute_module 2298s config_xmls = self.set_config( 2298s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 2298s self.root = build_root_xml_node("security") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_merged_04 _ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_security_policies_global_merged_04(self): 2298s set_module_args( 2298s dict(config={"traceoptions": {"flag": "lookup"}}, state="merged"), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_security_policies_global.py:224: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_security_policies_global.py:989: in main 2298s result = Security_policies_global(module).execute_module() 2298s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:108: in execute_module 2298s config_xmls = self.set_config( 2298s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 2298s self.root = build_root_xml_node("security") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ______ TestJunosSecurity_zonesModule.test_junos_security_zones_merged_01 _______ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_security_zones_merged_01(self): 2298s set_module_args( 2298s dict( 2298s config={ 2298s "functional_zone_management": { 2298s "description": "test description", 2298s "host_inbound_traffic": { 2298s "protocols": [ 2298s {"name": "all"}, 2298s {"except": True, "name": "bgp"}, 2298s ], 2298s "system_services": [ 2298s {"name": "all"}, 2298s {"except": True, "name": "dhcp"}, 2298s ], 2298s }, 2298s "interfaces": ["ge-0/0/1.0", "ge-0/0/2.0"], 2298s "screen": "test_screen", 2298s }, 2298s "zones": [ 2298s { 2298s "address_book": { 2298s "address_sets": [ 2298s { 2298s "addresses": [ 2298s "test_adr1", 2298s "test_adr2", 2298s ], 2298s "name": "test_adrset1", 2298s }, 2298s { 2298s "addresses": [ 2298s "test_adr3", 2298s "test_adr4", 2298s ], 2298s "name": "test_adrset2", 2298s }, 2298s { 2298s "address_sets": [ 2298s "test_adrset1", 2298s "test_adrset2", 2298s ], 2298s "addresses": ["test_adr5"], 2298s "description": "test description", 2298s "name": "test_adrset3", 2298s }, 2298s ], 2298s "addresses": [ 2298s { 2298s "description": "test desc", 2298s "ip_prefix": "10.0.0.0/24", 2298s "name": "test_adr1", 2298s }, 2298s { 2298s "dns_name": { 2298s "ipv6_only": True, 2298s "name": "1.1.1.1", 2298s }, 2298s "name": "test_adr2", 2298s }, 2298s { 2298s "name": "test_adr3", 2298s "range_address": { 2298s "from": "10.2.0.1", 2298s "to": "10.2.0.2", 2298s }, 2298s }, 2298s { 2298s "name": "test_adr4", 2298s "wildcard_address": "10.3.0.1/24", 2298s }, 2298s { 2298s "description": "test desc", 2298s "ip_prefix": "10.1.0.0/24", 2298s "name": "test_adr5", 2298s }, 2298s ], 2298s }, 2298s "advance_policy_based_routing_profile": "test_profile", 2298s "advanced_connection_tracking": { 2298s "mode": "allow-any-host", 2298s "timeout": "20", 2298s "track_all_policies_to_this_zone": True, 2298s }, 2298s "application_tracking": True, 2298s "description": "test description", 2298s "enable_reverse_reroute": True, 2298s "host_inbound_traffic": { 2298s "protocols": [ 2298s {"name": "all"}, 2298s {"except": True, "name": "bgp"}, 2298s ], 2298s "system_services": [ 2298s {"name": "all"}, 2298s {"except": True, "name": "dhcp"}, 2298s ], 2298s }, 2298s "interfaces": ["ge-0/0/3.0", "ge-0/0/4.0"], 2298s "name": "test_sec_zone1", 2298s "screen": "test_screen", 2298s "source_identity_log": True, 2298s "tcp_rst": True, 2298s "unidirectional_session_refreshing": True, 2298s }, 2298s ], 2298s }, 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_security_zones.py:218: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_security_zones.py:1997: in main 2298s result = Security_zones(module).execute_module() 2298s plugins/module_utils/network/junos/config/security_zones/security_zones.py:106: in execute_module 2298s config_xmls = self.set_config(existing_security_zones_facts) 2298s plugins/module_utils/network/junos/config/security_zones/security_zones.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/security_zones/security_zones.py:154: in set_state 2298s self.root = build_root_xml_node("security") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _______ TestJunosSecurity_zonesModule.test_junos_security_zones_rendered _______ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_security_zones_rendered(self): 2298s set_module_args( 2298s dict( 2298s config={ 2298s "functional_zone_management": { 2298s "description": "test description", 2298s "host_inbound_traffic": { 2298s "protocols": [ 2298s {"name": "all"}, 2298s {"except": True, "name": "bgp"}, 2298s ], 2298s "system_services": [ 2298s {"name": "all"}, 2298s {"except": True, "name": "dhcp"}, 2298s ], 2298s }, 2298s "interfaces": ["ge-0/0/1.0", "ge-0/0/2.0"], 2298s "screen": "test_screen", 2298s }, 2298s "zones": [ 2298s { 2298s "address_book": { 2298s "address_sets": [ 2298s { 2298s "addresses": [ 2298s "test_adr1", 2298s "test_adr2", 2298s ], 2298s "name": "test_adrset1", 2298s }, 2298s { 2298s "addresses": [ 2298s "test_adr3", 2298s "test_adr4", 2298s ], 2298s "name": "test_adrset2", 2298s }, 2298s { 2298s "address_sets": [ 2298s "test_adrset1", 2298s "test_adrset2", 2298s ], 2298s "addresses": ["test_adr5"], 2298s "description": "test description", 2298s "name": "test_adrset3", 2298s }, 2298s ], 2298s "addresses": [ 2298s { 2298s "description": "test desc", 2298s "ip_prefix": "10.0.0.0/24", 2298s "name": "test_adr1", 2298s }, 2298s { 2298s "dns_name": { 2298s "ipv6_only": True, 2298s "name": "1.1.1.1", 2298s }, 2298s "name": "test_adr2", 2298s }, 2298s { 2298s "name": "test_adr3", 2298s "range_address": { 2298s "from": "10.2.0.1", 2298s "to": "10.2.0.2", 2298s }, 2298s }, 2298s { 2298s "name": "test_adr4", 2298s "wildcard_address": "10.3.0.1/24", 2298s }, 2298s { 2298s "description": "test desc", 2298s "ip_prefix": "10.1.0.0/24", 2298s "name": "test_adr5", 2298s }, 2298s ], 2298s }, 2298s "advance_policy_based_routing_profile": "test_profile", 2298s "application_tracking": True, 2298s "description": "test description", 2298s "enable_reverse_reroute": True, 2298s "host_inbound_traffic": { 2298s "protocols": [ 2298s {"name": "all"}, 2298s {"except": True, "name": "bgp"}, 2298s ], 2298s "system_services": [ 2298s {"name": "all"}, 2298s {"except": True, "name": "dhcp"}, 2298s ], 2298s }, 2298s "interfaces": ["ge-0/0/3.0", "ge-0/0/4.0"], 2298s "name": "test_sec_zone1", 2298s "screen": "test_screen", 2298s "source_identity_log": True, 2298s "tcp_rst": True, 2298s }, 2298s ], 2298s }, 2298s state="rendered", 2298s ), 2298s ) 2298s rendered = ( 2298s 't' 2298s "est descriptionallbgpalldhcpge-0/0/1.0ge-0/0/2.0test_screentest_sec_zone1test_adr110.0.0.0/24test desctest_adr21.1.1.1test_adr310.2.0.110.2.0.2test_adr410.3.0.1/24test_adr510.1.0.0/24test desctest_adrset1test_adr1test" 2298s "_adr2test_adrset2test_adr3test_adr4test_adrset3test_adr5test_adrset1test_adrset2test descriptiontest_profiletest descriptionallbgpalldhcpge-0/0/3.0ge-0/0/4.0test_screen" 2298s ) 2298s > result = self.execute_module(changed=False) 2298s 2298s tests/unit/modules/network/junos/test_junos_security_zones.py:1114: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_security_zones.py:1997: in main 2298s result = Security_zones(module).execute_module() 2298s plugins/module_utils/network/junos/config/security_zones/security_zones.py:100: in execute_module 2298s config_xmls = self.set_config(existing_security_zones_facts) 2298s plugins/module_utils/network/junos/config/security_zones/security_zones.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/security_zones/security_zones.py:154: in set_state 2298s self.root = build_root_xml_node("security") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ____ TestJunosSecurity_zonesModule.test_junos_security_zones_overridden_01 _____ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_security_zones_overridden_01(self): 2298s set_module_args( 2298s dict( 2298s config={ 2298s "functional_zone_management": { 2298s "description": "test description 2", 2298s "host_inbound_traffic": { 2298s "protocols": [{"name": "all"}], 2298s "system_services": [{"name": "all"}], 2298s }, 2298s "interfaces": ["ge-0/0/1.0", "ge-0/0/2.0"], 2298s "screen": "test_screen", 2298s }, 2298s "zones": [ 2298s { 2298s "address_book": { 2298s "address_sets": [ 2298s { 2298s "addresses": [ 2298s "test_adr1", 2298s "test_adr2", 2298s ], 2298s "name": "test_adrset1", 2298s }, 2298s { 2298s "addresses": [ 2298s "test_adr3", 2298s "test_adr4", 2298s ], 2298s "name": "test_adrset2", 2298s }, 2298s { 2298s "address_sets": [ 2298s "test_adrset1", 2298s "test_adrset2", 2298s ], 2298s "addresses": ["test_adr5"], 2298s "description": "test description", 2298s "name": "test_adrset3", 2298s }, 2298s ], 2298s "addresses": [ 2298s { 2298s "description": "test desc", 2298s "ip_prefix": "10.0.0.0/24", 2298s "name": "test_adr1", 2298s }, 2298s { 2298s "dns_name": { 2298s "ipv6_only": True, 2298s "name": "1.1.1.1", 2298s }, 2298s "name": "test_adr2", 2298s }, 2298s { 2298s "name": "test_adr3", 2298s "range_address": { 2298s "from": "10.2.0.1", 2298s "to": "10.2.0.2", 2298s }, 2298s }, 2298s { 2298s "name": "test_adr4", 2298s "wildcard_address": "10.3.0.1/24", 2298s }, 2298s { 2298s "description": "test desc", 2298s "ip_prefix": "10.1.0.0/24", 2298s "name": "test_adr5", 2298s }, 2298s ], 2298s }, 2298s "advance_policy_based_routing_profile": "test_profile", 2298s "application_tracking": True, 2298s "description": "test description", 2298s "enable_reverse_reroute": True, 2298s "host_inbound_traffic": { 2298s "protocols": [ 2298s {"name": "all"}, 2298s {"except": True, "name": "bgp"}, 2298s ], 2298s "system_services": [ 2298s {"name": "all"}, 2298s {"except": True, "name": "dhcp"}, 2298s ], 2298s }, 2298s "interfaces": ["ge-0/0/3.0", "ge-0/0/4.0"], 2298s "name": "test_sec_zone1", 2298s "screen": "test_screen", 2298s "source_identity_log": True, 2298s "tcp_rst": True, 2298s }, 2298s ], 2298s }, 2298s state="overridden", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_security_zones.py:850: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_security_zones.py:1997: in main 2298s result = Security_zones(module).execute_module() 2298s plugins/module_utils/network/junos/config/security_zones/security_zones.py:106: in execute_module 2298s config_xmls = self.set_config(existing_security_zones_facts) 2298s plugins/module_utils/network/junos/config/security_zones/security_zones.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/security_zones/security_zones.py:154: in set_state 2298s self.root = build_root_xml_node("security") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _____ TestJunosSecurity_zonesModule.test_junos_security_zones_replaced_01 ______ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_security_zones_replaced_01(self): 2298s set_module_args( 2298s dict( 2298s config={ 2298s "functional_zone_management": { 2298s "description": "test description 2", 2298s "host_inbound_traffic": { 2298s "protocols": [{"name": "all"}], 2298s "system_services": [{"name": "all"}], 2298s }, 2298s "interfaces": ["ge-0/0/1.0", "ge-0/0/2.0"], 2298s "screen": "test_screen", 2298s }, 2298s "zones": [ 2298s { 2298s "address_book": { 2298s "address_sets": [ 2298s { 2298s "addresses": [ 2298s "test_adr1", 2298s "test_adr2", 2298s ], 2298s "name": "test_adrset1", 2298s }, 2298s { 2298s "addresses": [ 2298s "test_adr3", 2298s "test_adr4", 2298s ], 2298s "name": "test_adrset2", 2298s }, 2298s { 2298s "address_sets": [ 2298s "test_adrset1", 2298s "test_adrset2", 2298s ], 2298s "addresses": ["test_adr5"], 2298s "description": "test description", 2298s "name": "test_adrset3", 2298s }, 2298s ], 2298s "addresses": [ 2298s { 2298s "description": "test desc", 2298s "ip_prefix": "10.0.0.0/24", 2298s "name": "test_adr1", 2298s }, 2298s { 2298s "dns_name": { 2298s "ipv6_only": True, 2298s "name": "1.1.1.1", 2298s }, 2298s "name": "test_adr2", 2298s }, 2298s { 2298s "name": "test_adr3", 2298s "range_address": { 2298s "from": "10.2.0.1", 2298s "to": "10.2.0.2", 2298s }, 2298s }, 2298s { 2298s "name": "test_adr4", 2298s "wildcard_address": "10.3.0.1/24", 2298s }, 2298s { 2298s "description": "test desc", 2298s "ip_prefix": "10.1.0.0/24", 2298s "name": "test_adr5", 2298s }, 2298s ], 2298s }, 2298s "advance_policy_based_routing_profile": "test_profile", 2298s "application_tracking": True, 2298s "description": "test description", 2298s "enable_reverse_reroute": True, 2298s "host_inbound_traffic": { 2298s "protocols": [ 2298s {"name": "all"}, 2298s {"except": True, "name": "bgp"}, 2298s ], 2298s "system_services": [ 2298s {"name": "all"}, 2298s {"except": True, "name": "dhcp"}, 2298s ], 2298s }, 2298s "interfaces": ["ge-0/0/3.0", "ge-0/0/4.0"], 2298s "name": "test_sec_zone1", 2298s "screen": "test_screen", 2298s "source_identity_log": True, 2298s "tcp_rst": True, 2298s }, 2298s ], 2298s }, 2298s state="replaced", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_security_zones.py:1217: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_security_zones.py:1997: in main 2298s result = Security_zones(module).execute_module() 2298s plugins/module_utils/network/junos/config/security_zones/security_zones.py:106: in execute_module 2298s config_xmls = self.set_config(existing_security_zones_facts) 2298s plugins/module_utils/network/junos/config/security_zones/security_zones.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/security_zones/security_zones.py:154: in set_state 2298s self.root = build_root_xml_node("security") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _________ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_06 __________ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_snmp_server_merged_06(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s communities=[ 2298s dict( 2298s name="comm1", 2298s clients=[ 2298s dict(address="24.0.0.0/32", restrict=True), 2298s dict(address="30.0.0.0/32", restrict=True), 2298s ], 2298s routing_instances=[ 2298s dict( 2298s name="clv1", 2298s clients=[ 2298s dict( 2298s address="13.13.13.13/24", 2298s restrict=True, 2298s ), 2298s dict(address="24.0.0.0/32"), 2298s dict(address="30.0.0.0/32"), 2298s ], 2298s ), 2298s dict( 2298s name="clv2", 2298s clients=[dict(address="15.15.15.15/24")], 2298s ), 2298s ], 2298s ), 2298s dict(name="comm2"), 2298s ], 2298s contact="rohitthakur2590", 2298s customization=dict(ether_stats_ifd_only=True), 2298s description="Local SNMP Server", 2298s engine_id=dict( 2298s local="local1", 2298s use_default_ip_address=True, 2298s use_mac_address=True, 2298s ), 2298s filter_duplicates=True, 2298s filter_interfaces=dict( 2298s all_internal_interfaces=True, 2298s interfaces=["eth1", "eth2"], 2298s ), 2298s health_monitor=dict( 2298s falling_threshold=50, 2298s idp=True, 2298s interval=100, 2298s rising_threshold=60, 2298s ), 2298s if_count_with_filter_interfaces=True, 2298s interfaces=["eth1", "eth2", "eth3"], 2298s location="inter_lab", 2298s logical_system_trap_filter=True, 2298s name="SNMP_LAB_SERVER", 2298s nonvolatile=dict(commit_delay=30), 2298s rmon=dict( 2298s alarms=[ 2298s dict( 2298s id=4, 2298s variable="1.x.y.z", 2298s sample_type="absolute-value", 2298s rising_threshold=1020, 2298s ), 2298s dict( 2298s id=5, 2298s variable="1.x.y.z", 2298s sample_type="absolute-value", 2298s rising_threshold=1020, 2298s ), 2298s ], 2298s events=[ 2298s dict(id=100, type="log"), 2298s dict(id=200, type="log"), 2298s ], 2298s ), 2298s routing_instance_access=dict( 2298s access_lists=["clv1", "clv2"], 2298s ), 2298s subagent=dict(tcp=dict(routing_instances_default=True)), 2298s snmp_v3=dict( 2298s notify=[dict(name="not1", type="inform", tag="tag2")], 2298s notify_filter=[ 2298s dict( 2298s name="not_fil_01", 2298s oids=[dict(include=True, oid="1.a.s.b.d")], 2298s ), 2298s dict( 2298s name="not_fil_02", 2298s oids=[ 2298s dict(include=True, oid="1.x.b.b.d"), 2298s dict(include=True, oid="1.a.c.b.d"), 2298s ], 2298s ), 2298s ], 2298s snmp_community=[ 2298s dict( 2298s community_index="v3_comm1", 2298s community_name="mycommu", 2298s security_name="sec101", 2298s context="cont1", 2298s tag="109", 2298s ), 2298s dict( 2298s community_index="v3_comm2", 2298s community_name="mycomm", 2298s security_name="sec102", 2298s context="cont1", 2298s tag="109", 2298s ), 2298s ], 2298s target_addresses=[ 2298s dict( 2298s name="tar201", 2298s address="162.12.10.2", 2298s port=23122, 2298s timeout=300, 2298s retry_count=200, 2298s tag_list="tag101", 2298s address_mask="24", 2298s routing_instance="clv2", 2298s target_parameters="tarparam2", 2298s ), 2298s dict( 2298s name="tar202", 2298s address="162.12.10.2", 2298s port=23122, 2298s timeout=300, 2298s retry_count=200, 2298s tag_list="tag101", 2298s address_mask="24", 2298s routing_instance="clv2", 2298s target_parameters="tarparam2", 2298s ), 2298s ], 2298s target_parameters=[ 2298s dict( 2298s name="param111", 2298s notify_filter="not121", 2298s parameters=dict( 2298s message_processing_model="v1", 2298s security_model="v1", 2298s security_level="none", 2298s security_name="secure111", 2298s ), 2298s ), 2298s ], 2298s ), 2298s traceoptions=dict( 2298s file=dict( 2298s files=20, 2298s match="snmp_cfg", 2298s no_world_readable=True, 2298s size=20000, 2298s ), 2298s flag=dict( 2298s all=True, 2298s general=True, 2298s interface_stats=True, 2298s nonvolatile_sets=True, 2298s pdu=True, 2298s protocol_timeouts=True, 2298s routing_socket=True, 2298s subagent=True, 2298s timer=True, 2298s varbind_error=True, 2298s ), 2298s memory_trace=dict(size=1350), 2298s ), 2298s trap_groups=[ 2298s dict( 2298s name="trgrp_01", 2298s destination_port=2346, 2298s categories=dict( 2298s authentication=True, 2298s chassis=True, 2298s otn_alarms=dict( 2298s oc_lof=True, 2298s otu_uas_threshold=True, 2298s ), 2298s ), 2298s targets=["11.11.11.11", "12.12.12.12"], 2298s routing_instance="clv1", 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_snmp_server.py:616: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_snmp_server.py:1579: in main 2298s result = Snmp_server(module).execute_module() 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 2298s config_xmls = self.set_config(existing_snmp_server_facts) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __________ TestJunosSnmp_serverModule.test_junos_ntp_global_rendered ___________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_ntp_global_rendered(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s client_lists=[ 2298s dict( 2298s name="cl2", 2298s addresses=[dict(address="192.16.4.0/24")], 2298s ), 2298s ], 2298s ), 2298s state="rendered", 2298s ), 2298s ) 2298s rendered = ( 2298s 'cl2' 2298s "192.16.4.0/24" 2298s "" 2298s ) 2298s > result = self.execute_module(changed=False) 2298s 2298s tests/unit/modules/network/junos/test_junos_snmp_server.py:1082: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_snmp_server.py:1579: in main 2298s result = Snmp_server(module).execute_module() 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:98: in execute_module 2298s config_xmls = self.set_config(existing_snmp_server_facts) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _______ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_arp_01 ________ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_snmp_server_merged_arp_01(self): 2298s set_module_args( 2298s dict( 2298s config=dict(arp=dict(set=True, host_name_resolution=True)), 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_snmp_server.py:97: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_snmp_server.py:1579: in main 2298s result = Snmp_server(module).execute_module() 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 2298s config_xmls = self.set_config(existing_snmp_server_facts) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_routing_access_04 __ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_snmp_server_merged_routing_access_04(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s routing_instance_access=dict( 2298s set=True, 2298s access_lists=["clv1"], 2298s ), 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_snmp_server.py:379: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_snmp_server.py:1579: in main 2298s result = Snmp_server(module).execute_module() 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 2298s config_xmls = self.set_config(existing_snmp_server_facts) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ______ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_client_02 ______ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_snmp_server_merged_client_02(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s client_lists=[ 2298s dict( 2298s name="cl2", 2298s addresses=[dict(address="192.16.4.0/24")], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_snmp_server.py:314: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_snmp_server.py:1579: in main 2298s result = Snmp_server(module).execute_module() 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 2298s config_xmls = self.set_config(existing_snmp_server_facts) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _____ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_trap_groups _____ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_snmp_server_merged_trap_groups(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s trap_groups=[ 2298s dict( 2298s categories=dict( 2298s authentication=True, 2298s ), 2298s name="egress", 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_snmp_server.py:179: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_snmp_server.py:1579: in main 2298s result = Snmp_server(module).execute_module() 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 2298s config_xmls = self.set_config(existing_snmp_server_facts) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _____ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_clients_03 ______ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_snmp_server_merged_clients_03(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s client_lists=[ 2298s dict( 2298s name="cl3", 2298s addresses=[ 2298s dict(address="172.16.1.0/24"), 2298s dict(address="10.11.11.11", restrict=True), 2298s ], 2298s ), 2298s dict( 2298s name="cl4", 2298s addresses=[dict(address="172.16.4.0/24")], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_snmp_server.py:353: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_snmp_server.py:1579: in main 2298s result = Snmp_server(module).execute_module() 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 2298s config_xmls = self.set_config(existing_snmp_server_facts) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ___ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_trap_groups_02 ____ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_snmp_server_merged_trap_groups_02(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s trap_groups=[ 2298s dict( 2298s categories=dict( 2298s chassis=True, 2298s chassis_cluster=True, 2298s configuration=True, 2298s dot3oam_events=True, 2298s link=True, 2298s ), 2298s name="monitor", 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_snmp_server.py:213: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_snmp_server.py:1579: in main 2298s result = Snmp_server(module).execute_module() 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 2298s config_xmls = self.set_config(existing_snmp_server_facts) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ___ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_communities_05 ____ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_snmp_server_merged_communities_05(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s communities=[ 2298s dict( 2298s name="comm1", 2298s clients=[ 2298s dict(address="24.0.0.0/32", restrict=True), 2298s ], 2298s routing_instances=[ 2298s dict( 2298s name="clv1", 2298s clients=[ 2298s dict( 2298s address="13.13.13.13/24", 2298s restrict=True, 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_snmp_server.py:415: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_snmp_server.py:1579: in main 2298s result = Snmp_server(module).execute_module() 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 2298s config_xmls = self.set_config(existing_snmp_server_facts) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_trap_groups_otn_alrams _ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_snmp_server_merged_trap_groups_otn_alrams(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s trap_groups=[ 2298s dict( 2298s categories=dict( 2298s otn_alarms=dict( 2298s oc_lof=True, 2298s oc_lom=True, 2298s oc_los=True, 2298s ), 2298s ), 2298s name="monitor", 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_snmp_server.py:243: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_snmp_server.py:1579: in main 2298s result = Snmp_server(module).execute_module() 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 2298s config_xmls = self.set_config(existing_snmp_server_facts) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ____ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_trap_options _____ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_snmp_server_merged_trap_options(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s trap_options=dict( 2298s agent_address=dict( 2298s outgoing_interface=True, 2298s ), 2298s context_oid=True, 2298s ), 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_snmp_server.py:149: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_snmp_server.py:1579: in main 2298s result = Snmp_server(module).execute_module() 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 2298s config_xmls = self.set_config(existing_snmp_server_facts) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ________ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_views ________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_snmp_server_merged_views(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s views=[ 2298s dict( 2298s name="all", 2298s oids=[dict(oid=".1")], 2298s ), 2298s ], 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_snmp_server.py:121: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_snmp_server.py:1579: in main 2298s result = Snmp_server(module).execute_module() 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 2298s config_xmls = self.set_config(existing_snmp_server_facts) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ___ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_trap_options_02 ___ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_snmp_server_merged_trap_options_02(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s trap_options=dict( 2298s enterprise_oid=True, 2298s source_address=dict( 2298s address="192.168.2.0", 2298s ), 2298s ), 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_snmp_server.py:286: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_snmp_server.py:1579: in main 2298s result = Snmp_server(module).execute_module() 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 2298s config_xmls = self.set_config(existing_snmp_server_facts) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ________________ TestJunosVlansModule.test_junos_vlans_deleted _________________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_vlans_deleted(self): 2298s """ 2298s :return: 2298s """ 2298s set_module_args(dict(config=[dict(name="vlan1")], state="deleted")) 2298s 2298s commands = [ 2298s '' 2298s 'vlan1', 2298s ] 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_vlans.py:193: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_vlans.py:462: in main 2298s result = Vlans(module).execute_module() 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 2298s config_xmls = self.set_config(existing_vlans_facts) 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 2298s root = build_root_xml_node("vlans") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _______________ TestJunosVlansModule.test_junos_vlans_deleted_01 _______________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_vlans_deleted_01(self): 2298s """ 2298s :return: 2298s """ 2298s set_module_args(dict(config=[], state="deleted")) 2298s 2298s commands = [ 2298s '' 2298s 'vlan1', 2298s ] 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_vlans.py:206: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_vlans.py:462: in main 2298s result = Vlans(module).execute_module() 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 2298s config_xmls = self.set_config(existing_vlans_facts) 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 2298s root = build_root_xml_node("vlans") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_trap_options_set ___ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_snmp_server_merged_trap_options_set(self): 2298s set_module_args( 2298s dict( 2298s config=dict( 2298s trap_options=dict( 2298s set=True, 2298s ), 2298s ), 2298s state="merged", 2298s ), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_snmp_server.py:268: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_snmp_server.py:1579: in main 2298s result = Snmp_server(module).execute_module() 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 2298s config_xmls = self.set_config(existing_snmp_server_facts) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 2298s self.root = build_root_xml_node("configuration") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _________________ TestJunosVlansModule.test_junos_vlans_merged _________________ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_vlans_merged(self): 2298s set_module_args( 2298s dict( 2298s config=[dict(name="vlan2", vlan_id=2, l3_interface="irb.12")], 2298s state="merged", 2298s ), 2298s ) 2298s commands = [ 2298s '' 2298s "vlan22" 2298s "irb.12", 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_vlans.py:105: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_vlans.py:462: in main 2298s result = Vlans(module).execute_module() 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 2298s config_xmls = self.set_config(existing_vlans_facts) 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 2298s root = build_root_xml_node("vlans") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ___________ TestJunosVlansModule.test_junos_vlans_merged_idempotent ____________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_vlans_merged_idempotent(self): 2298s set_module_args( 2298s dict(config=[dict(name="vlan1", vlan_id=1)], state="merged"), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_vlans.py:112: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_vlans.py:462: in main 2298s result = Vlans(module).execute_module() 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 2298s config_xmls = self.set_config(existing_vlans_facts) 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 2298s root = build_root_xml_node("vlans") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _______________ TestJunosVlansModule.test_junos_vlans_overridden _______________ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_vlans_overridden(self): 2298s """ 2298s :return: 2298s """ 2298s set_module_args( 2298s dict( 2298s config=[dict(name="vlan3", vlan_id=3, l3_interface="irb.13")], 2298s state="overridden", 2298s ), 2298s ) 2298s 2298s commands = [ 2298s '' 2298s 'vlan1' 2298s "vlan33" 2298s "irb.13", 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_vlans.py:164: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_vlans.py:462: in main 2298s result = Vlans(module).execute_module() 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 2298s config_xmls = self.set_config(existing_vlans_facts) 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 2298s root = build_root_xml_node("vlans") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s _________ TestJunosVlansModule.test_junos_vlans_overridden_idempotent __________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_vlans_overridden_idempotent(self): 2298s set_module_args( 2298s dict(config=[dict(name="vlan1", vlan_id=1)], state="overridden"), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_vlans.py:171: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_vlans.py:462: in main 2298s result = Vlans(module).execute_module() 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 2298s config_xmls = self.set_config(existing_vlans_facts) 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 2298s root = build_root_xml_node("vlans") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ________________ TestJunosVlansModule.test_junos_vlans_rendered ________________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_vlans_rendered(self): 2298s """ 2298s :return: 2298s """ 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict(name="vlan1", vlan_id=1), 2298s dict(name="vlan2", vlan_id=2, l3_interface="irb.12"), 2298s ], 2298s state="rendered", 2298s ), 2298s ) 2298s rendered = ( 2298s '' 2298s "vlan11" 2298s "vlan22" 2298s "irb.12" 2298s ) 2298s > result = self.execute_module(changed=False) 2298s 2298s tests/unit/modules/network/junos/test_junos_vlans.py:228: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_vlans.py:462: in main 2298s result = Vlans(module).execute_module() 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:102: in execute_module 2298s config_xmls = self.set_config(existing_vlans_facts) 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 2298s root = build_root_xml_node("vlans") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s ________________ TestJunosVlansModule.test_junos_vlans_replaced ________________ 2298s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s 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/junipernetworks/junos/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/junipernetworks/junos --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/junipernetworks/junos tests/unit/modules/network/junos/test_junos_bgp_address_family.py tests/unit/modules/network/junos/test_junos_bgp_global.py tests/unit/modules/network/junos/test_junos_command.py tests/unit/modules/network/junos/test_junos_config.py tests/unit/modules/network/junos/test_junos_facts.py tests/unit/modules/network/junos/test_junos_hostname.py tests/unit/modules/network/junos/test_junos_interfaces.py tests/unit/modules/network/junos/test_junos_l2_interfaces.py tests/unit/modules/network/junos/test_junos_l3_interfaces.py tests/unit/modules/network/junos/test_junos_logging_global.py tests/unit/modules/network/junos/test_junos_netconf.py tests/unit/modules/network/junos/test_junos_ntp_global.py tests/unit/modules/network/junos/test_junos_ospf_interfaces.py tests/unit/modules/network/junos/test_junos_ospfv2.py tests/unit/modules/network/junos/test_junos_ospfv3.py tests/unit/modules/network/junos/test_junos_package.py tests/unit/modules/network/junos/test_junos_ping.py tests/unit/modules/network/junos/test_junos_prefix_lists.py tests/unit/modules/network/junos/test_junos_routing_instances.py tests/unit/modules/network/junos/test_junos_routing_options.py tests/unit/modules/network/junos/test_junos_rpc.py tests/unit/modules/network/junos/test_junos_scp.py tests/unit/modules/network/junos/test_junos_security_policies.py tests/unit/modules/network/junos/test_junos_security_policies_global.py tests/unit/modules/network/junos/test_junos_security_zones.py tests/unit/modules/network/junos/test_junos_snmp_server.py tests/unit/modules/network/junos/test_junos_vlans.py tests/unit/plugins/terminal/test_junos.py" returned exit status 1. 2298s def test_junos_vlans_replaced(self): 2298s """ 2298s :return: 2298s """ 2298s set_module_args( 2298s dict( 2298s config=[ 2298s dict(name="vlan1", vlan_id=1, l3_interface="irb.10"), 2298s dict(name="vlan2", vlan_id=2), 2298s ], 2298s state="replaced", 2298s ), 2298s ) 2298s 2298s commands = [ 2298s '' 2298s 'vlan1' 2298s 'vlan2' 2298s "vlan11" 2298s "irb.10" 2298s "vlan22", 2298s ] 2298s > result = self.execute_module(changed=True, commands=commands) 2298s 2298s tests/unit/modules/network/junos/test_junos_vlans.py:137: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_vlans.py:462: in main 2298s result = Vlans(module).execute_module() 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 2298s config_xmls = self.set_config(existing_vlans_facts) 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 2298s root = build_root_xml_node("vlans") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s __________ TestJunosVlansModule.test_junos_vlans_replaced_idempotent ___________ 2298s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2298s 2298s self = 2298s 2298s def test_junos_vlans_replaced_idempotent(self): 2298s set_module_args( 2298s dict(config=[dict(name="vlan1", vlan_id=1)], state="replaced"), 2298s ) 2298s > result = self.execute_module(changed=True) 2298s 2298s tests/unit/modules/network/junos/test_junos_vlans.py:144: 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 2298s result = self.changed(changed) 2298s tests/unit/modules/network/junos/junos_module.py:97: in changed 2298s self.module.main() 2298s plugins/modules/junos_vlans.py:462: in main 2298s result = Vlans(module).execute_module() 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 2298s config_xmls = self.set_config(existing_vlans_facts) 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 2298s resp = self.set_state(want, have) 2298s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 2298s root = build_root_xml_node("vlans") 2298s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2298s 2298s def build_root_xml_node(tag): 2298s > return new_ele(tag) 2298s E NameError: name 'new_ele' is not defined 2298s 2298s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 2298s =============================== warnings summary =============================== 2298s tests/unit/modules/network/junos/test_junos_config.py::TestJunosConfigModule::test_junos_config_confirm 2298s tests/unit/modules/network/junos/test_junos_config.py::TestJunosConfigModule::test_junos_config_lines 2298s tests/unit/modules/network/junos/test_junos_config.py::TestJunosConfigModule::test_junos_config_src_json 2298s tests/unit/modules/network/junos/test_junos_config.py::TestJunosConfigModule::test_junos_config_src_set 2298s tests/unit/modules/network/junos/test_junos_config.py::TestJunosConfigModule::test_junos_config_src_text 2298s tests/unit/modules/network/junos/test_junos_config.py::TestJunosConfigModule::test_junos_config_src_xml 2298s /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/junipernetworks/junos/plugins/modules/junos_config.py:497: FutureWarning: Truth-testing of elements was a source of confusion and will always return True in future versions. Use specific 'len(elem)' or 'elem is not None' test instead. 2298s if diff: 2298s 2298s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 2298s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/junipernetworks/junos/tests/output/junit/python3.13-controller-units.xml - 2298s =========================== short test summary info ============================ 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_001 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_002 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_002_001 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_delete 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_003 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_delete_purged 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_004 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merge_groups 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_005 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_005_001 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_advertise_bgp_static 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_advertise_external 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_006 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_bfd_liveness_detection 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_007 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_bgp_error_tolerance 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_007_001 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_bmp 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_008 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_bmp_2 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_009 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_egress_te 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_010 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_egress_te_backup_paths 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_011 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_groups_allow 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_012 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_optimal_route_reflection 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_013 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_routing_options 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_013_001 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_014 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_rendered 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_015 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_rendered_empty 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_016 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_replaced 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_017 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_replaced_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_018 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_019 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_020 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_021 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_022 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_023 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_023_001 2298s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_merged 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_024 2298s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_merged_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_overridden 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_025 2298s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_overridden_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_026 2298s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_rendered 2298s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_replaced 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_027 2298s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_replaced_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_028 2298s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_deleted_user_11 2298s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_07 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_029 2298s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_archive_01 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_030 2298s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_console_02 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_033 2298s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_files_03 2298s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_files_04 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_deleted_031 2298s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_hosts_05 2298s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_deleted_032 2298s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_hosts_idempotent_06 2298s FAILED tests/unit/modules/network/junos/test_junos_hostname.py::TestJunosHostnameModule::test_junos_hostname_merged_01 2298s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_user_08 2298s FAILED tests/unit/modules/network/junos/test_junos_hostname.py::TestJunosHostnameModule::test_junos_hostname_overridden_01 2298s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_overridden_user_10 2298s FAILED tests/unit/modules/network/junos/test_junos_hostname.py::TestJunosHostnameModule::test_junos_hostname_rendered 2298s FAILED tests/unit/modules/network/junos/test_junos_hostname.py::TestJunosHostnameModule::test_junos_hostname_replaced 2298s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_rendered_12 2298s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_delete 2298s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_replaced_user_09 2298s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_delete_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_merged 2298s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_merged_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_ntp_global.py::TestJunosNtp_globalModule::test_junos_ntp_global_merged_01 2298s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_overridden 2298s FAILED tests/unit/modules/network/junos/test_junos_ntp_global.py::TestJunosNtp_globalModule::test_junos_ntp_global_merged_02 2298s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_overridden_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_ntp_global.py::TestJunosNtp_globalModule::test_junos_ntp_global_overridden_01 2298s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_rendered 2298s FAILED tests/unit/modules/network/junos/test_junos_ntp_global.py::TestJunosNtp_globalModule::test_junos_ntp_global_rendered 2298s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_replaced 2298s FAILED tests/unit/modules/network/junos/test_junos_ntp_global.py::TestJunosNtp_globalModule::test_junos_ntp_global_replaced_01 2298s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_replaced_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_delete 2298s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_delete 2298s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_delete_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_delete_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_merged 2298s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_merged 2298s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_merged_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_merged_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_overridden 2298s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_overridden_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_overridden 2298s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_rendered 2298s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_overridden_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_replaced 2298s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_rendered 2298s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_replaced_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_replaced 2298s FAILED tests/unit/modules/network/junos/test_junos_ospfv2.py::TestJunosOspfv2Module::test_junos_ospfv2_deleted 2298s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_replaced_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_ospfv2.py::TestJunosOspfv2Module::test_junos_ospfv2_merged 2298s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_overridden_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_ospfv2.py::TestJunosOspfv2Module::test_junos_ospfv2_merged_areas 2298s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_rendered 2298s FAILED tests/unit/modules/network/junos/test_junos_ospfv2.py::TestJunosOspfv2Module::test_junos_ospfv2_overridden 2298s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_replaced 2298s FAILED tests/unit/modules/network/junos/test_junos_ospfv2.py::TestJunosOspfv2Module::test_junos_ospfv2_rendered 2298s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_replaced_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_ospfv2.py::TestJunosOspfv2Module::test_junos_ospfv2_replaced 2298s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_delete 2298s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_delete_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_merged 2298s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_domains_merged 2298s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_merged_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_overridden 2298s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_merged 2298s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_merged_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_merged_01 2298s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_overridden 2298s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_merged_idempotent_01 2298s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_overridden_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_overridden_01 2298s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_overridden_idempotent_01 2298s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_rendered 2298s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_rendered_01 2298s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_rendered_02 2298s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_replaced_01 2298s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_replaced 2298s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_replaced_idempotent_01 2298s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_replaced_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_deleted 2298s FAILED tests/unit/modules/network/junos/test_junos_routing_options.py::TestJunosRouting_optionsModule::test_junos_routing_options_merged_01 2298s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_delted_single_entry 2298s FAILED tests/unit/modules/network/junos/test_junos_routing_options.py::TestJunosRouting_optionsModule::test_junos_routing_options_merged_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_routing_options.py::TestJunosRouting_optionsModule::test_junos_routing_options_overridden 2298s FAILED tests/unit/modules/network/junos/test_junos_routing_options.py::TestJunosRouting_optionsModule::test_junos_routing_options_rendered 2298s FAILED tests/unit/modules/network/junos/test_junos_security_policies.py::TestJunosSecurity_policiesModule::test_junos_security_policies_merged_01 2298s FAILED tests/unit/modules/network/junos/test_junos_routing_options.py::TestJunosRouting_optionsModule::test_junos_routing_options_replaced_01 2298s FAILED tests/unit/modules/network/junos/test_junos_security_policies.py::TestJunosSecurity_policiesModule::test_junos_security_policies_merged_02 2298s FAILED tests/unit/modules/network/junos/test_junos_security_policies.py::TestJunosSecurity_policiesModule::test_junos_security_policies_overridden_01 2298s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_overridden_01 2298s FAILED tests/unit/modules/network/junos/test_junos_security_policies.py::TestJunosSecurity_policiesModule::test_junos_security_policies_rendered 2298s FAILED tests/unit/modules/network/junos/test_junos_security_policies.py::TestJunosSecurity_policiesModule::test_junos_security_policies_replaced_01 2298s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_merged_01 2298s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_rendered 2298s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_merged_02 2298s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_replaced_01 2298s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_merged_03 2298s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_merged_04 2298s FAILED tests/unit/modules/network/junos/test_junos_security_zones.py::TestJunosSecurity_zonesModule::test_junos_security_zones_merged_01 2298s FAILED tests/unit/modules/network/junos/test_junos_security_zones.py::TestJunosSecurity_zonesModule::test_junos_security_zones_rendered 2298s FAILED tests/unit/modules/network/junos/test_junos_security_zones.py::TestJunosSecurity_zonesModule::test_junos_security_zones_overridden_01 2298s FAILED tests/unit/modules/network/junos/test_junos_security_zones.py::TestJunosSecurity_zonesModule::test_junos_security_zones_replaced_01 2298s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_06 2298s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_ntp_global_rendered 2298s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_arp_01 2298s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_routing_access_04 2298s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_client_02 2298s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_trap_groups 2298s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_clients_03 2298s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_trap_groups_02 2298s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_communities_05 2298s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_trap_groups_otn_alrams 2298s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_trap_options 2298s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_views 2298s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_trap_options_02 2298s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_deleted 2298s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_deleted_01 2298s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_trap_options_set 2298s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_merged 2298s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_merged_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_overridden 2298s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_overridden_idempotent 2298s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_rendered 2298s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_replaced 2298s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_replaced_idempotent 2298s ================= 190 failed, 115 passed, 6 warnings in 9.81s ================== 2298s ## return code is 1 2298s 2298s 2298s 2298s ############################################################ 2298s ############################################################ 2298s #### Running FLAKY tests in ansible_collections/netapp_eseries/santricity 2298s ############################################################ 2298s ############################################################ 2298s Unit test controller with Python 3.13 2300s ============================= test session starts ============================== 2300s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 2300s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity 2300s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 2300s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0 2300s created: 2/2 workers 2300s 2 workers [0 items] 2300s 2300s 2300s ==================================== ERRORS ==================================== 2300s _______ ERROR collecting tests/unit/modules/test_na_santricity_alerts.py _______ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_alerts.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_alerts.py:7: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s ___ ERROR collecting tests/unit/modules/test_na_santricity_alerts_syslog.py ____ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_alerts_syslog.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_alerts_syslog.py:7: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s ________ ERROR collecting tests/unit/modules/test_na_santricity_asup.py ________ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_asup.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_asup.py:8: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s ______ ERROR collecting tests/unit/modules/test_na_santricity_auditlog.py ______ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_auditlog.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_auditlog.py:7: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s ________ ERROR collecting tests/unit/modules/test_na_santricity_auth.py ________ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_auth.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_auth.py:7: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s _ ERROR collecting tests/unit/modules/test_na_santricity_client_certificate.py _ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_client_certificate.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_client_certificate.py:10: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s ______ ERROR collecting tests/unit/modules/test_na_santricity_discover.py ______ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_discover.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_discover.py:9: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s ___ ERROR collecting tests/unit/modules/test_na_santricity_drive_firmware.py ___ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_drive_firmware.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_drive_firmware.py:7: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s _______ ERROR collecting tests/unit/modules/test_na_santricity_facts.py ________ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_facts.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_facts.py:9: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s ______ ERROR collecting tests/unit/modules/test_na_santricity_firmware.py ______ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_firmware.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_firmware.py:10: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s _______ ERROR collecting tests/unit/modules/test_na_santricity_global.py _______ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_global.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_global.py:9: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s ________ ERROR collecting tests/unit/modules/test_na_santricity_host.py ________ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_host.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_host.py:9: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s _____ ERROR collecting tests/unit/modules/test_na_santricity_hostgroup.py ______ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_hostgroup.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_hostgroup.py:7: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s _ ERROR collecting tests/unit/modules/test_na_santricity_ib_iser_interface.py __ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_ib_iser_interface.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_ib_iser_interface.py:9: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s __ ERROR collecting tests/unit/modules/test_na_santricity_iscsi_interface.py ___ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_iscsi_interface.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_iscsi_interface.py:9: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s ____ ERROR collecting tests/unit/modules/test_na_santricity_iscsi_target.py ____ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_iscsi_target.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_iscsi_target.py:7: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s ________ ERROR collecting tests/unit/modules/test_na_santricity_ldap.py ________ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_ldap.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_ldap.py:7: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s ____ ERROR collecting tests/unit/modules/test_na_santricity_lun_mapping.py _____ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_lun_mapping.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_lun_mapping.py:7: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s ___ ERROR collecting tests/unit/modules/test_na_santricity_mgmt_interface.py ___ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_mgmt_interface.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_mgmt_interface.py:7: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s ___ ERROR collecting tests/unit/modules/test_na_santricity_nvme_interface.py ___ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_nvme_interface.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_nvme_interface.py:7: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s _ ERROR collecting tests/unit/modules/test_na_santricity_proxy_drive_firmware_upload.py _ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_proxy_drive_firmware_upload.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_proxy_drive_firmware_upload.py:7: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s _ ERROR collecting tests/unit/modules/test_na_santricity_proxy_firmware_upload.py _ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_proxy_firmware_upload.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_proxy_firmware_upload.py:7: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s ___ ERROR collecting tests/unit/modules/test_na_santricity_proxy_systems.py ____ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_proxy_systems.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_proxy_systems.py:9: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s ____ ERROR collecting tests/unit/modules/test_na_santricity_storagepool.py _____ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_storagepool.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_storagepool.py:9: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s _______ ERROR collecting tests/unit/modules/test_na_santricity_syslog.py _______ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_syslog.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_syslog.py:7: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s _______ ERROR collecting tests/unit/modules/test_na_santricity_volume.py _______ 2300s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_volume.py'. 2300s Hint: make sure your test modules/packages have valid Python names. 2300s Traceback: 2300s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2300s return _bootstrap._gcd_import(name[level:], package, level) 2300s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2300s assertion_rewriting_hook.exec_module(module) 2300s tests/unit/modules/test_na_santricity_volume.py:9: in 2300s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 2300s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 2300s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity/tests/output/junit/python3.13-controller-units.xml - 2300s =========================== short test summary info ============================ 2300s ERROR tests/unit/modules/test_na_santricity_alerts.py 2300s ERROR tests/unit/modules/test_na_santricity_alerts_syslog.py 2300s ERROR tests/unit/modules/test_na_santricity_asup.py 2300s ERROR tests/unit/modules/test_na_santricity_auditlog.py 2300s ERROR tests/unit/modules/test_na_santricity_auth.py 2300s ERROR tests/unit/modules/test_na_santricity_client_certificate.py 2300s ERROR tests/unit/modules/test_na_santricity_discover.py 2300s ERROR tests/unit/modules/test_na_santricity_drive_firmware.py 2300s ERROR tests/unit/modules/test_na_santricity_facts.py 2300s ERROR tests/unit/modules/test_na_santricity_firmware.py 2300s ERROR tests/unit/modules/test_na_santricity_global.py 2300s ERROR tests/unit/modules/test_na_santricity_host.py 2300s ERROR tests/unit/modules/test_na_santricity_hostgroup.py 2300s ERROR tests/unit/modules/test_na_santricity_ib_iser_interface.py 2300s ERROR tests/unit/modules/test_na_santricity_iscsi_interface.py 2300s ERROR tests/unit/modules/test_na_santricity_iscsi_target.py 2300s ERROR tests/unit/modules/test_na_santricity_ldap.py 2300s ERROR tests/unit/modules/test_na_santricity_lun_mapping.py 2300s ERROR tests/unit/modules/test_na_santricity_mgmt_interface.py 2300s ERROR tests/unit/modules/test_na_santricity_nvme_interface.py 2300s ERROR tests/unit/modules/test_na_santricity_proxy_drive_firmware_upload.py 2300s ERROR tests/unit/modules/test_na_santricity_proxy_firmware_upload.py 2300s ERROR tests/unit/modules/test_na_santricity_proxy_systems.py 2300s ERROR tests/unit/modules/test_na_santricity_storagepool.py 2300s ERROR tests/unit/modules/test_na_santricity_syslog.py 2300s ERROR tests/unit/modules/test_na_santricity_volume.py 2300s ============================== 26 errors in 1.27s ============================== 2300s 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/netapp_eseries/santricity/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity tests/unit/modules/test_na_santricity_alerts.py tests/unit/modules/test_na_santricity_alerts_syslog.py tests/unit/modules/test_na_santricity_asup.py tests/unit/modules/test_na_santricity_auditlog.py tests/unit/modules/test_na_santricity_auth.py tests/unit/modules/test_na_santricity_client_certificate.py tests/unit/modules/test_na_santricity_discover.py tests/unit/modules/test_na_santricity_drive_firmware.py tests/unit/modules/test_na_santricity_facts.py tests/unit/modules/test_na_santricity_firmware.py tests/unit/modules/test_na_santricity_global.py tests/unit/modules/test_na_santricity_host.py tests/unit/modules/test_na_santricity_hostgroup.py tests/unit/modules/test_na_santricity_ib_iser_interface.py tests/unit/modules/test_na_santricity_iscsi_interface.py tests/unit/modules/test_na_santricity_iscsi_target.py tests/unit/modules/test_na_santricity_ldap.py tests/unit/modules/test_na_santricity_lun_mapping.py tests/unit/modules/test_na_santricity_mgmt_interface.py tests/unit/modules/test_na_santricity_nvme_interface.py tests/unit/modules/test_na_santricity_proxy_drive_firmware_upload.py tests/unit/modules/test_na_santricity_proxy_firmware_upload.py tests/unit/modules/test_na_santricity_proxy_systems.py tests/unit/modules/test_na_santricity_storagepool.py tests/unit/modules/test_na_santricity_syslog.py tests/unit/modules/test_na_santricity_volume.py" returned exit status 1. 2300s ## return code is 1 2300s 2300s 2300s 2300s ############################################################ 2300s ############################################################ 2300s #### Running FLAKY tests in ansible_collections/netapp/ontap 2300s ############################################################ 2300s ############################################################ 2300s Unit test modules with Python 3.13 2307s ============================= test session starts ============================== 2307s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 2307s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp/ontap 2307s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 2307s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0 2307s created: 2/2 workers 2307s 2 workers [3004 items] 2307s 2307s s.ss.sssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 2%] 2308s sssssssssssssssssssssssssssssssssssssssssssssssssss.ss.ss.s.ss.ss.ss.s.s [ 4%] 2309s s.ss.ss.s................s.s.ss.ss.ss.s.ss.s.ss.ss.s.ss.ss.s.ss.s.ss.s.s [ 7%] 2309s s.ss.s.ss.ss.ssssssssssssssssssssss.ss.ssssFs.ss.ss.s................... [ 9%] 2310s .................s.s.ss.ss.s.ss.s.ss.ss.ss.s.ss.ss.s.ss.s.ss.s.ss.s.ss.s [ 11%] 2311s ............s.ss.s.ss.s.ss.s.ss.ssssssssssssssssssssssssssssssssssss.ss. [ 14%] 2311s s.ss.ss.ss.s.ss.ss.ss.ss.s.ss.ss.ss.ss.s.ss.s.ss.s.s.ss.s.s.ss.ss.s.s.ss [ 16%] 2312s .s.ss.s.s.ss.ssssssss.ss.ss.ss.ss.ss.s.....................s.ss.ss.ss.ss [ 19%] 2313s .s.ss....ss.s.s.ss.s.ss.s.ss.s.ss.s.ss.sssssssssssssssssssssssssssssssss [ 21%] 2313s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss.s.ss. [ 23%] 2314s s.ss.s.ss.s.ss.s.s.ss.s.ss.s.sssssssssssssssssssssssssssssssssssssssssss [ 26%] 2314s ssss.s.ss.ss.sssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 28%] 2315s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 31%] 2316s sssssssssssssss.s.ss.s.ss.s.s.ss.s.ss.ssssssssssssssssssssssssssssssssss [ 33%] 2316s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 35%] 2317s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 38%] 2318s .ss.s.ss.s.s.ss.s.ss.s.s.ss.s.ss.s.ss.s.ss.s.ss.s.ss.s.s.ss.s.ss.s.s.s.s [ 40%] 2318s s.s.s.ss.s.ss.sssssssssssssssssssssssssssssssssssssssssssss.ss.ss.ss.s.s [ 43%] 2319s s.ss.sssssssssssssssssssssssssssssssssssss.ss.ss.s.ss.ss.ss.ss.ss.s.ss.s [ 45%] 2319s s.ss.ss.ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 47%] 2320s ssssssssssssssssssss.s.ss.s.s.ss.s.s.ssssssssssssssssssssssss.ss..ss.s.s [ 50%] 2321s s.s.ss.s.s.ss.s.ss.s.ss.s.ss.ss.ss.s.ss.ss.s.ss.ss.ss.s.ss.ss.s.s....... [ 52%] 2321s ....ss.s.ss.s.s.ss.ssssssssssssssssssssssssss.ss.s.ss.s.ss.s.s.ss.s.ss.s [ 55%] 2322s .ss.s.s.ssssssssssssssssssssssssssssssssssssssssssss.ss.ss.ss.ss.ss.s.ss [ 57%] 2322s .ss.ss.ss.s.ss.ss.ss.ss.s.ss.ss.ss.s.ss.ss.ss.s.ss.ss.s.ss.ss.ss.s...... [ 59%] 2323s .....................................................................ss. [ 62%] 2324s s.ss.s.ss.s.ss.s.s.s........ss.s.ss.s.ss.ss.s..........................s [ 64%] 2325s s.s.ss.ss.s.ss.s.s.ss.s.s.ss.s.ss.s.s.s.s.s.ss.s.s.ss.s.s.............s. [ 67%] 2325s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 69%] 2326s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 71%] 2326s sssssssssssssssssssssssssssssssssssssssssssssssssssssssss.ss.s.ss.ss.s.s [ 74%] 2327s s.s.ss.ss.s.ss.ss.ss.s.sssssssssssssssssssssssssssssssssssssssssssssssss [ 76%] 2327s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 79%] 2328s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 81%] 2328s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 83%] 2329s .s.ss.s.s.ss.s.ss.s.s.ss.s.............s.s.s.sssssssssssssssssssssssssss [ 86%] 2330s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 88%] 2330s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 91%] 2331s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 93%] 2331s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 95%] 2332s ssss.s.s.s......ss.ss.ssssssssssssssssssssssssssssssssssssssss.s.s.ss.s. [ 98%] 2333s s.s.ss.s.s.ss.s.sssssssss.s....s.s.sssssssssss...... [100%] 2333s =================================== FAILURES =================================== 2333s ______________________ TestMyModule.test_zapi_send_error _______________________ 2333s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2333s 2333s self = 2333s 2333s def test_zapi_send_error(self): 2333s '''Test rest send error''' 2333s data = self.mock_args() 2333s data['use_rest'] = 'Never' 2333s set_module_args(data) 2333s with pytest.raises(AnsibleFailJson) as exc: 2333s self.get_invoke_mock_object(use_rest=False).apply() 2333s msg = "Error on sending autosupport message to node %s: NetApp API failed. Reason - test:Expected error." % data['name'] 2333s > assert exc.value.args[0]['msg'] == msg 2333s E assert "Error: the p... 'netapp_lib'" == 'Error on sen...pected error.' 2333s E 2333s E - Error on sending autosupport message to node test_node: NetApp API failed. Reason - test:Expected error. 2333s E + Error: the python NetApp-Lib module is required. Import error: No module named 'netapp_lib' 2333s 2333s tests/unit/plugins/modules/test_na_ontap_autosupport_invoke.py:103: AssertionError 2333s ----------------------------- Captured stdout call ----------------------------- 2333s WARNING: Error: "message" option conflicts with Ansible internal variable - please use "autosupport_message". 2333s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp/ontap/tests/output/junit/python3.13-modules-units.xml - 2333s =========================== short test summary info ============================ 2333s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_active_directory.py: skipping as missing required netapp_lib 2333s SKIPPED [27] tests/unit/plugins/modules/test_na_ontap_cluster.py: skipping as missing required netapp_lib 2333s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_active_directory_domain_controllers.py: skipping as missing required netapp_lib 2333s SKIPPED [39] tests/unit/plugins/modules/test_na_ontap_aggregate.py: skipping as missing required netapp_lib 2333s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_cluster_ha.py: skipping as missing required netapp_lib 2333s SKIPPED [19] tests/unit/plugins/modules/test_na_ontap_cluster_peer.py: skipping as missing required netapp_lib 2333s SKIPPED [12] tests/unit/plugins/modules/test_na_ontap_command.py: skipping as missing required netapp_lib 2333s SKIPPED [15] tests/unit/plugins/modules/test_na_ontap_debug.py: skipping as missing required netapp_lib 2333s SKIPPED [9] tests/unit/plugins/modules/test_na_ontap_disks.py: skipping as missing required netapp_lib 2333s SKIPPED [17] tests/unit/plugins/modules/test_na_ontap_dns.py: skipping as missing required netapp_lib 2333s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_domain_tunnel.py: skipping as missing required netapp_lib 2333s SKIPPED [29] tests/unit/plugins/modules/test_na_ontap_efficiency_policy.py: skipping as missing required netapp_lib 2333s SKIPPED [10] tests/unit/plugins/modules/test_na_ontap_autosupport.py: skipping as missing required netapp_lib 2333s SKIPPED [32] tests/unit/plugins/modules/test_na_ontap_broadcast_domain.py: skipping as missing required netapp_lib 2333s SKIPPED [2] tests/unit/plugins/modules/test_na_ontap_cg_snapshot.py: skipping as missing required netapp_lib 2333s SKIPPED [11] tests/unit/plugins/modules/test_na_ontap_export_policy.py: skipping as missing required netapp_lib 2333s SKIPPED [18] tests/unit/plugins/modules/test_na_ontap_export_policy_rule.py: skipping as missing required netapp_lib 2333s SKIPPED [34] tests/unit/plugins/modules/test_na_ontap_cifs.py: skipping as missing required netapp_lib 2333s SKIPPED [25] tests/unit/plugins/modules/test_na_ontap_cifs_acl.py: skipping as missing required netapp_lib 2333s SKIPPED [12] tests/unit/plugins/modules/test_na_ontap_cifs_local_group.py: skipping as missing required netapp_lib 2333s SKIPPED [18] tests/unit/plugins/modules/test_na_ontap_cifs_local_group_member.py: skipping as missing required netapp_lib 2333s SKIPPED [3] tests/unit/plugins/modules/test_na_ontap_file_directory_policy.py: skipping as missing required netapp_lib 2333s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_cifs_local_user_modify.py: skipping as missing required netapp_lib 2333s SKIPPED [4] tests/unit/plugins/modules/test_na_ontap_cifs_local_user_set_password.py: skipping as missing required netapp_lib 2333s SKIPPED [16] tests/unit/plugins/modules/test_na_ontap_firewall_policy.py: skipping as missing required netapp_lib 2333s SKIPPED [40] tests/unit/plugins/modules/test_na_ontap_firmware_upgrade.py: skipping as missing required netapp_lib 2333s SKIPPED [49] tests/unit/plugins/modules/test_na_ontap_cifs_server.py: skipping as missing required netapp_lib 2333s SKIPPED [43] tests/unit/plugins/modules/test_na_ontap_flexcache.py: skipping as missing required netapp_lib 2333s SKIPPED [30] tests/unit/plugins/modules/test_na_ontap_job_schedule.py: skipping as missing required netapp_lib 2333s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_fpolicy_event.py: skipping as missing required netapp_lib 2333s SKIPPED [13] tests/unit/plugins/modules/test_na_ontap_fpolicy_ext_engine.py: skipping as missing required netapp_lib 2333s SKIPPED [12] tests/unit/plugins/modules/test_na_ontap_kerberos_realm.py: skipping as missing required netapp_lib 2333s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_fpolicy_policy.py: skipping as missing required netapp_lib 2333s SKIPPED [30] tests/unit/plugins/modules/test_na_ontap_ldap_client.py: skipping as missing required netapp_lib 2333s SKIPPED [13] tests/unit/plugins/modules/test_na_ontap_fpolicy_scope.py: skipping as missing required netapp_lib 2333s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_fpolicy_status.py: skipping as missing required netapp_lib 2333s SKIPPED [19] tests/unit/plugins/modules/test_na_ontap_license.py: skipping as missing required netapp_lib 2333s SKIPPED [27] tests/unit/plugins/modules/test_na_ontap_igroup.py: skipping as missing required netapp_lib 2333s SKIPPED [15] tests/unit/plugins/modules/test_na_ontap_license_nlf.py: skipping as missing required netapp_lib 2333s SKIPPED [17] tests/unit/plugins/modules/test_na_ontap_igroup_initiator.py: skipping as missing required netapp_lib 2333s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_log_forward.py: skipping as missing required netapp_lib 2333s SKIPPED [48] tests/unit/plugins/modules/test_na_ontap_info.py: skipping as missing required netapp_lib 2333s SKIPPED [15] tests/unit/plugins/modules/test_na_ontap_login_messages.py: skipping as missing required netapp_lib 2333s SKIPPED [13] tests/unit/plugins/modules/test_na_ontap_lun.py: skipping as missing required netapp_lib 2333s SKIPPED [20] tests/unit/plugins/modules/test_na_ontap_lun_app_rest.py: skipping as missing required netapp_lib 2333s SKIPPED [77] tests/unit/plugins/modules/test_na_ontap_interface.py: skipping as missing required netapp_lib 2333s SKIPPED [5] tests/unit/plugins/modules/test_na_ontap_lun_copy.py: skipping as missing required netapp_lib 2333s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_lun_map.py: skipping as missing required netapp_lib 2333s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_lun_map_reporting_nodes.py: skipping as missing required netapp_lib 2333s SKIPPED [12] tests/unit/plugins/modules/test_na_ontap_lun_map_rest.py: skipping as missing required netapp_lib 2333s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_ipspace.py: skipping as missing required netapp_lib 2333s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_motd.py: skipping as missing required netapp_lib 2333s SKIPPED [21] tests/unit/plugins/modules/test_na_ontap_iscsi.py: skipping as missing required netapp_lib 2333s SKIPPED [15] tests/unit/plugins/modules/test_na_ontap_name_mappings.py: skipping as missing required netapp_lib 2333s SKIPPED [11] tests/unit/plugins/modules/test_na_ontap_name_service_switch.py: skipping as missing required netapp_lib 2333s SKIPPED [4] tests/unit/plugins/modules/test_na_ontap_ndmp.py: skipping as missing required netapp_lib 2333s SKIPPED [32] tests/unit/plugins/modules/test_na_ontap_net_ifgrp.py: skipping as missing required netapp_lib 2333s SKIPPED [11] tests/unit/plugins/modules/test_na_ontap_nvme_subsystem.py: skipping as missing required netapp_lib 2333s SKIPPED [17] tests/unit/plugins/modules/test_na_ontap_net_port.py: skipping as missing required netapp_lib 2333s SKIPPED [20] tests/unit/plugins/modules/test_na_ontap_object_store.py: skipping as missing required netapp_lib 2333s SKIPPED [23] tests/unit/plugins/modules/test_na_ontap_net_routes.py: skipping as missing required netapp_lib 2333s SKIPPED [10] tests/unit/plugins/modules/test_na_ontap_partitions.py: skipping as missing required netapp_lib 2333s SKIPPED [13] tests/unit/plugins/modules/test_na_ontap_net_subnet.py: skipping as missing required netapp_lib 2333s SKIPPED [30] tests/unit/plugins/modules/test_na_ontap_ports.py: skipping as missing required netapp_lib 2333s SKIPPED [12] tests/unit/plugins/modules/test_na_ontap_nfs.py: skipping as missing required netapp_lib 2333s SKIPPED [23] tests/unit/plugins/modules/test_na_ontap_portset.py: skipping as missing required netapp_lib 2333s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_node.py: skipping as missing required netapp_lib 2333s SKIPPED [9] tests/unit/plugins/modules/test_na_ontap_ntfs_dacl.py: skipping as missing required netapp_lib 2333s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_ntfs_sd.py: skipping as missing required netapp_lib 2333s SKIPPED [16] tests/unit/plugins/modules/test_na_ontap_qos_adaptive_policy_group.py: skipping as missing required netapp_lib 2333s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_nvme.py: skipping as missing required netapp_lib 2333s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_nvme_namespace.py: skipping as missing required netapp_lib 2333s SKIPPED [39] tests/unit/plugins/modules/test_na_ontap_qos_policy_group.py: skipping as missing required netapp_lib 2333s SKIPPED [29] tests/unit/plugins/modules/test_na_ontap_qtree.py: skipping as missing required netapp_lib 2333s SKIPPED [9] tests/unit/plugins/modules/test_na_ontap_quota_policy.py: skipping as missing required netapp_lib 2333s SKIPPED [47] tests/unit/plugins/modules/test_na_ontap_quotas.py: skipping as missing required netapp_lib 2333s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_security_config.py: skipping as missing required netapp_lib 2333s SKIPPED [11] tests/unit/plugins/modules/test_na_ontap_restit.py: skipping as missing required netapp_lib 2333s SKIPPED [27] tests/unit/plugins/modules/test_na_ontap_security_key_manager.py: skipping as missing required netapp_lib 2333s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_security_ssh.py: skipping as missing required netapp_lib 2333s SKIPPED [17] tests/unit/plugins/modules/test_na_ontap_service_processor_network.py: skipping as missing required netapp_lib 2333s SKIPPED [33] tests/unit/plugins/modules/test_na_ontap_snapmirror_policy.py: skipping as missing required netapp_lib 2333s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_snaplock_clock.py: skipping as missing required netapp_lib 2333s SKIPPED [79] tests/unit/plugins/modules/test_na_ontap_snapmirror.py: skipping as missing required netapp_lib 2333s SKIPPED [19] tests/unit/plugins/modules/test_na_ontap_snapshot.py: skipping as missing required netapp_lib 2333s SKIPPED [20] tests/unit/plugins/modules/test_na_ontap_snapshot_policy.py: skipping as missing required netapp_lib 2333s SKIPPED [30] tests/unit/plugins/modules/test_na_ontap_snapshot_policy_rest.py: skipping as missing required netapp_lib 2333s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_snmp_traphosts.py: skipping as missing required netapp_lib 2333s SKIPPED [44] tests/unit/plugins/modules/test_na_ontap_software_update.py: skipping as missing required netapp_lib 2333s SKIPPED [83] tests/unit/plugins/modules/test_na_ontap_svm.py: skipping as missing required netapp_lib 2333s SKIPPED [10] tests/unit/plugins/modules/test_na_ontap_storage_auto_giveback.py: skipping as missing required netapp_lib 2333s SKIPPED [15] tests/unit/plugins/modules/test_na_ontap_storage_failover.py: skipping as missing required netapp_lib 2333s SKIPPED [2] tests/unit/plugins/modules/test_na_ontap_template.py: skipping as missing required netapp_lib 2333s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_ucadapter.py: skipping as missing required netapp_lib 2333s SKIPPED [35] tests/unit/plugins/modules/test_na_ontap_unix_group.py: skipping as missing required netapp_lib 2333s SKIPPED [39] tests/unit/plugins/modules/test_na_ontap_user.py: skipping as missing required netapp_lib 2333s SKIPPED [26] tests/unit/plugins/modules/test_na_ontap_unix_user.py: skipping as missing required netapp_lib 2333s SKIPPED [25] tests/unit/plugins/modules/test_na_ontap_user_dicts.py: skipping as missing required netapp_lib 2333s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_user_role.py: skipping as missing required netapp_lib 2333s SKIPPED [111] tests/unit/plugins/modules/test_na_ontap_volume.py: skipping as missing required netapp_lib 2333s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_volume_clone_rest.py: skipping as missing required netapp_lib 2333s SKIPPED [16] tests/unit/plugins/modules/test_na_ontap_volume_efficiency.py: skipping as missing required netapp_lib 2333s SKIPPED [20] tests/unit/plugins/modules/test_na_ontap_volume_autosize.py: skipping as missing required netapp_lib 2333s SKIPPED [94] tests/unit/plugins/modules/test_na_ontap_volume_rest.py: skipping as missing required netapp_lib 2333s SKIPPED [11] tests/unit/plugins/modules/test_na_ontap_volume_clone.py: skipping as missing required netapp_lib 2333s SKIPPED [10] tests/unit/plugins/modules/test_na_ontap_vscan.py: skipping as missing required netapp_lib 2333s SKIPPED [4] tests/unit/plugins/modules/test_na_ontap_volume_snaplock.py: skipping as missing required netapp_lib 2333s SKIPPED [21] tests/unit/plugins/modules/test_na_ontap_vscan_on_access_policy.py: skipping as missing required netapp_lib 2333s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_vscan_on_demand_task.py: skipping as missing required netapp_lib 2333s SKIPPED [9] tests/unit/plugins/modules/test_na_ontap_vscan_on_demand_task_rest.py: skipping as missing required netapp_lib 2333s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_vscan_scanner_pool.py: skipping as missing required netapp_lib 2333s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_vserver_audit.py: skipping as missing required netapp_lib 2333s SKIPPED [28] tests/unit/plugins/modules/test_na_ontap_vserver_peer.py: skipping as missing required netapp_lib 2333s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_vserver_cifs_security.py: skipping as missing required netapp_lib 2333s SKIPPED [20] tests/unit/plugins/modules/test_na_ontap_wait_for_condition.py: skipping as missing required netapp_lib 2333s SKIPPED [13] tests/unit/plugins/modules/test_na_ontap_zapit.py: skipping as missing required netapp_lib 2333s FAILED tests/unit/plugins/modules/test_na_ontap_autosupport_invoke.py::TestMyModule::test_zapi_send_error 2333s ================= 1 failed, 645 passed, 2358 skipped in 32.35s ================= 2333s 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/netapp/ontap/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp/ontap --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp/ontap tests/unit/plugins/modules/test_na_ontap_active_directory.py tests/unit/plugins/modules/test_na_ontap_active_directory_domain_controllers.py tests/unit/plugins/modules/test_na_ontap_aggregate.py tests/unit/plugins/modules/test_na_ontap_aggregate_rest.py tests/unit/plugins/modules/test_na_ontap_autosupport.py tests/unit/plugins/modules/test_na_ontap_autosupport_invoke.py tests/unit/plugins/modules/test_na_ontap_bgp_config_rest.py tests/unit/plugins/modules/test_na_ontap_bgp_peer_group.py tests/unit/plugins/modules/test_na_ontap_broadcast_domain.py tests/unit/plugins/modules/test_na_ontap_cg_snapshot.py tests/unit/plugins/modules/test_na_ontap_cg_snapshot_rest.py tests/unit/plugins/modules/test_na_ontap_cifs.py tests/unit/plugins/modules/test_na_ontap_cifs_acl.py tests/unit/plugins/modules/test_na_ontap_cifs_local_group.py tests/unit/plugins/modules/test_na_ontap_cifs_local_group_member.py tests/unit/plugins/modules/test_na_ontap_cifs_local_user.py tests/unit/plugins/modules/test_na_ontap_cifs_local_user_modify.py tests/unit/plugins/modules/test_na_ontap_cifs_local_user_set_password.py tests/unit/plugins/modules/test_na_ontap_cifs_local_user_set_password_rest.py tests/unit/plugins/modules/test_na_ontap_cifs_privileges_rest.py tests/unit/plugins/modules/test_na_ontap_cifs_server.py tests/unit/plugins/modules/test_na_ontap_cifs_unix_symlink_mapping_rest.py tests/unit/plugins/modules/test_na_ontap_cli_timeout_rest.py tests/unit/plugins/modules/test_na_ontap_cluster.py tests/unit/plugins/modules/test_na_ontap_cluster_ha.py tests/unit/plugins/modules/test_na_ontap_cluster_peer.py tests/unit/plugins/modules/test_na_ontap_command.py tests/unit/plugins/modules/test_na_ontap_debug.py tests/unit/plugins/modules/test_na_ontap_disk_options.py tests/unit/plugins/modules/test_na_ontap_disks.py tests/unit/plugins/modules/test_na_ontap_dns.py tests/unit/plugins/modules/test_na_ontap_domain_tunnel.py tests/unit/plugins/modules/test_na_ontap_efficiency_policy.py tests/unit/plugins/modules/test_na_ontap_ems_config_rest.py tests/unit/plugins/modules/test_na_ontap_ems_destination.py tests/unit/plugins/modules/test_na_ontap_ems_filter.py tests/unit/plugins/modules/test_na_ontap_export_policy.py tests/unit/plugins/modules/test_na_ontap_export_policy_rule.py tests/unit/plugins/modules/test_na_ontap_export_policy_rule_rest.py tests/unit/plugins/modules/test_na_ontap_fcp_rest.py tests/unit/plugins/modules/test_na_ontap_fdsd.py tests/unit/plugins/modules/test_na_ontap_fdsp.py tests/unit/plugins/modules/test_na_ontap_fdss.py tests/unit/plugins/modules/test_na_ontap_file_directory_policy.py tests/unit/plugins/modules/test_na_ontap_file_security_permissions.py tests/unit/plugins/modules/test_na_ontap_file_security_permissions_acl.py tests/unit/plugins/modules/test_na_ontap_firewall_policy.py tests/unit/plugins/modules/test_na_ontap_firmware_upgrade.py tests/unit/plugins/modules/test_na_ontap_flexcache.py tests/unit/plugins/modules/test_na_ontap_fpolicy_event.py tests/unit/plugins/modules/test_na_ontap_fpolicy_ext_engine.py tests/unit/plugins/modules/test_na_ontap_fpolicy_policy.py tests/unit/plugins/modules/test_na_ontap_fpolicy_scope.py tests/unit/plugins/modules/test_na_ontap_fpolicy_status.py tests/unit/plugins/modules/test_na_ontap_igroup.py tests/unit/plugins/modules/test_na_ontap_igroup_initiator.py tests/unit/plugins/modules/test_na_ontap_info.py tests/unit/plugins/modules/test_na_ontap_interface.py tests/unit/plugins/modules/test_na_ontap_ipspace.py tests/unit/plugins/modules/test_na_ontap_iscsi.py tests/unit/plugins/modules/test_na_ontap_iscsi_security.py tests/unit/plugins/modules/test_na_ontap_job_schedule.py tests/unit/plugins/modules/test_na_ontap_kerberos_interface.py tests/unit/plugins/modules/test_na_ontap_kerberos_realm.py tests/unit/plugins/modules/test_na_ontap_ldap_client.py tests/unit/plugins/modules/test_na_ontap_license.py tests/unit/plugins/modules/test_na_ontap_license_nlf.py tests/unit/plugins/modules/test_na_ontap_local_hosts.py tests/unit/plugins/modules/test_na_ontap_log_forward.py tests/unit/plugins/modules/test_na_ontap_login_messages.py tests/unit/plugins/modules/test_na_ontap_lun.py tests/unit/plugins/modules/test_na_ontap_lun_app_rest.py tests/unit/plugins/modules/test_na_ontap_lun_copy.py tests/unit/plugins/modules/test_na_ontap_lun_map.py tests/unit/plugins/modules/test_na_ontap_lun_map_reporting_nodes.py tests/unit/plugins/modules/test_na_ontap_lun_map_rest.py tests/unit/plugins/modules/test_na_ontap_lun_rest.py tests/unit/plugins/modules/test_na_ontap_mcc_mediator.py tests/unit/plugins/modules/test_na_ontap_metrocluster.py tests/unit/plugins/modules/test_na_ontap_metrocluster_dr_group.py tests/unit/plugins/modules/test_na_ontap_motd.py tests/unit/plugins/modules/test_na_ontap_name_mappings.py tests/unit/plugins/modules/test_na_ontap_name_service_switch.py tests/unit/plugins/modules/test_na_ontap_ndmp.py tests/unit/plugins/modules/test_na_ontap_net_ifgrp.py tests/unit/plugins/modules/test_na_ontap_net_port.py tests/unit/plugins/modules/test_na_ontap_net_routes.py tests/unit/plugins/modules/test_na_ontap_net_subnet.py tests/unit/plugins/modules/test_na_ontap_net_vlan.py tests/unit/plugins/modules/test_na_ontap_nfs.py tests/unit/plugins/modules/test_na_ontap_nfs_rest.py tests/unit/plugins/modules/test_na_ontap_node.py tests/unit/plugins/modules/test_na_ontap_ntfs_dacl.py tests/unit/plugins/modules/test_na_ontap_ntfs_sd.py tests/unit/plugins/modules/test_na_ontap_ntp.py tests/unit/plugins/modules/test_na_ontap_ntp_key.py tests/unit/plugins/modules/test_na_ontap_nvme.py tests/unit/plugins/modules/test_na_ontap_nvme_namespace.py tests/unit/plugins/modules/test_na_ontap_nvme_namespace_rest.py tests/unit/plugins/modules/test_na_ontap_nvme_rest.py tests/unit/plugins/modules/test_na_ontap_nvme_subsystem.py tests/unit/plugins/modules/test_na_ontap_nvme_subsystem_rest.py tests/unit/plugins/modules/test_na_ontap_object_store.py tests/unit/plugins/modules/test_na_ontap_partitions.py tests/unit/plugins/modules/test_na_ontap_ports.py tests/unit/plugins/modules/test_na_ontap_portset.py tests/unit/plugins/modules/test_na_ontap_publickey.py tests/unit/plugins/modules/test_na_ontap_qos_adaptive_policy_group.py tests/unit/plugins/modules/test_na_ontap_qos_policy_group.py tests/unit/plugins/modules/test_na_ontap_qtree.py tests/unit/plugins/modules/test_na_ontap_quota_policy.py tests/unit/plugins/modules/test_na_ontap_quotas.py tests/unit/plugins/modules/test_na_ontap_rest_cli.py tests/unit/plugins/modules/test_na_ontap_rest_info.py tests/unit/plugins/modules/test_na_ontap_restit.py tests/unit/plugins/modules/test_na_ontap_s3_buckets.py tests/unit/plugins/modules/test_na_ontap_s3_groups.py tests/unit/plugins/modules/test_na_ontap_s3_policies.py tests/unit/plugins/modules/test_na_ontap_s3_services.py tests/unit/plugins/modules/test_na_ontap_s3_users.py tests/unit/plugins/modules/test_na_ontap_security_certificates.py tests/unit/plugins/modules/test_na_ontap_security_config.py tests/unit/plugins/modules/test_na_ontap_security_ipsec_ca_certificate.py tests/unit/plugins/modules/test_na_ontap_security_ipsec_config.py tests/unit/plugins/modules/test_na_ontap_security_ipsec_policy.py tests/unit/plugins/modules/test_na_ontap_security_key_manager.py tests/unit/plugins/modules/test_na_ontap_security_ssh.py tests/unit/plugins/modules/test_na_ontap_service_policy.py tests/unit/plugins/modules/test_na_ontap_service_processor_network.py tests/unit/plugins/modules/test_na_ontap_snaplock_clock.py tests/unit/plugins/modules/test_na_ontap_snapmirror.py tests/unit/plugins/modules/test_na_ontap_snapmirror_policy.py tests/unit/plugins/modules/test_na_ontap_snapshot.py tests/unit/plugins/modules/test_na_ontap_snapshot_policy.py tests/unit/plugins/modules/test_na_ontap_snapshot_policy_rest.py tests/unit/plugins/modules/test_na_ontap_snmp.py tests/unit/plugins/modules/test_na_ontap_snmp_config_rest.py tests/unit/plugins/modules/test_na_ontap_snmp_traphosts.py tests/unit/plugins/modules/test_na_ontap_software_update.py tests/unit/plugins/modules/test_na_ontap_storage_auto_giveback.py tests/unit/plugins/modules/test_na_ontap_storage_failover.py tests/unit/plugins/modules/test_na_ontap_svm.py tests/unit/plugins/modules/test_na_ontap_template.py tests/unit/plugins/modules/test_na_ontap_ucadapter.py tests/unit/plugins/modules/test_na_ontap_unix_group.py tests/unit/plugins/modules/test_na_ontap_unix_user.py tests/unit/plugins/modules/test_na_ontap_user.py tests/unit/plugins/modules/test_na_ontap_user_dicts.py tests/unit/plugins/modules/test_na_ontap_user_role.py tests/unit/plugins/modules/test_na_ontap_user_role_rest.py tests/unit/plugins/modules/test_na_ontap_volume.py tests/unit/plugins/modules/test_na_ontap_volume_autosize.py tests/unit/plugins/modules/test_na_ontap_volume_clone.py tests/unit/plugins/modules/test_na_ontap_volume_clone_rest.py tests/unit/plugins/modules/test_na_ontap_volume_efficiency.py tests/unit/plugins/modules/test_na_ontap_volume_rest.py tests/unit/plugins/modules/test_na_ontap_volume_snaplock.py tests/unit/plugins/modules/test_na_ontap_vscan.py tests/unit/plugins/modules/test_na_ontap_vscan_on_access_policy.py tests/unit/plugins/modules/test_na_ontap_vscan_on_demand_task.py tests/unit/plugins/modules/test_na_ontap_vscan_on_demand_task_rest.py tests/unit/plugins/modules/test_na_ontap_vscan_scanner_pool.py tests/unit/plugins/modules/test_na_ontap_vscan_scanner_pool_rest.py tests/unit/plugins/modules/test_na_ontap_vserver_audit.py tests/unit/plugins/modules/test_na_ontap_vserver_cifs_security.py tests/unit/plugins/modules/test_na_ontap_vserver_peer.py tests/unit/plugins/modules/test_na_ontap_vserver_peer_permissions.py tests/unit/plugins/modules/test_na_ontap_wait_for_condition.py tests/unit/plugins/modules/test_na_ontap_wwpn_alias.py tests/unit/plugins/modules/test_na_ontap_zapit.py tests/unit/plugins/modules/test_ontap_fdspt.py" returned exit status 1. 2333s ## return code is 1 2333s 2333s 2333s 2333s ############################################################ 2333s ############################################################ 2333s #### Running FLAKY tests in ansible_collections/ngine_io/cloudstack 2333s ############################################################ 2333s ############################################################ 2333s Unit test controller with Python 3.13 2334s ============================= test session starts ============================== 2334s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 2334s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ngine_io/cloudstack 2334s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 2334s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0 2334s created: 2/2 workers 2334s 2 workers [0 items] 2334s 2334s 2334s ==================================== ERRORS ==================================== 2334s _________ ERROR collecting tests/unit/modules/test_cs_traffic_type.py __________ 2334s ImportError while importing test module '/tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ngine_io/cloudstack/tests/unit/modules/test_cs_traffic_type.py'. 2334s Hint: make sure your test modules/packages have valid Python names. 2334s Traceback: 2334s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 2334s return _bootstrap._gcd_import(name[level:], package, level) 2334s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 2334s assertion_rewriting_hook.exec_module(module) 2334s tests/unit/modules/test_cs_traffic_type.py:4: in 2334s from units.compat import unittest 2334s E ModuleNotFoundError: No module named 'units' 2334s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ngine_io/cloudstack/tests/output/junit/python3.13-controller-units.xml - 2334s =========================== short test summary info ============================ 2334s ERROR tests/unit/modules/test_cs_traffic_type.py 2334s =============================== 1 error in 0.47s =============================== 2334s 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/ngine_io/cloudstack/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ngine_io/cloudstack --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ngine_io/cloudstack tests/unit/modules/test_cs_traffic_type.py" returned exit status 1. 2334s ## return code is 1 2334s 2334s 2334s 2334s ############################################################ 2334s ############################################################ 2334s #### Running FLAKY tests in ansible_collections/sensu/sensu_go 2334s ############################################################ 2334s ############################################################ 2334s Unit test modules with Python 3.13 2336s ============================= test session starts ============================== 2336s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 2336s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/sensu/sensu_go 2336s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 2336s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0 2336s created: 2/2 workers 2336s 2 workers [346 items] 2336s 2337s ........................................................................ [ 20%] 2338s ............................................................F........... [ 41%] 2338s ........................................................................ [ 62%] 2339s ........................................................................ [ 83%] 2340s .......................................................... [100%] 2340s =================================== FAILURES =================================== 2340s _ TestDatastoreParams.test_parameters_datastore[my_resource-absent--None-None-None-None-None-None-False-True-expected_payload2] _ 2340s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2340s 2340s self = 2340s mocker = 2340s name = 'my_resource', state = 'absent', dsn = '', pool_size = None 2340s max_conn_lifetime = None, max_idle_conns = None, batch_workers = None 2340s batch_buffer = None, batch_size = None, enable_round_robin = False 2340s strict = True 2340s expected_payload = {'api_version': 'store/v1', 'metadata': {'name': 'my_resource'}, 'spec': {'dsn': '', 'enable_round_robin': False, 'strict': True}, 'type': 'PostgresConfig'} 2340s 2340s @pytest.mark.parametrize( 2340s # name ... Resource name 2340s # state ... Prefered resource state (Present/Absent) 2340s # dsn ... url or postgre connection string 2340s # pool_size ... max number of connections 2340s # max_conn_lifetime ... max time a connection can persist 2340s # max_idle_conns ... max number of idle connections 2340s # batch_workers ... number of GOroutines 2340s # batch_buffer ... max requests to buffer in memory 2340s # batch_size ... number of requests in each transaction 2340s # enable_round_robin ... round robin (True/False) 2340s # strict ... strict (True/False) 2340s # expected_payload ... expected payload 2340s ("name", "state", "dsn", "pool_size", "max_conn_lifetime", "max_idle_conns", "batch_workers", 2340s "batch_buffer", "batch_size", "enable_round_robin", "strict", "expected_payload"), 2340s [ 2340s # Present 2340s ("my_resource", "present", "postgresql://user:secret@host:port/dbname", 2, 1, 1, 1, 1, 1, 2340s False, True, 2340s {'type': 'PostgresConfig', 'api_version': 'store/v1', 'metadata': {'name': 'my_resource'}, 2340s 'spec': 2340s { 2340s 'dsn': 'postgresql://user:secret@host:port/dbname', 'pool_size': 2, 'max_conn_lifetime': '1', 2340s 'max_idle_conns': 1, 'batch_workers': 1, 'batch_buffer': 1, 'batch_size': 1, 2340s 'enable_round_robin': False, 'strict': True}}), 2340s 2340s ("another_resource", "present", "postgresql://user:secret@host:port/dbname", 0, 0, 0, 0, 0, 0, 2340s False, False, 2340s {'type': 'PostgresConfig', 'api_version': 'store/v1', 'metadata': {'name': 'another_resource'}, 2340s 'spec': 2340s { 2340s 'dsn': 'postgresql://user:secret@host:port/dbname', 'pool_size': 0, 'max_conn_lifetime': '0', 2340s 'max_idle_conns': 0, 'batch_workers': 0, 'batch_buffer': 0, 'batch_size': 0, 2340s 'enable_round_robin': False, 'strict': False}}), 2340s # Absent 2340s ("my_resource", "absent", "", None, None, None, None, None, None, 2340s False, True, 2340s {'type': 'PostgresConfig', 'api_version': 'store/v1', 'metadata': {'name': 'my_resource'}, 2340s 'spec': 2340s { 2340s 'dsn': '', 'enable_round_robin': False, 'strict': True}}), 2340s 2340s ("my_resource", "absent", "postgresql://user:secret@host:port/dbname", 2, 1, 1, 1, 2, 3, 2340s False, True, 2340s {'type': 'PostgresConfig', 'api_version': 'store/v1', 'metadata': {'name': 'my_resource'}, 2340s 'spec': 2340s { 2340s 'dsn': 'postgresql://user:secret@host:port/dbname', 'pool_size': 2, 'max_conn_lifetime': '1', 2340s 'max_idle_conns': 1, 'batch_workers': 1, 'batch_buffer': 2, 'batch_size': 3, 2340s 'enable_round_robin': False, 'strict': True}}), 2340s ], 2340s ) 2340s def test_parameters_datastore(self, mocker, name, state, dsn, pool_size, max_conn_lifetime, max_idle_conns, batch_workers, 2340s batch_buffer, batch_size, enable_round_robin, strict, expected_payload): 2340s sync_mock = mocker.patch.object(datastore, "sync") 2340s sync_mock.return_value = True, {} 2340s set_module_args( 2340s name=name, 2340s dsn=dsn, 2340s state=state, 2340s pool_size=pool_size, 2340s max_conn_lifetime=max_conn_lifetime, 2340s max_idle_conns=max_idle_conns, 2340s batch_workers=batch_workers, 2340s batch_buffer=batch_buffer, 2340s batch_size=batch_size, 2340s enable_round_robin=enable_round_robin, 2340s strict=strict, 2340s ) 2340s with pytest.raises(AnsibleExitJson): 2340s > datastore.main() 2340s 2340s tests/unit/plugins/modules/test_datastore.py:343: 2340s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2340s plugins/modules/datastore.py:184: in main 2340s module = AnsibleModule( 2340s /tmp/ansible-test-6d58c7mr/ansible/module_utils/basic.py:445: in __init__ 2340s self.fail_json(msg=msg) 2340s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2340s 2340s args = (,) 2340s kwargs = {'failed': True, 'msg': 'argument \'pool_size\' is of type and we were unable to convert to int: "None" cannot be converted to an int'} 2340s 2340s def fail_json(*args, **kwargs): 2340s kwargs['failed'] = True 2340s > raise AnsibleFailJson(kwargs) 2340s E ansible_collections.sensu.sensu_go.tests.unit.plugins.modules.common.utils.AnsibleFailJson: {'msg': 'argument \'pool_size\' is of type and we were unable to convert to int: "None" cannot be converted to an int', 'failed': True} 2340s 2340s tests/unit/plugins/modules/common/utils.py:38: AnsibleFailJson 2340s =============================== warnings summary =============================== 2340s tests/unit/plugins/modules/test_user.py::TestUpdatePassword::test_password_is_invalid_older_than_5_21_0 2340s /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/sensu/sensu_go/tests/unit/plugins/modules/test_user.py:39: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. 2340s client.version = version.StrictVersion("5.20.2") 2340s 2340s tests/unit/plugins/modules/test_user.py::TestUpdatePasswordHash::test_sensu_go_older_than_5_21_0[False] 2340s tests/unit/plugins/modules/test_user.py::TestUpdatePasswordHash::test_sensu_go_older_than_5_21_0[True] 2340s /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/sensu/sensu_go/tests/unit/plugins/modules/test_user.py:120: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. 2340s client.version = version.StrictVersion("5.20.0") 2340s 2340s tests/unit/plugins/modules/test_user.py::TestUpdatePasswordHash::test_sensu_go_newer_than_5_21_0 2340s /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/sensu/sensu_go/tests/unit/plugins/modules/test_user.py:129: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. 2340s client.version = version.StrictVersion("5.21.0") 2340s 2340s tests/unit/plugins/modules/test_user.py::TestUpdatePasswordHash::test_sensu_go_newer_than_5_21_0_check_mode 2340s /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/sensu/sensu_go/tests/unit/plugins/modules/test_user.py:146: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. 2340s client.version = version.StrictVersion("5.21.0") 2340s 2340s tests/unit/plugins/modules/test_user.py::TestUpdatePassword::test_password_is_invalid_5_21_0_or_newer 2340s /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/sensu/sensu_go/tests/unit/plugins/modules/test_user.py:53: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. 2340s client.version = version.StrictVersion("5.21.0") 2340s 2340s tests/unit/plugins/modules/test_user.py::TestUpdatePassword::test_missing_bcrypt_library[True-False-True] 2340s tests/unit/plugins/modules/test_user.py::TestUpdatePassword::test_missing_bcrypt_library[False-True-None] 2340s /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/sensu/sensu_go/tests/unit/plugins/modules/test_user.py:105: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. 2340s client.version = version.StrictVersion("5.21.1") 2340s 2340s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 2340s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/sensu/sensu_go/tests/output/junit/python3.13-modules-units.xml - 2340s =========================== short test summary info ============================ 2340s FAILED tests/unit/plugins/modules/test_datastore.py::TestDatastoreParams::test_parameters_datastore[my_resource-absent--None-None-None-None-None-None-False-True-expected_payload2] 2340s ================== 1 failed, 345 passed, 8 warnings in 5.06s =================== 2340s 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/sensu/sensu_go/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/sensu/sensu_go --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/sensu/sensu_go tests/unit/plugins/modules/test_ad_auth_provider.py tests/unit/plugins/modules/test_asset.py tests/unit/plugins/modules/test_asset_info.py tests/unit/plugins/modules/test_auth_provider_info.py tests/unit/plugins/modules/test_bonsai_asset.py tests/unit/plugins/modules/test_check.py tests/unit/plugins/modules/test_check_info.py tests/unit/plugins/modules/test_cluster.py tests/unit/plugins/modules/test_cluster_info.py tests/unit/plugins/modules/test_cluster_role.py tests/unit/plugins/modules/test_cluster_role_binding.py tests/unit/plugins/modules/test_cluster_role_binding_info.py tests/unit/plugins/modules/test_cluster_role_info.py tests/unit/plugins/modules/test_datastore.py tests/unit/plugins/modules/test_datastore_info.py tests/unit/plugins/modules/test_entity.py tests/unit/plugins/modules/test_entity_info.py tests/unit/plugins/modules/test_etcd_replicator.py tests/unit/plugins/modules/test_etcd_replicator_info.py tests/unit/plugins/modules/test_event.py tests/unit/plugins/modules/test_event_info.py tests/unit/plugins/modules/test_filter.py tests/unit/plugins/modules/test_filter_info.py tests/unit/plugins/modules/test_handler_set.py tests/unit/plugins/modules/test_hook.py tests/unit/plugins/modules/test_hook_info.py tests/unit/plugins/modules/test_ldap_auth_provider.py tests/unit/plugins/modules/test_mutator.py tests/unit/plugins/modules/test_mutator_info.py tests/unit/plugins/modules/test_namespace.py tests/unit/plugins/modules/test_namespace_info.py tests/unit/plugins/modules/test_oidc_auth_provider.py tests/unit/plugins/modules/test_pipe_handler.py tests/unit/plugins/modules/test_pipe_handler_info.py tests/unit/plugins/modules/test_pipeline.py tests/unit/plugins/modules/test_pipeline_info.py tests/unit/plugins/modules/test_role.py tests/unit/plugins/modules/test_role_binding.py tests/unit/plugins/modules/test_role_binding_info.py tests/unit/plugins/modules/test_role_info.py tests/unit/plugins/modules/test_secret.py tests/unit/plugins/modules/test_secret_info.py tests/unit/plugins/modules/test_secrets_provider_env.py tests/unit/plugins/modules/test_secrets_provider_info.py tests/unit/plugins/modules/test_secrets_provider_vault.py tests/unit/plugins/modules/test_silence.py tests/unit/plugins/modules/test_silence_info.py tests/unit/plugins/modules/test_socket_handler.py tests/unit/plugins/modules/test_tessen.py tests/unit/plugins/modules/test_user.py tests/unit/plugins/modules/test_user_info.py" returned exit status 1. 2340s ## return code is 1 2340s 2340s 2340s 2340s ############################################################ 2340s ############################################################ 2340s #### Running FLAKY tests in ansible_collections/splunk/es 2340s ############################################################ 2340s ############################################################ 2340s Unit test controller with Python 3.13 2341s ============================= test session starts ============================== 2341s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 2341s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/splunk/es 2341s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 2341s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0 2341s created: 2/2 workers 2341s 2 workers [31 items] 2341s 2342s ..............F................ [100%] 2342s =================================== FAILURES =================================== 2342s _ TestSplunkEsCorrelationSearches.test_es_correlation_searches_replaced_idempotent _ 2342s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2342s 2342s self = 2342s conn = 2342s monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0xe91364620510> 2342s 2342s @patch("ansible.module_utils.connection.Connection.__rpc__") 2342s def test_es_correlation_searches_replaced_idempotent( 2342s self, 2342s conn, 2342s monkeypatch, 2342s ): 2342s self._plugin._connection.socket_path = tempfile.NamedTemporaryFile().name 2342s self._plugin._connection._shell = MagicMock() 2342s 2342s def create_update(self, rest_path, data=None): 2342s return RESPONSE_PAYLOAD 2342s 2342s def get_by_path(self, path): 2342s return RESPONSE_PAYLOAD 2342s 2342s def delete_by_path(self, path): 2342s return {} 2342s 2342s monkeypatch.setattr(SplunkRequest, "create_update", create_update) 2342s monkeypatch.setattr(SplunkRequest, "get_by_path", get_by_path) 2342s monkeypatch.setattr(SplunkRequest, "delete_by_path", delete_by_path) 2342s 2342s self._plugin._task.args = { 2342s "state": "replaced", 2342s "config": [REQUEST_PAYLOAD[0]], 2342s } 2342s result = self._plugin.run(task_vars=self._task_vars) 2342s 2342s > assert result["changed"] is True 2342s E assert False is True 2342s 2342s tests/unit/plugins/action/test_es_correlation_searches.py:309: AssertionError 2342s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/splunk/es/tests/output/junit/python3.13-controller-units.xml - 2342s =========================== short test summary info ============================ 2342s FAILED tests/unit/plugins/action/test_es_correlation_searches.py::TestSplunkEsCorrelationSearches::test_es_correlation_searches_replaced_idempotent 2342s ========================= 1 failed, 30 passed in 1.36s ========================= 2342s 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/splunk/es/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/splunk/es --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/splunk/es tests/unit/plugins/action/test_es_adaptive_response_notable_events.py tests/unit/plugins/action/test_es_correlation_searches.py tests/unit/plugins/action/test_es_data_inputs_monitors.py tests/unit/plugins/action/test_es_data_inputs_network.py" returned exit status 1. 2342s ## return code is 1 2342s 2342s 2342s 2342s ############################################################ 2342s ############################################################ 2342s #### Running FLAKY tests in ansible_collections/vmware/vmware 2342s ############################################################ 2342s ############################################################ 2342s Unit test modules with Python 3.13 2343s ============================= test session starts ============================== 2343s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 2343s rootdir: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/vmware/vmware 2343s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 2343s plugins: typeguard-4.4.2, forked-1.6.0, xdist-3.6.1, mock-3.14.0 2343s created: 2/2 workers 2343s 2 workers [18 items] 2343s 2345s ............FF...F [100%] 2345s =================================== FAILURES =================================== 2345s ____________________ TestModuleRestBase.test_get_vm_by_name ____________________ 2345s 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/vmware/vmware/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/vmware/vmware --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/vmware/vmware tests/unit/plugins/modules/test_appliance_info.py tests/unit/plugins/modules/test_cluster.py tests/unit/plugins/modules/test_cluster_info.py tests/unit/plugins/modules/test_cluster_vcls.py tests/unit/plugins/modules/test_content_library_item_info.py tests/unit/plugins/modules/test_esxi_maintenance_mode.py tests/unit/plugins/modules/test_guest_info.py tests/unit/plugins/modules/test_license_info.py tests/unit/plugins/modules/test_utils_module_pyvmomi_base.py tests/unit/plugins/modules/test_utils_module_rest_base.py tests/unit/plugins/modules/test_utils_pyvmomi_client.py tests/unit/plugins/modules/test_utils_rest_client.py tests/unit/plugins/modules/test_vm_list_group_by_clusters_info.py" returned exit status 1. 2345s autopkgtest [16:09:01]: test unit-tests-flaky.py: -----------------------] 2345s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2345s 2345s self = 2345s mocker = 2345s 2345s def test_get_vm_by_name(self, mocker): 2345s > self.__prepare(mocker) 2345s 2345s tests/unit/plugins/modules/test_utils_module_rest_base.py:21: 2345s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2345s tests/unit/plugins/modules/test_utils_module_rest_base.py:16: in __prepare 2345s self.base = ModuleRestBase( 2345s plugins/module_utils/_module_rest_base.py:29: in __init__ 2345s super().__init__(connection_params=module.params) 2345s plugins/module_utils/clients/_rest.py:48: in __init__ 2345s self.check_requirements() 2345s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2345s 2345s self = 2345s 2345s def check_requirements(self): 2345s """ 2345s Check all requirements for this client are satisfied 2345s """ 2345s if REQUESTS_IMP_ERR: 2345s raise MissingLibError('requests', REQUESTS_IMP_ERR) 2345s if VSPHERE_IMP_ERR: 2345s > raise MissingLibError( 2345s 'vSphere Automation SDK', VSPHERE_IMP_ERR, 2345s url='https://code.vmware.com/web/sdk/7.0/vsphere-automation-python' 2345s ) 2345s E ansible_collections.vmware.vmware.plugins.module_utils.clients._errors.MissingLibError: Failed to import the required Python library (vSphere Automation SDK) on autopkgtest's Python /usr/bin/python3. See https://code.vmware.com/web/sdk/7.0/vsphere-automation-python for more info. Please read the module documentation and install it in the appropriate location. If the required library is installed, but Ansible is using the wrong Python interpreter, please consult the documentation on ansible_python_interpreter 2345s 2345s plugins/module_utils/clients/_rest.py:65: MissingLibError 2345s _______________ TestModuleRestBase.test_get_content_library_ids ________________ 2345s [gw0] linux -- Python 3.13.3 /usr/bin/python3 2345s 2345s self = 2345s mocker = 2345s 2345s def test_get_content_library_ids(self, mocker): 2345s > self.__prepare(mocker) 2345s 2345s tests/unit/plugins/modules/test_utils_module_rest_base.py:29: 2345s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2345s tests/unit/plugins/modules/test_utils_module_rest_base.py:16: in __prepare 2345s self.base = ModuleRestBase( 2345s plugins/module_utils/_module_rest_base.py:29: in __init__ 2345s super().__init__(connection_params=module.params) 2345s plugins/module_utils/clients/_rest.py:48: in __init__ 2345s self.check_requirements() 2345s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2345s 2345s self = 2345s 2345s def check_requirements(self): 2345s """ 2345s Check all requirements for this client are satisfied 2345s """ 2345s if REQUESTS_IMP_ERR: 2345s raise MissingLibError('requests', REQUESTS_IMP_ERR) 2345s if VSPHERE_IMP_ERR: 2345s > raise MissingLibError( 2345s 'vSphere Automation SDK', VSPHERE_IMP_ERR, 2345s url='https://code.vmware.com/web/sdk/7.0/vsphere-automation-python' 2345s ) 2345s E ansible_collections.vmware.vmware.plugins.module_utils.clients._errors.MissingLibError: Failed to import the required Python library (vSphere Automation SDK) on autopkgtest's Python /usr/bin/python3. See https://code.vmware.com/web/sdk/7.0/vsphere-automation-python for more info. Please read the module documentation and install it in the appropriate location. If the required library is installed, but Ansible is using the wrong Python interpreter, please consult the documentation on ansible_python_interpreter 2345s 2345s plugins/module_utils/clients/_rest.py:65: MissingLibError 2345s _____________________ TestRestClient.test_get_tags_by_moid _____________________ 2345s [gw1] linux -- Python 3.13.3 /usr/bin/python3 2345s 2345s self = 2345s mocker = 2345s 2345s def test_get_tags_by_moid(self, mocker): 2345s > self.__prepare(mocker) 2345s 2345s tests/unit/plugins/modules/test_utils_rest_client.py:21: 2345s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2345s tests/unit/plugins/modules/test_utils_rest_client.py:10: in __prepare 2345s client_mock = mocker.patch('ansible_collections.vmware.vmware.plugins.module_utils.clients._rest.create_vsphere_client') 2345s /usr/lib/python3/dist-packages/pytest_mock/plugin.py:440: in __call__ 2345s return self._start_patch( 2345s /usr/lib/python3/dist-packages/pytest_mock/plugin.py:258: in _start_patch 2345s mocked: MockType = p.start() 2345s /usr/lib/python3.13/unittest/mock.py:1654: in start 2345s result = self.__enter__() 2345s /usr/lib/python3.13/unittest/mock.py:1497: in __enter__ 2345s original, local = self.get_original() 2345s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 2345s 2345s self = 2345s 2345s def get_original(self): 2345s target = self.getter() 2345s name = self.attribute 2345s 2345s original = DEFAULT 2345s local = False 2345s 2345s try: 2345s original = target.__dict__[name] 2345s except (AttributeError, KeyError): 2345s original = getattr(target, name, DEFAULT) 2345s else: 2345s local = True 2345s 2345s if name in _builtins and isinstance(target, ModuleType): 2345s self.create = True 2345s 2345s if not self.create and original is DEFAULT: 2345s > raise AttributeError( 2345s "%s does not have the attribute %r" % (target, name) 2345s ) 2345s E AttributeError: does not have the attribute 'create_vsphere_client' 2345s 2345s /usr/lib/python3.13/unittest/mock.py:1467: AttributeError 2345s =============================== warnings summary =============================== 2345s tests/unit/plugins/modules/test_utils_pyvmomi_client.py::TestPyvmomiClient::test_get_all_objs_by_type 2345s /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/vmware/vmware/plugins/module_utils/clients/_pyvmomi.py:130: DeprecationWarning: ssl.PROTOCOL_TLS is deprecated 2345s ssl_context = ssl.SSLContext(ssl.PROTOCOL_SSLv23) 2345s 2345s tests/unit/plugins/modules/test_utils_pyvmomi_client.py::TestPyvmomiClient::test_class_init 2345s /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/vmware/vmware/plugins/module_utils/clients/_pyvmomi.py:125: DeprecationWarning: ssl.PROTOCOL_TLS is deprecated 2345s ssl_context = ssl.SSLContext(ssl.PROTOCOL_SSLv23) 2345s 2345s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 2345s - generated xml file: /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/vmware/vmware/tests/output/junit/python3.13-modules-units.xml - 2345s =========================== short test summary info ============================ 2345s FAILED tests/unit/plugins/modules/test_utils_module_rest_base.py::TestModuleRestBase::test_get_vm_by_name 2345s FAILED tests/unit/plugins/modules/test_utils_module_rest_base.py::TestModuleRestBase::test_get_content_library_ids 2345s FAILED tests/unit/plugins/modules/test_utils_rest_client.py::TestRestClient::test_get_tags_by_moid 2345s =================== 3 failed, 15 passed, 2 warnings in 1.29s =================== 2345s ## return code is 1 2345s ############################################################ 2345s ############################################################ 2345s #### failed tests are: 2345s #### ansible_collections/ansible/utils 2345s #### ansible_collections/cisco/aci 2345s #### ansible_collections/cisco/dnac 2345s #### ansible_collections/community/dns 2345s #### ansible_collections/community/general 2345s #### ansible_collections/community/hrobot 2345s #### ansible_collections/community/library_inventory_filtering_v1 2345s #### ansible_collections/infoblox/nios_modules 2345s #### ansible_collections/junipernetworks/junos 2345s #### ansible_collections/netapp_eseries/santricity 2345s #### ansible_collections/netapp/ontap 2345s #### ansible_collections/ngine_io/cloudstack 2345s #### ansible_collections/sensu/sensu_go 2345s #### ansible_collections/splunk/es 2345s #### ansible_collections/vmware/vmware 2345s ############################################################ 2345s ############################################################ 2347s unit-tests-flaky.py FLAKY non-zero exit status 1 2347s autopkgtest [16:09:04]: test unit-tests-flaky.py: - - - - - - - - - - results - - - - - - - - - - 2347s autopkgtest [16:09:04]: test unit-tests-flaky.py: - - - - - - - - - - stderr - - - - - - - - - - 2347s 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. 2347s 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. 2347s 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/dnac/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/dnac --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/cisco/dnac tests/unit/modules/dnac/test_accesspoint_workflow_manager.py tests/unit/modules/dnac/test_device_credential_workflow_manager.py tests/unit/modules/dnac/test_discovery_intent.py tests/unit/modules/dnac/test_inventory_workflow_manager.py tests/unit/modules/dnac/test_network_compliance_workflow_manager.py tests/unit/modules/dnac/test_network_settings_workflow_manager.py tests/unit/modules/dnac/test_pnp_intent.py tests/unit/modules/dnac/test_pnp_workflow_manager.py tests/unit/modules/dnac/test_provision_workflow_manager.py tests/unit/modules/dnac/test_rma_workflow_manager.py tests/unit/modules/dnac/test_site_intent.py tests/unit/modules/dnac/test_site_workflow_manager.py tests/unit/modules/dnac/test_swim_intent.py tests/unit/modules/dnac/test_swim_workflow_manager.py tests/unit/modules/dnac/test_template_intent.py tests/unit/modules/dnac/test_user_role_workflow_manager.py" returned exit status 1. 2347s 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/community/dns/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/dns --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/dns tests/unit/plugins/modules/test_hetzner_dns_record.py tests/unit/plugins/modules/test_hetzner_dns_record_info.py tests/unit/plugins/modules/test_hetzner_dns_record_set.py tests/unit/plugins/modules/test_hetzner_dns_record_set_info.py tests/unit/plugins/modules/test_hetzner_dns_record_sets.py tests/unit/plugins/modules/test_hetzner_dns_zone_info.py tests/unit/plugins/modules/test_hosttech_dns_record.py tests/unit/plugins/modules/test_hosttech_dns_record_info.py tests/unit/plugins/modules/test_hosttech_dns_record_set.py tests/unit/plugins/modules/test_hosttech_dns_record_set_info.py tests/unit/plugins/modules/test_hosttech_dns_record_sets.py tests/unit/plugins/modules/test_hosttech_dns_zone_info.py tests/unit/plugins/modules/test_nameserver_info.py tests/unit/plugins/modules/test_nameserver_record_info.py tests/unit/plugins/modules/test_wait_for_txt.py" returned exit status 1. 2347s 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/community/general/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/general --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/general tests/unit/plugins/modules/interfaces_file/test_interfaces_file.py tests/unit/plugins/modules/test_alerta_customer.py tests/unit/plugins/modules/test_apache2_module.py tests/unit/plugins/modules/test_apk.py tests/unit/plugins/modules/test_archive.py tests/unit/plugins/modules/test_bitbucket_access_key.py tests/unit/plugins/modules/test_bitbucket_pipeline_key_pair.py tests/unit/plugins/modules/test_bitbucket_pipeline_known_host.py tests/unit/plugins/modules/test_bitbucket_pipeline_variable.py tests/unit/plugins/modules/test_bootc_manage.py tests/unit/plugins/modules/test_campfire.py tests/unit/plugins/modules/test_circonus_annotation.py tests/unit/plugins/modules/test_cpanm.py tests/unit/plugins/modules/test_datadog_downtime.py tests/unit/plugins/modules/test_dconf.py tests/unit/plugins/modules/test_discord.py tests/unit/plugins/modules/test_django_check.py tests/unit/plugins/modules/test_django_command.py tests/unit/plugins/modules/test_django_createcachetable.py tests/unit/plugins/modules/test_dnf_config_manager.py tests/unit/plugins/modules/test_dnsimple.py tests/unit/plugins/modules/test_dnsimple_info.py tests/unit/plugins/modules/test_facter_facts.py tests/unit/plugins/modules/test_gconftool2.py tests/unit/plugins/modules/test_gconftool2_info.py tests/unit/plugins/modules/test_gem.py tests/unit/plugins/modules/test_gio_mime.py tests/unit/plugins/modules/test_github_repo.py tests/unit/plugins/modules/test_gitlab_deploy_key.py tests/unit/plugins/modules/test_gitlab_group.py tests/unit/plugins/modules/test_gitlab_group_access_token.py tests/unit/plugins/modules/test_gitlab_hook.py tests/unit/plugins/modules/test_gitlab_project.py tests/unit/plugins/modules/test_gitlab_project_access_token.py tests/unit/plugins/modules/test_gitlab_protected_branch.py tests/unit/plugins/modules/test_gitlab_runner.py tests/unit/plugins/modules/test_gitlab_user.py tests/unit/plugins/modules/test_homebrew.py tests/unit/plugins/modules/test_homebrew_cask.py tests/unit/plugins/modules/test_icinga2_feature.py tests/unit/plugins/modules/test_ini_file.py tests/unit/plugins/modules/test_ipa_getkeytab.py tests/unit/plugins/modules/test_ipa_otpconfig.py tests/unit/plugins/modules/test_ipa_otptoken.py tests/unit/plugins/modules/test_ipa_pwpolicy.py tests/unit/plugins/modules/test_ipbase.py tests/unit/plugins/modules/test_java_keystore.py tests/unit/plugins/modules/test_jenkins_build.py tests/unit/plugins/modules/test_jenkins_build_info.py tests/unit/plugins/modules/test_jenkins_node.py tests/unit/plugins/modules/test_jenkins_plugin.py tests/unit/plugins/modules/test_keycloak_authentication.py tests/unit/plugins/modules/test_keycloak_authentication_required_actions.py tests/unit/plugins/modules/test_keycloak_client.py tests/unit/plugins/modules/test_keycloak_client_rolemapping.py tests/unit/plugins/modules/test_keycloak_clientscope.py tests/unit/plugins/modules/test_keycloak_component.py tests/unit/plugins/modules/test_keycloak_identity_provider.py tests/unit/plugins/modules/test_keycloak_realm.py tests/unit/plugins/modules/test_keycloak_realm_info.py tests/unit/plugins/modules/test_keycloak_realm_keys.py tests/unit/plugins/modules/test_keycloak_realm_keys_metadata_info.py tests/unit/plugins/modules/test_keycloak_role.py tests/unit/plugins/modules/test_keycloak_user.py tests/unit/plugins/modules/test_keycloak_user_federation.py tests/unit/plugins/modules/test_keycloak_userprofile.py tests/unit/plugins/modules/test_krb_ticket.py tests/unit/plugins/modules/test_linode.py tests/unit/plugins/modules/test_linode_v4.py tests/unit/plugins/modules/test_lvg_rename.py tests/unit/plugins/modules/test_lxca_cmms.py tests/unit/plugins/modules/test_lxca_nodes.py tests/unit/plugins/modules/test_macports.py tests/unit/plugins/modules/test_maven_artifact.py tests/unit/plugins/modules/test_modprobe.py tests/unit/plugins/modules/test_monit.py tests/unit/plugins/modules/test_nmcli.py tests/unit/plugins/modules/test_nomad_token.py tests/unit/plugins/modules/test_npm.py tests/unit/plugins/modules/test_ocapi_command.py tests/unit/plugins/modules/test_ocapi_info.py tests/unit/plugins/modules/test_one_vm.py tests/unit/plugins/modules/test_oneview_datacenter_info.py tests/unit/plugins/modules/test_oneview_enclosure_info.py tests/unit/plugins/modules/test_oneview_ethernet_network.py tests/unit/plugins/modules/test_oneview_ethernet_network_info.py tests/unit/plugins/modules/test_oneview_fc_network.py tests/unit/plugins/modules/test_oneview_fc_network_info.py tests/unit/plugins/modules/test_oneview_fcoe_network.py tests/unit/plugins/modules/test_oneview_fcoe_network_info.py tests/unit/plugins/modules/test_oneview_logical_interconnect_group.py tests/unit/plugins/modules/test_oneview_logical_interconnect_group_info.py tests/unit/plugins/modules/test_oneview_network_set.py tests/unit/plugins/modules/test_oneview_network_set_info.py tests/unit/plugins/modules/test_oneview_san_manager.py tests/unit/plugins/modules/test_oneview_san_manager_info.py tests/unit/plugins/modules/test_opkg.py tests/unit/plugins/modules/test_pacman.py tests/unit/plugins/modules/test_pacman_key.py tests/unit/plugins/modules/test_pagerduty.py tests/unit/plugins/modules/test_pagerduty_alert.py tests/unit/plugins/modules/test_pagerduty_change.py tests/unit/plugins/modules/test_pamd.py tests/unit/plugins/modules/test_parted.py tests/unit/plugins/modules/test_pkgin.py tests/unit/plugins/modules/test_pmem.py tests/unit/plugins/modules/test_pritunl_org.py tests/unit/plugins/modules/test_pritunl_org_info.py tests/unit/plugins/modules/test_pritunl_user.py tests/unit/plugins/modules/test_pritunl_user_info.py tests/unit/plugins/modules/test_proxmox_backup.py tests/unit/plugins/modules/test_proxmox_backup_info.py tests/unit/plugins/modules/test_proxmox_kvm.py tests/unit/plugins/modules/test_proxmox_snap.py tests/unit/plugins/modules/test_proxmox_storage_contents_info.py tests/unit/plugins/modules/test_proxmox_tasks_info.py tests/unit/plugins/modules/test_proxmox_template.py tests/unit/plugins/modules/test_proxmox_vm_info.py tests/unit/plugins/modules/test_puppet.py tests/unit/plugins/modules/test_redhat_subscription.py tests/unit/plugins/modules/test_redis_data.py tests/unit/plugins/modules/test_redis_data_incr.py tests/unit/plugins/modules/test_redis_data_info.py tests/unit/plugins/modules/test_redis_info.py tests/unit/plugins/modules/test_rhsm_release.py tests/unit/plugins/modules/test_rhsm_repository.py tests/unit/plugins/modules/test_rpm_ostree_pkg.py tests/unit/plugins/modules/test_scaleway_compute_private_network.py tests/unit/plugins/modules/test_scaleway_private_network.py tests/unit/plugins/modules/test_simpleinit_msb.py tests/unit/plugins/modules/test_slack.py tests/unit/plugins/modules/test_snap.py tests/unit/plugins/modules/test_solaris_zone.py tests/unit/plugins/modules/test_ss_3par_cpg.py tests/unit/plugins/modules/test_statsd.py tests/unit/plugins/modules/test_sysupgrade.py tests/unit/plugins/modules/test_terraform.py tests/unit/plugins/modules/test_ufw.py tests/unit/plugins/modules/test_usb_facts.py tests/unit/plugins/modules/test_wdc_redfish_command.py tests/unit/plugins/modules/test_wdc_redfish_info.py tests/unit/plugins/modules/test_xcc_redfish_command.py tests/unit/plugins/modules/test_xenserver_guest_info.py tests/unit/plugins/modules/test_xenserver_guest_powerstate.py tests/unit/plugins/modules/test_xfconf.py tests/unit/plugins/modules/test_xfconf_info.py" returned exit status 1. 2347s 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/community/hrobot/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hrobot --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/hrobot tests/unit/plugins/modules/test_boot.py tests/unit/plugins/modules/test_failover_ip.py tests/unit/plugins/modules/test_failover_ip_info.py tests/unit/plugins/modules/test_firewall.py tests/unit/plugins/modules/test_firewall_info.py tests/unit/plugins/modules/test_reset.py tests/unit/plugins/modules/test_reverse_dns.py tests/unit/plugins/modules/test_server.py tests/unit/plugins/modules/test_server_info.py tests/unit/plugins/modules/test_ssh_key.py tests/unit/plugins/modules/test_ssh_key_info.py tests/unit/plugins/modules/test_storagebox.py tests/unit/plugins/modules/test_storagebox_info.py tests/unit/plugins/modules/test_storagebox_set_password.py tests/unit/plugins/modules/test_storagebox_snapshot_plan.py tests/unit/plugins/modules/test_storagebox_snapshot_plan_info.py tests/unit/plugins/modules/test_v_switch.py" returned exit status 1. 2347s 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/community/library_inventory_filtering_v1/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/library_inventory_filtering_v1 --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/community/library_inventory_filtering_v1 tests/unit/plugins/plugin_utils/test_inventory_filter.py" returned exit status 1. 2347s 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/infoblox/nios_modules/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/infoblox/nios_modules --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/infoblox/nios_modules tests/unit/plugins/modules/test_extensible_attribute.py tests/unit/plugins/modules/test_nios_a_record.py tests/unit/plugins/modules/test_nios_aaaa_record.py tests/unit/plugins/modules/test_nios_cname_record.py tests/unit/plugins/modules/test_nios_dns_view.py tests/unit/plugins/modules/test_nios_dtc_monitor_http.py tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py tests/unit/plugins/modules/test_nios_dtc_topology.py tests/unit/plugins/modules/test_nios_fixed_address.py tests/unit/plugins/modules/test_nios_host_record.py tests/unit/plugins/modules/test_nios_member.py tests/unit/plugins/modules/test_nios_module.py tests/unit/plugins/modules/test_nios_mx_record.py tests/unit/plugins/modules/test_nios_naptr_record.py tests/unit/plugins/modules/test_nios_network.py tests/unit/plugins/modules/test_nios_network_view.py tests/unit/plugins/modules/test_nios_nsgroup.py tests/unit/plugins/modules/test_nios_ptr_record.py tests/unit/plugins/modules/test_nios_srv_record.py tests/unit/plugins/modules/test_nios_zone.py" returned exit status 1. 2347s 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/junipernetworks/junos/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/junipernetworks/junos --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/junipernetworks/junos tests/unit/modules/network/junos/test_junos_bgp_address_family.py tests/unit/modules/network/junos/test_junos_bgp_global.py tests/unit/modules/network/junos/test_junos_command.py tests/unit/modules/network/junos/test_junos_config.py tests/unit/modules/network/junos/test_junos_facts.py tests/unit/modules/network/junos/test_junos_hostname.py tests/unit/modules/network/junos/test_junos_interfaces.py tests/unit/modules/network/junos/test_junos_l2_interfaces.py tests/unit/modules/network/junos/test_junos_l3_interfaces.py tests/unit/modules/network/junos/test_junos_logging_global.py tests/unit/modules/network/junos/test_junos_netconf.py tests/unit/modules/network/junos/test_junos_ntp_global.py tests/unit/modules/network/junos/test_junos_ospf_interfaces.py tests/unit/modules/network/junos/test_junos_ospfv2.py tests/unit/modules/network/junos/test_junos_ospfv3.py tests/unit/modules/network/junos/test_junos_package.py tests/unit/modules/network/junos/test_junos_ping.py tests/unit/modules/network/junos/test_junos_prefix_lists.py tests/unit/modules/network/junos/test_junos_routing_instances.py tests/unit/modules/network/junos/test_junos_routing_options.py tests/unit/modules/network/junos/test_junos_rpc.py tests/unit/modules/network/junos/test_junos_scp.py tests/unit/modules/network/junos/test_junos_security_policies.py tests/unit/modules/network/junos/test_junos_security_policies_global.py tests/unit/modules/network/junos/test_junos_security_zones.py tests/unit/modules/network/junos/test_junos_snmp_server.py tests/unit/modules/network/junos/test_junos_vlans.py tests/unit/plugins/terminal/test_junos.py" returned exit status 1. 2347s 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/netapp_eseries/santricity/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp_eseries/santricity tests/unit/modules/test_na_santricity_alerts.py tests/unit/modules/test_na_santricity_alerts_syslog.py tests/unit/modules/test_na_santricity_asup.py tests/unit/modules/test_na_santricity_auditlog.py tests/unit/modules/test_na_santricity_auth.py tests/unit/modules/test_na_santricity_client_certificate.py tests/unit/modules/test_na_santricity_discover.py tests/unit/modules/test_na_santricity_drive_firmware.py tests/unit/modules/test_na_santricity_facts.py tests/unit/modules/test_na_santricity_firmware.py tests/unit/modules/test_na_santricity_global.py tests/unit/modules/test_na_santricity_host.py tests/unit/modules/test_na_santricity_hostgroup.py tests/unit/modules/test_na_santricity_ib_iser_interface.py tests/unit/modules/test_na_santricity_iscsi_interface.py tests/unit/modules/test_na_santricity_iscsi_target.py tests/unit/modules/test_na_santricity_ldap.py tests/unit/modules/test_na_santricity_lun_mapping.py tests/unit/modules/test_na_santricity_mgmt_interface.py tests/unit/modules/test_na_santricity_nvme_interface.py tests/unit/modules/test_na_santricity_proxy_drive_firmware_upload.py tests/unit/modules/test_na_santricity_proxy_firmware_upload.py tests/unit/modules/test_na_santricity_proxy_systems.py tests/unit/modules/test_na_santricity_storagepool.py tests/unit/modules/test_na_santricity_syslog.py tests/unit/modules/test_na_santricity_volume.py" returned exit status 1. 2347s 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/netapp/ontap/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp/ontap --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/netapp/ontap tests/unit/plugins/modules/test_na_ontap_active_directory.py tests/unit/plugins/modules/test_na_ontap_active_directory_domain_controllers.py tests/unit/plugins/modules/test_na_ontap_aggregate.py tests/unit/plugins/modules/test_na_ontap_aggregate_rest.py tests/unit/plugins/modules/test_na_ontap_autosupport.py tests/unit/plugins/modules/test_na_ontap_autosupport_invoke.py tests/unit/plugins/modules/test_na_ontap_bgp_config_rest.py tests/unit/plugins/modules/test_na_ontap_bgp_peer_group.py tests/unit/plugins/modules/test_na_ontap_broadcast_domain.py tests/unit/plugins/modules/test_na_ontap_cg_snapshot.py tests/unit/plugins/modules/test_na_ontap_cg_snapshot_rest.py tests/unit/plugins/modules/test_na_ontap_cifs.py tests/unit/plugins/modules/test_na_ontap_cifs_acl.py tests/unit/plugins/modules/test_na_ontap_cifs_local_group.py tests/unit/plugins/modules/test_na_ontap_cifs_local_group_member.py tests/unit/plugins/modules/test_na_ontap_cifs_local_user.py tests/unit/plugins/modules/test_na_ontap_cifs_local_user_modify.py tests/unit/plugins/modules/test_na_ontap_cifs_local_user_set_password.py tests/unit/plugins/modules/test_na_ontap_cifs_local_user_set_password_rest.py tests/unit/plugins/modules/test_na_ontap_cifs_privileges_rest.py tests/unit/plugins/modules/test_na_ontap_cifs_server.py tests/unit/plugins/modules/test_na_ontap_cifs_unix_symlink_mapping_rest.py tests/unit/plugins/modules/test_na_ontap_cli_timeout_rest.py tests/unit/plugins/modules/test_na_ontap_cluster.py tests/unit/plugins/modules/test_na_ontap_cluster_ha.py tests/unit/plugins/modules/test_na_ontap_cluster_peer.py tests/unit/plugins/modules/test_na_ontap_command.py tests/unit/plugins/modules/test_na_ontap_debug.py tests/unit/plugins/modules/test_na_ontap_disk_options.py tests/unit/plugins/modules/test_na_ontap_disks.py tests/unit/plugins/modules/test_na_ontap_dns.py tests/unit/plugins/modules/test_na_ontap_domain_tunnel.py tests/unit/plugins/modules/test_na_ontap_efficiency_policy.py tests/unit/plugins/modules/test_na_ontap_ems_config_rest.py tests/unit/plugins/modules/test_na_ontap_ems_destination.py tests/unit/plugins/modules/test_na_ontap_ems_filter.py tests/unit/plugins/modules/test_na_ontap_export_policy.py tests/unit/plugins/modules/test_na_ontap_export_policy_rule.py tests/unit/plugins/modules/test_na_ontap_export_policy_rule_rest.py tests/unit/plugins/modules/test_na_ontap_fcp_rest.py tests/unit/plugins/modules/test_na_ontap_fdsd.py tests/unit/plugins/modules/test_na_ontap_fdsp.py tests/unit/plugins/modules/test_na_ontap_fdss.py tests/unit/plugins/modules/test_na_ontap_file_directory_policy.py tests/unit/plugins/modules/test_na_ontap_file_security_permissions.py tests/unit/plugins/modules/test_na_ontap_file_security_permissions_acl.py tests/unit/plugins/modules/test_na_ontap_firewall_policy.py tests/unit/plugins/modules/test_na_ontap_firmware_upgrade.py tests/unit/plugins/modules/test_na_ontap_flexcache.py tests/unit/plugins/modules/test_na_ontap_fpolicy_event.py tests/unit/plugins/modules/test_na_ontap_fpolicy_ext_engine.py tests/unit/plugins/modules/test_na_ontap_fpolicy_policy.py tests/unit/plugins/modules/test_na_ontap_fpolicy_scope.py tests/unit/plugins/modules/test_na_ontap_fpolicy_status.py tests/unit/plugins/modules/test_na_ontap_igroup.py tests/unit/plugins/modules/test_na_ontap_igroup_initiator.py tests/unit/plugins/modules/test_na_ontap_info.py tests/unit/plugins/modules/test_na_ontap_interface.py tests/unit/plugins/modules/test_na_ontap_ipspace.py tests/unit/plugins/modules/test_na_ontap_iscsi.py tests/unit/plugins/modules/test_na_ontap_iscsi_security.py tests/unit/plugins/modules/test_na_ontap_job_schedule.py tests/unit/plugins/modules/test_na_ontap_kerberos_interface.py tests/unit/plugins/modules/test_na_ontap_kerberos_realm.py tests/unit/plugins/modules/test_na_ontap_ldap_client.py tests/unit/plugins/modules/test_na_ontap_license.py tests/unit/plugins/modules/test_na_ontap_license_nlf.py tests/unit/plugins/modules/test_na_ontap_local_hosts.py tests/unit/plugins/modules/test_na_ontap_log_forward.py tests/unit/plugins/modules/test_na_ontap_login_messages.py tests/unit/plugins/modules/test_na_ontap_lun.py tests/unit/plugins/modules/test_na_ontap_lun_app_rest.py tests/unit/plugins/modules/test_na_ontap_lun_copy.py tests/unit/plugins/modules/test_na_ontap_lun_map.py tests/unit/plugins/modules/test_na_ontap_lun_map_reporting_nodes.py tests/unit/plugins/modules/test_na_ontap_lun_map_rest.py tests/unit/plugins/modules/test_na_ontap_lun_rest.py tests/unit/plugins/modules/test_na_ontap_mcc_mediator.py tests/unit/plugins/modules/test_na_ontap_metrocluster.py tests/unit/plugins/modules/test_na_ontap_metrocluster_dr_group.py tests/unit/plugins/modules/test_na_ontap_motd.py tests/unit/plugins/modules/test_na_ontap_name_mappings.py tests/unit/plugins/modules/test_na_ontap_name_service_switch.py tests/unit/plugins/modules/test_na_ontap_ndmp.py tests/unit/plugins/modules/test_na_ontap_net_ifgrp.py tests/unit/plugins/modules/test_na_ontap_net_port.py tests/unit/plugins/modules/test_na_ontap_net_routes.py tests/unit/plugins/modules/test_na_ontap_net_subnet.py tests/unit/plugins/modules/test_na_ontap_net_vlan.py tests/unit/plugins/modules/test_na_ontap_nfs.py tests/unit/plugins/modules/test_na_ontap_nfs_rest.py tests/unit/plugins/modules/test_na_ontap_node.py tests/unit/plugins/modules/test_na_ontap_ntfs_dacl.py tests/unit/plugins/modules/test_na_ontap_ntfs_sd.py tests/unit/plugins/modules/test_na_ontap_ntp.py tests/unit/plugins/modules/test_na_ontap_ntp_key.py tests/unit/plugins/modules/test_na_ontap_nvme.py tests/unit/plugins/modules/test_na_ontap_nvme_namespace.py tests/unit/plugins/modules/test_na_ontap_nvme_namespace_rest.py tests/unit/plugins/modules/test_na_ontap_nvme_rest.py tests/unit/plugins/modules/test_na_ontap_nvme_subsystem.py tests/unit/plugins/modules/test_na_ontap_nvme_subsystem_rest.py tests/unit/plugins/modules/test_na_ontap_object_store.py tests/unit/plugins/modules/test_na_ontap_partitions.py tests/unit/plugins/modules/test_na_ontap_ports.py tests/unit/plugins/modules/test_na_ontap_portset.py tests/unit/plugins/modules/test_na_ontap_publickey.py tests/unit/plugins/modules/test_na_ontap_qos_adaptive_policy_group.py tests/unit/plugins/modules/test_na_ontap_qos_policy_group.py tests/unit/plugins/modules/test_na_ontap_qtree.py tests/unit/plugins/modules/test_na_ontap_quota_policy.py tests/unit/plugins/modules/test_na_ontap_quotas.py tests/unit/plugins/modules/test_na_ontap_rest_cli.py tests/unit/plugins/modules/test_na_ontap_rest_info.py tests/unit/plugins/modules/test_na_ontap_restit.py tests/unit/plugins/modules/test_na_ontap_s3_buckets.py tests/unit/plugins/modules/test_na_ontap_s3_groups.py tests/unit/plugins/modules/test_na_ontap_s3_policies.py tests/unit/plugins/modules/test_na_ontap_s3_services.py tests/unit/plugins/modules/test_na_ontap_s3_users.py tests/unit/plugins/modules/test_na_ontap_security_certificates.py tests/unit/plugins/modules/test_na_ontap_security_config.py tests/unit/plugins/modules/test_na_ontap_security_ipsec_ca_certificate.py tests/unit/plugins/modules/test_na_ontap_security_ipsec_config.py tests/unit/plugins/modules/test_na_ontap_security_ipsec_policy.py tests/unit/plugins/modules/test_na_ontap_security_key_manager.py tests/unit/plugins/modules/test_na_ontap_security_ssh.py tests/unit/plugins/modules/test_na_ontap_service_policy.py tests/unit/plugins/modules/test_na_ontap_service_processor_network.py tests/unit/plugins/modules/test_na_ontap_snaplock_clock.py tests/unit/plugins/modules/test_na_ontap_snapmirror.py tests/unit/plugins/modules/test_na_ontap_snapmirror_policy.py tests/unit/plugins/modules/test_na_ontap_snapshot.py tests/unit/plugins/modules/test_na_ontap_snapshot_policy.py tests/unit/plugins/modules/test_na_ontap_snapshot_policy_rest.py tests/unit/plugins/modules/test_na_ontap_snmp.py tests/unit/plugins/modules/test_na_ontap_snmp_config_rest.py tests/unit/plugins/modules/test_na_ontap_snmp_traphosts.py tests/unit/plugins/modules/test_na_ontap_software_update.py tests/unit/plugins/modules/test_na_ontap_storage_auto_giveback.py tests/unit/plugins/modules/test_na_ontap_storage_failover.py tests/unit/plugins/modules/test_na_ontap_svm.py tests/unit/plugins/modules/test_na_ontap_template.py tests/unit/plugins/modules/test_na_ontap_ucadapter.py tests/unit/plugins/modules/test_na_ontap_unix_group.py tests/unit/plugins/modules/test_na_ontap_unix_user.py tests/unit/plugins/modules/test_na_ontap_user.py tests/unit/plugins/modules/test_na_ontap_user_dicts.py tests/unit/plugins/modules/test_na_ontap_user_role.py tests/unit/plugins/modules/test_na_ontap_user_role_rest.py tests/unit/plugins/modules/test_na_ontap_volume.py tests/unit/plugins/modules/test_na_ontap_volume_autosize.py tests/unit/plugins/modules/test_na_ontap_volume_clone.py tests/unit/plugins/modules/test_na_ontap_volume_clone_rest.py tests/unit/plugins/modules/test_na_ontap_volume_efficiency.py tests/unit/plugins/modules/test_na_ontap_volume_rest.py tests/unit/plugins/modules/test_na_ontap_volume_snaplock.py tests/unit/plugins/modules/test_na_ontap_vscan.py tests/unit/plugins/modules/test_na_ontap_vscan_on_access_policy.py tests/unit/plugins/modules/test_na_ontap_vscan_on_demand_task.py tests/unit/plugins/modules/test_na_ontap_vscan_on_demand_task_rest.py tests/unit/plugins/modules/test_na_ontap_vscan_scanner_pool.py tests/unit/plugins/modules/test_na_ontap_vscan_scanner_pool_rest.py tests/unit/plugins/modules/test_na_ontap_vserver_audit.py tests/unit/plugins/modules/test_na_ontap_vserver_cifs_security.py tests/unit/plugins/modules/test_na_ontap_vserver_peer.py tests/unit/plugins/modules/test_na_ontap_vserver_peer_permissions.py tests/unit/plugins/modules/test_na_ontap_wait_for_condition.py tests/unit/plugins/modules/test_na_ontap_wwpn_alias.py tests/unit/plugins/modules/test_na_ontap_zapit.py tests/unit/plugins/modules/test_ontap_fdspt.py" returned exit status 1. 2347s 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/ngine_io/cloudstack/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ngine_io/cloudstack --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/ngine_io/cloudstack tests/unit/modules/test_cs_traffic_type.py" returned exit status 1. 2347s 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/sensu/sensu_go/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/sensu/sensu_go --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/sensu/sensu_go tests/unit/plugins/modules/test_ad_auth_provider.py tests/unit/plugins/modules/test_asset.py tests/unit/plugins/modules/test_asset_info.py tests/unit/plugins/modules/test_auth_provider_info.py tests/unit/plugins/modules/test_bonsai_asset.py tests/unit/plugins/modules/test_check.py tests/unit/plugins/modules/test_check_info.py tests/unit/plugins/modules/test_cluster.py tests/unit/plugins/modules/test_cluster_info.py tests/unit/plugins/modules/test_cluster_role.py tests/unit/plugins/modules/test_cluster_role_binding.py tests/unit/plugins/modules/test_cluster_role_binding_info.py tests/unit/plugins/modules/test_cluster_role_info.py tests/unit/plugins/modules/test_datastore.py tests/unit/plugins/modules/test_datastore_info.py tests/unit/plugins/modules/test_entity.py tests/unit/plugins/modules/test_entity_info.py tests/unit/plugins/modules/test_etcd_replicator.py tests/unit/plugins/modules/test_etcd_replicator_info.py tests/unit/plugins/modules/test_event.py tests/unit/plugins/modules/test_event_info.py tests/unit/plugins/modules/test_filter.py tests/unit/plugins/modules/test_filter_info.py tests/unit/plugins/modules/test_handler_set.py tests/unit/plugins/modules/test_hook.py tests/unit/plugins/modules/test_hook_info.py tests/unit/plugins/modules/test_ldap_auth_provider.py tests/unit/plugins/modules/test_mutator.py tests/unit/plugins/modules/test_mutator_info.py tests/unit/plugins/modules/test_namespace.py tests/unit/plugins/modules/test_namespace_info.py tests/unit/plugins/modules/test_oidc_auth_provider.py tests/unit/plugins/modules/test_pipe_handler.py tests/unit/plugins/modules/test_pipe_handler_info.py tests/unit/plugins/modules/test_pipeline.py tests/unit/plugins/modules/test_pipeline_info.py tests/unit/plugins/modules/test_role.py tests/unit/plugins/modules/test_role_binding.py tests/unit/plugins/modules/test_role_binding_info.py tests/unit/plugins/modules/test_role_info.py tests/unit/plugins/modules/test_secret.py tests/unit/plugins/modules/test_secret_info.py tests/unit/plugins/modules/test_secrets_provider_env.py tests/unit/plugins/modules/test_secrets_provider_info.py tests/unit/plugins/modules/test_secrets_provider_vault.py tests/unit/plugins/modules/test_silence.py tests/unit/plugins/modules/test_silence_info.py tests/unit/plugins/modules/test_socket_handler.py tests/unit/plugins/modules/test_tessen.py tests/unit/plugins/modules/test_user.py tests/unit/plugins/modules/test_user_info.py" returned exit status 1. 2347s 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/splunk/es/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/splunk/es --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/splunk/es tests/unit/plugins/action/test_es_adaptive_response_notable_events.py tests/unit/plugins/action/test_es_correlation_searches.py tests/unit/plugins/action/test_es_data_inputs_monitors.py tests/unit/plugins/action/test_es_data_inputs_network.py" returned exit status 1. 2347s 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/vmware/vmware/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/vmware/vmware --confcutdir /tmp/autopkgtest.5tw1FI/build.bwJ/src/ansible_collections/vmware/vmware tests/unit/plugins/modules/test_appliance_info.py tests/unit/plugins/modules/test_cluster.py tests/unit/plugins/modules/test_cluster_info.py tests/unit/plugins/modules/test_cluster_vcls.py tests/unit/plugins/modules/test_content_library_item_info.py tests/unit/plugins/modules/test_esxi_maintenance_mode.py tests/unit/plugins/modules/test_guest_info.py tests/unit/plugins/modules/test_license_info.py tests/unit/plugins/modules/test_utils_module_pyvmomi_base.py tests/unit/plugins/modules/test_utils_module_rest_base.py tests/unit/plugins/modules/test_utils_pyvmomi_client.py tests/unit/plugins/modules/test_utils_rest_client.py tests/unit/plugins/modules/test_vm_list_group_by_clusters_info.py" returned exit status 1. 2347s autopkgtest [16:09:04]: @@@@@@@@@@@@@@@@@@@@ summary 2347s unit-tests-stable.py PASS 2347s unit-tests-flaky.py FLAKY non-zero exit status 1 2364s nova [W] Using flock in prodstack7-arm64 2364s Creating nova instance adt-questing-arm64-ansible-20250502-142424-juju-7f2275-prod-proposed-migration-environment-20-92f2f50c-b2d8-40e6-8305-03e43392337b from image adt/ubuntu-questing-arm64-server-20250502.img (UUID 8e5d326b-32f5-49da-83ce-e406e786e537)... 2364s nova [W] Timed out waiting for ed57ab4b-fd94-44a5-a803-8f4478e017b1 to get deleted. 2364s nova [W] Using flock in prodstack7-arm64 2364s Creating nova instance adt-questing-arm64-ansible-20250502-142424-juju-7f2275-prod-proposed-migration-environment-20-92f2f50c-b2d8-40e6-8305-03e43392337b from image adt/ubuntu-questing-arm64-server-20250502.img (UUID 8e5d326b-32f5-49da-83ce-e406e786e537)... 2364s nova [W] Timed out waiting for 24d37975-c65b-4119-a933-9e3120db0be5 to get deleted.